リンクの多いウェブサイトからファイルをダウンロードする[閉じる]

リンクの多いウェブサイトからファイルをダウンロードする[閉じる]

次からファイルをダウンロードしようとしています。https://www.ebi.ac.uk/ena/data/view/PRJEB5736すべての例に対して、file1とfile2(FTP fastqのみ)ファイルを繰り返しダウンロードしたいと思います。 Linuxでどうするか教えてください。

ありがとう

ベストアンサー1

すべてのリンクが表示されているように規則的であれば、次のことを試すことができます。

results=147
for ((i=0; i<147; i++)); do
    base=ftp://ftp.sra.ebi.ac.uk/vol1/fastq/ERR445/
    ext=$((445410+i))
    suff=.fastq.gz
    for j in 1 2; do wget "${base}${ext}/${ext}/_${j}${suff}"; done
done

私が知る限り、このダウンロードには再帰的な内容はありません。リンクアドレスチェックはいくつかのヒントを提供します。

ftp://ftp.sra.ebi.ac.uk/vol1/fastq/ERR445/ERR445410/ERR445410_1.fastq.gz
ftp://ftp.sra.ebi.ac.uk/vol1/fastq/ERR445/ERR445410/ERR445410_2.fastq.gz
ftp://ftp.sra.ebi.ac.uk/vol1/fastq/ERR445/ERR445411/ERR445411_1.fastq.gz
ftp://ftp.sra.ebi.ac.uk/vol1/fastq/ERR445/ERR445411/ERR445411_2.fastq.gz

したがって、3つの部分のみを変更する必要があります。

ERR<nr>/ERR<nr>_<1 or 2>

ステップサイズがERR1の場合、結果の数は147であり、これは完全な答えです(これがまさにこの物語のすべてであると仮定します)。したがって、すべてのダウンロードが完了したら、新しいファイル数を数えて2 * 147ファイルがあることを確認してください。

ダウンロードプロセスは確実に最適化できます。上記のように、wget各リンクはプロセスを開始します。最適化はあなたに任せ、ここでは分析と基本的な解決策だけを扱います。

おすすめ記事