Добавить или удалить файл из tar и tar.gz
Я хочу добавить файлы в 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
? Есть ли какая-либо команда, или я всегда должен разархивировать и смолить снова?
Редактировать:
В-третьих: Как извлечь конкретный файл из архива? Или как извлечь из tar в определенном месте? Это НЕ работает:
tar -xvf foo.tar IMG_1807.MOV -C /path/to/destination
1 ответ
-d
это не удалить, а разн.
От man tar
:
-d, --diff, --compare find differences between archive and file system
использование --delete
,
tar --delete -vf foo.tar IMG_1807.MOV
Вы не можете обновить tar.gz
файл, посмотрите это и это.
Что касается вашего вопроса, как извлечь в конкретное место:
Вы должны следовать правильному порядку командной строки. -C
как вариант идет раньше [pathname]
, Увидеть man tar
для дополнительной информации. Следующие работы:
tar -xvf foo.tar -C /path/to/destination IMG_1807.MOV