我很想了解以下两种语法是否有任何区别柏油命令将其输出写入 STDOUT 通道
tar -czf - /src_dir
tar -czf -O /src_dir
来自男人页,我读过这个。然而“-”没有任何内容
-O, --to-stdout : extract files to standard output
它们可以互换而不会出现任何便携性问题吗?
答案1
从-f
第二个命令中删除后,两者应该是等效的(与 GNU tar
)。GNU 手册中没有记录-
使用的写入,但是-f
tar
它的info
手册说:
如果您使用“-”作为存档名称,“tar”将从标准输入读取存档(列出或提取文件时),或者将其写入标准输出(创建存档时)。如果在修改存档时使用“-”作为 ARCHIVE-NAME,“tar”将从其标准输入读取原始存档,并将整个新存档写入其标准输出。
在-f
第二个命令中,它将写入一个名为 的文件-O
,并且在其标准输出上不会产生任何数据。