/var/www/orbitcode/public_html/orbit.tar.gz
当我使用tar -xvzf orbit.tar.gz
新pub_html
创建的目录解压缩它时,其中有一个 tar 文件。
解压后文件的路径是/var/www/orbitcode/public_html/public_html/[extracted files]
。
解压后的文件不应该在orbit
目录中吗?为什么要创建一个新public_html
目录?
我正在使用 ubuntu 14.04。
答案1
发生这种情况大概是因为您对整个public_html
目录进行了 tar 处理,并且其名称在存档中。
您可以使用--strip-components
参数在提取时切断路径的头部。
就你的情况而言:
tar -xvzf --strip-components 1 orbit.tar.gz
删除public_html/
并将文件直接提取到当前目录中。
1
上述命令中的 代表提取路径中的单个级别。
答案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