KLLxxx
(x
数字を表す)という名前の一連のファイルがあります。テキストファイルですが、ファイル拡張子はありません。それはKLL
ファイルの後に3桁の数字が来るだけです。私はそれらがすべてファイル拡張子で終わりたいと思います.fastq
。KLL123
->のようなKLL123.fastq
。
だから私はこのコマンドを試しました。
mv KLL* KLL*.fastq
しかし、引き続きエラーメッセージが表示されます。
mv: target 'KLL067.fastq' is not a directory
名前変更コマンドの機能について知っていますが、以前にPerlを使用したことがないため、これを処理する方法がわかりません。私はこれが基本的な質問であることを知っていますが、これはLinuxを初めて試しています。
ベストアンサー1
prename
...Perl式を使用して名前を変更します。次のコマンドはファイルリスト(KLL *)を取得します。各ファイルのKLLのフルネームと3つの数字(KLL\d{3})
)を取得し、特殊な名前付き変数に保存します$1
。s
式の先頭にあるtheは、最初の2つのグループの間にある項目を//
2番目のグループの間にある項目に「置き換える」という意味です。これは完全なファイル名で、ここに$1
追加されます。.fastq
prename 's/(KLL\d{3})/$1.fastq/' KLL*