複数の fastq ファイルのシーケンス番号を繰り返し計算します。

複数の fastq ファイルのシーケンス番号を繰り返し計算します。

fastq.gz で終わる fastq ファイルがたくさんあります。

rep1.fastq.gz
rep2.fastq.gz
rep3.fastq.gz
rep4.fastq.gz
.....

私の結果は次のとおりです。

rep1.fastq.gz 23516782
rep2.fastq.gz 45126780
rep3.fastq.gz 67543908
rep4.fastq.gz 76425368

ライン1は各入力ファイルを示し、ライン2は各ファイルのシーケンス数を示す。

これを達成するために、各ファイルのシーケンス数を計算し、各ファイルの後に書き込まれた数値を出力として作成する小さなbashスクリプトを作成しました。

for sample in *.fastq.gz;do echo -en $sample "\t";(zcat $sample|wc -l)/4|bc ;done

エラーが発生します: -bash: 予期しないトークン '/4' の近くに構文エラーがあります。

ベストアンサー1

シーケンスごとに4行を想定して可能なすべてのエラーを無視します...上記のコマンドは次の形式を使用する必要があります。

for file in *.fastq.gz; do echo -en $file "\t";echo "$(zcat $file| wc -l)"/4 |bc;done

おすすめ記事