Cambiar el nombre de los files (eliminar algunos caracteres que no siempre son los mismos)

Tengo algunos files nombrados así:

DA1_ATGCATG_L001_R1.fastq.gz Oeu43_TCATGAC_L004_R2.fastq.gz 

Quiero eliminar la parte después del primer "_", pero conserve el final de los nombres de "_R" para get esto:

 DA1_R1.fastq.gz Oeu43_R2.fastq.gz 

¿Cómo puedo lograr esto?

En bash o POSIX sh :

 for file in *.fastq.gz; do mv -- "$file" "${file%%_*}_${file##*_}" done 

Con zsh :

 autoload zmv # best in ~/.zshrc zmv '(*)_*(_R*)' '$1$2' 

Usando el rename de perl (nombre prename en Ubuntu)

 prename 's/^([^_]*).*(_R.*)/$1$2/' *.fastq.gz