サンプルごとに複数のfastqファイルがあり、すべて一度に入力として提供する必要があります。 (すべて1つのサンプルに属するため、forループのように独立して処理しないでください。1つのサンプルに入力されるため、一緒にする必要があります。)。
これは簡単な例です。 s1サンプルには3つのfastqファイルしかありません。
NanoPlot -t 2 --fastq s1.reads1.fastq.gz s1.reads2.fastq.gz s1.reads3.fastq.g --maxlength 40000 --plots hex dot
ここで、s1に100を超えるfastqファイルがあるとします。このファイルをすべて入力として使用するようにコマンドを変更するにはどうすればよいですか?
答え1
NanoPlot
したがって、私の提案は、FASTQファイルのリストを含むパラメータとしてファイル名を指定し、プログラムがそれに応じてリストを処理することです。
NanoPlot -t 2 --fastq fastq_files.list --maxlength 40000 --plots hex dot
内容はfastq_files.list
次のとおりです。
s1.reads1.fastq.gz
s1.reads2.fastq.gz
s1.reads3.fastq.gz
...etc
答え2
これが次に適用される場合NanoPlot
:
NanoPlot -t 2 --fastq s1.reads1.fastq.gz s1.reads2.fastq.gz s1.reads3.fastq.gz --maxlength 40000 --plots hex dot
で始まり終わるs1.
すべてのファイル名を渡したい.fastq.gz
場合は、単純なシェルglobもトリックを実行する必要があります。
NanoPlot -t 2 --fastq s1.*.fastq.gz --maxlength 40000 --plots hex dot
シェルは一般的な辞書順にファイル名をソートするため、数字は<<<などで1
ソートされます。これが重要な場合は注意してください。10
11
2
番組を見たいなら一つファイルにこれらのすべてのファイルのデータが含まれている場合は、Bash / ksh / zshでプロセスオーバーライドを使用してcat
これを実行できます。
NanoPlot -t 2 --fastq <(cat s1.*.fastq.gz) --maxlength 40000 --plots hex dot