ファイルサフィックスシェルスクリプトのバッチ変更

ps:現在のディレクトリに再帰クエリはありません。HZ1は変更前のサフィックスであり、HZ2は変更されたサフィックスです。

#!/bin/bash
HZ1=$1 
HZ2=$2
if [[ "$1" == "" ]] ;then
HZ1=repo
HZ2=bak
echo "默认源文件后缀为:repo 修改后后缀为:bak"
fi
PWD=`pwd`
echo "$PWD"
if [ "$PWD" == "" ];then
echo "获取文件工作路径,请重试"
exit -1
fi
Len=${#HZ1} 
echo "长度:$Len"
for i in `find ./*.$HZ1 -type f`
do
echo "修改前:${i:2}"
echo "修改后:${i:2:-4}$HZ2"
mv $PWD/${i:2} $PWD/${i:2:-4}$HZ2
done

テスト:
現在のディレクトリでサフィックスがbakのすべてのファイルを削除します
ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/qq_38774492/article/details/108097006