在bbmap软件包中使用for循环

时间:2018-09-03 22:01:03

标签: java for-loop unix

我在将rnmapq样本应用于bbmap修整时遇到了问题。我正在使用UNIX集群。 我有成对的末端RNAseq数据,我想做一个for循环来修剪这些样本。 我的样本命名为:

sample_1_1_HVM35BBXX.DUAL001.fastq
sample_1_2_HVM35BBXX.DUAL001.fastq
sample_2_1_HVM35BBXX.DUAL002.fastq
sample_2_2_HVM35BBXX.DUAL002.fastq
...

所以我尝试了

individus=$(ls --color=never /fastq| grep .fastq$ | sed 's/_[0-  9]_HVM35BBXX.DUAL...\.fastq//g' | sort -u)

for individu in ${individus}
do
qsub \
-cwd \
-V \
-e /output_bbmap \
-o /output_bbmap \
.conda/pkgs/bbmap-38.22-h470a237_0/bin/bbduk.sh -Xmx3g trimq=10   in1=/fastq/"$individu"_1_HVM35BBXX.DUAL***\.fastq  in2=/fastq/"$individu"_2_HVM35BBXX.DUAL***\.fastq  out1=/fastq_trim/"$individu"_1_trim.fastq out2=/fastq_trim/"$individu"_2_trim.fastq  ref=/.conda/pkgs/bbmap-38.22-h470a237_0/opt/bbmap-38.22-0/resources/adapters.fa
done

当我查看错误时,会收到此消息:

 Exception in thread "main" java.lang.RuntimeException: Can't read file       'fastq/sample_1_1_HVM35BBXX.DUAL...\.fastq'
    at shared.Tools.testInputFiles(Tools.java:996)
    at jgi.BBDukF.<init>(BBDukF.java:803)
    at jgi.BBDukF.main(BBDukF.java:67)

我知道服务器找不到该文件,因为它不存在,但是我想知道如何才能告诉他...是元字符。我查看了Java metacaracter,因为bbmap似乎可以使用它,但是再次失败了。

我知道一种可能是删除名称的末尾(DUAL ...),但是我想了解为什么它不起作用。

如果有人有答案, 谢谢!!!

0 个答案:

没有答案