我有一些这样命名的文件:
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