tar参数有 z,c,x,v,f
-z 表示压缩操作类型是 .tar.gz
-c 表示当前行为是打包
-x 表示当前行为是解压文件包
-v 参数要求显示命令执行过程
-f 指定打包后文件名
-C 解压到指定路径
常用压缩打包命令:
tar -zcvf tarame.tar.gz dir/files
常用解压缩命令:
tar -zxvf tarname.tar.gz -C 指定解压后文件存放地址
-----------------------------------------------------------
解压到当前目录
$unzip test.zip
解压到指定目录
$unzip -d {targetPath} test.zip
不覆盖已经存在的文件
$unzip -n test.zip
强制覆盖已经存在的文件
$unzip -o test.zip
检查压缩包是否损坏
$unzip -t test.zip
执行解压不显示任何信息
$unzip -q test.zip
$unzip -oq test.zip # 静默解压没有任何提示
--------------------------------------------------------------------
1、基本语法:
if [ command ]; then
符合该条件执行的语句
fi
2、扩展语法:
if [ command ];then
符合该条件执行的语句
elif [ command ];then
符合该条件执行的语句
else
符合该条件执行的语句
fi
常用的:
[ -a FILE ] 如果 FILE 存在则为真。
[ -d FILE ] 如果 FILE 存在且是一个目录则返回为真。
[ -e FILE ] 如果 指定的文件或目录存在时返回为真。
[ -f FILE ] 如果 FILE 存在且是一个普通文件则返回为真。
[ -r FILE ] 如果 FILE 存在且是可读的则返回为真。
[ -w FILE ] 如果 FILE 存在且是可写的则返回为真。(一个目录为了它的内容被访问必然是可执行的)
[ -x FILE ] 如果 FILE 存在且是可执行的则返回为真。
--------------------------------------------------------------------------
实战:
WebBakName1=web_coin67.com_$(date +"%Y%m%d")_013001.tar.gz
WebBakName2=web_coin67.com_$(date +"%Y%m%d")_013002.tar.gz
WebBakName3=web_coin67.com_$(date +"%Y%m%d")_013003.tar.gz
cd /www/wwwroot/ftp_103_85_85_196/103_45_163_11_backup/site/coin67.com
if [ -a $WebBakName1 ];then
tar -zxvf $WebBakName1 -C /www/wwwroot/
unzip -o coin67.com.zip -d /www/wwwroot/
elif [ -a $WebBakName2 ];then
tar -zxvf $WebBakName2 -C /www/wwwroot/
unzip -o coin67.com.zip -d /www/wwwroot/
elif [ -a $WebBakName3 ];then
tar -zxvf $WebBakName3 -C /www/wwwroot/
unzip -o coin67.com.zip -d /www/wwwroot/
else
echo "不存在的文件"
fi