0
Iは、染色体の名前を変更するには、次のsedコマンドがあります。は/ samtoolsは、新しいディレクトリになり
for file in /myoldpath/*.bam; do filename=`echo $file | cut -d "." -f 1`; samtools view -H $file | sed -e 's/SN:\([0-9XY]\)/SN:chr\1/' -e 's/SN:MT/SN:chrM/' | samtools reheader - $file > /mynewpath/${filename}_chr.bam; done
私quesionは、変数$ファイル名を維持しながら、新しいパスで結果を挿入する方法でありますすべての新しいファイル名の一部として?結果は常に/ myoldpath /に挿入されるか、または/ mynewpath /の "filename.chr.bam"に挿入されます。 その部分の構文に何かがありません$file > /mynewpath/${filename}_chr.bam
?
任意のヘルプは
回答ありがとうございます。私はこれを試しましたが、私は "_chr_bam"の形で出力を得ました。ここで私が試したのは: 'for file in /myoldpath/*.bam; do filename = $(echo $ file | cut -d "。" -f 1); samtoolsの表示-H $ファイル| sed-e 's/SN :([0-9XY])/ SN:chr \ 1 /' -e '/ SN:MT/SN:chrM /' | samtools reheader - $ファイル> /mynewpath/${filename}_chr.bam; done' –
コマンドを/mynewpath/${file}_chr.bamに変更すると、ファイル名はどうなりますか? –
あなたはこのファイル名= $(echo $ file | rev | cut -d "/" -f 1 | rev | cut -d "。" -f1);を試すことができます。 –