如何对两个同级文件夹进行 tar 或 zip 压缩,并避免在提取时出现额外的顶层文件夹

如何对两个同级文件夹进行 tar 或 zip 压缩,并避免在提取时出现额外的顶层文件夹

我需要创建两个同级文件夹的 tar,然后将其发送给客户端,以便在他们的 Mac OS 桌面上双击进行提取。是的,这是他们的要求。

所以我去了:

cd ~/Desktop
tar -cvf ~/Desktop/files.tar folder1 folder2
#folder1 and folder2 are sibling sub folders of ~/Desktop and contain additional files and sub folders

问题是,当我(或客户端)双击 files.tar(启动提取)时,它首先创建一个名为 files 的顶级目录,然后才创建两个子文件夹(~/Desktop/files/folder1 和 ~/Desktop/files/folder2)... 而不是创建 ~/Desktop/folder1 和 ~/Desktop/folder2。这会给具有路径依赖性的客户端带来问题。

有没有办法强制创建这样的.tar或.zip,而不先创建顶层文件夹?(名称由其文件名组成)并将内容直接提取到当前位置?

干杯

答案1

无论您在 OS X 中使用什么 GUI 工具,它都会执行此操作,而不是tar。如果您实际使用tar来提取文件,您将获得预期的目录结构。

$ tar xvf files.tar
folder1/
folder1/...
folder2/
folder2/...

相关内容