bash 脚本 实现文件的重命名

#!/bin/bash
set -x
if [ $# -lt 2 ];then 
echo "Usage:rename oldfilename newfilename"
exit  1; 
fi
oldfilename=`dirname "$1"`/`basename "$1"`
newfilename=`dirname "$2"`/`basename "$2"`
if [ ! -f "$oldfilename" ];then
echo "input filename please"
exit 1;
fi
ls `dirname "$newfilename"`|grep "^`basename $newfilename`$">/dev/null 2>&1 
if [ $? == 0 ];then
echo "the file already have ,do you want continue"
while  true;do
 read x
 if [ "$x" = Y -o "$x" = y ]; then
 mv  -f  "$oldfilename" "$newfilename"
  break;
else
while true ;do
 echo "please input another newfilename"
 read ofilename
 ls `dirname $ofilename` |grep "^`basename $ofilename`$">/dev/null 2>&1
 if [ $? == 0 ];then
   echo "the file already have ,do you want continue"
   read y
  if [ "$x" = 'Y' -o "$x" = 'y' ];then
   mv  -f  "$oldfilename" "$ofilename"
   break;
   else 
  continue;
   fi
else
  mv  "$oldfilename" "$ofilename"
  break;
fi
done
break; 
fi
done
else  
  mv "$oldfilename" "$newfilename"
fi

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值