http
から大きなディレクトリ(サブディレクトリを含む)をダウンロードしましたが、wget
隠しファイル(.filename
)がありません。
どのようにダウンロードできますか?
@dhagによって編集されました
私は次のコマンドを使用します。wget --mirror --no-parent https://.../directory --user=... --password=...
2番目の質問に対する答えはわかりませんが、この方法で隠しファイルをダウンロードできますが、wget --mirror --no-parent https://.../directory/.hidden_file_name --user=... --password=...
非常に非効率的です。
答え1
Dagのコメントは正しいです。wget
コマンドラインに渡されたURLを使用してページをダウンロードします。wget
次のような引数を受け取る可能性が高いです。
wget -r --no-parent http://host/dir
パラメータは-r
再帰ダウンロードを表します。ただし、再帰的ダウンロードがディレクトリ内のすべてのアイテムをダウンロードするわけではありませんdir
。これは、特定のURLのページをダウンロードし、ページ上のすべてのリンクを見つけ、リンクされたすべてのページをダウンロードすることを意味します。
その後、URLはサーバーのディレクトリを指すことができます。ただし、httpサーバーは各ファイルへのリンクを含むhtmlページを提供します(ディレクトリリストが許可されている場合)。これにより、ページには次の内容が含まれます。
<a href="filename1">filename1</a><p>
<a href="filename2">filename2</a>
HTMLページには、ファイルサイズ、ファイルタイプ、所有者などの他の情報を含めることができます。ただし、すべての情報はサーバー側で生成され、wgetなどのクライアントはサーバーから提供された情報のみを解析し、この「ディレクトリリスト」を介してページにリストされているリンクをたどることができます。
したがって、ファイルが隠されていてディレクトリのリストにリストされていない場合、これはサーバー決定であり、サーバーにwgetパラメーターを介して追加情報を提供することを強制することはできません。
それでもあなたは不幸ではありません。ほとんどのhttpサーバーは設定可能で、管理者は隠すファイルを決定できます。たとえば、Apacheサーバーには、IndexIgnore
隠す必要があるファイルパターンを含む設定オプションがあります。