2016-11-29 20 views
-1

別のファイルを持つフォルダFOLDER1があります。特定のフォルダ内のファイル名をbashで変更します

私はbashスクリプトを.pngの拡張子を持つすべてのファイルのファイル名を変更したい

を.pngの拡張子を持つフォルダ内の複数のファイルを持っています。私は1つ書くことを試みたが、私はまだ私が欲しいものを持って来なかった。スクリプトの終わりに

#!/bin/bash 
# make sure you always put $f in double quotes to avoid any nasty surprises i.e. "$f" 
i=0 
for f in *.png 
do 
    echo "${i}Processing $f file..." 
    i+=1; 
    echo ${i} 
    # rm "$f" 
done 

私のような名前のすべてのファイルを持っているしたいと思います:

C-1.png

C-2.png

C-3。 PNG

...

...

...

お手伝いできますか?

i+=1 

が文字列の追加です:

+0

http://stackoverflow.com/questions/18686832/rename-all-files-in-folder-to-numbered-list-1-jpg-2-jpg –

答えて

1

申し訳ありませんが、私は解決策を見つけました。

このコードは完全に動作しています。

#!/bin/bash 
# make sure you always put $f in double quotes to avoid any nasty surprises i.e. "$f" 
i=0 
for f in *.png 
do 
    echo "$i Processing $f file..." 
    i=$((i+1)) 
    mv $f "c-"$i.png 
    #echo ${i} 
done 
1

まずなお 感謝。あなたがやっていることはあなたが必要とする.... 0,01,011,0111です:「」

((++i)) 

次へ]をあなたがあれば、一つの方法を、あなたのファイル名を分割する必要があります一度だけ表示されます。

base=$(echo $f | cut -d. -f1) 

、最後に移動します。

mv $f ${base}-${i}.png 
1
#!/bin/bash 
i=0 
for f in *.png 
do 
    echo "${i}Processing $f file..." 
    i=$((i + 1)) 
    newname="c-${i}.png" 
    mv "$f" $newname 
done 
+0

はい、私はに到着しました同じ結論。すべての返信に感謝します。 – kalmanIsAGameChanger

関連する問題