我正在BASH尝试我的第一个程序
程序需要更改目录中的文件名
第一个参数是基本名称,第二个参数是文件扩展名
如果我用以下函数调用该函数:
rename Test jpg
然后生成的文件应该具有如下名称:
Test001.jpg, Test002.jpg, Test003.jpg,...
我尝试了什么:
function rename {
index=0
for i in $1"/"*".$2"; do
newName=$(printf $1/"$1%04d."$2 ${index})
mv $i $newName
let index=index+1
done
}
当我调用函数
时 bash rename.sh pwd jpg
没有什么事情发生,请帮帮我:)。
答案 0 :(得分:1)
我会做什么:
rn(){
for i in $1*.$2; do
((index++))
newName=$(printf "$1%04d.$2" $index)
mv $i $newName
done
}
cd WHERE/YOU/WANT
rn "$@"