У меня есть 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.
Когда Вы создали /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
Это происходит, по-видимому, потому что Вы смолили целое public_html
, каталог и его имя находятся в архиве.
можно использовать --strip-components
аргумент для отключения главы пути при извлечении.
В Вашем случае:
tar -xvzf --strip-components 1 orbit.tar.gz
Для удаления public_html/
и файлы извлечения непосредственно в текущий каталог.
1
в вышеупомянутой команде обозначает единственный уровень в извлеченном пути.