FreeBSD QandA 1547

FreeBSD QandA

Q. wget で HTTP や FTP 経由で再帰的にファイルを取得したいのですが。

A. HTTP や anonymous FTP の場合は、それぞれ
      wget -m -np http://host/dir/
      wget -m ftp://host/dir/
   でできます。

   HTTP では、http://host/robots.txt に探索を排除する記述があると、
   ファイルを再帰的には取得できません。

   また、 wget は HTML の OBJECT 要素、CITE 属性、LONGDESC 属性、
   USEMAP 属性、PROFILE 属性、スクリプトなどに対応しておらず、
   これらで参照されるファイルは取得できません。スタイルシートへの
   対応も不完全です。

   普通の FTP で、例えば ~/dir 以下を取得したい場合、
      wget -m ftp://user:pass@host/dir/
   とします。

   普通の FTP で、ホームディレクトリ以外、例えば /dir 以下を取得したい
   場合は、絶対パスで、
      wget -m ftp://user:pass@host/%2Fdir/
   と書きます。 %2F はルートディレクトリを表すスラッシュを URL エンコード
   したものです。スラッシュをエンコードせずに、
      wget -m ftp://user:pass@host//dir/
   としても同じ結果が得られますが、これは RFC 的に正しくありません。
   (従って wget 以外に応用しようとするとうまくいかない可能性があります)。

   一般的な URL の書式については RFC2396 を、HTTP URL や FTP URL の
   解釈については RFC1738 を参照してください。

   host というディレクトリを掘られたくなければ、-nH を、home/user/ と
   いったディレクトリを掘られたくなければ、--cut-dirs=2 を追加すれば
   よいでしょう。

   wget には多くのオプションがありますので、詳しくは wget --help や
   info wget などとしてください。

同一グループへのリンク

グループ名: rfc


間違い・追加情報を見付けた場合は、 修正案の投稿のしかた を読んだ上で、
QandA@jp.FreeBSD.org まで お知らせください。