当我在 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
指定目录路径时尽量避免使用完整路径,使用相对路径,恢复时会更容易。