Bak*_*yor 5 server archive backup tar
我正在使用以下命令归档文件夹:
tar jcf "home/username/forum/forum.tar.bz2" /var/www/forum/
Run Code Online (Sandbox Code Playgroud)
然后我提取使用:
tar jxf forum.tar.bz2 ./
Run Code Online (Sandbox Code Playgroud)
它正确提取,但会创建/home/username/forum/var/www/forum文件夹。我需要做什么才能将其解压缩到/home/username/forum文件夹中?
谢谢
Lek*_*eyn 12
除了dv3500ea的回答,您可以使用下一个命令包含提取tar包var/www/forum/到forum/:
tar xjf forum.tar.bz2 --strip-components=2
Run Code Online (Sandbox Code Playgroud)
var/和www/是两个路径组件,因此2in --strip-components。
如果您不确定 tarball 中的内容,请使用以下t选项:
tar tjf forum.tar.bz2
Run Code Online (Sandbox Code Playgroud)
管道通过,less以便您使用箭头键进行滚动。
关于所用选项的一般说明:
x - 提取一个 tarball,我总是把它作为第一个选项,因为查看命令的作用是最合乎逻辑的c - 创建一个 tarballt - 列出 tarball 的内容j- 使 tar 解压缩 bzip2 压缩的 tarball。这对于.bz2扩展来说是多余的,因此您也可以删除此选项f- 此选项需要一个文件名作为参数,它是要提取的 ( tar xf file.tar.bz2) 或创建的 tarball ( tar cf file.tar.bz2)创建存档时,请在创建存档时-C /var/www/将当前目录更改为 /var/www。
tar jcf home/username/forum/forum.tar.bz2 -C /var/www/ forum
Run Code Online (Sandbox Code Playgroud)
这将导致“论坛”文件夹位于存档的顶层,因此在您运行时将直接解压缩到当前文件夹中:
tar jxf forum.tar.bz2 ./
Run Code Online (Sandbox Code Playgroud)