フォルダ以下のファイルの拡張子を一括で変換する方法

以前、フォルダに存在するファイル名を一括変換する方法を書いた。

ディレクトリに存在するファイルの拡張子を一括変換する - adragoonaの日記

上記の方法では、フォルダの中のフォルダに存在するファイルは変換の対象にならなかった。

一応、カレントディレクトリ以下の全てのファイルの拡張子が変更される方法も記しておく。

.txt.csvに変更する。

for filename in `find . -name "*.txt"`
do
 dirname=`dirname $filename`
 basename=`basename $filename .txt`
 echo "$filename --> $dirname/$basename.csv"
 mv $filename $dirname/$basename.csv
done