基本上我只想tar目录中的所有文件,但不能获取存档中的所有父目录.
我试过-C,但我想我没用它.@H_502_2@
tar -cjf archive.tar.bz2 -C /var/some/log/path ./*
这导致tar尝试添加CWD中的所有文件.使用完整路径作为最后一个参数不会阻止添加目录.@H_502_2@
看似简单,但无法弄明白.以某种方式tar不会将./ *作为相对于-C的焦点,尽管它应该更改为该dir.@H_502_2@
帮助赞赏.@H_502_2@
包含父目录(/ var / some / log),因为当你执行./*时包含/ var / some / log / path / ..试着做
tar -cjf archive.tar.bz2 -C /var/some/log/path .
测试运行:@H_502_2@
$find tmp/some_files tmp/some_files tmp/some_files/dir1 tmp/some_files/dir1/dir1file tmp/some_files/hello tmp/some_files/world tmp/some_files/dir2 tmp/some_files/dir2/dir2file $tar -cvjf archive.tar.bz2 -C tmp/some_files/ . ./ ./dir1/ ./dir1/dir1file ./hello ./world ./dir2/ ./dir2/dir2file $cd tmp/unpacked /tmp/unpacked$mv /home/aioobe/archive.tar.bz2 . /tmp/unpacked$tar -xvjf archive.tar.bz2 ./ ./dir1/ ./dir1/dir1file ./hello ./world ./dir2/ ./dir2/dir2file /tmp/unpacked$ls archive.tar.bz2 dir1 dir2 hello world /tmp/unpacked$