shell根据文件大小备份文件( integer expression expected)

手动备份数据比较麻烦,简单写一个备份的脚本

sum=`du -sh|awk '{printf $1}'|cut -d "M" -f 1`
echo 文件大小:$sum M
filename=`date +%Y%m%d`
echo filename=$filename
if [ $sum -gt 10 ]
then
        echo "存储满10M,开始备份... ..."
        cd $HOME/bak
        mkdir $filename
        cd $filename
        cp -rf $HOME/wjy/* .
else   
        echo "存储不满10M,不进行备份... ..."
fi

记忆中gt,lt 和eq只能对整数操作
小数与整数对比出错:
 integer expression expected
改进程序:

sum=`du -sh|awk '{printf $1}'|cut -d "M" -f 1`
echo 文件大小:$sum M
filename=`date +%Y%m%d`
echo filename=$filename
flag=0
flag=`du -sh|awk '{printf $1}'|cut -d "M" -f 1|awk -v b=10 '{print($1>b)?"1":"0"}'`
if [ $flag -eq 1 ]
then
        echo "存储满10M,开始备份... ..."
        cd $HOME/bak
        mkdir $filename
        cd $filename
        cp -rf $HOME/wjy/* .
else   
        echo "存储不满10M,不进行备份... ..."
fi

 

阅读更多
个人分类: shell 脚本
想对作者说点什么? 我来说一句

Redis数据类型

Redis数据类型

Horizon_Zy Horizon_Zy

2017-10-30 14:38:14

阅读数:111

没有更多推荐了,返回首页

不良信息举报

shell根据文件大小备份文件( integer expression expected)

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭