大多数关于 tar 的问答要么询问将整个目录分组为tar
,要么询问匹配模式的单个文件(例如相同的扩展名),但我想混合使用两者。
也就是说,如果我有这个目录结构:
SomeDir/someFile1.a
SomeDir/someFile2.b
SomeDir/someFile3.c
SomeDir/...
SomeDir/someFileN.xyz
fileInRoot.abc
OtherDir/someFile.xyz
OtherDir/theFile.f
我想SomeDir
完全打包,并且单独打包theFile.f
,这样,当我在另一台服务器中解压缩它时,我只剩下这个目录结构:
SomeDir/someFile1.a
SomeDir/someFile2.b
SomeDir/someFile3.c
SomeDir/...
SomeDir/someFileN.xyz
OtherDir/theFile.f
这可能吗?我应该使用哪些标志来 tar?
答案1
如果我正确理解你想要什么,你可以简单地将目录/文件名传递给 tar。
tar -cvf tarfile.tar SomeDir/ OtherDir/theFile.f
提取后:
[user]$: ls
OtherDir SomeDir tarfile.tar
[user]$: tar -xf tarfile.tar
[user]$: ls SomeDir/
someFile1.a someFile2.b someFile3.c someFileN.xyz
[user]$: ls OtherDir/
theFile.f