私はbashスクリプトを書くのは恐ろしいですが、再帰的にディレクトリをループし、そこにあるすべてのファイルの名前を "1.png"、 "2"に変更できるのでしょうか? png "などですが、新しいフォルダが入るたびに再起動する必要があります。ここで動作するスクリプトは1つのディレクトリに対してのみ実行されます。事前Bashはディレクトリをループしてすべてのファイルの名前を変更します
EDIT で
cd ./directory
cnt=1
for fname in *
do
mv $fname ${cnt}.png
cnt=$(($cnt + 1))
done
おかげで誰もが実際にこのコードを書き出すことはできますか?私はどのようにbashを書くのか分かりません。それは非常に混乱します。
$ fnameごとにテストを追加し、ディレクトリであるかどうかを確認してから、新しいディレクトリをcdターゲットとして再度呼び出します。また、これが何らかの大きさであれば、$ cnt値の前に00の前置文字列を管理することなく、001-999のような数字を(先行ゼロで)生成することができます。それ以外の場合は、1.png 10.png 2.pngのソート方法を理解しようとしています。幸いです。 – shellter
ソートは問題ではなく、ソートする理由は決してありませんが、私は実際にこれを書く人を探しています.bashを書く方法がわからず、迷っています。 –