linux - bash 语句末尾的 "-;"是什么意思?

标签 linux bash syntax pipe

例如

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

“-;”的目的是什么?字符在最后?他们在做什么?为什么需要它们?

最佳答案

分号结束命令(结束管道,我相信,从技术上讲是正确的说法)。如果你愿意,你可以在它后面加上另一个命令,如

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 命令的使用。)

关于linux - bash 语句末尾的 "-;"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10338073/

相关文章:

linux - libstdc++.so.6 缺少更高版本的 GLIBCXX 和 CXXABI,无法更新

java - ycsb加载数据到redis找不到数据

vim - vim 中类型推断的 ctags 跳转可能吗?

sql - auto_increment 导致 CREATE TABLE 出错

ruby - 将程序的输出获取到 Ruby 处理中

linux - Fedora 20如何在启动结束时运行脚本

linux - bash:文件不存在则创建,否则检查是否可写

bash - 使用 sed 将文件名中的数值填充为三位数

bash - 使用 curl 和 elasticsearch 进行错误处理

vb.net - VB.NET 是否不允许在注释掉的行上继续行?