shell脚本练习 :备份文件(2)修订

本文介绍了一个改进后的bash脚本,用于批量备份多个文件。脚本包括创建备份目录、检查并备份指定文件的功能,同时增加了错误处理,确保用户在输入错误文件名时能够得到反馈。

             在上一个小练习的基础上,加入一点要求,同时判断备份数个文件。其实是9个及以下的,下面是判断备份多个文件的脚本。刚刚进行了大量改进,去除了很多可以省略的语句,并将格式进行了规范书写(发表完发现TAB格式都被吞了。。空格格式也不明显。。),精简了程序,也让自己对SH脚本基本编程语法有了更深刻的映象。以后有时间练习写个能备份任意个文件的(要用到shift吧),还有我发现如果输入的文件名字错了或不存在,系统会提示不存在,但是我们应该在脚本里面加入这些提醒,有时间再练习写下更完善的。(不管有没有实际用处,对熟悉shell脚本总还是有帮助的。)


#!/bin/bash

if [  ! -d /opt/backup ] ;then

      `mkdir /opt/backup`

      echo “/opt/backup is created.”

fi

flist=`ls /opt/backp`

#结构和语法上更加的精简明确。上面语句查找/建立文件备份目录。

#下面在外层for循环下用变量bkup依次从位置变量取值。

forbkup   

do

      sig=yes

#给信号变量sig赋值,下面会用信号来判断是否需要备份。

      for fileX in $flist

      do

           if [ $bkup = $flist ] ;then

                echo "FILE $1 is found."

                sig=no

#如果找到文件,就更该信号值,表示不需要备份了。

                break

           fi

      done

      if [ sig = yes ] ;then

            `cp $1 /opt/backup`

             echo "$1 is copied."   

       fi

#如果信号值sig没有改变,说明没找到文件,需要备份,在进入下次循环。找到则直接进入下次循环。

done



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值