このファイルの名前をすぐに変更するにはどうすればよいですか? [コピー]

このファイルの名前をすぐに変更するにはどうすればよいですか? [コピー]

複数のファイルがあり、正規表現を使用して名前を変更したいと思います。 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ループと同様に、ファイルと同じパスに配置する必要があります。

おすすめ記事