SELL脚本工具:linux下监听scp传输文件,传输成功后打印新上传文件名

 

#! /usr/bin/expect
#!/bin/bash  
PROC_NAME="scp" 
ProcNumber=`ps -ef |grep $PROC_NAME|grep -v grep|wc -l`
if [ $ProcNumber -le 0 ];then  
   result=0  
else  
   result=1   
fi
#echo ${result}
if [ $result -eq 1 ];then
 echo "has file in transit.."
 while true
 do
  ProcNumber=`ps -ef |grep $PROC_NAME|grep -v grep|wc -l`
   if [ $ProcNumber -le 0 ];then
    echo "download finish!"
    break
   else
    sleep 7
   fi
 done
else
 echo "no file in transit!"
fi
checkroot="/home/lxh/aa/"
cp /dev/null rsync_file
if [ ! -f file.md5 ];then
  find $checkroot -type f -exec md5sum {} \; >>file.md5
else
  for file in $(md5sum -c file.md5|awk -F':' '/FAILED/{print $1}')
    do
      if [ -f $file ];then
      filename_z=$(echo $file|sed 's#/#\\/#g')
      sed -i "/ $filename_z/"d file.md5
      md5sum $file >> file.md5
      echo $file >> rsync_file
      else
      echo $file >>rsync_rm
      fi
    done
  for newfile in $(find $checkroot -type f)
    do
      grep $newfile file.md5 >/dev/null 2>&1
      if [ $? -gt 0 ];then
      md5sum $newfile >> file.md5
      echo "$newfile" >> rsync_file
      fi
    done
fi
for rfile in $(cat rsync_file)
do
echo ${rfile}
done
 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值