我正在尝试在终端中同时运行两个命令,但似乎第二个命令不是与第一个命令同时启动。
我想看到'python'线和'samtools'并行运行。
python -m HTSeq.scripts.count -m intersection-nonempty -f sam -a 20 -t mRNA -i Parent -s yes plate.sam $GFF | awk 'n>=5 { print a[n%5] } { a[n++%5]=$0 }' > plate_F.counts &&
samtools view -h -o exvivo.sam V_S1_L001_aln-pe.bam
答案 0 :(得分:3)
&&
是and
中的逻辑Bash
运算符,在command_a && command_b
这样的构造中大量使用,它只是“运行第一个命令的快捷方式,并且在成功时返回代码运行第二个命令“。
在您的情况下,很可能第一个命令python -m ...
以非零代码退出,这会阻止第二个命令运行。
如果您需要第二个命令无条件地运行,但无论出于何种原因希望它们在同一行上,您可以使用command_a; command_b
。或者更严格的是,command_a || true; command_b
。
答案 1 :(得分:1)
&&
仅在命令完成之前返回0时执行命令。previous answer可能会更清晰