ファイル名の一括変換

アクセスログ解析ツールのawstatsを使っていて、過去ログのファイル名を一括で変換したくなった。
結構な本数あるので面倒。
やりたいことは、awstats月+年.txtをawstats月+年.サーバ名.txtにすること。つまり間にサーバ名を挟みたい。
で、ググったらここがヒットしたので、参考にしてこうしてみた。

ls -1 *.txt | sed -e 's/\.txt$//g' | awk '{print "mv "$1".txt "$1".サーバ名.txt"}'|sh

ls -1 *.txtでtxtで終わるファイル名だけを取り出して、
sed -e 's/\.txt$//g'で、文字列の最後の".txt"を消して、
awk '{print "mv "$1".txt "$1".サーバ名.txt"}'で、mv ファイル名+".txt" ファイル名+"サーバ名.txt"という文字列を編集して

sh で文字列を実行する。

うん、割とわかりやすくて良いかも。