次の名前のファイルがあります。
DA1_ATGCATG_L001_R1.fastq.gz
Oeu43_TCATGAC_L004_R2.fastq.gz
最初の「_」の次の部分を削除したいのですが、それを取得するには、「_R」に名前の末尾を保持する必要があります。
DA1_R1.fastq.gz
Oeu43_R2.fastq.gz
どうすればいいですか?
答え1
bash
またはPOSIXではsh
:
for file in *.fastq.gz; do
mv -- "$file" "${file%%_*}_${file##*_}"
done
答え2
そしてzsh
:
autoload zmv # best in ~/.zshrc
zmv '(*)_*(_R*)' '$1$2'
答え3
Perlを使うrename
(prename
Ubuntuで名前付け)
prename 's/^([^_]*).*(_R.*)/$1$2/' *.fastq.gz