2011-12-23 12 views
6

私はフォルダを持っていて、そのフォルダの中に任意の名前のファイルが10〜15個あります。 ファイル名にスペースが含まれる場合があります。例:wWw.page.com __ (576)_002。 端末で、wを押してからtabを押すと、ファイル名はwWw.page.com\ \ __\ \(576\)_0.txtのようになります。フォルダ内のすべてのファイルの番号を増やして名前を変更

このようなすべてのファイル名を0.txt1.txt2.txtなどに変更するスクリプトが必要です。

私の問題はwWw.page.com __ (576)_002.txt file not foundです。代わりにglobからls試してみるの

index=0; 
for i in $(ls *.txt) 
do 
    cp "${i}" $index".txt" 
done 
+1

'perlの-e'rename $ _、$ iが++ Q(.TXT)しばらく(<*.txt>) ''それは* 'だ除き – jfs

答えて

14

index=0; 
for name in *.txt 
do 
    cp "${name}" "${index}.txt" 
    index=$((index+1)) 
done 
+0

。 txt'。 –

+0

そして、内部の '$'( 'index = $((index + 1))'は必要ありません) –

+0

@ MichaelKrelin-hackerありがとう! :-) – cnicutar

関連する問題