ディレクトリ内のファイルを一括リネーム


こんな感じ。

sedname.sh
#!/bin/bash

file_all=(`ls`)
for ((i=0; i<${#file_all[*]} ; i++))
{
  file_subd[i]=`echo ${file_all[i]}| sed $1`
  if [ ${file_subd[i]} ]; then
    echo mv ${file_all[i]} ${file_subd[i]}
    mv ${file_all[i]} ${file_subd[i]}    
  fi
}

スクリプトをコマンド的に使いたいなら、aliasを忘れずに。下は一例。

~/.bashrc
alias sedname="sh ~/docs/tools/sedname.sh"

実行結果。

その他、リネームするファイルのリストを別のテキストファイルから取得したいなら

file_all=(`cat list.txt`)

というように書き換えればいいと思います。