いくつかのデータファイルがありますが、パイプラインに合わせて名前を変更したいと思います。
ファイルは次のようになります。
{unique_ids}_{experiment_condition}_L{3_digit_number}.txt
次のように、ファイル名の末尾、拡張子の前に実験条件フラグが表示されるように名前を変更する必要があります。
{unique_ids}_L{3_digit_number}_{experiment_condition}.txt
Unique_ids と Experiment_condition の長さは固定されていません。
例:
ghad312fd2_Mb_L002.txt
になるghad312fd2_L002_Mb.txt
。
ありがとうございます!
ベストアンサー1
Perlベースのrename
ユーティリティを使用して、現在のディレクトリ内のこのパターンに一致するすべてのファイル./*_*_*.txt
(つまり、名前に複数のアンダースコアが含まれて終わるすべてのファイル.txt
)の名前を変更します。
rename -n 's/([^_]+)_([^_]+)\.txt$/$2_$1.txt/' ./*_*_*.txt
ファイル名のサフィックスを除いて、ファイル名の最後の2つの下線で区切られた部分を置き換えます.txt
。-n
正しい操作を実行しているように見えることを確認してから、削除して実際に実行してください。