8

Название файла 2014-12-12 04-00-01.tar . Я выполнил команду:

tar xvf 2014-12-12\ 04-00-01.tar

На выходе получается много строк вида:

x ../server/: Path contains '..'

А потом несколько из формы:

tar: copyfile unpack (../server/logs/.DS_Store) failed: No such file or directory

Кажется, я не был очень осторожен, когда писал сценарий резервного копирования. Как я могу распаковать файл?

2 ответа2

11

Вы захотите добавить флаг P (или -P) в вашу командную строку. Из справочной страницы:

-P сохранить имена путей. По умолчанию абсолютные пути (те, которые начинаются с символа /, удаляют начальную косую черту как при создании архивов, так и при извлечении из них. Кроме того, tar откажется извлекать записи архива, чьи имена содержат .. или чей целевой каталог будет изменен с помощью символической ссылки. Эта опция подавляет эти поведения.

Попробуй tar Pxvf 2014-12-12\ 04-00-01.tar . Обратите внимание, что вам понадобится доступ для записи в родительский каталог рабочего каталога, в который вы вызываете команду.

0

Вы можете попробовать:
mkdir ./dir
tar xvf 2014-12-12\ 04-00-01.tar -C --./dir

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .