1

たくさんのメールファイルがフォルダとサブフォルダ内に再帰的に広がっています。ディレクトリを除くすべてのフォルダに拡張子.emlを追加する必要があるので、次のようになります。

これはディレクトリを再帰的にループし、ファイル名のみを一覧表示します

find a/ -name "*" -type f

ファイル名の名前を.eml拡張子に変更するにはどうすればよいですか?

私は私が望むことをするこのスクリプトを持っていますが、それは再帰的には機能しません

#!/bin/bash

for i in * do 
e=`echo $i.eml`
echo $e
mv $i $e
done

2つを組み合わせるにはどうすればよいですか?

4

1 に答える 1

3

の多くのバージョンではfind、次のように書くことができます。

find a/ -type f -exec mv '{}' '{}.eml' \;
于 2012-12-04T18:04:26.200 に答える