Назад | Перейти на главную страницу

Файл tar извлекает все в архиве, кроме одной конкретной папки

Я использую tar -xf archive.tar -C /home/user/target/folder (в сценарии bash) для извлечения содержимого определенного архива (archive.tar) в целевой каталог (/ home / user / target / folder), чтобы все существующее содержимое целевого каталога было перезаписано новым ( содержится в архиве).

Все работает отлично, но это один каталог в архиве, который я бы хотел опустить (от извлечения и, таким образом, перезаписи существующего в целевой папке) ... Например, если archive.tar содержит:

folderA/
folderB/
folderC/
folderD/
fileA.php
fileB.php
fileC.xml

Как я могу извлечь (и перезаписать) все, ЗА ИСКЛЮЧЕНИЕМ (например) папки C / ??

tar --version выходы tar (GNU tar) 1.23

Используйте параметр -X или параметр --exclude

filename - имя файла со списком шаблонов, которые вы хотите исключить. шаблон - это отдельный шаблон, который нужно исключить.

Чтобы исключить FolderC, используйте команду ниже

tar -xf archive.tar --exclude folderC -C /home/user/target/folder

Используйте man tar в своей системе для полного объяснения двух вариантов.