我为 linux 内核构建了一些存档,它需要一个具有绝对路径的存档文件。当我正常打包时,文件位于文件夹 /data/ 下,它保持这样的文件路径
bin/ln
bin/ls
etc
我使用的命令是这样的
cd /data
find|cpio -o -H newc -F ../data.cpio
但我希望 cpio 像这样使用根路径保存文件
/bin/ln
/bin/ls
/etc
我发现我应该使用 pax 但我不知道如何编写正则表达式来替换路径
我在各种目录上有一些 mp3。我做了
find $HOME -name *.mp3|pax -wf arch.tar
该命令工作正常,但是在提取时,它会重新创建完整的目录,例如
tar -tvf arch.tar
返回
dir1/dir2/sound.mp3
dir3/music.mp3
dir4/dir5/anotherdir/anothermusic.mp3
当提取当然会创建很多目录。我的愿望是这样的
find $HOME -name *.mp3|pax -w"possibleoption" -f arch.tar
获取这样的存档
/sound.mp3
/music.mp3
/anothermusic.mp3
我知道不安全,但是可以在飞行中剥离 dir 路径吗?
ps= 例如我使用了 pax 命令,但是经典的 tar 也不错