複数のファイルがあり、正規表現を使用して名前を変更したいと思います。 Linuxコマンドラインでこれを実行したいと思います。
ファイルがあります
report1.txt
report2.txt
report3.txt
宣言するように名前を変更するにはどうすればよいですか?
myreport1.txt
myreport2.txt
myreport3.txt
インターネットで検索しましたが、複雑な例がたくさんあります。
ベストアンサー1
1行に簡単なループを使用できます。
for ftr in report[0-9]*.txt; do mv "$ftr" "my${ftr}"; done
ループを使用したくない場合は、以下を試してください。
find . -maxdepth 1 -type f -name "report[0-9]*.txt" -printf "%f\n" | xargs -I{} mv {} my{}
forループと同様に、ファイルと同じパスに配置する必要があります。