在 tar 中创建绝对路径

Create absolute paths in tar

如何在 tar 中将文件路径重写为绝对路径,而不是重写实际的 tar 文件?例如

$ tree tmp_fs
tmp_fs
├── bin
├── boot
│   └── kernel
├── include
├── lib
└── share
    └── misc
        └── logo

6 directories, 2 files

$ tar cC tmp_fs . | tar t
./
./share/
./share/misc/
./share/misc/logo
./lib/
./boot/
./boot/kernel
./include/
./bin

理想情况下,我想找到一个传递给 tar 的选项,使路径都是绝对的(即 /boot/kernel 而不是 ./boot/kernel)。

如果你的意思是当你提取文件时,你只需将 tar 文件提取到 /

例如:

tar -C / -xvf myfile.tar

如果您试图强制将 tar 文件提取到特定位置,无论提取它的人指定什么,您都不能这样做。您需要将其包含在某种包中,例如 .deb.rpm 文件。