tools: rename file suffix by batch

change all file suffix to other one.

 

test shell

 

#!/usr/bin/env bash 

function change_suffix() {
  oldsuffix=$1
  newsuffix=$2
  dir=$(eval pwd)
  for file in $(ls $dir | grep .${oldsuffix})
  do
    name=$(ls ${file} | cut -d. -f1)
    mv $file ${name}.${newsuffix}
  done
  echo "change $1 to $2 successd!"
}


#if [ "" =  "$1"  ];then
#if [ ! -n "$1" ] || [ ! -n "$2" ];then
if [ $# != 2 ] ; then
  echo "please input both oldsuffix and newsuffix which you want to change"
  exit
else
  echo "iiiiiiiiiiiii change $1 to $2 successd!"
  #change_suffix

fi

if [ "" =  "$1" ] || [ "" =  "$2" ] ;then
  echo "please input both oldsuffix and newsuffix which you want to change"
else
  echo "iiiiiiiiiiiii change $1 to $2 successd!"
  #change_suffix
fi 

if [ ! -n "$1" ] ;then
    echo "you have not input a word!"
else
    echo "the word you input is $1"
fi

 

final:

#!/usr/bin/env bash 

function change_suffix() {
  oldsuffix=$1
  newsuffix=$2
  dir=$(eval pwd)
  for file in $(ls $dir | grep .${oldsuffix})
  do
    name=$(ls ${file} | cut -d. -f1)
    mv $file ${name}.${newsuffix}
  done
  echo "change $1 to $2 successd!"
}


if [ $# != 2 ] ; then
  echo "please input both oldsuffix and newsuffix which you want to change"
  exit
else
  echo " change $1 to $2 successd!"
  #change_suffix
fi

#if [ "" =  "$1" ] || [ "" =  "$2" ] ;then
  #echo "please input both oldsuffix and newsuffix which you want to change"
#else
  #echo " change $1 to $2 successd!"
  #exit
  ##change_suffix
#fi 

damn it ,bug..............

should use gloable variable 

 

 

#!/usr/bin/env bash 

oldsuffix=$1
newsuffix=$2
function change_suffix() {
  dir=$(eval pwd)
  for file in $(ls $dir | grep .${oldsuffix})
  do
    name=$(ls ${file} | cut -d. -f1)
    #echo "$file ${name}.${newsuffix} "
    mv $file ${name}.${newsuffix}
  done
  echo "change ${oldsuffix} to ${newsuffix} successd!"
}


if [ $# != 2 ] ; then
  echo "please input both oldsuffix and newsuffix which you want to change"
  exit
else
  change_suffix
fi

#if [ "" =  "$1" ] || [ "" =  "$2" ] ;then
#echo "please input both oldsuffix and newsuffix which you want to change"
#else
#echo " change $1 to $2 successd!"
#exit
##change_suffix
#fi 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值