一尘不染

命令行参数中的“-”(破折号)有什么魔力?

linux

例子:

  • 创建一个ISO映像并将其直接刻录到CD。

mkisofs -V Photos -r /home/vivek/photos | cdrecord -v dev=/dev/dvdrw -

  • 转到上一个目录。

cd -

  • 侦听端口12345并解压缩发送给它的数据。

nc -l -p 12345 | tar xvzf -

破折号的目的是什么?如何使用?


阅读 311

收藏
2020-06-02

共1个答案

一尘不染

如果您-tar命令末尾说的是裸露,这在许多要使用文件的命令中很常见。

它允许您指定标准输入或输出,而不是 实际的 文件名。

第一个和第三个示例就是这种情况。例如,该cdrecord命令采用标准输入(由产生的ISO图像流mkisofs)并将其直接写入/dev/dvdrw

使用该cd命令,每次更改目录时,它都会存储您来自的目录。如果cd使用特殊的-“目录名称”,它将使用该记住的目录而不是真实目录。通过使用它,您可以轻松快速地在两个目录之间切换。

其他命令可以-视为 不同的 特殊值。

2020-06-02