File:  [Local Repository] / gnujdoc / wget-1.5.3 / wget-ja.texi
Revision 1.2: download - view: text, annotated - select for diffs
Sat Jun 11 07:02:51 2005 UTC (15 years, 4 months ago) by futoshi
Branches: MAIN
CVS tags: HEAD
Format html with makeinfo.
Some "@ininfo"s (for @menu and @top) replace to "@ifnottex"s.

\input texinfo   @c -*-texinfo-*-
@c %**start of header
@setfilename wget-ja.info
@settitle GNU Wget Manual
@c Disable the monstrous rectangles beside overfull hbox-es.
@finalout
@c Use `odd' to print double-sided.
@setchapternewpage on
@c %**end of header

@c @documentlanguage ja

@iftex
@c Remove this if you don't use A4 paper.
@afourpaper
@end iftex

@set VERSION 1.5.3
@set UPDATED Sep 1998

@dircategory Net Utilities
@dircategory World Wide Web
@direntry
* Wget(ja): (wget-ja).         The non-interactive network downloader.
@end direntry

@ifinfo
This file documents the the GNU Wget utility for downloading network
data.

Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.

Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.

@ignore
Permission is granted to process this file through TeX and print the
results, provided the printed document carries a copying permission
notice identical to this one except for the removal of this paragraph
(this paragraph not being relevant to the printed manual).
@end ignore
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided also that the
sections entitled ``Copying'' and ``GNU General Public License'' are
included exactly as in the original, and provided that the entire
resulting derived work is distributed under the terms of a permission
notice identical to this one.
@end ifinfo

@titlepage
@title GNU Wget
@subtitle The noninteractive downloading utility
@subtitle Updated for Wget @value{VERSION}, @value{UPDATED}
@author by Hrvoje Nik@v{s}i@'{c}
@c 翻訳:西尾 太

@page
@vskip 0pt plus 1filll
Copyright @copyright{} 1996, 1997, 1998 Free Software Foundation, Inc.

Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
preserved on all copies.

Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided also that the
sections entitled ``Copying'' and ``GNU General Public License'' are
included exactly as in the original, and provided that the entire
resulting derived work is distributed under the terms of a permission
notice identical to this one.

Permission is granted to copy and distribute translations of this manual
into another language, under the above conditions for modified versions,
except that this permission notice may be stated in a translation
approved by the Free Software Foundation.
@end titlepage

@ifnottex
@node Top, Overview, (dir), (dir)
@top Wget @value{VERSION}

このマニュアルは,GNU Wgetのバージョン@value{VERSION}のドキュメントで,
ネットワークダウンロードのための,自由に利用可能なユーティリティです.

Copyright @copyright{} 1996, 1997, 1998 Free Software Foundation, Inc.

@menu
* Overview::            Features of Wget.
* Invoking::            Wget command-line arguments.
* Recursive Retrieval:: Description of recursive retrieval.
* Following Links::     The available methods of chasing links.
* Time-Stamping::       Mirroring according to time-stamps.
* Startup File::        Wget's initialization file.
* Examples::            Examples of usage.
* Various::             The stuff that doesn't fit anywhere else.
* Appendices::          Some useful references.
* Copying::             You may give out copies of Wget.
* Concept Index::       Topics covered by this manual.
@end menu
@end ifnottex

@node Overview, Invoking, Top, Top
@chapter 概要
@cindex overview
@cindex features

GNU Wgetは,World Wide Webから,@sc{http} (Hyper Text Transfer Protocol) 
と@sc{ftp} (File Transfer Protocol)という,2つの最も広範囲で使用されるイ
ンターネットプロトコルを使用してファイルを回収する,自由に利用可能なネッ
トワークユーティリティです.それには,ダウンロードをより容易にする多くの
便利な特徴があり,それらは以下の通りです.

@itemize @bullet
@item
Wgetは対話的ではなく,それはユーザがログオンしていない間に,バックグラウ
ンドで動作可能なことを意味します.このため,Wgetが仕事を終了するまでの間,
回収を開始しシステムから離れることができます.対称的に,ほとんどのウェブ
ブラウザは常にユーザの存在を要求し,それは多くのデータを転送しているとき
大きな障害となります.

@sp 1
@item
Wgetは,@sc{html}ドキュメントと@sc{ftp}のディレクトリツリーの構造を通じ
て,再帰的に降りることが可能で,それは,リモートサーバ上のものに類似した
ディレクトリ階層のローカルなコピーを作成します.この特徴で,アーカイブと
ホームページのミラーや,データ探索での@sc{www}ロボット(@pxref{Robots}) 
のように,webを渡り歩くために使用が可能です.その精神で,Wgetは
@code{norobots}の慣習を理解します.

@sp 1
@item
ファイル名のワイルドカードへの一致と,ディレクトリの再帰的なミラーは,
@sc{ftp} で回収するとき利用可能です。Wgetは,@sc{http}と@sc{ftp}サーバの
両方でタイムスタンプ情報を読み,それをローカルに保存することができます.
それでWgetは,リモートファイルの前回の回収からの変化を見て,変化がある場
合,新しいバージョンを自動的に回収することが可能です.これでWgetは,ホー
ムページ同様,@sc{ftp}サイトのミラーに適します.

@sp 1
@item
Wgetは,遅いあるいは不安定な接続で,極めてうまく働き,それが完全に回収さ
れるまで,または,ユーザが指定したリトライカウントに到達するまでリトライ
します.それは,サーバがサポートする@sc{ftp}の@code{REST}と,@sc{http} 
の@code{Range}を使用して,中断されたポイントからダウンロードを再開しよう
とします.

@sp 1
@item
デフォルトで,Wgetはプロキシサーバをサポートし,それはネットワークの負荷
を軽くし,回収の速度を上げ,そしてファイアーウォールの裏からのアクセスを
提供することができます.しかし,socks形式のゲートウェイの使用を要求する
ファイアーウォールの裏にいる場合,socksライブラリを入手し,socksサポート
を用いてwgetをビルドすることができます.Wgetは,受動的な@sc{ftp}ダウンロー
ドもオプションとしてサポートします.

@sp 1
@item
組込みの特徴は,希望するリンクをたどることを調整するメカニズムを提供しま
す(@pxref{Following Links}) .

@sp 1
@item
回収は,通常,ドットを出力しながら追跡し,それぞれのドットは受信したデー
タの固定量(デフォルトで1KB)を表現します.これらの表現は好みによりカスタ
マイズできます.

@sp 1
@item
ほとんどの特徴は,完全に構成変更可能で,それらは,コマンドラインオプショ
ンや,初期化ファイル@file{.wgetrc} (@pxref{Startup File})を通じて行いま
す.Wgetは,サイト設定のため,@dfn{グローバルな}スタートアップファイル
(デフォルトで@file{/usr/local/etc/wgetrc})で定義可能です.

@sp 1
@item
終りに,GNU Wgetはフリーソフトウェアです.これは誰でも,使用,再配布,そ
して/また,Free Software Foundationが出版しているGNU 一般公有使用許諾書
(@pxref{Copying})の用語の下での編集が可能だということを意味します.
@end itemize


@node Invoking, Recursive Retrieval, Overview, Top
@chapter 呼び出し
@cindex invoking
@cindex command line
@cindex arguments
@cindex nohup

デフォルトで,Wgetは呼び出しが非常に簡単です.基本的な構文は以下の通りで
す.

@example
wget [@var{option}]@dots{} [@var{URL}]@dots{}
@end example

Wgetは,コマンドラインで指定された全ての@sc{url}を,単にダウンロードしま
す.@var{URL}は,以下で定義されるような@dfn{Uniform Resource Locator}で
す.

しかし,Wgetのデフォルトパラメータをいくつか変更したいかもしれません.そ
うするために2つの方法が可能で,永久的に適切なコマンドを@file{.wgetrc}
(@pxref{Startup File})に追加したり,コマンドラインで指定したりできます.

@menu
* URL Format::
* Option Syntax::
* Basic Startup Options::
* Logging and Input File Options::
* Download Options::
* Directory Options::
* HTTP Options::
* FTP Options::
* Recursive Retrieval Options::
* Recursive Accept/Reject Options::
@end menu


@node URL Format, Option Syntax, Invoking, Invoking
@section URLの書式
@cindex URL
@cindex URL syntax

@dfn{URL}は,Uniform Resource Locatorの省略です.uniform resource
locatorはインターネットで利用可能なリソースに対する小さな文字列表示です.
Wgetは@sc{url}構文を@sc{rfc1738}に従って理解します.これは,最も広く使用
されている形式です(角カッコはオプション部分を意味します).

@example
http://host[:port]/directory/file
ftp://host[:port]/directory/file
@end example

ユーザ名とパスワードを@sc{url}に符号化できます.

@example
ftp://user:password@@host/path
http://user:password@@host/path
@end example

@var{user}または@var{password}のどちらか,または両方とも無くても構いませ
ん.@sc{http}ユーザ名やパスワードのどちらか一方を抜いた場合,認証は送ら
れません.@sc{ftp}ユーザ名を抜いた場合,@samp{anonymous}が使用されます.
@sc{ftp}パスワードを抜いた場合,電子メールのアドレスがデフォルトパスワー
ドとして提供されます.@footnote{ホームディレクトリに@file{.netrc}ファイ
ルがある場合,パスワードはそこで探されます.}

@sc{url}で安全ではない符号化を@samp{%xy}として可能で,@code{xy}は文字の
@sc{ascii}値の16進の表現です.共通の安全でない文字は,@samp{%}
(@samp{%25}として引用),@samp{:} (@samp{%3A}として引用),そして@samp{@@}
(@samp{%40}として引用)を含みます.安全でない文字の包括的なリストは,
@sc{rfc1738}を参照してください.

Wgetは,@sc{ftp} @sc{url}の@code{type}の特徴もサポートします.デフォルト
で,@sc{ftp}ドキュメントはバイナリモードで回収(type @samp{i})し,それは
ダウンロードで変更されないことを意味します.その他の便利なモードは
@samp{a} (@dfn{ASCII})モードで,それは異なるオペレーティングシステムの間
で行の分離文字を変換し,そしてそれは,テキストファイルで役に立ちます.こ
こに例があります.

@example
ftp://host/directory/file;type=a
@end example

歴史的(ヒステリック?)な理由とそれらが広範囲に広がっているため,@sc{url}
指定の2つの選択する変数もサポートされます.

@sc{ftp}-only syntax (@code{NcFTP}でサポートされた):
@example
host:/dir/file
@end example

@sc{http}-only syntax (@code{Netscape}で導入された):
@example
host[:port]/dir/file
@end example

これらの2つの選択される形式は反対され,将来のサポートはやめる可能性があ
ります.

これらの表記の違いを理解できなかったり,その使い方を知らない場合,
@code{Lynx}や@code{Netscape}のような,好みのブラウザで使用する,明白な普
通の書式を使用してください.


@node Option Syntax, Basic Startup Options, URL Format, Invoking
@section オプションの構文
@cindex option syntax
@cindex syntax of options

Wgetは,引数を処理するためGNU getoptを使用しているので,全てのオプション
は短い形式と長い形式があります.長いオプションは覚えやすくより便利ですが,
入力に時間がかかります.異なるオプションスタイルを自由に混ぜて使用したり,
コマンドライン引数の後にオプションを指定したりできます.このため,以下の
ように書くことができます.

@example
wget -r --tries=10 http://fly.cc.fer.hr/ -o log
@end example

オプションを受け入れる引数と引数の間のスペースは省略できます.@samp{-o
log}の代わりに@samp{-olog}と書くことができます.

引数を要求しないいくつかのオプションを,以下のようにまとめておくことがで
きます.

@example
wget -drc @var{URL}
@end example

これは,以下と完全に等しくなります.

@example
wget -d -r -c @var{URL}
@end example

オプションは引数の後に指定できるので,それらは@samp{--}で終端できます.
そのため,以下では@sc{url} @samp{-x}をダウンロードしようとし,@file{log} 
に失敗を報告します.

@example
wget -o log -- -x
@end example

カンマでの分離を受け入れるオプションは,空のリストの指定はその値をクリア
する慣習を全て考慮して,リストアップします.これで,@file{.wgetrc}の設定
をクリアにすることが便利になります.例えば,@file{.wgetrc}が
@code{exclude_directories}を@file{/cgi-bin}に設定する場合,以下の例は最
初にリセットし,それを除外するものとして@file{/~nobody}と
@file{/~somebody}に設定します.@file{.wgetrc} (@pxref{Wgetrc Syntax})の
リストをクリアにすることもできます.

@example
wget -X '' -X /~nobody,/~somebody
@end example


@node Basic Startup Options, Logging and Input File Options, Option Syntax, Invoking
@section 基本的なスタートアップオプション

@table @samp
@item -V
@itemx --version
Wgetのバージョンを表示します.

@item -h
@itemx --help
Wgetのコマンドラインオプション全部を記述するヘルプメッセージを出力します.

@item -b
@itemx --background
スタートアップ直後にバックグラウンドに移行します.出力ファイルを
@samp{-o}で指定しない場合,出力は@file{wget-log}にリダイレクトされます.

@cindex execute wgetrc command
@item -e @var{command}
@itemx --execute @var{command}
@file{.wgetrc} (@pxref{Startup File})の一部のように,@var{command}を実行
します.このようなコマンドは@file{.wgetrc}のコマンドの@emph{後に}実行さ
れ,このためそれらに優先されます.
@end table


@node Logging and Input File Options, Download Options, Basic Startup Options, Invoking
@section ログと入力ファイルオプション

@table @samp
@cindex output file
@cindex log file
@item -o @var{logfile}
@itemx --output-file=@var{logfile}
全てのメッセージを@var{logfile}でログを取ります.メッセージは通常,標準
エラーに報告されます.

@cindex append to log
@item -a @var{logfile}
@itemx --append-output=@var{logfile}
@var{logfile}に追加します.古いログファイルを上書きする代わりに,
@var{logfile}に追加する以外,これは@samp{-o}と同じです.@var{logfile}が
無い場合は,新しいファイルを作成します.

@cindex debug
@item -d
@itemx --debug
デバッグ出力に切替え,Wgetが正確に働かない場合,Wgetの開発に様々な重要な
情報として意味をなします.システム管理者が,デバッグサポート無しでのWget 
のコンパイルを選択している可能性もあり,その場合@samp{-d}は働きません.
デバッグサポートでのコンパイルは常に安全だということに注意してください--- 
デバッグサポートでコンパイルされたWgetは,@samp{-d}で要求されるまで,デ
バッグ情報を決して出力@emph{しません}.バグレポートを送るため@samp{-d}を
使用する方法の詳細は,@xref{Reporting Bugs}.

@cindex quiet
@item -q
@itemx --quiet
Wgetの出力を止めます.

@cindex verbose
@item -v
@itemx --verbose
全ての利用可能なデータを用いて,冗長な出力を開始します.デフォルトの出力
は冗長です.

@item -nv
@itemx --non-verbose
冗長でない出力---完全に静かにするのではなく(そうするには@samp{-q}を使用
してください)冗長を停止し,それはエラーメッセージと基本的な情報は,まだ
出力されることを意味します.

@cindex input-file
@item -i @var{file}
@itemx --input-file=@var{file}
@var{file}から@sc{url}を読み込み,その場合,@sc{url}はコマンドラインに置
く必要はありません.コマンド行と入力ファイルの両方に@sc{url}がある場合,
コマンド行のものが最初に回収されます.@var{file}は@sc{html}ドキュメント
にする必要はありません(しかし,害が無い場合です)---@sc{url}だけ順番にリ
ストアップされている場合,それで十分です.

しかし,@samp{--force-html}を指定した場合,ドキュメントは@samp{html}と見
なされます.この場合,相対的なリンクで問題があるかもしれず,それは,
@code{<base href="@var{url}">}をドキュメントに加えたり,コマンドラインで
@samp{--base=@var{url}}を指定することで解決できます.

@cindex force html
@item -F
@itemx --force-html
ファイルから入力を読み込むとき,@sc{html}ファイルとして扱うことを強制し
ます.これで,ローカルディスクの既存の@sc{html}ファイルからの相対的なリ
ンクを,@sc{html}に@code{<base href="@var{url}">}を加えたり,
@samp{--base}コマンドラインオプションを使用することで回収できます.
@end table


@node Download Options, Directory Options, Logging and Input File Options, Invoking
@section ダウンロードオプション

@table @samp
@cindex retries
@cindex tries
@cindex number of retries
@item -t @var{number}
@itemx --tries=@var{number}
リトライの回数を@var{number}に設定します.0や@samp{inf}の指定は,無限に
リトライします.

@item -O @var{file}
@itemx --output-document=@var{file}
ドキュメントは適切なファイルに書かれませんが,全て一緒に連結され,
@var{file}に書き込まれます.@var{file}が既にある場合,上書きされます.
@var{file}が@samp{-}の場合,ドキュメントは標準出力に書き込まれます.この
オプションを含めると,挑戦回数を1に自動的に設定します.

@cindex no-clobber
@item -nc
@itemx --no-clobber
いくつかのファイルの再帰的な回収で,階層ディレクトリに保存するとき,既存
のファイルを破壊しません.このオプションは,多くのファイルの回収で中止し
たところから続けたいとき,@emph{非常に}便利です.ファイルが@samp{.html} 
や(yuck)@samp{.htm}接尾子を持つとき,それらはローカルディスクからロード
され,それがウェブから回収されたものの場合,統合されます.

@cindex continue retrieval
@item -c
@itemx --continue
既存のファイルの取得を続けます.これは,他のプログラムで開始したダウンロー
ドや,前回のWgetのインスタンスを終了したいとき便利です.以下のように書く
ことができます.

@example
wget -c ftp://sunsite.doc.ic.ac.uk/ls-lR.Z
@end example

現在のディレクトリにファイル名@file{ls-lR.Z}がある場合,Wgetは,それがリ
モートファイルの最初の位置だと考え,ローカルファイルと同じ長さのオフセッ
トから回収を続けるためサーバに要求します.

Wgetに,接続が失われたとき中止したところで回収を続けさせたいだけの場合,
このオプションを指定する必要が無いことに注意してください---Wgetは,これ
をデフォルトで行います.他の@sc{ftp}クライアントで保存されたり,キルされ
たWgetが残した,既に半分回収しているファイルの回収を続けたいときだけ,こ
のオプションを指定する必要があります.

@samp{-c}が無い場合,前の例はリモートファイルを@file{ls-lR.Z.1}にダウン
ロードを開始するだけです.@samp{-c}オプションは,@code{Range}ヘッダをサ
ポートする@sc{http}サーバに対する適応も可能です.

@cindex dot style
@cindex retrieval tracing style
@item --dot-style=@var{style}
回収形式を@var{style}に設定します.Wgetは画面にドットを出力しながらそれ
ぞれのドキュメントの回収を追跡し,それぞれのドットは回収されたデータの固
定量を表現します.あらゆるドットの数は,数えやすくするため,@dfn{クラス
タ}で分けられます.このオプションで,前もって定義された形式,ドットが表
現するバイト数の定義,クラスタ内のドット数,そして行のドット数の1つを選
択できます.

@code{default}形式を用いた場合,それぞれのドットは1Kを表現し,クラスタ内
に10ドット,1行に50ドットあります.@code{binary}形式は,より``コンピュー
タ''ライクの起源です---8Kが1ドット,16ドットが1クラスタで,48ドットが1行
です(1行384Kになります).@code{mega}形式は,非常に大きなファイルのダウン
ロードに適しています---それぞれのドットが64Kの回収,クラスタ内に8ドット,
そしてそれぞれの行が48ドットになります(それぞれの行は3M含みます).
@code{micro}スタイルは,その正反対です.それは小さなファイルのダウンロー
ドに適していて,128バイトが1ドット,8ドットが1クラスタ,そして48ドット
(6K)が1行になります.

@item -N
@itemx --timestamping
タイムスタンプを開始します.詳細は,@xref{Time-Stamping}.

@cindex server response, print
@item -S
@itemx --server-response
@sc{http}サーバが送るヘッダを出力したり,@sc{ftp}サーバに返事を送ったり
します.

@cindex Wget as spider
@cindex spider
@item --spider
このオプションで呼び出された場合,WgetはWeb @dfn{spider}として動作し,そ
れはページをダウンロードせずその存在を調査することを意味します.例えば,
以下のようにブックマークの調査で使用できます.


@example
wget --spider --force-html -i bookmarks.html
@end example

この特徴は,Wgetを真の@sc{www} spiderの能力に近づけるため,さらにより多
くの仕事が必要です.

@cindex timeout
@item -T seconds
@itemx --timeout=@var{seconds}
読み込みタイムアウトを@var{seconds}秒に設定します.ネットワーク読み込み
が発生するときはいつでも,ファイルディスクリプタはタイムアウトを調査し,
それ以外では,接続をペンディングのままにします(読み込みを中断しません).
デフォルトタイムアウトは900秒(15分)です.タイムアウトを0に設定するとタイ
ムアウトの調査はできません.

何を行っているか分からない場合,このオプションでタイムアウトのデフォルト
値を小さくしないでください.

@cindex pause
@cindex wait
@item -w @var{seconds}
@itemx --wait=@var{seconds}
回収の間で,指定した秒数待ちます.要求の生成を少なくすることでサーバの負
荷を軽くするので,このオプションの使用は勧められます.秒の代わりに時間を
@code{m}で後置した分,@code{h}を後置した時間,@code{d}を後置した1日で指
定できます.

このオプションに大きな値を指定すると,ネットワークや接続先のホストが落ち
た場合,Wgetはリトライする前にネットワークエラーを治すのに予測される,相
当長い時間待つことができるので役に立ちます.

@cindex proxy
@item -Y on/off
@itemx --proxy=on/off
プロキシサポートを開始/停止します.適切な環境変数が定義されている場合,
プロキシはデフォルトです.

@cindex quota
@item -Q @var{quota}
@itemx --quota=@var{quota}
自動回収に対するダウンロードクォータを指定します.値は(デフォルトで)バイ
ト,(@samp{k}の後置で)キロバイト,(@samp{m}の後置で)メガバイトで指定され
ます.

クォータは単一ファイルのダウンロードで効果が無いことに注意してください.
そのため,@samp{wget -Q10k ftp://wuarchive.wustl.edu/ls-lR.gz}のように指
定した場合,@file{ls-lR.gz}全体がダウンロードされます.いくつかの
@sc{url}がコマンドラインで指定されたときも,同様なことが生じます.しかし,
回収が再帰的なときや入力ファイルからのとき,クォータは重視されます.こう
して,安全に@samp{wget -Q2m -i sites}と入力ことができます---ダウンロード
はクォータ以上になったとき中止します.

クォータを0や@samp{inf}に設定すると,ダウンロードクォータは無制限になり
ます.
@end table


@node Directory Options, HTTP Options, Download Options, Invoking
@section ディレクトリオプション

@table @samp
@item -nd
@itemx --no-directories
再帰的に回収するとき,ディレクトリの階層を作成しません.このオプションを
開始すると,全てのファイルは現在のディレクトリに上書き無しで保存されます
(名前が1度以上現れる場合,ファイル名は拡張子@samp{.n}が付きます).

@item -x
@itemx --force-directories
@samp{-nd}の反対です---階層無しで作成されていても,ディレクトリ階層を作
成します.例えば,@samp{wget -x http://fly.cc.fer.hr/robots.txt}はファイ
ルを@file{fly.cc.fer.hr/robots.txt}にダウンロードします.

@item -nH
@itemx --no-host-directories
ホストを前置したディレクトリの生成を不可にします.デフォルトで,Wgetを
@samp{-r http://fly.cc.fer.hr/}を用いて呼び出した場合,
@file{fly.cc.fer.hr/}で始まるディレクトリ構造を作成します.このオプショ
ンはそのような動作を不可にします.

@cindex cut directories
@item --cut-dirs=@var{number}
ディレクトリコンポーネントの@var{number}を無視します.再帰的回収で保存さ
れたディレクトリ上の,きめ細かい制御でこれは便利です.

例えば,@samp{ftp://ftp.xemacs.org/pub/xemacs/}ディレクトリの取得すると
します.@samp{-r}で回収した場合,@file{ftp.xemacs.org/pub/xemacs/}以下に
ローカル保存されます.一方,@samp{-nH}オプションは@file{ftp.xemacs.org/} 
の部分を削除し,@file{pub/xemacs}で保存します.これは@samp{--cut-dirs}が
役に立つところです.それは,Wgetにリモートディレクトリコンポーネントの
@var{number}を見ないようにさせます.ここに,@samp{--cut-dirs}オプション
が働くいくつかの例があります.

@example
@group
No options        -> ftp.xemacs.org/pub/xemacs/
-nH               -> pub/xemacs/
-nH --cut-dirs=1  -> xemacs/
-nH --cut-dirs=2  -> .

--cut-dirs=1      -> ftp.xemacs.org/xemacs/
...
@end group
@end example

ディレクトリ構造を取り除きたいだけの場合,このオプションは@samp{-nd}と
@samp{-P}の組合せに似ています.しかし,@samp{-nd}とは異なり,
@samp{--cut-dirs}はサブディレクトリを失いません---例えば,@samp{-nH
--cut-dirs=1}を用いた場合,@file{beta/}サブディレクトリは,期待通りに
@file{xemacs/beta}に置かれます.

@cindex directory prefix
@item -P @var{prefix}
@itemx --directory-prefix=@var{prefix}
ディレクトリプレフィクスを@var{prefix}に設定します.@dfn{ディレクトリプ
レフィクス}は,他の全てのファイルとサブディレクトリが保存されるディレク
トリで,すなわち回収ツリーのトップです.デフォルトは@samp{.}(カレントディ
レクトリ)です.
@end table


@node HTTP Options, FTP Options, Directory Options, Invoking
@section HTTPオプション

@table @samp
@cindex http user
@cindex http password
@cindex authentication
@item --http-user=@var{user}
@itemx --http-passwd=@var{password}
@sc{http}サーバでのユーザ名を@var{user}に,そしてパスワードを
@var{password}に指定します.試みる形式によって,Wgetは@code{basic} (安全
でない),または@code{digest}認証手法のどちらかを用いて符号化します.

もう1つの方法は,ユーザ名とパスワードを@sc{url}自身に書く方法です
(@pxref{URL Format}).Wgetの安全な発行についての詳細は,@xref{Security
Considerations}.

@cindex proxy
@cindex cache
@item -C on/off
@itemx --cache=on/off
オフに設定したとき,サーバサイドのキャッシュを不可にします.この場合,
Wgetは,リモートサービスからファイルを得るため,キャッシュバージョンを返
す代わりに,リモートサーバに適切なディレクティブ(@samp{Pragma:
no-cache})を送ります.これは,プロキシサーバの時代遅れのドキュメントを回
収し,クリアするときに特に役立ちます.

キャッシュはデフォルトで許可されます.

@cindex Content-Length, ignore
@cindex ignore length
@item --ignore-length
残念ながら,@sc{http}サーバ(より正確には@sc{cgi}プログラム)は,偽の
@code{Content-Length}ヘッダを送り,それでは,ドキュメント全てが回収され
ないので,Wgetがおかしくなります.Wgetが同じドキュメントを何度も何度も回
収し,そのたび毎に(通常でない)接続が同じバイト数で閉じている報告を得る場
合,この症状を見付けることができます.

このオプションを用いた場合,Wgetは@code{Content-Length}ヘッダを---まるで
存在しないかのように---無視します.

@cindex header, add
@item --header=@var{additional-header}
@var{additional-header}を@sc{http}に渡すために定義します.ヘッダは,1つ
以上の空白ではない文字の前に@samp{:}を含み,改行を含めてはなりません.

1つ以上の追加ヘッダを,1度以上@samp{--header}を指定することで定義できま
す.

@example
@group
wget --header='Accept-Charset: iso-8859-2' \
     --header='Accept-Language: hr'        \
       http://fly.cc.fer.hr/
@end group
@end example

ヘッダ値として空の文字列を指定すると,以前ユーザが定義した全てのヘッダを
クリアします.

@cindex proxy user
@cindex proxy password
@cindex proxy authentication
@item --proxy-user=@var{user}
@itemx --proxy-passwd=@var{password}
プロキシサーバの認証に対する,ユーザ名@var{user}とパスワード
@var{password}を指定します.Wgetはこれらを@code{basic}認証手法で符号化し
ます.

@cindex server response, save
@item -s
@itemx --save-headers
@sc{http}サーバがファイルにつけて送ったヘッダを,空白行で分けて,実際の
内容の前につけて保存します.

@cindex user-agent
@item -U @var{agent-string}
@itemx --user-agent=@var{agent-string}
@var{agent-string}として@sc{http}サーバを識別します.

@sc{http}プロトコルは,クライアントが@code{User-Agent}ヘッダフィールドを
用いた自分自身の識別を許可します.これで@sc{www}ソフトウェアの区別が可能
となり,通常,プロトコル違反の追跡目的には十分です.Wgetは通常
@samp{Wget/@var{version}}として識別され,@var{version}はWgetの現在のバー
ジョンナンバーです.

しかし,サイトによっては@code{User-Agent}が供給する情報によって出力を調
整するポリシーを課すことが知られています.概念的に,これはそんなに悪い考
えではないので,@code{Mozilla}やMicrosoft @code{Internet Explorer}以外の
クライアントに情報の提供を拒否するように乱用されていました.このオプショ
ンで,Wgetが発行する@code{User-Agent}を変更できます.このオプションの使
用は,行っていることを本当に知らない場合,思い留まってください.

Netscape Communications Corp.は,@code{User-Agent}として@samp{Mozilla}の
不正転送は著作権違反だと主張していて,それは訴訟されることに@strong{注意}
してください.WgetをMozillaとして間違って述べては@strong{なりません}.
@end table


@node FTP Options, Recursive Retrieval Options, HTTP Options, Invoking
@section FTPオプション

@table @samp
@cindex retrieve symbolic links
@item --retr-symlinks
@sc{ftp}サイトのシンボリックリンクを,プレーンファイルであるかのように回
収します.すなわちローカルにリンクを作成しません.

@cindex globbing, toggle
@item -g on/off
@itemx --glob=on/off
@sc{ftp}グラブをオン/オフします.グラブは,シェルのような特別文字
(@dfn{ワイルドカード})を意味し,同じディレクトリから一度に1つ以上のファ
イルを回収するための@samp{*},@samp{?},@samp{[}と@samp{]}のようなもので,
以下のようにします.

@example
wget ftp://gnjilux.cc.fer.hr/*.msg
@end example

デフォルトで,@sc{url}がグラブ文字を含む場合,グラブはオンです.このオプ
ションは,永久的にグラブのオン/オフに使用できます.

シェルによる拡張から保護するため,@sc{url}を引用符で囲む必要があるかもし
れません.グラブはWgetにディレクトリリストを探させ,それはシステムで指定
されます.これは,現在の仕事が@sc{ftp}サーバでのみ働く理由です(そしてそ
れは,Unix @code{ls}出力をエミュレートします).

@cindex passive ftp
@item --passive-ftp
@dfn{passive} @sc{ftp}回収手法を使用し,そして,そこでクライアントはデー
タ接続を開始します.これは,@sc{ftp}をファイアーウォールの後ろで働かせる
ため,必要なときもあります.
@end table


@node Recursive Retrieval Options, Recursive Accept/Reject Options, FTP Options, Invoking
@section 再帰的な回収オプション

@table @samp
@item -r
@itemx --recursive
再帰的な回収を開始します.詳細は@xref{Recursive Retrieval}.

@item -l @var{depth}
@itemx --level=@var{depth}
再帰的な最大深度レベルを@var{depth}に設定します.(@pxref{Recursive
Retrieval}).デフォルト最大深度は5です.

@cindex proxy filling
@cindex delete after retrieval
@cindex filling proxy cache
@item --delete-after
このオプションは,ダウンロードした@emph{後},全ての単一ファイルを削除す
るよう,Wgetに伝えます.それはプロキシから取得した一般的なページに対し便
利で,例えば以下のようにします.

@example
wget -r -nd --delete-after http://whatever.com/~popular/page/
@end example

@samp{-r}オプションは再帰的に回収し,@samp{-nd}はディレクトリを作成しま
せん.

@cindex conversion of links
@cindex links conversion
@item -k
@itemx --convert-links
相対的でないリンクをローカルの相対的なものに変換します.実際にダウンロー
ドされたドキュメントの参照のみが変換されます.残りは変換されません.

ダウンロード後のみ,Wgetはリンクがダウンロードされたことを知ることができ
ます.そのため,@samp{-k}が行う多くの仕事は,ダウンロード後に実行されま
す.

@item -m
@itemx --mirror
ミラーに適したオプションを開始します.このオプションは回収とタイムスタン
プを開始し,無限の再帰深度を設定し,@sc{ftp}ディレクトリリストを保ちます.
現在は,@samp{-r -N -l inf -nr}と同じです.

@item -nr
@itemx --dont-remove-listing
@sc{ftp}の回収で生成された,一時的な@file{.listing}を削除しません.通常,
これらのフィルは@sc{ftp}サーバから得た生のディレクトリリストを含みます.
それを削除しないことで,ミラーの実行時やデバッグ目的で,完全にリモートの
ファイルリストへのアクセスを便利にします.
@end table


@node Recursive Accept/Reject Options,  , Recursive Retrieval Options, Invoking
@section 再帰の適応/拒絶オプション

@table @samp
@item -A @var{acclist} --accept @var{acclist}
@itemx -R @var{rejlist} --reject @var{rejlist}
受け入れるまたは拒絶するため,カンマで分けられたファイル名の接尾子やパター
ンを指定します(詳細は,@xref{Types of Files}.).

@item -D @var{domain-list}
@itemx --domains=@var{domain-list}
受け入れるドメインと,@sc{dns}が探すものを設定し,そのとき
@var{domain-list}はカンマで分けられたリストとなります.@samp{-H}を開始し
ないことに注意してください.このオプションは,1つのホストのみ補っている
場合でも(@pxref{Domain Acceptance}),動作を速くします.

@item --exclude-domains @var{domain-list}
@sc{dns}検索から,カンマで分けられた@var{domain-list}で与えるドメインを
削除します(@pxref{Domain Acceptance}).

@item -L
@itemx --relative
相対的なリンクのみたどります.たとえ同じホストの場合でも,乱すこと無く,
特定のホームページを指定して回収するとき便利です(@pxref{Relative Links}).

@cindex follow FTP links
@item --follow-ftp
@sc{html}ドキュメントからの@sc{ftp}リンクをたどります.このオプションが
無い場合,Wgetは全ての@sc{ftp}リンクを無視します.

@item -H
@itemx --span-hosts
再帰的な回収時に,ホストに跨ることを可能とします(@pxref{All Hosts}).

@item -I @var{list}
@itemx --include-directories=@var{list}
ダウンロード時に,だどりたいディレクトリのカンマで分けられたリストを指定
します(詳細は,@xref{Directory-Based Limits}.).@var{list}の要素はワイル
ドカードを含ることができます.

@item -X @var{list}
@itemx --exclude-directories=@var{list}
ダウンロードから削除したいディレクトリの,カンマで分けられたリストを指定
します(詳細は,@xref{Directory-Based Limits}.).@var{list}の要素はワイル
ドカードを含められます.

@item -nh
@itemx --no-host-lookup
時間がかかる,ほとんど全てのホストの@sc{dns}検索を不可にします
(@pxref{Host Checking}).

@item -np
@item --no-parent
再帰的な回収時に,親ディレクトリへ登りません.特定の階層@emph{以下の}ファ
イルのみダウンロードすることを保証するので,これは便利なオプションです.
詳細は,@xref{Directory-Based Limits}.
@end table


@node Recursive Retrieval, Following Links, Invoking, Top
@chapter 再帰的な回収
@cindex recursion
@cindex retrieving
@cindex recursive retrieval

GNU Wgetは,Web(または,単一の@sc{http}や@sc{ftp}サーバ)の部分を,最初の
深さからのリンク,そしてディレクトリ構造を渡り歩くことができます.これは
@dfn{再帰的}回収,または@dfn{再帰}と呼ばれます.

@sc{http} @sc{url}を用いると,Wgetは与えられた@sc{url}から得た@sc{html},
@code{href}や@code{src}のようなマークアップを通じて@sc{html}ドキュメント
が参照していたファイルを回収するドキュメントを,回収統合します.新たにダ
ウンロードされたファイルも@code{text/html}形式の場合,それは解析され更に
続けます.

回収が下降する最大の@dfn{深度}は,@samp{-l}オプションで指定されます(デフォ
ルトの最大深度は5階層です).@xref{Recursive Retrieval}.

@sc{ftp} @sc{url}を再帰的に回収するとき,Wgetはリモートサーバの与えられ
た(指定された深度以上のサブディレクトリを含め)ディレクトリツリーから,全
てのデータを回収し,ローカルにミラーイメージを作成します.@sc{ftp}の回収
も,@code{depth}パラメータで制限されます.

デフォルトで,Wgetはローカルディレクトリツリーを作成し,それはリモートサー
バで見つかったものに対応します.

再帰的回収は複数の応用が可能で,最も重要なものはミラーです.それは,
@sc{www}プレゼンテーションと,その他のネットワーク接続が遅い時に,ファイ
ルをローカルに保存することでバイパスするために役立ちます.

再帰呼び出しは,ネットワークを通じたデータの高速転送のため,システムの過
負荷を起こす可能性があることを警告します.これらは全て,他のユーザの仕事
を妨げる可能性があります.ミラーしている外部サーバも同じことです--- 連続
的な取得のより多くの要求は,その負荷をより大きくします.

不注意な回収は,ファイルシステムを制御不能なまでに一杯にし,それでマシン
は停止するはずです.

負荷は,最大再帰レベル(@samp{-l})を低くする,またはリトライ回数
(@samp{-t})を低くすることで最小にできます.リモートサーバへの要求を遅く
するため,@samp{-w}オプションの使用や,同様に,リンクをたどる
(@pxref{Following Links})数を小さくする多数のオプションも考えることもで
きます.

再帰的な回収は,正確に使用されると良いものです.不注意で破壊を引き起こす
ことが無いようあらゆる用心を図ってください.


@node Following Links, Time-Stamping, Recursive Retrieval, Top
@chapter リンクの追跡
@cindex links
@cindex following links

再帰的な回収で,不必要なデータの回収を導くことは望みません.ほとんどいつ
も,正確にダウンロードしたいものと,Wgetにたどらせたい特定のリンクのみを
ユーザは心に留めます.

例えば,@samp{fly.cc.fer.hr}から音楽のアーカイブをダウンロードしたい場合,
アーカイブの曖昧な部分を参照して生じる,全てのホームページのダウンロード
を望みません.

たどりたいリンクを正確に調整することを可能とする,いくつかのメカニズムが
Wgetにはあります.

@menu
* Relative Links::         Follow relative links only.
* Host Checking::          Follow links on the same host.
* Domain Acceptance::      Check on a list of domains.
* All Hosts::              No host restrictions.
* Types of Files::         Getting only certain files.
* Directory-Based Limits:: Getting only certain directories.
* FTP Links::              Following FTP links.
@end menu

@node Relative Links, Host Checking, Following Links, Following Links
@section 相対的なリンク
@cindex relative links

相対的なリンクのみたどるとき(option @samp{-L}),再帰的な回収はホストを決
して跨ぎません.@sc{dns}検索の貴重な時間は実行されず,ネットワークの最低
限の負担で,非常に速く処理されます.これはよくあるニーズで,様々な
@code{x2html}コンバータの出力をミラーするとき,それらは相対リンクを生成
するので特に適しています.


@node Host Checking, Domain Acceptance, Relative Links, Following Links
@section ホストの調査
@cindex DNS lookup
@cindex host lookup
@cindex host checking

相対的リンクを単にだどる欠点は,人間は実際には同じホストと実際には同じペー
ジに対し絶対的リンクを混ぜることが多いためです.このモード(リンクをたど
るデフォルトモード)では,同じホストを参照する全ての@sc{url}は回収されま
す.

このオプションの問題は,ホストとドメインの別名です.実際,Wgetが
@samp{regoc.srce.hr}と@samp{www.srce.hr}が同じホストであるとか,
@samp{fly.cc.fer.hr}が@samp{fly.cc.etf.hr}と同じホストであるとかを知る方
法はありません.絶対的リンクに出会うときはいつも,同じホストを扱っている
可能性を調査するため,ホストは@code{gethostbyname}で@sc{dns}検索されます.
@code{gethostbyname}の結果はキャッシュされますが,非常に遅くなり,例えば,
異なるホストのホームページの大きな索引を扱うときです(それぞれのホストに
対しそうする必要があり,開始ホストの別名@emph{かどうか}を知るため,
@sc{dns}解決されるためです).

オーバーヘッドを避けるため,@samp{-nh}を使用でき,それは@sc{dns}解決と,
Wgetにホストを文字通り比較させることを停止します.これはことを非常に速く
実行させますが,信頼性も小さくなるでしょう(例えば,@samp{www.srce.hr}と
@samp{regoc.srce.hr}は異なるホストとして,フラグが立ちます).

現在の@sc{http}サーバは,1つのIPアドレスで異なる@dfn{virtual servers} ホ
ストとなることが可能で,それぞれは独自のディレクトリ階層があります.その
ような``サーバ''は,ホスト名(全て同じIPアドレスを持ちます)で区別されます.
これが働くため,クライアントは@code{Host}ヘッダを送る必要があり,それは
Wgetが行います.しかしこの場合,Wgetはホストの``実際の''アドレスを占って
みたり,それぞれのアクセスに対し同じホスト名を使用してみてはならず,すな
わち,@samp{-nh}をオンにする必要があります.

言い替えると,@samp{-nh}オプションは,ホスト名で区別されたバーチャルサー
バからの回収を可能とするために使用する必要があります.そのようなサーバの
設定が増えるにつれ,@samp{-nh}の動作は,将来デフォルトとなるかもしれませ
ん.


@node Domain Acceptance, All Hosts, Host Checking, Following Links
@section ドメインの受け入れ

@samp{-D}オプションを用いて,たどるドメインを指定できます.このリストに
無いホストドメインは,@sc{dns}解決されません.このため,@sc{mit}の外側を
検索しないことを確実にするため,@samp{-Dmit.edu}を指定することができます.
これは非常に重要で役に立ちます.それは,@samp{-D}が@samp{-H} (全てのホス
トを跨ぐ)を暗示しないことを意味し,それは特に指定する必要があります.全
てのホストの調査をほとんど全て信頼する場合,速くことを進めるため,このオ
プションの使用は自由だと考えてください.以下のように呼び出します.

@example
wget -r -D.hr http://fly.cc.fer.hr/
@end example

@samp{.hr}ドメインのホストのみ@samp{fly.cc.fer.hr}と同じということを
@sc{dns}検索で確実にします.そして,@samp{fly.cc.etf.hr}は(一度だけ!)調
査され,同じだと分かりますが,@samp{www.gnu.ai.mit.edu}は調査さえされま
せん.

もちろん,ドメインの受け入れは,その中のホストを跨ぐことで,特定のドメイ
ンを回収する制限が使用できますが,そのときは特に@samp{-H}を指定する必要
があります.例えば,以下のようにします.

@example
wget -r -H -Dmit.edu,stanford.edu http://www.mit.edu/
@end example

これは@samp{http://www.mit.edu/}で開始し,@sc{mit}とStanfordを跨ってたど
ります.

指定から外したいドメインがある場合,@samp{--exclude-domains}で行うことが
でき,それは@samp{-D}の引数と同じ形式を受け入れますが,リストアップされ
た全てのドメインを@emph{除外}します.例えば,@samp{sunsite.foo.edu}以外
の@samp{foo.edu}ドメインから,全てのホストをダウンロードしたい場合,以下
のようにすることで可能です.

@example
wget -rH -Dfoo.edu --exclude-domains sunsite.foo.edu http://www.foo.edu/
@end example


@node All Hosts, Types of Files, Domain Acceptance, Following Links
@section 全てのホスト
@cindex all hosts
@cindex span hosts

@samp{-D}無しで@samp{-H}が指定されたとき,全てのホストは自由に跨げます.
最大深度以外,Wgetがドキュメントを取ってくるネットの部分がどこであれ,制
限がありません.@samp{www.yahoo.com}にページ参照があった場合,そうします.
そのようなオプションは,それ自身滅多に役に立ちません.


@node Types of Files, Directory-Based Limits, All Hosts, Following Links
@section ファイルの形式
@cindex types of files

ウェブから資料をダウンロードするとき,特定のファイル形式のみを回収するよ
う,制限したいときもよくあります.例えば,@sc{gifs}をダウンロードするこ
とに興味がある場合,ポストスクリプトのドキュメントでの負荷は嬉しいはずが
無く,逆もまたそうです.

Wgetは,この問題を扱う2つのオプションを提案します.それぞれのオプション
は,短い名前,長い名前,そして@file{.wgetrc}内の等価コマンドをリストアッ
プします.

@cindex accept wildcards
@cindex accept suffixes
@cindex wildcards, accept
@cindex suffixes, accept
@table @samp
@item -A @var{acclist}
@itemx --accept @var{acclist}
@itemx accept = @var{acclist}
@samp{--accept}オプションの引数は,Wgetが再帰的な回収の間にダウンロード
するファイルの,接尾子やパターンのリストです.接尾子はファイルの終りの部
分で,``通常の''文字列,例えば@samp{gif}や@samp{.jpg}から成り立ちます.
パターンマッチはシェルのワイルドカードを含み,例えば,@samp{books*}や
@samp{zelazny*196[0-9]*}です.

そして,@samp{wget -A gif,jpg}を指定すると,Wgetは@samp{gif}や@samp{jpg} 
で終るファイルのみ,すなわち@sc{gif}と@sc{jpeg}をダウンロードします.一
方,@samp{wget -A "zelazny*196[0-9]*"}は,@samp{zelazny}で始まり,その中
に1960から1969までの数字を含むファイルのみをダウンロードします.パターン
マッチが働く方法の記述のため,シェルのマニュアルを探してください.

もちろん,あらゆる数の接尾子とパターンをカンマで分けたリストで組み合わせ
ることや,@samp{-A}の引数として与えることができます.

@cindex reject wildcards
@cindex reject suffixes
@cindex wildcards, reject
@cindex suffixes, reject
@item -R @var{rejlist}
@itemx --reject @var{rejlist}
@itemx reject = @var{rejlist}
@samp{--reject}オプションは@samp{--accept}と同じように働きますが,その論
理は反対です.Wgetは,リストの接尾子(やパターン)に一致するもの@emph{以外
の},全てのファイルをダウンロードします.

そして,扱いにくい@sc{mpeg}と@sc{.au}ファイル以外の,ページ全体をダウン
ロードしたい場合,@samp{wget -R mpg,mpeg,au}を使用できます.同様に,
@samp{bjork}で始まるファイル以外全てをダウンロードするため,@samp{wget
-R "bjork*"}を使用してください.引用符はシェルによる展開を妨げるためです.
@end table

@samp{-A}と@samp{-R}オプションは,回収するファイルのより良い調整を達成す
るため,組み合わせることができます.例えば,@samp{wget -A "*zelazny*" -R
.ps}は,名前の一部に@samp{zelazny}を持ち,ポストスクリプト@emph{ではない}
全てのファイルをダウンロードします.

これら2つのオプションは,@sc{html}ファイルのダウンロードで,効果が無いこ
とに注意してください.Wgetは全ての@sc{html}をリンク先を知るためにロード
する必要があります---再帰的な回収は,そうしなければ意味がありません.


@node Directory-Based Limits, FTP Links, Types of Files, Following Links
@section ディレクトリベースの制限
@cindex directories
@cindex directory limits

他のリンクを追う能力にもかかわらず,ファイルがあるディレクトリを基に,回
収するファイルの制限を置くことは便利なときも良くあります.これには多くの
理由があります---ホームページは合理的なディレクトリ構造に組織化されてい
るかもしれません.またはいくつかのディレクトリ,例えば@file{/cgi-bin}や
@file{/dev}ディレクトリは,無用な情報を含むかもしれません.

Wgetは,これらの要求を扱うため,3つの異なるオプションを提案します.それ
ぞれのオプションは,短い名前,長い名前,そして@file{.wgetrc}内の等価コマ
ンドをリストアップします.

@cindex directories, include
@cindex include directories
@cindex accept directories
@table @samp
@item -I @var{list}
@itemx --include @var{list}
@itemx include_directories = @var{list}
@samp{-I}オプションは,カンマで分けられた回収に含めるディレクトリのリス
トを受け入れます.他のあらゆるディレクトリは単に無視されます.ディレクト
リは絶対パスです.

そして,@samp{http://host/people/bozo/}から@file{/people}ディレクトリの
bozoの仲間へのリンクと@file{/cgi-bin}の偽りのスクリプトのみだどってダウ
ンロードしたい場合,以下のように指定できます.

@example
wget -I /people,/cgi-bin http://host/people/bozo/
@end example

@cindex directories, exclude
@cindex exclude directories
@cindex reject directories
@item -X @var{list}
@itemx --exclude @var{list}
@itemx exclude_directories = @var{list}
@samp{-X}オプションは@samp{-I}の正反対です---これは,ダウンロードから
@emph{除外する}ディレクトリのリストです.例えば,Wgetで@file{/cgi-bin}ディ
レクトリからのものをダウンロードしたくない場合,コマンドラインで@samp{-X
/cgi-bin}を指定してください.

@samp{-A}/@samp{-R}と同様に,これら2つのオプションは,サブディレクトリの
ダウンロードでより良く調整するため,組み合わせることができます.例えば,
@file{/pub/worthless}以外の@file{/pub}階層からの全てをロードしたい場合,
@samp{-I/pub -X/pub/worthless}を指定してください.

@cindex no parent
@item -np
@itemx --no-parent
@itemx no_parent = on
最も単純に,ディレクトリを制限する良く利用される便利な方法は,開始より
@emph{上の}階層を参照するリンクの回収を許可しないことで,すなわち,親の
ディレクトリ等への上昇を許可しないことです.

@samp{--no-parent}オプション(短いものは@samp{-np})は,この場合便利です.
その利用は,今居る階層から出ないことを保証します.Wgetを以下のようにして
呼び出したとします.

@example
wget -r --no-parent http://somehost/~luzer/my-archive/
@end example

@file{/~his-girls-homepage/}や@file{/~luzer/all-my-mpegs/}へ参照するもの
は参照するものをたどらないので安心できます.興味があるアーカイブのみダウ
ンロードされます.特に,それはより知的な方法でリダイレクトを処理するだけ
なので,@samp{--no-parent}は@samp{-I/~luzer/my-archive}に似ています.
@end table


@node FTP Links,  , Directory-Based Limits, Following Links
@section FTPリンクをだどる
@cindex following ftp links

@sc{ftp}の規則は,そうさせる必要があるので,幾分特殊です.@sc{html}ドキュ
メントの@sc{ftp}リンクは参照の目的を含むことが多く,デフォルトでダウンロー
ドするため不便なことがよくあります.

@sc{html}ドキュメントから@sc{ftp}へのリンクをたどらせるため,
@samp{--follow-ftp}オプションを指定する必要があります.そうすることで,
@sc{ftp}リンクは,@samp{-H}の設定にかかわらずホストを跨ぎます.@sc{ftp} 
リンクが@sc{http}サーバと同じホストを示すことが滅多にないので,これは論
理的です.同様の理由で@samp{-L}オプションは,そのようなダウンロードで効
果がありません.一方,ドメインの受け入れ(@samp{-D})と接尾子の規則
(@samp{-A}と@samp{-R})は通常適用されます.

また,@sc{ftp}ディレクトリへのリンクをたどることは,再帰的回収以上ではな
いことに注意してください.


@node Time-Stamping, Startup File, Following Links, Top
@chapter タイムスタンプ
@cindex time-stamping
@cindex timestamping
@cindex updating the archives
@cindex incremental updating

インターネットからの情報のミラーの側面で最も重要なことの1つは,アーカイ
ブの更新です.

アーカイブを何度も何度もダウンロードすると,わずかに変更されたファイルの
置換だけでは勿体なく,それは,バンド帯域とお金の無駄使いと更新する時間の
両方の意味です.これは,全てのミラーツールが逐次的な更新のオプションを提
案する理由です.

そのような更新メカニズムは,リモートサーバが@dfn{新しい}ファイルの検索で,
スキャンされることを意味します.これらの新しいファイルのみ,古いものに置
換されます.

以下の2つの条件のどちらか1つが当てはまる場合,ファイルは新しいものと考え
られます.

@enumerate
@item
その名前のファイルが,ローカルにまだ存在しない.

@item
その名前のファイルが存在するが,リモートファイルがローカルファイルより後
で編集されている.
@end enumerate

これをインプリメントするため,プログラムは,リモートとローカルの両方のファ
イルが最後に更新された時間に気付いている必要があります.そのような情報は,
@dfn{タイムスタンプ}と呼ばれます.

GNU Wgetのタイムスタンプは,@samp{--timestamping} (@samp{-N})オプション
や,@file{.wgetrc}での@code{timestamping = on}の命令を通じて開始されます.
このオプションで,それぞれのファイルをダウンロードするため,Wgetは,存在
する同じ名前のローカルファイルを調査します.それが存在し,リモートファイ
ルが古い場合,Wgetはそれをダウンロードしません.

ローカルファイルが存在しない場合や,ファイルサイズが一致しない場合,Wget
はタイムスタンプを気にせずに,リモートファイルをダウンロードします.

@menu
* Time-Stamping Usage::
* HTTP Time-Stamping Internals::
* FTP Time-Stamping Internals::
@end menu

@node Time-Stamping Usage, HTTP Time-Stamping Internals, Time-Stamping, Time-Stamping
@section タイムスタンプの利用
@cindex time-stamping usage
@cindex usage, time-stamping

タイムスタンプの利用は単純です.編集日時を保つため,ダウンロードしたいファ
イルに対し以下のようにします.

@example
wget -S http://www.gnu.ai.mit.edu/
@end example

単純に@code{ls -l}すると,ローカルファイルのタイムスタンプが,サーバから
返されるような@code{Last-Modified}のステータスと同じになります.タイムス
タンプ情報は,見ることを可能にするため,たとえ@samp{-N}がない場合でもロー
カルに維持されます.

数日後,Wgetにリモートファイルが変化したかどうか調査させ,変化した場合ダ
ウンロードしたい場合もあります.

@example
wget -N http://www.gnu.ai.mit.edu/
@end example

Wgetはサーバに最後に編集した日付を尋ねます.ローカルファイルがより新しい
場合,リモートファイルは再取得されません.しかし,リモートファイルがより
最新の場合,Wgetは通常の取得処理を行います.

@sc{ftp}でも同じように行います.例えば以下のようにします.

@example
wget ftp://ftp.ifi.uio.no/pub/emacs/gnus/*
@end example

@code{ls}は,リモートサーバの状態に依存して,設定されているタイムスタン
プを表示します.@samp{-N}を伴うコマンドの再発行は,編集されたファイル
@emph{のみ},Wgetに再取得させます.

@sc{http}と@sc{ftp}の回収の両方で,(@samp{-N}にかかわらず)Wgetは,タイム
スタンプを取得した場合,すなはち,@sc{ftp}に対するディレクトリリストや,
@sc{http}に対する@code{Last-Modified}ヘッダの取得で,ローカルファイルに
正しいタイムスタンプを打ちます.

毎週,GNUアーカイブをミラーしたい場合,毎週以下のコマンドを入力するでしょ
う.

@example
wget --timestamping -r ftp://prep.ai.mit.edu/pub/gnu/
@end example


@node HTTP Time-Stamping Internals, FTP Time-Stamping Internals, Time-Stamping Usage, Time-Stamping
@section HTTPタイムスタンプの内部
@cindex http time-stamping

@sc{http}のタイムスタンプは,@code{Last-Modified}ヘッダの調査により実行
されます.@sc{http}でファイル@file{foo.html}を回収したい場合,Wgetは
@file{foo.html}がローカルに存在しているかどうかを調べます.存在しない場
合,@file{foo.html}は無条件に回収されます.

ローカルにファイルがある場合,Wgetは最初にローカルのタイムスタンプを調べ
(@code{ls -l}でそれを調べることに似ています),そして,リモートファイルの
情報を要求するため,@code{HEAD}要求をリモートサーバに送ります.

@code{Last-Modified}ヘッダは,ファイルがより最近編集され(``新しく''され) 
たことを知るために調べられます.リモートファイルがより新しい場合,ダウン
ロードされます.古い場合,Wgetは諦めます.@footnote{追加の調査として,
Wgetは@code{Content-Length}ヘッダを見て,そして大きさを比較します.同じ
ではない場合,リモートファイルはタイムスタンプ告げることにかかわらず,ダ
ウンロードされます.}

おそらく,@sc{http}タイムスタンプは,@code{If-Modified-Since}要求を使用
してインプリメントされるべきです.


@node FTP Time-Stamping Internals,  , HTTP Time-Stamping Internals, Time-Stamping
@section FTPタイムスタンプの内部
@cindex ftp time-stamping

理論上,@sc{ftp}タイムスタンプは@sc{http}と同じように働きますが,
@sc{ftp}にはヘッダがありません---タイムスタンプはディレクトリリストから
受け取るはずです.

それぞれのディレクトリファイルを回収するため,Wgetはリストの取得に
@code{LIST}コマンドを使用します.それは,Unix @code{ls -l}リストと想定し
リストを解析し,タイムスタンプを抽出します.残りは正確に@sc{http}と同じ
です.

全てのディレクトリリストがUnix形式のリストだという仮定は,非常に不自然に
感じるかもしれませんが,経験的にはそうではなく,その理由は,多くの非Unix
@sc{ftp}サーバが,ほとんど(全て?)のクライアントがそれを理解できるので,
Unixのようなリスト書式を使用しているためです.@sc{rfc959}定義が,タイム
スタンプはいうまでもなく,ファイルリストを取得する標準的な方法ではないこ
とを覚えておいてください.我々は,将来の標準がこのように定義されることを
期待することしかできません.

もう1つの非標準の解決方法は,(評判のよい@code{wu-ftpd}を含め)いくつかの
@sc{ftp}サーバがサポートする@code{MDTM}コマンドの使用を含み,それは指定
したファイルの正確な時間を返します.Wgetは,将来このコマンドをサポートす
るかもしれません.


@node Startup File, Examples, Time-Stamping, Top
@chapter スタートアップファイル
@cindex startup file
@cindex wgetrc
@cindex .wgetrc
@cindex startup
@cindex .netrc

コマンドライン引数で,Wgetのデフォルト設定を変更する方法を知ると,これら
の設定を永久的に行いたいと思うかも知れません.Wgetスタートアップファイル---
@file{.wgetrc}---を作成するという便利な方法でそうすることができます.

さらに,@file{.wgetrc}は``主な''初期化ファイルで,強固なパスワードに対す
る特別な能力があるので便利です.このためWgetは,@file{$HOME/.netrc}があ
る場合は,その内容を読み込み翻訳します.@file{.netrc}書式はシステムのマ
ニュアルで見つかります.

Wgetは、コマンドの限定されたセットを認識して、スタートアップ時に
@file{.wgetrc}を読みます。

@menu
* Wgetrc Location::   Location of various wgetrc files.
* Wgetrc Syntax::     Syntax of wgetrc.
* Wgetrc Commands::   List of available commands.
* Sample Wgetrc::     A wgetrc example.
@end menu

@node Wgetrc Location, Wgetrc Syntax, Startup File, Startup File
@section Wgetrcの場所
@cindex wgetrc location
@cindex location of wgetrc

初期化時,Wgetはデフォルトで@file{/usr/local/etc/wgetrc} (または,Wgetが
そこにインストールされていない場合,@file{/usr/local}ではない接頭辞)であ
る@dfn{global}なスタートアップファイルを探し,存在する場合はそれからコマ
ンドを読み込みます.

それから,ユーザファイルを探します.環境変数@code{WGETRC}が設定されてい
る場合,そのファイルをロードしようとします.失敗した場合,それ以上何もし
ません.

@code{WGETRC}が設定されていない場合,Wgetは@file{$HOME/.wgetrc}をロード
しようとします.

ユーザ設定がシステム全体のものの後にロードされるということは,ユーザの
wgetrcと衝突した場合,システム全体のwgetrc(デフォルトで
@file{/usr/local/etc/wgetrc})に@emph{優先}するということを意味します.全
体主義の管理者は不在です!


@node Wgetrc Syntax, Wgetrc Commands, Wgetrc Location, Startup File
@section Wgetrcの構文
@cindex wgetrc syntax
@cindex syntax of wgetrc

wgetrcコマンドの構文は単純です.

@example
variable = value
@end example

@dfn{変数}は@dfn{コマンド}とも呼ばれます.有効な@dfn{値}は異なるコマンド
に対し異なります.

コマンドは大文字小文字とアンダースコアを識別しません.このため,
@samp{DIr__PrefiX}は@samp{dirprefix}と同じです.@samp{#}で始まる行と空白
のみ含む行は,空行として捨てられます.

カンマで分けられたリストを期待するコマンドは,空のコマンドでリストをクリ
アします.そのため,全体的な@file{wgetrc}で指定された拒絶するリストをリ
セットしたい場合,以下のようにして行うことができます.

@example
reject =
@end example


@node Wgetrc Commands, Sample Wgetrc, Wgetrc Syntax, Startup File
@section Wgetrcコマンド
@cindex wgetrc commands

コマンドの完全なセットは以下にリストアップされていて,@samp{=}以下の文字
は,コマンドに渡す値を意味します.@samp{on/off}は@samp{on}または
@samp{off} (同様に@samp{1}または@samp{0}),@var{string}は空ではない文字
列,また,@var{n}は正の整数です.例えば,デフォルトでプロキシサーバの使
用を不可にするため,@samp{use_proxy = off}のように指定できます.適切な場
合は,無限値に対し@samp{inf}を使用できます.

ほとんどのコマンドは,コマンドラインオプションと同じですが
(@pxref{Invoking}),時代遅れのものや滅多に使用されないものは例外です.

@table @asis
@item accept/reject = @var{string}
@samp{-A}/@samp{-R} (@pxref{Types of Files})と同じです.

@item add_hostdir = on/off
ホストが前置したファイル名を利用可/不可にします.@samp{-nH}はそれを不可
にします.

@item continue = on/off
回収の継続を利用可/不可にし,それは@samp{-c} (利用可にする)と同じです.

@item background = on/off
バックグランドへの移行を可/不可にし,それは@samp{-b} (利用可にする)と同
じです.

@c @item backups = @var{number}
@c #### Document me!
@item base = @var{string}
相対的な@sc{url}のベースを設定し,それは@samp{-B}と同じです.

@item cache = on/off
オフに設定した場合,サーバキャッシュを不可にします.@samp{-C}オプション
を参照してください.

@item convert links = on/off
相対的でないリンクをローカルに変換します.それは@samp{-k}と同じです.

@item cut_dirs = @var{n}
@var{n}個のリモートディレクトリコンポーネントを無視します.

@item debug = on/off
デバッグモードで,それは@samp{-d}と同じです.

@item delete_after = on/off
ダウンロード後削除し,それは@samp{--delete-after}と同じです.

@item dir_prefix = @var{string}
ディレクトリツリーのトップで,それは@samp{-P}と同じです.

@item dirstruct = on/off
ディレクトリ構造のオン/オフを切替え,それは,それぞれ@samp{-x}や
@samp{-nd}と同じです.

@item domains = @var{string}
@samp{-D} (@pxref{Domain Acceptance})と同じです.

@item dot_bytes = @var{n}
回収中に見ている1ドットが``含む''バイト数(デフォルトで1024)を指定します.
値に@samp{k}や@samp{m}を後置することが可能で,それぞれキロバイトとメガバ
イトの代わりです.ドットの設定で,必要に応じてドットの回収を適応させたり,
前もって定義された@dfn{形式}を使用できます(@pxref{Download Options}).

@item dots_in_line = @var{n}
回収中にそれぞれの行に出力するドットの数(デフォルトで50)を指定します.

@item dot_spacing = @var{n}
1クラスタのドットの数(デフォルトで10)を指定します.

@item dot_style = @var{string}
@samp{--dot-style}を用いるように,ドットの回収@dfn{形式}を指定します.

@item exclude_directories = @var{string}
ダウンロードから除外したいディレクトリのカンマで分けられたリストを指定し,
それは@samp{-X} (@pxref{Directory-Based Limits})と同じです.

@item exclude_domains = @var{string}
@samp{--exclude-domains} (@pxref{Domain Acceptance})と同じです.

@item follow_ftp = on/off
@sc{html}ドキュメントから@sc{ftp}リンクをたどり,それは@samp{-f}と同じで
す.

@item force_html = on/off
オンに設定された場合,入力ファイル名が@sc{html}ドキュメントと同じと見な
すことを強制し,それは@samp{-F}と同じです.

@item ftp_proxy = @var{string}
環境で指定されたものの代わりに,@var{string}を@sc{ftp}プロキシとして使用
します.

@item glob = on/off
グラブをオン/オフし,それは@samp{-g}と同じです.

@item header = @var{string}
@samp{--header}のように,追加ヘッダを定義します.

@item http_passwd = @var{string}
@sc{http}パスワードを設定します.

@item http_proxy = @var{string}
環境で指定されたものの代わりに,@var{string}を@sc{http}プロキシとして使
用します.

@item http_user = @var{string}
@sc{http}ユーザを@var{string}に設定します.

@item ignore_length = on/off
オンに設定した場合,@code{Content-Length}ヘッダを無視します.
@samp{--ignore-length}と同じです.

@item include_directories = @var{string}
ダウンロード時にだどりたい,カンマで分けられたディレクトリのリストを指定
し,それは@samp{-I}と同じです.

@item input = @var{string}
@samp{-i}のように,@var{string}から@sc{url}を読み込みます.

@item kill_longer = on/off
content-lengthヘッダで指定されているより長いデータを無効だと考え(そして
それを回収し)ます.デフォルトの動作はそこにあるデータと同じだけ保存し,
つまり@code{Content-Length}の値より大きいまたは同じであると規定されます.

@item logfile = @var{string}
ログファイルを設定し,それは@samp{-o}と同じです.

@item login = @var{string}
@sc{ftp}に対するリモートマシンでのユーザ名です.デフォルトは
@samp{anonymous}です.

@item mirror = on/off
ミラーリングをオン/オフします.@samp{-m}と同じです.

@item netrc = on/off
netrcの読み込みをオン/オフします.

@item noclobber = on/off
@samp{-nc}と同じです.

@item no_parent = on/off
@samp{--no-parent} (@pxref{Directory-Based Limits})のように,ディレクト
リ階層外部への回収を禁止します.

@item no_proxy = @var{string}
環境で指定したものの代わりに,プロキシの負荷を避けるため,@var{string}を
カンマで分けられたドメインのリストとして使用します.

@item output_document = @var{string}
出力ファイル名を設定し,それは@samp{-O}と同じです.

@item passive_ftp = on/off
パッシブ@sc{ftp}に設定し,それは@samp{--passive-ftp}と同じです.

@item passwd = @var{string}
@sc{ftp}パスワードを@var{password}に設定します.設定していない場合,パス
ワードのデフォルトは@samp{username@@hostname.domainname}です.

@item proxy_user = @var{string}
@samp{--proxy-user}のように,プロキシ認証のユーザ名を@var{string}に設定
します.

@item proxy_passwd = @var{string}
@samp{--proxy-passwd}のように,プロキシ認証のパスワードを@var{string}に
設定します.

@item quiet = on/off
静かなモードで,それは@samp{-q}と同じです.

@item quota = @var{quota}
ダウンロードのクォータを指定し,それは全体的なwgetrcに置くと便利です.ダ
ウンロードクォータが指定された場合,Wgetは,ダウンロードの合計がクォータ
より大きくなった後,回収を停止します.クォータはバイト(デフォルト),キロ
バイト(@samp{k}の追加),またはメガバイト(@samp{m}の追加)で指定できます.
このため,@samp{quota = 5m}はクォータを5メガバイトに設定します.ユーザの
スタートアップファイルがシステム設定に優先することに注意してください.

@item reclevel = @var{n}
再帰のレベルで,それは@samp{-l}と同じです.

@item recursive = on/off
再帰をオン/オフし,それは@samp{-r}と同じです.

@item relative_only = on/off
相対リンクのみをたどり,それは@samp{-L} (@pxref{Relative Links})と同じで
す.

@item remove_listing = on/off
オンに設定された場合,Wgetがダウンロードした@sc{ftp}リストを削除します.
オフの設定は@samp{-nr}と同じです.

@item retr_symlinks = on/off
オンに設定したとき,シンボリックリンクをプレーンファイルであるかのように
回収します.@samp{--retr-symlinks}と同じです.

@item robots = on/off
@file{/robots.txt}ファイル(@pxref{Robots})を使用します(または使用しませ
ん)デフォルト(@samp{on})を変更する前に,自分が行っていることが分かってい
るか確かめてください.

@item server_response = on/off
@sc{http}と@sc{ftp}サーバのレスポンスの出力を行うかどうか選択し,それは
@samp{-S}と同じです.

@item simple_host_check = on/off
@samp{-nh} (@pxref{Host Checking})と同じです.

@item span_hosts = on/off
@samp{-H}と同じです.

@item timeout = @var{n}
タイムアウトの値を設定し,それは@samp{-T}と同じです.

@item timestamping = on/off
タイムスタンプのオン/オフを切替えます.@samp{-N} (@pxref{Time-Stamping}) 
と同じです.

@item tries = @var{n}
@sc{url}毎の再挑戦回数を設定し,それは@samp{-t}と同じです.

@item use_proxy = on/off
プロキシサポートのオン/オフを切替えます.@samp{-Y}と同じです.

@item verbose = on/off
冗長出力のオン/オフを切替えます.@samp{-v}/@samp{-nv}と同じです.

@item wait = @var{n}
回収の間で@var{n}秒待ち,それは@samp{-w}と同じです.
@end table


@node Sample Wgetrc,  , Wgetrc Commands, Startup File
@section Wgetrcの見本
@cindex sample wgetrc

これは,配布物で与えられる初期化ファイルの例です.それは2つの部分に分け
られます---1つは全体的な使用で(全体的なスタートアップファイルに適してい
ます),もう1つはローカルで使用するもの(@file{$HOME/.wgetrc}に適していま
す)です.変更には注意してください.

全ての行がコメントアウトされていることに注意してください.効果を得たいあ
らゆる行に対し,行の前に前置された@samp{#}を削除する必要があります.

@example
###
### Sample Wget initialization file .wgetrc
###

## You can use this file to change the default behaviour of wget or to
## avoid having to type many many command-line options. This file does
## not contain a comprehensive list of commands -- look at the manual
## to find out what you can put into this file.
## 
## Wget initialization file can reside in /usr/local/etc/wgetrc
## (global, for all users) or $HOME/.wgetrc (for a single user).
##
## To use any of the settings in this file, you will have to uncomment
## them (and probably change them).


##
## Global settings (useful for setting up in /usr/local/etc/wgetrc).
## Think well before you change them, since they may reduce wget's
## functionality, and make it behave contrary to the documentation:
##

# You can set retrieve quota for beginners by specifying a value
# optionally followed by 'K' (kilobytes) or 'M' (megabytes).  The
# default quota is unlimited.
#quota = inf

# You can lower (or raise) the default number of retries when
# downloading a file (default is 20).
#tries = 20

# Lowering the maximum depth of the recursive retrieval is handy to
# prevent newbies from going too "deep" when they unwittingly start
# the recursive retrieval.  The default is 5.
#reclevel = 5

# Many sites are behind firewalls that do not allow initiation of
# connections from the outside.  On these sites you have to use the
# `passive' feature of FTP.  If you are behind such a firewall, you
# can turn this on to make Wget use passive FTP by default.
#passive_ftp = off


##
## Local settings (for a user to set in his $HOME/.wgetrc).  It is
## *highly* undesirable to put these settings in the global file, since
## they are potentially dangerous to "normal" users.
##
## Even when setting up your own ~/.wgetrc, you should know what you
## are doing before doing so.
##

# Set this to on to use timestamping by default:
#timestamping = off

# It is a good idea to make Wget send your email address in a `From:'
# header with your request (so that server administrators can contact
# you in case of errors).  Wget does *not* send `From:' by default.
#header = From: Your Name <username@@site.domain>

# You can set up other headers, like Accept-Language.  Accept-Language
# is *not* sent by default.
#header = Accept-Language: en

# You can set the default proxy for Wget to use.  It will override the
# value in the environment.
#http_proxy = http://proxy.yoyodyne.com:18023/

# If you do not want to use proxy at all, set this to off.
#use_proxy = on

# You can customize the retrieval outlook.  Valid options are default,
# binary, mega and micro.
#dot_style = default

# Setting this to off makes Wget not download /robots.txt.  Be sure to
# know *exactly* what /robots.txt is and how it is used before changing
# the default!
#robots = on

# It can be useful to make Wget wait between connections.  Set this to
# the number of seconds you want Wget to wait.
#wait = 0

# You can force creating directory structure, even if a single is being
# retrieved, by setting this to on.
#dirstruct = off

# You can turn on recursive retrieving by default (don't do this if
# you are not sure you know what it means) by setting this to on.
#recursive = off

# To have Wget follow FTP links from HTML files by default, set this
# to on:
#follow_ftp = off
@end example


@node Examples, Various, Startup File, Top
@chapter 例
@cindex examples

明確さのため,例は3つのセクションにクラス分けされています.最初のセクショ
ンは初心者のためのチュートリアルです.2番目のセクションは,より複雑なプ
ログラムの特徴のいくつかを説明します.3番目のセクションは,ミラー管理者
のためのアドバイスと,同様に,より複雑な特徴(ひねくれた呼び出しもありま
す)を説明します.

@menu
* Simple Usage::        Simple, basic usage of the program.
* Advanced Usage::      Advanced techniques of usage.
* Guru Usage::          Mirroring and the hairy stuff.
@end menu

@node Simple Usage, Advanced Usage, Examples, Examples
@section 簡単な使用方法

@itemize @bullet
@item
@sc{url}をダウンロードしたいとします.以下のように入力します.

@example
wget http://fly.cc.fer.hr/
@end example

レスポンスは以下のようになります.

@example
@group
--13:30:45--  http://fly.cc.fer.hr:80/en/
           => `index.html'
Connecting to fly.cc.fer.hr:80... connected!
HTTP request sent, awaiting response... 200 OK
Length: 4,694 [text/html]

    0K -> ....                                                   [100%]

13:30:46 (23.75 KB/s) - `index.html' saved [4694/4694]
@end group
@end example

@item
しかし,接続が遅い場合やファイルが長いとき,何が生じるのでしょうか? 接続
は,ファイル全体を回収する前に1度以上失敗するでしょう.この場合,Wgetは
ファイル全体を取得する,または再挑戦の回数(デフォルトで20)を越えるまで,
ファイルの取得を試みます.ファイル全体を安全に得る保証のため,試みる回数
を45に変更することは簡単です.

@example
wget --tries=45 http://fly.cc.fer.hr/jpg/flyweb.jpg
@end example

@item
さて,Wgetにバックグラウンドで働くようにし,その進捗状況をログファイル
@file{log}に書き出します.@samp{--tries}と入力は大変なので,我々は
@samp{-t}を使用します.

@example
wget -t 45 -o log http://fly.cc.fer.hr/jpg/flyweb.jpg &
@end example

行の終りのアンパーサンドはWgetがバックグラウンドで働くことを確実にします.
再挑戦の回数を無制限にするため,@samp{-t inf}を使用してください.

@item
@sc{ftp}の使用は単純です.Wgetはログインとパスワードも世話します.

@example
@group
$ wget ftp://gnjilux.cc.fer.hr/welcome.msg
--10:08:47--  ftp://gnjilux.cc.fer.hr:21/welcome.msg
           => `welcome.msg'
Connecting to gnjilux.cc.fer.hr:21... connected!
Logging in as anonymous ... Logged in!
==> TYPE I ... done.  ==> CWD not needed.
==> PORT ... done.    ==> RETR welcome.msg ... done.
Length: 1,340 (unauthoritative)

    0K -> .                                                      [100%]

10:08:48 (1.28 MB/s) - `welcome.msg' saved [1340]
@end group
@end example

@item
ディレクトリを指定する場合,Wgetはディレクトリリストを回収し,それを解析
し@sc{html}に変換します.以下を試してみてください.

@example
wget ftp://prep.ai.mit.edu/pub/gnu/
lynx index.html
@end example
@end itemize


@node Advanced Usage, Guru Usage, Simple Usage, Examples
@section 高度な使用方法

@itemize @bullet
@item
ファイルから@sc{url}のリストを読み込みたいとします.それは問題ありません.

@example
wget -i file
@end example

ファイル名として@samp{-}を指定した場合,@sc{url}は標準入力から読み込まれ
ます.

@item
GNU @sc{www}サイトのミラーイメージを(オリジナルと同じディレクトリ構造で),
ドキュメント毎に1度の挑戦だけで作成し,動作のログを@file{gnulog}に保存し
ます.

@example
wget -r -t1 http://www.gnu.ai.mit.edu/ -o gnulog
@end example

@item
Yahooのリンクの最初のレイヤーを回収します.

@example
wget -r -l1 http://www.yahoo.com/
@end example

@item
オリジナルのサーバのヘッダを見せながら,@samp{www.lycos.com}のindex.html
を回収します.

@example
wget -S http://www.lycos.com/
@end example

@item
サーバヘッダをファイルに保存します.
@example
wget -s http://www.lycos.com/
more index.html
@end example

@item
@samp{wuarchive.wustl.edu}の最初の2つのレベルを回収し,/tmpに保存します.

@example
wget -P/tmp -l2 ftp://wuarchive.wustl.edu/
@end example

@item
@sc{http}ディレクトリから全ての@sc{gif}ダウンロードしたいものとします.
@sc{http}の回収はグラブをサポートしないので,@samp{wget
http://host/dir/*.gif}は動作しません.その場合以下を使用します.

@example
wget -r -l1 --no-parent -A.gif http://host/dir/
@end example

それはわずかなkludgeですが,働きます.@samp{-r -l1}は,最大深度が1の再帰
的な回収(@pxref{Recursive Retrieval})を意味します.@samp{--no-parent}は
親ディレクトリへの参照を無視すること(@pxref{Directory-Based Limits})を意
味し,@samp{-A.gif}は@sc{gif}ファイルのみをダウンロードすることを意味し
ます.@samp{-A "*.gif"}も働きます.

@item
Wgetが中断したとき,ダウンロード中だったとします.さて,既に存在するファ
イルをclobberしたくはありません.そして,以下のようにします.

@example
wget -nc -r http://www.gnu.ai.mit.edu/
@end example

@item
@sc{http}や@sc{ftp}のユーザ名とパスワードを符号化したい場合,適切な
@sc{url}構文(@pxref{URL Format})を使用してください.

@example
wget ftp://hniksic:mypassword@@jagor.srce.hr/.emacs
@end example

@item
デフォルトの回収の視覚化(1Kで1ドット,クラスタ毎に10ドット,そして1行に
50ドット)が好きではない場合,ドットの設定(@pxref{Wgetrc Commands})でカス
タマイズすることができます.例えば,1ドット8Kで1行512Kの``バイナリ''スタ
イルの回収を好む人もたくさんいます.

@example
wget --dot-style=binary ftp://prep.ai.mit.edu/pub/gnu/README
@end example

以下のように,他のスタイルを試すこともできます.

@example
wget --dot-style=mega ftp://ftp.xemacs.org/pub/xemacs/xemacs-20.4/xemacs-20.4.tar.gz
wget --dot-style=micro http://fly.cc.fer.hr/
@end example

これらの設定を永久的に行うため,前述(@pxref{Sample Wgetrc})したように
@file{.wgetrc}に書いてください.
@end itemize


@node Guru Usage,  , Advanced Usage, Examples
@section グルの使用方法

@cindex mirroring
@itemize @bullet
@item
ページ(または@sc{ftp}サブディレクトリ)のミラーをWgetに保持させたい場合,
@samp{-r -N}に対する省略形の@samp{--mirror} (@samp{-m})を使用してくださ
い.日曜日毎にサイトを再調査を依頼するため,Wgetをcrontabファイルに置く
ことができます.

@example
crontab
0 0 * * 0 wget --mirror ftp://ftp.xemacs.org/pub/xemacs/ -o /home/me/weeklog
@end example

@item
誰かのホームページと同じにしたいと思うかもしれません.しかし,これらの全
ての画像をダウンロードしたくはありません---@sc{html}のみに興味があるとし
ます.

@example
wget --mirror -A.html http://www.w3.org/
@end example

@item
しかし,ネットワーク的に近いホストをミラーしてはどうでしょう? 全ての
@sc{dns}解決のため,余りに遅く感じます.単に@samp{-D} (@pxref{Domain
Acceptance})を使用してください.

@example
wget -rN -Dsrce.hr http://www.srce.hr/
@end example

さて,Wgetは@samp{regoc.srce.hr}が@samp{www.srce.hr}と同じことを,正しく
判別しますが,@samp{www.mit.edu}へのリンクは考慮しません.

@item
プレゼンテーションを持っていて,絶対リンクを相対リンクに変換したいと考え
るでしょうか?  @samp{-k}を使用してください.

@example
wget -k -r @var{URL}
@end example

@cindex redirecting output
@item
出力ドキュメントを,ファイルの代わりに標準出力にしたいと思いますか? OK,
しかし,Wgetは自動的にWgetの出力と回収されたドキュメントが混ざるのを避け
るため,黙ります(@samp{--quiet}に切替えます).

@example
wget -O - http://jagor.srce.hr/ http://www.srce.hr/
@end example

2つのオプションを統合して,奇妙なパイプラインで,リモートホストリストか
らドキュメント回収することもできます.

@example
wget -O - http://cool.list.com/ | wget --force-html -i -
@end example
@end itemize


@node Various, Appendices, Examples, Top
@chapter 様々なもの
@cindex various

この章は,どこにも適さなかったあらゆるものを含みます.

@menu
* Proxies::             Support for proxy servers
* Distribution::        Getting the latest version.
* Mailing List::        Wget mailing list for announcements and discussion.
* Reporting Bugs::      How and where to report bugs.
* Portability::         The systems Wget works on.
* Signals::             Signal-handling performed by Wget.
@end menu

@node Proxies, Distribution, Various, Various
@section プロキシ
@cindex proxies

@dfn{プロキシ}は,リモートサーバからローカルクライアントにデータを転送す
るために設計された,特別な目的の@sc{http}サーバです.プロキシの1つの典型
的な使用は,遅い接続にいるユーザのため,ネットワーク負荷を軽くすることで
す.これは,転送したデータをキャッシュするプロキシを通じて,全ての
@sc{http}と@sc{ftp}の要求の経路を作ることで達成します.キャッシュリソー
スが再び要求されたとき,プロキシはキャッシュからデータを返します.プロキ
シのもう1つの使用は,(セキュリティの理由で)インターネットに残されている
ものから,内部のネットワークを分けてい会社のためです.Webから情報を得る
ため,それらのユーザは,認証されたプロキシを使用してリモートデータに接続
し回収します.

Wgetは,@sc{http}と@sc{ftp}の回収の両方でプロキシをサポートします.Wget
が認識できるように,プロキシの位置を指定する標準的な方法は,以下の環境変
数を使用することです.

@table @code
@item http_proxy
この変数は,@sc{http}に接続するためのプロキシの@sc{url}を含むべきです.

@item ftp_proxy
この変数は,@sc{ftp}に接続するためのプロキシの@sc{url}を含むべきです.
@sc{http_proxy}と@sc{ftp_proxy}を同じ@sc{url}に設定することは,全く普通
です.

@item no_proxy
この変数は,カンマで分けられた,プロキシを使用し@emph{ない},ドメイン拡
張子のリストです.例えば,@code{no_proxy}の値が@samp{.mit.edu}の場合,プ
ロキシはMITからのドキュメントの回収で使用されません.
@end table

環境変数に加えて,プロキシの位置や設定はWget自身から指定できます.

@table @samp
@item -Y on/off
@itemx --proxy=on/off
@itemx proxy = on/off
このオプションは,プロキシサポートのオン/オフを切替えます.適切な環境変
数が設定されている場合,プロキシサポートはデフォルトでオンです.

@item http_proxy = @var{URL}
@itemx ftp_proxy = @var{URL}
@itemx no_proxy = @var{string}
これらのスタートアップファイル変数で,環境で指定されているプロキシの設定
に優先します.
@end table

プロキシサーバの使用を可能にするため,認証を要求するサーバもあります.認
証は,@dfn{ユーザ名}と@dfn{パスワード}から成り立ち,それはWgetが送るはず
です.@sc{http}認証と同様に,いくつかの認証手法が存在します.プロキシ認
証のため,@code{Basic}認証手法のみ,現在インプリメントされています.

ユーザ名とパスワードを,プロキシ@sc{url}またはコマンドラインオプションの
どちらかで指定できます.会社のプロキシが,@samp{proxy.srce.hr}の8001ポー
トに位置していると仮定すると,認証データを含むプロキシ@sc{url}の位置は以
下のようになります.

@example
http://hniksic:mypassword@@proxy.company.com:8001/
@end example

代わりに,プロキシユーザ名とパスワードを設定するため,@samp{proxy-user}
と@samp{proxy-password}オプションと,等価の@file{.wgetrc}での
@code{proxy_user}と@code{proxy_passwd}の設定を使用できます.


@node Distribution, Mailing List, Proxies, Various
@section 配布
@cindex latest version

全てのGNUユーティリティのように,Wgetの最近のバージョンは,GNUアーカイブ
サイトprep.ai.mit.eduとそのミラーで見つかります.例えば,Wget
@value{VERSION}は,
@url{ftp://prep.ai.mit.edu/pub/gnu/wget-@value{VERSION}.tar.gz}で見付け
ることができます.


@node Mailing List, Reporting Bugs, Distribution, Various
@section メーリングリスト
@cindex mailing list
@cindex list

Wgetは,@email{wget@@sunsite.auc.dk}に,Karsten Thygesenのおかげで,独自
のメーリングリストがあります.メーリングリストはWgetの特徴とwebの議論,
Wgetのバグレポート(大衆にとって重要だと思うもの),そしてメールでのアナウ
ンスのためです.購読を歓迎します.リスト上の人々が多ければ多いほど良いで
しょう!

購読するために,@email{wget-subscribe@@sunsite.auc.dk}にメールを送ってく
ださい.サブジェクトに魔法の呪文@samp{subscribe}を書いてください.
@email{wget-unsubscribe@@sunsite.auc.dk}にメールを送ることで購読を止めて
ください.

メーリングリストは@url{http://fly.cc.fer.hr/archive/wget}に保存されます.


@node Reporting Bugs, Portability, Mailing List, Various
@section バグの報告
@cindex bugs
@cindex reporting bugs
@cindex bug reports

GNU Wgetに関するバグレポートを@email{bug-wget@@gnu.org}に送ることを歓迎
します.大衆にとってバグだと思ったもの(すなわち,より多くの人々が知らさ
れるべきであるもの)は,@email{wget@@sunsite.auc.dk}のメーリングリストに
Ccすることができます.

実際にバグレポートを提出する前に,以下の2,3の単純なガイドラインに従って
みてください.

@enumerate
@item
動作が本当にバグだということを確認してみてください.Wgetが壊れた場合,そ
れはバグです.Wgetがドキュメントのように動作しない場合,それはバグです.
奇妙な動作をするが,期待した動作をさせる方法について確かではない場合,お
そらくバグです.

@item
できるだけ単純な状況で,バグを繰り返してみてください.例えば,Wgetが
@samp{wget -rLl0 -t5 -Y0 http://yoyodyne.com -o /tmp/log}で壊れる場合,
より単純なオプション設定で壊れるかどうか,見てみるべきです.

また,@file{.wgetrc}の内容を知ることに興味がありはしますが,バグメッセー
ジにそれをそのままダンプするのは,余り良いアイディアではありません.代わ
りに,@file{.wgetrc}を伴うバグの報告が道を外れていないか,最初に見るべき
です.@file{.wgetrc}の設定がバグに影響があることが分かる場合のみ,ファイ
ルの適切な部分をメールすべきです.

@item
Wgetを@samp{-d}オプションで開始し,ログ(または,その適切な部分)を送って
ください.Wgetがデバッグのサポート無しでコンパイルされている場合,再コン
パイルしてください.デバッグサポートをオンにしたバグの追跡は,@emph{非常
に}簡単になります.

@item
Wgetが壊れた場合,デバッガで動作してみてください.例えば,逆追跡するため,
@code{gdb `which wget` core}とし@code{where}と入力します.

@item
バグがある場所を見付け,それをフィクスしパッチを送ってください.:-)
@end enumerate


@node Portability, Signals, Reporting Bugs, Various
@section 移植
@cindex portability
@cindex operating systems

Wgetは,構築とコンフィグレーションにGNU Autoconfを使用していて,特定の
Unixの``特別な''超凄くカッコいい特徴の使用を避けているので,全ての一般の
Unixの類でコンパイル(と動作)するでしょう.

様々なWgetのバージョンが,多種のUnixシステムでコンパイルされテストされて
いて,それには,Solaris,Linux,SunOS,OSF (aka Digital Unix),Ultrix,
*BSD,IRIX,その他を含みます.包括的なリストのため,配布されたディレクト
リのファイル@file{MACHINES}を参照してください.そこにリストアップされて
いないアーキテクチャでコンパイルした場合,更新するために知らせてください.

Wgetは,@file{MACHINES}にリストアップされていない,他のUnixシステムでも
コンパイルすべきです.そうされていない場合,知らせてください.

親切な貢献者のおかげで,Wgetのこのバージョンは,Microsoft Windows 95と
Windows NTのプラットホームで,コンパイルし動作します.それは,ネットワー
クソフトウェアとしてWinsockを用いて,MS Visual C++ 4.0,Watcom,そして
Borland Cコンパイラを使用してコンパイルが成功しています.当然,Unixで利
用可能ないくつかの特徴に障害がありますが,Windowsを押しつけられている人々
に代用として働きます.Windowsの移植は,@strong{テストも管理もしていない} 
ことに注意してください---全ての疑問と問題は,管理者が見るであろう,
@email{wget@@sunsite.auc.dk}のWgetメーリングリストに報告すべきです.


@node Signals,  , Portability, Various
@section シグナル
@cindex signal handling
@cindex hangup

Wgetの目的がバックグラウンドで動作することなので,ハングアップシグナル
(@code{SIGHUP})を受け取り,それを無視します.出力が標準出力の場合,ファ
イル名@file{wget-log}にリダイレクトされます.それ以外では,@code{SIGHUP} 
は無視されます.これは,開始後Wgetの出力をリダイレクトしたい場合便利です.

@example
$ wget http://www.ifi.uio.no/~larsi/gnus.tar.gz &
$ kill -HUP %%     # Redirect the output to wget-log
@end example

それ以外に,Wgetはあらゆるシグナルに干渉しようとしません.@kbd{C-c},
@code{kill -TERM}と@code{kill -KILL}は同様にそれをキルします.


@node Appendices, Copying, Various, Top
@chapter 付録

この章は,私が役に立つと考えるリファレンスを含み,それはロボットの除外の
標準仕様のようなものと,また,GNU Wgetへの貢献者のリストです.

@menu
* Robots::                  Wget as a WWW robot.
* Security Considerations:: Security with Wget.
* Contributors::            People who helped.
@end menu

@node Robots, Security Considerations, Appendices, Appendices
@section ロボット
@cindex robots
@cindex robots.txt
@cindex server maintenance

Wgetはwebを渡り歩くことが可能なので,それはWeb@dfn{ロボット}の1つとして
数えられます.このため,Wgetは@dfn{Robots Exclusion Standard} (@sc{res}) 
を理解します---@file{/robots.txt}の内容は,Wgetの徘徊からシステムの一部
を保護するためサーバ管理者が使用します.

ロボット拒否のサポートは再帰的回収時のみオンに切替えられ,最初のページに
対しては行い@emph{ません}.このため,以下のように発行します.

@example
wget -r http://fly.cc.fer.hr/
@end example

fly.cc.fer.hrの最初のインデクッスはダウンロードされます.Wgetが同じホス
トでダウンロードする価値があるものを見付けた場合,@emph{そのとき}だけロ
ボットがロードされ,全てのリンクをロードするかどうか決定します.
@file{/robots.txt}は,ホスト毎に1度ロードされます.Wgetは@code{META}タグ
ロボットをサポートしません.

ロボット拒否の標準の記述が書かれていて,Martijn Koster
@email{m.koster@@webcrawler.com}が管理しています.彼の許可で,@sc{res}の
文章化されたバージョンを(わずかに修正して)提供します.


@menu
* Introduction to RES::
* RES Format::
* User-Agent Field::
* Disallow Field::
* Norobots Examples::
@end menu

@node Introduction to RES, RES Format, Robots, Robots
@subsection RESの紹介
@cindex norobots introduction

@dfn{WWWロボット} (または,@dfn{wanderers}や@dfn{spiders}と呼ばれます)は,
リンクされたページの再帰的な回収で,World Wide Webで多くのページを渡り歩
くプログラムです.詳細はロボットのページを参照してください.

1993と1994にロボットが訪問した@sc{www}サーバで,様々な理由で歓迎されない
ときがありました.これらの理由はロボットの特有の時もあり,例えば,あるロ
ボットが,矢つぎばやの要求でサーバを身動きできなくしたり,同じファイルを
何度も回収したりという理由でした.他の状況では,ロボットは不適切な
@sc{www}サーバの部分を渡り歩くこともあり,例えばそれは,非常に深い仮想ツ
リー,複製された情報,一時的な情報,また(投票のような)サイトに影響のある
cgiスクリプトです.

これらの事件は,アクセスすべきではないサーバの部分をロボットに示すため,
@sc{www}サーバに対し確立されたメカニズムが必要だということを示しました.
この標準は,操作上の解決の必要性を扱います.

このドキュメントは,ロボットの著者の大多数とロボットに興味があるその他の
人々の間ででの,ロボットメーリングリスト(@code{robots@@webcrawler.com}) 
での1994年6月30日の合意を表します.それは,テクニカルWorld Wide Web
(@code{www-talk@@info.cern.ch})での議論に対し開かれました.このドキュメ
ントは,同じタイトルでの前の仕事のドラフトを基本にしています.

標準本体に支持されたり,商用組織に所有されたりしている,公的な標準ではあ
りません.それは,誰に対しても強制力はなく,そこには現在と将来のロボット
全てがそれを使用するという保証もありません.ロボットからの期待しないアク
セスから@sc{www}サーバを守るため,ロボットの著者の多くが@sc{www}コミュニ
ティーに提案する,共通のファシリティだと考えてください.

このドキュメントの最近のバージョンは,

@url{http://info.webcrawler.com/mak/projects/robots/norobots.html}

@noindent
で見つけることができます.


@node RES Format, User-Agent Field, Introduction to RES, Robots
@subsection RESの書式
@cindex norobots format

@file{/robots.txt}ファイルの書式と意味論は以下の通りです.

ファイルは,1つ以上の(@code{CR},@code{CR/NL},または@code{NL}で終端され
た)空白行で分けられた,1つ以上のレコードから成り立ちます.それぞれのレコー
ドは以下の形式の行から成り立ちます.

@example
<field>:<optionalspace><value><optionalspace>
@end example

フィールド名は,大文字小文字を認識します.

コメントは,UNIXボーンシェルの慣習を使用して,ファイルに含めることができ
ます.@samp{#}文字は,(もしあれば)前にスペースがあることをを示すために使
用され,行の残りは行の終りまで削除されます.コメントのみを含む行は,完全
に削除され,それゆえレコードの境界を示しません.

レコードは1つ以上の代理ユーザ行で始まり,以下で詳述する1つ以上の不許可行
が続きます.理解できないヘッダは無視されます.

空の@file{/robots.txt}ファイルの存在は明示的に関連付された意味論を持たず,
まるで存在しないかのように扱われ,すなわち,すべてのロボットは歓迎されて
いると考えます.


@node User-Agent Field, Disallow Field, RES Format, Robots
@subsection 代理ユーザフィールド
@cindex norobots user-agent

このフィールドの値は,レコードがアクセスポリシーを記述しているロボットの
名前です.

1つ以上の代理ユーザフィールドが存在する場合,レコードは1つ以上のロボット
に対しアクセスポリシーを示す記述です.少なくとも1つのフィールドがレコー
ド毎に存在するしている必要があります.

ロボットは,このフィールドの解釈を自由に行います.バージョン情報が無い大
文字小文字の基底文字の一致が推奨されます.

値が@samp{*}の場合,レコードは,あらゆるロボットに対するデフォルトのアク
セスポリシーが,他のレコードに一致していないことを記述します.多くのその
ようなレコードが,@file{/robots.txt}ファイルにあることは許可されません.


@node Disallow Field, Norobots Examples, User-Agent Field, Robots
@subsection 不許可フィールド
@cindex norobots disallow

このフィールドの値は,訪問されない特定の@sc{url}を指定します.これはフル
パスでも部分的なパスでも可能です.この値で始まるあらゆる@sc{url}は回収で
きません.例えば,@w{@samp{Disallow: /help}}は@samp{/help.html}と
@samp{/help/index.html}の両方を不許可にするのに対し,@w{@samp{Disallow:
/help/}}は@samp{/help/index.html}を不許可にしますが,@samp{/help.html}は
許可します.

あらゆる空の値は,全ての@sc{url}が回収できることを示します.少なくとも1
つの不許可フィールドがレコードに存在する必要があります.


@node Norobots Examples,  , Disallow Field, Robots
@subsection ロボット拒否の例
@cindex norobots examples

以下の@samp{/robots.txt}ファイルの例は,ロボットが
@samp{/cyberworld/map/}や@samp{/tmp/}で始まるあらゆる@sc{url}を訪問でき
ないように指定します.

@example
# robots.txt for http://www.site.com/

User-agent: *
Disallow: /cyberworld/map/ # This is an infinite virtual URL space
Disallow: /tmp/ # these will soon disappear
@end example

この@samp{/robots.txt}ファイルの例は,@samp{cybermapper}と呼ばれるロボッ
トを除き,全てのロボットが@samp{/cyberworld/map/}で始まる@sc{url}を訪問
できないように指定します.

@example
# robots.txt for http://www.site.com/

User-agent: *
Disallow: /cyberworld/map/ # This is an infinite virtual URL space

# Cybermapper knows where to go.
User-agent: cybermapper
Disallow:
@end example

この例は,このサイトを訪問できないことを示します.

@example
# go away
User-agent: *
Disallow: /
@end example


@node Security Considerations, Contributors, Robots, Appendices
@section セキュリティの考慮
@cindex security

Wgetを使用するとき,それが暗号化されていないパスワードをネットワークに流
すことを知っている必要があり,それはセキュリティの問題を提示するかもしれ
ません.ここに主な発行と,いくつかの解決があります.

@enumerate
@item
コマンドラインのパスワードは,@code{ps}を使用で見ることができます.これ
が問題の場合,コマンドラインからパスワードを置くことを避けてください---
例えば,このために@file{.netrc}を使用することができます.

@item
安全でない@dfn{基本的な}認証方式を使用すると,暗号化されていないパスワー
ドがネットワークのルータとゲートウェイと通じて転送されます.

@item
@sc{ftp}パスワードも暗号化されません.現在これに関しては良い解決方があり
ません.

@item
Wgetの``通常の''出力はパスワードを隠そうとしますが,デバッグログは,あら
ゆる形式でそれらを表示します.この問題は,バグの報告を送るとき注意するこ
とで避けます(そう,それらを私に送るときもです).
@end enumerate


@node Contributors,  , Security Considerations, Appendices
@section 寄稿者
@cindex contributors

@iftex
GNU WgetはHrvoje Nik@v{s}i@'{c} @email{hniksic@@srce.hr}によって書かれま
した.
@end iftex
@ifinfo
GNU WgetはHrvoje Niksic @email{hniksic@@srce.hr}によって書かれました.
@end ifinfo
しかしその開発は,バグレポート,特徴の提案,パッチや感謝状など,多くの人々
の助けが無ければ,非常に遠いものとなっていたはずです.

以下の人々に特別な感謝を送ります(順不同).

@itemize @bullet
@item
Karsten Thygesen---メーリングリストと初期の@sc{ftp}スペースの寄付.

@item
Shawn McHorse---バグレポートとパッチ.

@item
Kaveh R. Ghazi---毎度の@code{ansi2knr}変換.

@item
Gordon Matzigkeit---@file{.netrc}サポート.

@item
@iftex
Zlatko @v{C}alu@v{s}i@'{c}, Tomislav Vujec and Dra@v{z}en
Ka@v{c}ar---特徴の提案と,``哲学的な''議論.
@end iftex
@ifinfo
Zlatko Calusic, Tomislav Vujec and Drazen Kacar---特徴の提案と,``哲学的
な''議論.
@end ifinfo

@item
Darko Budor---Windowsへの初期移植.

@item
Antonio Rosella---イタリア語翻訳の助けと提案.

@item
@iftex
Tomislav Petrovi@'{c}, Mario Miko@v{c}evi@'{c}---多くのバグレポートと提
案.
@end iftex
@ifinfo
Tomislav Petrovic, Mario Mikocevic---多くのバグレポートと提案.
@end ifinfo

@item
@iftex
Fran@,{c}ois Pinard---多くの徹底的なバグレポートと議論.
@end iftex
@ifinfo
Francois Pinard---多くの徹底的なバグレポートと議論.
@end ifinfo

@item
Karl Eichwalder---国際化とその他の多くの手助け.

@item
Junio Hamano---Opieと@sc{http} @code{Digest}認証に対するサポートの寄付.

@item
Brian Gough---豊富な寄付.
@end itemize

以下の人々は,パッチ,バグ/ビルドレポート,役立つ提案,ベータテスト,ファ
ンメールと管理者が喜ばしいと感じるあらゆることを提供してくれました.

Tim Adam,
Martin Baehr,
Dieter Baron,
Roger Beeman and the Gurus at Cisco,
Mark Boyns,
John Burden,
Wanderlei Cavassin,
Gilles Cedoc,
Tim Charron,
Noel Cragg,
@iftex
Kristijan @v{C}onka@v{s},
@end iftex
@ifinfo
Kristijan Conkas,
@end ifinfo
@iftex
Damir D@v{z}eko,
@end iftex
@ifinfo
Damir Dzeko,
@end ifinfo
Andrew Davison,
Ulrich Drepper,
Marc Duponcheel,
@iftex
Aleksandar Erkalovi@'{c},
@end iftex
@ifinfo
Aleksandar Erkalovic,
@end ifinfo
Andy Eskilsson,
Masashi Fujita,
Howard Gayle,
Marcel Gerrits,
Hans Grobler,
Mathieu Guillaume,
Karl Heuer,
Gregor Hoffleit,
Erik Magnus Hulthen,
Richard Huveneers,
Simon Josefsson,
@iftex
Mario Juri@'{c},
@end iftex
@ifinfo
Mario Juric,
@end ifinfo
@iftex
Goran Kezunovi@'{c},
@end iftex
@ifinfo
Goran Kezunovic,
@end ifinfo
Robert Kleine,
Fila Kolodny,
Alexander Kourakos,
Martin Kraemer,
@tex
$\Sigma\acute{\iota}\mu o\varsigma\;
\Xi\varepsilon\nu\iota\tau\acute{\epsilon}\lambda\lambda\eta\varsigma$
(Simos KSenitellis),
@end tex
@ifinfo
Simos KSenitellis,
@end ifinfo
Tage Stabell-Kulo,
Hrvoje Lacko,
Dave Love,
Jordan Mendelson,
Lin Zhe Min,
Charlie Negyesi,
Andrew Pollock,
Steve Pothier,
Marin Purgar,
Jan Prikryl,
Keith Refson,
Tobias Ringstrom,
@c Texinfo doesn't grok @'{@i}, so we have to use TeX itself.
@tex
Juan Jos\'{e} Rodr\'{\i}gues,
@end tex
@ifinfo
Juan Jose Rodrigues,
@end ifinfo
Heinz Salzmann,
Robert Schmidt,
Toomas Soome,
Sven Sternberger,
Markus Strasser,
Szakacsits Szabolcs,
Mike Thomas,
Russell Vincent,
Douglas E. Wegscheid,
Jasmin Zainul,
@iftex
Bojan @v{Z}drnja,
@end iftex
@ifinfo
Bojan Zdrnja,
@end ifinfo
Kristijan Zimmer.

記載忘れの方へ謝罪し,そしてWgetメーリングリストの全ての方に多いに感謝し
ます.


@node Copying, Concept Index, Appendices, Top
@unnumbered GNU GENERAL PUBLIC LICENSE
@cindex copying
@cindex GPL
@center Version 2, June 1991

@display
Copyright @copyright{} 1989, 1991 Free Software Foundation, Inc.
675 Mass Ave, Cambridge, MA 02139, USA

Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@end display

@unnumberedsec Preamble

  The licenses for most software are designed to take away your
freedom to share and change it.  By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software---to make sure the software is free for all its users.  This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it.  (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.)  You can apply it to
your programs, too.

  When we speak of free software, we are referring to freedom, not
price.  Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.

  To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.

  For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have.  You must make sure that they, too, receive or can get the
source code.  And you must show them these terms so they know their
rights.

  We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.

  Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software.  If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.

  Finally, any free program is threatened constantly by software
patents.  We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary.  To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.

  The precise terms and conditions for copying, distribution and
modification follow.

@iftex
@unnumberedsec TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
@end iftex
@ifinfo
@center TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
@end ifinfo

@enumerate
@item
This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License.  The ``Program'', below,
refers to any such program or work, and a ``work based on the Program''
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language.  (Hereinafter, translation is included without limitation in
the term ``modification''.)  Each licensee is addressed as ``you''.

Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope.  The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.

@item
You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.

You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.

@item
You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:

@enumerate a
@item
You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.

@item
You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.

@item
If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License.  (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
@end enumerate

These requirements apply to the modified work as a whole.  If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works.  But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.

In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.

@item
You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:

@enumerate a
@item
Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,

@item
Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,

@item
Accompany it with the information you received as to the offer
to distribute corresponding source code.  (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
@end enumerate

The source code for a work means the preferred form of the work for
making modifications to it.  For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable.  However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.

If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.

@item
You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License.  Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.

@item
You are not required to accept this License, since you have not
signed it.  However, nothing else grants you permission to modify or
distribute the Program or its derivative works.  These actions are
prohibited by law if you do not accept this License.  Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.

@item
Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions.  You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.

@item
If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License.  If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all.  For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.

If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.

It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices.  Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.

This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.

@item
If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded.  In such case, this License incorporates
the limitation as if written in the body of this License.

@item
The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time.  Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.

Each version is given a distinguishing version number.  If the Program
specifies a version number of this License which applies to it and ``any
later version'', you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation.  If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.

@item
If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission.  For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this.  Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.

@iftex
@heading NO WARRANTY
@end iftex
@ifinfo
@center NO WARRANTY
@end ifinfo
@cindex no warranty

@item
BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM ``AS IS'' WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.

@item
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
@end enumerate

@iftex
@heading END OF TERMS AND CONDITIONS
@end iftex
@ifinfo
@center END OF TERMS AND CONDITIONS
@end ifinfo

@page
@unnumberedsec How to Apply These Terms to Your New Programs

  If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.

  To do so, attach the following notices to the program.  It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the ``copyright'' line and a pointer to where the full notice is found.

@smallexample
@var{one line to give the program's name and an idea of what it does.}
Copyright (C) 19@var{yy}  @var{name of author}

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
@end smallexample

Also add information on how to contact you by electronic and paper mail.

If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:

@smallexample
Gnomovision version 69, Copyright (C) 19@var{yy} @var{name of author}
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
type `show w'.  This is free software, and you are welcome
to redistribute it under certain conditions; type `show c' 
for details.
@end smallexample

The hypothetical commands @samp{show w} and @samp{show c} should show
the appropriate parts of the General Public License.  Of course, the
commands you use may be called something other than @samp{show w} and
@samp{show c}; they could even be mouse-clicks or menu items---whatever
suits your program.

You should also get your employer (if you work as a programmer) or your
school, if any, to sign a ``copyright disclaimer'' for the program, if
necessary.  Here is a sample; alter the names:

@smallexample
@group
Yoyodyne, Inc., hereby disclaims all copyright
interest in the program `Gnomovision'
(which makes passes at compilers) written 
by James Hacker.

@var{signature of Ty Coon}, 1 April 1989
Ty Coon, President of Vice
@end group
@end smallexample

This General Public License does not permit incorporating your program into
proprietary programs.  If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library.  If this is what you want to do, use the GNU Library General
Public License instead of this License.


@node Concept Index,  , Copying, Top
@unnumbered 概念の索引
@printindex cp

@contents

@bye

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>