如何压缩文件夹 (tar1) 并将该压缩文件夹发送到不同的目录(假设称为 tar2)。
我检查了这里的问题,其中大多数都使用文件,而不是目录,我一直在尝试所有组合,但我无法让它正常工作。
在我的〜我有:
tar1/
a.txt
b.txt
tar2/
Run Code Online (Sandbox Code Playgroud)
Tar1/ 中有一个名为 a.txt 和 b.txt 的测试文件。我想压缩该文件夹并将其放入 tar2/
所以之后它看起来像:
tar1/
a.txt
b.txt
tar2/
tar1.gz
a.txt
b.txt
Run Code Online (Sandbox Code Playgroud)
我正在尝试
tar czvf tar2/ tar1/
Run Code Online (Sandbox Code Playgroud)
(我在一本参考书中给出了该语法的示例,其中第一个路径是您要存储它的位置,第二个路径是您要创建存档的位置。
我还尝试过以 -C 作为我的目的地:
tar cvzf tar1/ -C tar2/
Run Code Online (Sandbox Code Playgroud)
希望 tar1/ 压缩目录并将其放入 tar2
我收到这个错误
tar:懦弱地拒绝创建空档案
尝试
tar --help' or
tar --usage' 以获取更多信息。
我使用的是 RHEL 6.7
您没有在语句中指定存档。\n它应该类似于:
\n\ntar -cvf tar2/tar1.tar tar1/\n
Run Code Online (Sandbox Code Playgroud)\n\n这会将 tarball 放入tar1.tar
目录中tar2/
。
前:
\n\ntree tar*\ntar1\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 a.txt\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 b.txt\ntar2\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 a.txt\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 b.txt\n\n0 directories, 4 files\n
Run Code Online (Sandbox Code Playgroud)\n\n后:
\n\ntar -cvf tar2/tar1.tar tar1/\ntar1/\ntar1/a.txt\ntar1/b.txt\n\ntree tar*\ntar1\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 a.txt\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 b.txt\ntar2\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 a.txt\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 b.txt\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 tar1.tar\n\n0 directories, 5 files\n
Run Code Online (Sandbox Code Playgroud)\n\n环境:
\n\nDistributor ID: Debian\nDescription: Debian GNU/Linux 8.6 (jessie)\nRelease: 8.6\nCodename: jessie\n
Run Code Online (Sandbox Code Playgroud)\n