Я хочу добавить файлы к foo.tar
:
tar -rvf foo.tar IMG_1807.MOV
это работает, но когда я хочу удалить файлы:
tar -dvf foo.tar IMG_1807.MOV
не работает. Это показывает вывод:
Terminal:~/Desktop$ tar -dvf foo.tar IMG_1807.MOV
IMG_1807.MOV
Terminal:~/Desktop$ tar -tvf foo.tar
-rw-rw-r-- user/user 33084363 2018-12-19 03:02 IMG_1807.MOV
но ничего не удаляет.Что мне делать?
Во-вторых, как я могу добавить или удалить файлы из file.tar.gz
или file.tar.bz2
или file.tar.xz
? Есть ли какая-либо команда, или я всегда должен untar и tar снова?
Править:
В-третьих: Как извлечь определенный файл из заархивированного файла? Или как извлечь из tar в определенном месте? Это НЕ работало:
tar -xvf foo.tar IMG_1807.MOV -C /path/to/destination
-d
не удаляют, но различный.
От man tar
:
-d, --diff, --compare find differences between archive and file system
использовать --delete
.
tar --delete -vf foo.tar IMG_1807.MOV
Вы не можете обновить a tar.gz
файл, посмотрите это и это.
Относительно Вашего вопроса, как извлечь к определенному местоположению:
Необходимо выполнить корректный приказ командной строки. -C
поскольку опция идет прежде [pathname]
. Посмотрите man tar
для получения дополнительной информации. Следующие работы:
tar -xvf foo.tar -C /path/to/destination IMG_1807.MOV