2017-03-29 106 views
1

的中东我要删除的文件名看起来像下面的中间:删除文件名

Wm-no-Bis.GAGATTCC-ATAGAGGC.L001.R1.001.fastq.trim.R2.fastq 
Pek-no-Bis.GAGATTCC-AGGCGAAG.L001.R1.001.fastq.trim.R1.fastq 

至获取

Wm-no-Bis.trim.R2.fastq 
Pek-no-Bis.trim.R1.fastq 

正如你所看到的文件的开头和结尾稍微变量。 我试图使用命名如下:

rename 's/.*.*.*.*.*.trim.//g' 
Wm-no-Bis.GAGATTCC-ATAGAGGC.L001.R1.001.fastq.trim.R2copy.fastq 

这会删除整个文件名,除了结束。 这个问题显然是我缺乏理解如何使用通配符。

+0

重命名后预期的文件名是什么? – anubhava

+0

编辑为包含所需的输出 –

+0

*“这个问题显然是我对如何使用通配符缺乏理解。”*:解决方案是阅读正则表达式教程。 –

回答

0

您可以使用此命令rename

rename -n 's/^([^.]+).*(\.trim\..*)$/$1$2/' *.fastq 

当你快乐输出然后取出-n选项(干运行)

0

尝试

rename 's/\.\w+-\w+\..{4}\.R.\.\d{3}\.fastq//g' 

source