tar、“删除前导 /”和 --file 选项的问题

tar、“删除前导 /”和 --file 选项的问题

当我在 tar 命令行中指定根文件夹时,我故意添加前缀“/”来告诉 tar 它是根文件夹而不是当前文件夹的子文件夹。

例如

tar --create --file="/tmp/test.tar" "/tmp/Folder 1/"
tar: Removing leading `/' from member names

为什么去掉开头的“/”?

关于-f/--file=选项:
如果你想输出到 stdout,你可以使用-f -,但似乎你不能使用--file= -
我以为-f--file对方是别名?

-f -除此之外,我在手册中找不到该选项(man tar)...它不应该在那里吗?或者我只是忽略了它。

答案1

Tar 默认写入 stdout 或从 stdin 读取,因此不需要破折号字符来表示 stdout/stdin。只需省略-f参数即可。--file= -由于=和之间存在空格,因此出现语法错误-。长选项的--书写方式是--param=value在等号周围没有空格。

答案2

指定目录路径时尽量避免使用完整路径,使用相对路径,恢复时会更容易。

相关内容