shell--2

写的一个shell,当运行后定时会扫描指定的路径,看有没有.zip文件。
当存在时则进行一些处理。
当然了如果指定的路径每天都要去做这种事情的话,我们可以吧这个shell脚本
加入到crontab 中去。

上次写的那个shell 可以实现功能,但是有个BUG就是当文件到达目录时候,它会立即执行后面的。所以这样肯定不行。于是在上次的shell的基础上做了修改!假了个判断函数

#test_zip_sinpoal.sh
#author:Sinpoal
#date:2010.10.13
#!/bin/bash
cd /home/oracle/test_poal/test_zip
echo "Function scaning files..."
ifexsts()
{
  for i in `find . -type f -name "*.zip"`
   do
    result=`basename $i`
   done
  if [ -n "$result" ]; then
    return "1"
  else
    return "0"
  fi
}


get_size()
{
  declare filesize
   i=0
 for  fileinfo in `ls -lt`
  do
   filesize[i]=$fileinfo
    i=$i+1
  done
   return ${filesize[6]}
}


while true
do
   ifexsts
   bool=$?
 if [ $bool = "1" ]; then
     while true
      do
         get_size
         size1=$?
         sleep 3
         get_size
         size2=$?
       if [ $size1 = $size2 ]; then
   echo -e "/033[40;36m File recieved successfully !/033[0m"
   echo " *********Files info**********"

   echo -e  "Filename: /033[40;36m $result/033[0m"
   echo -e "Arrived at:/033[40;36m `date` /033[0m"
   sleep 2
   echo -e "/033[40;31m Extract the file .../033[0m"
   unzip $result
    sleep 2
   echo -e "/033[40;31m Move origal .zip files to ../staging /033[0m"
   mv $result ../staging/
        break
       else
        sleep 3
       fi
       done
      break
 else
   echo -e " None files !"
   sleep  3
 fi
done

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值