Ответ 1
Попробуйте удалить последний/в конце пути к каталогу, чтобы исключить
tar -pczf MyBackup.tar.gz /home/user/public_html/ --exclude "/home/user/public_html/tmp"
У меня есть папка /public_html/
, в этой папке есть папка /tmp/
, у которой есть 70gb файлов, которые мне действительно не нужны.
Теперь я пытаюсь создать .tar.gz
из /public_html/
исключая /tmp/
Это команда, которую я запускал:
tar -pczf MyBackup.tar.gz /home/user/public_html/ --exclude "/home/user/public_html/tmp/"
tar все еще создается, и, делая ls -sh
, я вижу, что MyBackup.tar.gz
уже имеет около 30gb, и я точно знаю, что /public_html/
без /tmp/
не имеет более 1 ГБ файлы.
Что я сделал не так?
Попробуйте удалить последний/в конце пути к каталогу, чтобы исключить
tar -pczf MyBackup.tar.gz /home/user/public_html/ --exclude "/home/user/public_html/tmp"
Попробуйте переместить --exclude
до включения.
tar -pczf MyBackup.tar.gz --exclude "/home/user/public_html/tmp/" /home/user/public_html/
Да, удалите конечный /
и (по крайней мере, в ubuntu 11.04) все указанные пути должны быть относительными или полными. Вы не можете смешивать абсолютные и относительные пути в одной и той же команде.
sudo tar -czvf 2011.10.24.tar.gz ./start-directory --exclude "home/user/start-directory/logs"
не будет исключать каталог журналов, но
sudo tar -czvf 2011.10.24.tar.gz ./start-directory --exclude "./start-directory/logs"
будет работать
Правильная команда для исключения каталога из сжатия:
tar --exclude='./folder' --exclude='./upload/folder2' -zcvf backup.tar.gz backup/
Обязательно установите - исключить перед исходными и целевыми элементами.
и вы можете проверить содержимое файла tar.gz без разархивирования:
tar -tf backup.tar.gz
Попробуйте это
tar -pczvf advancedarts.tar.gz /home/user/public_html/ --exclude /home/user/public_html/tmp
Вы также можете исключить более одного, используя только один --exclude
. Как этот пример:
tar -pczf MyBackup.tar.gz --exclude={"/home/user/public_html/tmp","/home/user/public_html/data"} /home/user/public_html/
В --exclude=
вы должны закончить имя каталога без /
и должны --exclude=
между MyBackup.tar.gz и /home/user/public_html/
Синтаксис:
tar <OPTIONS> <TARBALL_WILL_CREATE> <ARGS> <PATH_TO_COMPRESS>
Принятый ответ не работал для меня, запуская unxutils tar на windows10. Вместо этого мне пришлось поместить файлы /dirs в архив как последний параметр, например:
tar -pczf MyBackup.tar.gz --exclude "/home/user/public_html/tmp/" /home/user/public_html/
Тогда это сработало.
Это сработало для меня:
tar -zcvf target.tar.gz target/ --exclude="target/backups" --exclude="target/cache"
Необязательный параметр должен включать знак =
и "
не требуется.
--exclude=/home/user/public_html/tmp
@Ivan Avery Frey Вы правы.