我有一個不同的文件夾,如abc.mp3 acc.mp3 bbb.mp3中的文件,我想重命名它們01-abc.mp3,02-acc.mp3,03-bbb .MP3 ......我想這使用查找shell重命名文件夾中的文件
#!/bin/bash
IFS='
'
COUNT=1
for file in ./uff/*;
do mv "$file" "${COUNT}-$file" let COUNT++ done
,但我不斷收到這樣的錯誤的語法錯誤附近「做,有時沒有找到,使用‘查找’,從終端有人可以提供單線解決這個。我正在尋找一個解決方案,使用查找只是由於一定的限制...在此先感謝
至少,你需要一個分號(或換行符 - 這會更好)在'let' a之前在完成之前。如果你在數字前綴中需要兩位數字,你需要更加努力:'printf「%.2d-%s」「$ COUNT」「$ file」'會更好地生成格式。 –
千萬不要混淆'$ IFS'。我從來沒有遇到過使用它的好理由,並且它把你的整個腳本搞砸了。 –
@ParthianShot:「從不」是一種過度陳述,但很少需要這樣做,而且這不是其中之一(所以我同意你的建議的要點)。 –