Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
$ tar -zcvf archive/test.tar.gz files
会给我如下:
files/ files/1 files/2 files/3
--
$ tar -zcvf archive/test.tar.gz -C files .
./ ./1 ./2 ./3
我无法找出正确的 tar 命令输出如下。
1 2 3
您使用该--transform选项,该选项采用 sed 表达式。
--transform
--transform="s/^\.\///"
应该有预期的效果。
编辑糟糕,看起来这会在 tar 存档中留下一个前导的 './' 条目,这可能是不可取的。使用@paulsm 的答案可能更简单,但它可能会错过隐藏文件(以 . 开头的文件)
就个人而言,我只是:
cd files tar -zcvf /full-path/archive/test.tar.gz *