什么是“ - ;”意味着在bash声明结束时?

时间:2012-04-26 17:05:21

标签: linux bash syntax pipe

例如

bwa sampe ref.fa r1.sai r2.sai r1.fq r2.fq | samtools view -bSho out.bam -;

“ - ;”的目的是什么?最后的人物?他们在做什么?为什么他们有必要?

1 个答案:

答案 0 :(得分:2)

分号结束命令(结束管道,我相信,从技术上说是正确的说法)。如果您愿意,可以使用其他命令跟随它,如

bwa sampe ref.fa r1.sai r2.sai r1.fq r2.fq | samtools view -bSho out.bam -; echo Here is another command.

否则,分号是无害的,但可能是不必要的。

关于分号前面的-连字符,对于samtools和许多其他命令,它意味着使用标准输入代替输入文件(或者,在某些情况下,标准输出代替输出文件)。这是典型的Linux / Unix用法。

(感谢@phatfingers验证samtools命令的用法。)