该报错说明每次循环执行时输出目录已存在,需要在循环中加入判断语句,如果输出目录已存在则跳过该次循环,否则执行命令。可以使用以下代码:

for F in /home/liulanzhou/metagenome/temp/onlykneaddatapaired/paired_1.fastq; do R=${F%}2.fastq; BASE=${F##*/}; SAMPLE=${BASE%}; SAMPLENAME=${SAMPLE%_}; if [ -d "/home/liulanzhou/metagenome/temp/singlemegahit1/$SAMPLENAME" ]; then echo ' $SAMPLENAME output directory already exists, skipping...'; else time megahit -t 9 -1 $F -2 $R -o /home/liulanzhou/metagenome/temp/singlemegahit1 --out-prefix $SAMPLENAME & fi done

这样循环执行时,如果输出目录已存在则会跳过该次循环,否则执行命令。

解决 megahit 命令循环执行时输出目录已存在的报错

原文地址: https://www.cveoy.top/t/topic/ojx8 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录