Я использую 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 в своей системе для полного объяснения двух вариантов.