Linux 板的棒油大家好。
在写 script 中,取得了想要处理的档案清单:
./01.txt
/tmp/02.txt
/home/user/03.txt
...
想要将其打包压成 tar 档,
不过若是直接下指令如下的话:
tar -zcvf test.tar.gz ./01.txt /tmp/02.txt /home/user/03.txt
则保存的资料夹路径也会一起被 copy(根路径被移除)
tar -ztvf test.tar.gz
01.txt
tmp/02.txt
home/user/03.txt
作者: akaron 2017-12-08 16:17:00
用basename指令或作法二改用symlink然后用 tar -h 参数
作者:
sasoric (sasori.c)
2017-12-08 16:17:00感觉做法1就可以了,切路径也有现成的工具,不会太麻烦
喔喔! symlink 再用 tar -h 好酷,来试试
作者:
hijkxyzuw (i,j,k) ×(x,y,z)
2017-12-08 16:26:00解压缩的时候用 --one-top-level
用的版本没 one-top-level 选项还是用 方法一做掉了~ tar -rvf、basename、dirname
作者:
lantw44 (#######################)
2017-12-08 18:10:00tar 的 -C 可以指定多次,类似 cd 可以重复切换工作目录可以尝试 01.txt -C /tmp 02.txt -C /home/user 03.txt
喔喔! 原来 -C 可以这样用啊,还想说这 -C 也太不实用~学习了!
作者:
jamselee (jamselee)
2017-12-14 06:47:00推讨论分享