什么' - '代表bash?

try*_*run 9 unix linux bash

什么在bash中使用' - '?我知道他们可以用来

  1. cd - #带你到旧的'现在的工作目录'
  2. some stream generating command | vim - #tothow vim获取文本.

我的问题究竟是什么 - 在bash?在其他情况下我可以使用它吗?

关心阿伦

Joh*_*iss 17

这取决于应用程序.

cd -
Run Code Online (Sandbox Code Playgroud)

返回到您所在的最后一个目录.

通常-代表stdinstdout.例如:

xmllint -
Run Code Online (Sandbox Code Playgroud)

不检查XML文件但检查XML stdin.样品:

xmllint - <<EOF
<root/>
EOF
Run Code Online (Sandbox Code Playgroud)

对于以下情况也是如此cat:

cat -
Run Code Online (Sandbox Code Playgroud)

读取stdin.最后一个样本-代表stdout:

wget -O- http://google.com
Run Code Online (Sandbox Code Playgroud)

将通过HTTP接收google.com并发送stdout.

顺便说一句:这与你的shell无关(例如bash).它只是被调用应用程序的语义.