0
我有編號爲3006-3057的JPG文件,我想反向編號。我將通過向名稱的開頭添加倒數數字來重命名它們:img_3006.jpg> 99_img_3006.jpg和img_3057.jpg> 48_img_3057.jpg。Linux命令行腳本向後重新編號文件
我有編號爲3006-3057的JPG文件,我想反向編號。我將通過向名稱的開頭添加倒數數字來重命名它們:img_3006.jpg> 99_img_3006.jpg和img_3057.jpg> 48_img_3057.jpg。Linux命令行腳本向後重新編號文件
basenumber=9999
for file in *.jpg
do
base="${file%.*}"
filenumber="${base#*_}"
mv "$file" "$((basenumber-filenumber))_$file"
done
感謝您的想法。任何想法得到這個工作: 爲我在$(ls * JPG);做回聲「4000 - 'echo $ i | grep -o [0-9] *'」| bc;完成 – Donnied 2010-05-08 21:40:58
上面的腳本將所有文件重命名爲9999.我遇到的認知障礙是想到了不會爲每個文件一路編號的腳本。似乎應該是一個五分鐘的黑客攻擊,但我只是看到在棧上彈出物品。 – Donnied 2010-05-08 21:44:11
如果有多個'_'或'_'和'''之間沒有數字,腳本將會失敗。第一行可以通過用'##'替換第五行中的'#'來修復。第二,那是不能修復的。 – 2010-05-08 21:55:31