本文的编辑与大家共享linux tar软件包目录和有条件的软件包目录命令。 想知道的人请早点来看。
例1。 压缩目录并打包
代码如下
复制代码
tar -czf small.tar.gz small (目录名称);
例2。
代码如下
复制代码
tarzcvfbackup.tar.gz site/*-- exclude=site/attach-- exclude=site/images
简单地说:
ls -l | grep “^-”用于列出当前目录下的所有文件,不包含子目录;
awk '{print 'dollar'8} '用于检索ls和grep输出的文件名。
xargs将前面的一系列输出(文件名列表)组织为参数,并传递给tar命令。
如果只需要排除一两个目录,则可以使用tar命令的--exclude=选项。
例如,排除site目录下的attach和images目录。
tarzcvfbackup.tar.gz site/*-- exclude=site/attach-- exclude=site/images
例2
tar如何在打包目录时排除子目录
具体命令如下
代码如下
复制代码
tarcfzff-bb.cn.tar.gz/var/www/ff-bb.cn//-exclude=var/www/ff-bb.cn/download
如果需要排除多个子目录,请执行
代码如下
复制代码
tar-- exclude=var/www/ff-bb.cn/download-- exclude=var/www/ff-bb.cn/download2cfzhosteguide.com .
注意--exclude后面的排除目录后面不能有/。 没有/的话就不起作用。
解压缩到指定目录:使用tar的-C选项,例如tar xvf newarc.tar.gz -C tmp/a/b/c。
例如:
代码如下
复制代码
tar-- exclude=/usr/local/nginx/html/htdocs/download/backup-- exclude=/usr/local/nginx/html/htdocode
例3
假设在test目录下有五个目录: 1 2 3 4 5
现在打包三五目录tar。 不需要1和2目录
命令如下
代码如下
复制代码
tar-zcvf test.tar.gzexclude=1exclude=2test
或者
代码如下
复制代码
tar-zcvf test.tar.gzexclude=test/1exclude=test/2 test
查看man tar帮助,exclude后面似乎有正则表达式
请注意,打包的test必须在命令的末尾。 否则就没有效果。 刚才郁闷了很久