tar -xvzf [filename] создает дополнительный каталог

У меня есть tar-файл в /var/www/orbitcode/public_html/orbit.tar.gz , когда я распаковываю его с помощью tar -xvzf orbit.tar.gz создается новый каталог pub_html .

Путь к извлеченным файлам: / var / www / orbitcode / public_html / public_html / [извлеченные файлы] .

Разве извлеченные файлы не должны находиться в каталоге orbit ? Почему создается новый каталог public_html ?

Я использую ubuntu 14.04.

1
задан 21 July 2016 в 09:36

2 ответа

Когда Вы создали /var/www/orbitcode/public_html/orbit.tar.gz, Вы пропустили сообщение, которое сказало Вам

tar: Removing leading `/' from member names

Использование tar tf /var/www/orbitcode/public_html/orbit.tar.gz перечислять имена элемента.

Для исправления для текущей ситуации (использование sudo для дегустации),

cd /var/www/orbitcode/public_html
# Assume extracted files must replace current dir files
mv -v -f --target-directory=$PWD public_html/* public_html/.*
# rmdir FAILS on non-empty directories
rmdir public_html
1
ответ дан 7 December 2019 в 12:39

Это происходит, по-видимому, потому что Вы смолили целое public_html, каталог и его имя находятся в архиве.

можно использовать --strip-components аргумент для отключения главы пути при извлечении.

В Вашем случае:

tar -xvzf --strip-components 1 orbit.tar.gz

Для удаления public_html/ и файлы извлечения непосредственно в текущий каталог.

1 в вышеупомянутой команде обозначает единственный уровень в извлеченном пути.

2
ответ дан 7 December 2019 в 12:39

Другие вопросы по тегам:

Похожие вопросы: