通常我使用 tar 来tar -cvzf
创建或tar -xvzf
提取。两种情况都需要-f
指定文件。我知道有时我会从标准输入或标准输出提供 -f,但我仍然需要 -f 开关。
那么是否存在我没有指定的情况-f
?
答案1
-f
当您使用 stdin/stdout 时不需要。
例如,您可以执行以下操作tar -cv foo > foo.tar
,这将创建foo.tar
。
这也可以用于将命令连接在一起。假设您要创建一个 7z 压缩的 tar 文件:
tar -cv foo/ | 7z a -si foo.tar.7z
或者你可以轻松地进行远程备份
tar -cv foo/ | ssh [email protected] "cat > backup.tar"
反过来也可以应用同样的方法
ssh [email protected] "cat backup.tar" | tar -xv
提取 tar 包。
所以是的,在某些情况下您不需要或者不想要 f 开关。