これで、次のような名前変更スクリプトができました。
cd /Users/KanZ/Desktop/Project/Test/
n=1
for file in *.jpg; do
echo $file
prefix=M
file_name=M$n.jpg
echo $file_name
n=$(( $n+1 ))
mv $file $file_name
done
最初にスクリプトを実行すると、すべてのjpgファイルはM1.jpg M2.jpg M3.jpgになりますが、このディレクトリに新しいファイル名A1.jpgを追加して、スクリプトを再度実行します。最初の文字がAであるため、すべてのM1.jpg M2.jpg M3.jpgはM4.jpg(スクリプトを実行する前、このファイルはA1.jpgという名前)に置き換えられます。これはMの前にあります。これが私の問題です。M1 M2 M3 M4.jpgを取得したいのですが、新しいファイルが来るたびに、このスクリプトはM5.jpgM6.jpgのような継続名を生成します。コードはどのように見えますか?あなたがそれを理解することを望みます。助けてくれてありがとう