具体的な名前をfile type
(.bam.bai
)に変更しようとしていて、ファイル名に2番目のアンダースコア_
の後にテキストを削除できません。現在のところ、最初のファイル_
の後に名前が変更されたファイルが1つしか取得されない場合、他の2つのファイルは重複しているため削除されます。ありがとう、すばらしい休日があります:)。 /ホーム/ cmccabe /例のbashは、ディレクトリ内の特定のファイルタイプの名前を変更する
ファイル/フォルダ
IonXpress_007_MEVxz_R_2016_11_18_10_45_10_user_S5-00580-14-Medexome.bam.bai
IonXpress_008_MEVxx_R_2016_11_18_10_45_10_user_S5-00580-14-Medexome.bam.bai
IonXpress_009_MEVxy_R_2016_11_18_10_45_10_user_S5-00580-14-Medexome.bam.bai
所望の出力
IonXpress_007.bam.bai
IonXpress_008.bam.bai
IonXpress_009.bam.bai
バッシュ
for file in /home/cmccabe/example/folder/*.bam.bai; do
mv -- "$file" "${file%%_[0-9][0-9][0-9]_*}.bam.bai
done
あなたがrename
有用性を持っている場合は電流出力
IonXpress
'mv'コマンドの二重引用符文字が欠落している場合、' echo mv - "$ file" "$ {file %% _ [0-9] [ 0-9] [0-9] _ *}。bam.bai "'? – Jdamian
あなたのコードは新しい名前から '_009_'部分文字列を削除します。 '$ {file %% _ [0-9] [0-9] [0-9] _ *}'は 'IonXpress'のために展開します。 – Jdamian