.\"- .\" Copyright (c) 2000 Dag-Erling Coidan Smorgrav .\" All rights reserved. .\" Portions Copyright (c) 1999 Massachusetts Institute of Technology; used .\" by permission. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer .\" in this position and unchanged. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. The name of the author may not be used to endorse or promote products .\" derived from this software without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" .\" %FreeBSD: src/usr.bin/fetch/fetch.1,v 1.62 2004/07/30 08:43:16 cperciva Exp % .\" .\" $FreeBSD$ .Dd March 11, 2003 .Dt FETCH 1 .Os .Sh 名称 .Nm fetch .Nd URL (Uniform Resource Locator) 形式でのファイルの取得 .Sh 書式 .Nm .Op Fl 146AFMPRUadlmnpqrsv .Op Fl B Ar bytes .Op Fl S Ar bytes .Op Fl T Ar seconds .Op Fl N Ar file .Op Fl o Ar file .Op Fl w Ar seconds .Op Fl h Ar host .Op Fl c Ar dir .Op Fl f Ar file .Op Ar URL ... .Sh 解説 .Nm ユーティリティは .Xr fetch 3 ライブラリへのコマンド行インタフェースを提供します。 目的は、コマンド行の URL (複数可) に示されるファイル (複数可) を取得することです。 .Pp 以下のオプションが使用可能です。 .Bl -tag -width Fl .It Fl \&1 最初にファイルの取得に成功したときに、終了値 0 を返して停止します。 .It Fl 4 .Nm が IPv4 アドレスのみを使用することを強制します。 .It Fl 6 .Nm が IPv6 アドレスのみを使用することを強制します。 .It Fl A ``一時的な'' (302) リダイレクトを自動的には追跡しません。 要求したオブジェクトが存在しない場合に、 発見できないというエラーではなくリダイレクトを返すという、 壊れたウェブサイトが存在します。 .It Fl a ソフト上での失敗の場合に自動的に転送を再試行します。 .It Fl B Ar bytes 読み込みバッファの大きさをバイト単位で指定します。 デフォルトは 4096 バイトです。 バッファの大きさを小さくしようとしても、黙って無視されます。 実際に実行された読み込み回数は、冗長レベル 2 以上で報告されます ( .Fl v フラグを参照してください)。 .It Fl c Ar dir 遠隔ホストの .Ar dir ディレクトリのファイルを取得します。 本オプションは、価値が低下しており、後方互換性のためだけに提供されています。 .It Fl d プロキシが設定されていても、直接接続します。 .It Fl F .Fl r フラグと組み合わせると、 ローカルファイルとリモートファイルの修正時刻が異なったとしても、 強制的に再開します。 .Fl R を暗黙的に指定します。 .It Fl f Ar file 遠隔ホストの .Ar file という名前のファイルを取得します。 本オプションは、価値が低下しており、後方互換性のためだけに提供されています。 .It Fl h Ar host ホスト名が .Ar host にあるファイルを取得します。 本オプションは、価値が低下しており、後方互換性のためだけに提供されています。 .It Fl l 目標が、ファイル形式の URL の場合、目標を複製しようとするのではなく、 リンクを作成します。 .It Fl M .It Fl m ミラーモード: ローカルホストにファイルが既に存在し、サイズと 変更時間がリモートファイル同じである場合、転送は行われません。 .Fl m と .Fl r のフラグは、あいいれないことに注意してください。 .It Fl N Ar file .Pa ~/.netrc の代りに .Ar file を使用し、FTP サイト用のログイン名とパスワードを見付けます。 ファイルの書式については .Xr ftp 1 を参照してください。 この機能は実験的です。 .It Fl n 転送されるファイルの変更時間を保存しません。 .It Fl o Ar file 出力ファイル名を .Ar file にします。 デフォルトでは、``パス名'' が指定された URI から取り出され、その ベースネームが出力ファイルの名前として使われます。 .Ar file 引数として .Sq Li \&- を与えると、結果は標準出力に出力されます。 .Ar file 引数がディレクトリである場合、取得したファイルはそのディレクトリに 置かれます。 ファイル名はデフォルトの動作の場合と同じように 選択されます。 .It Fl P .It Fl p .Tn FTP プロトコルをパッシブモードで使います。 これは、入力接続をブロックするファイアウォール (firewall) の背後に いる場合に有用です。 FTP URL を取得するときに .Nm がハングするように見える場合に使用してみてください。 .It Fl q 沈黙モード。 .It Fl R 出力ファイルは大事にされ、どんな状況下でもファイルは消去されません。 それは、転送が失敗もしくは不完全であった時でさえ、あてはまります。 .It Fl r 以前に中断された転送を再開します。 .Fl m と .Fl r のフラグは、あいいれないことに注意してください。 .It Fl S Ar bytes サーバが報告するファイルサイズが、指定値に合致することを要求します。 合致しない場合、メッセージが表示され、ファイルは取得されません。 サーバがファイルサイズの報告をサポートしていない場合、 本オプションは無視され、無条件にファイルが取得されます。 .It Fl s 各要求ファイルごとに、取得せずに、バイト数単位の大きさを表示します。 .It Fl T Ar seconds タイムアウト時間を .Ar seconds 秒に設定します。 FTP での転送に対しては .Ev FTP_TIMEOUT 環境変数が、HTTP での転送に関しては .Ev HTTP_TIMEOUT 環境変数が、設定されていた場合は、それを上書きします。 .It Fl U パッシブな FTP を使用しているとき、データ接続用に低位 (デフォルト) ポート を割り当てます。 どのポート範囲が対応するかの指定方法の詳細については、 .Xr ip 4 を参照してください。 .It Fl v 冗長レベルを増やします。 .It Fl w Ar seconds .Fl a が指定された場合、次のリトライの前に指定した秒数だけ待ちます。 .El .Pp .Nm が .Dv SIGINFO シグナルを受け取ると ( .Xr stty 1 への .Cm status 引数を参照して下さい)、 現在の転送レートの統計情報が、 標準の完了メッセージと同じ書式で 標準エラー出力に書き込まれます。 .Sh 診断 .Nm コマンドは、成功時には 0 を返し、失敗時には 1 を返します。 コマンド行上に複数の URL を指定した場合、 .Nm は、それぞれを順番に取得しようとし、 すべての取得に成功した場合のみに 0 を返します。 .Sh 環境変数 .Bl -tag -width HTTP_TIMEOUT .It Ev FTP_TIMEOUT FTP 接続を中断するまでの最大時間を秒で指定します。 .It Ev HTTP_TIMEOUT HTTP 接続を中断するまでの最大時間を秒で指定します。 .El .Pp .Xr fetch 3 ライブラリの文書に記述されている環境変数は、すべてサポートされています。 これらの環境変数の多くは、 .Nm を正しく操作するために非常に重要なものです。 一緒に .Xr fetch 3 も読む事を強くお勧めします。 .Sh 関連項目 .Xr fetch 3 .Sh 歴史 .Nm コマンドは .Fx 2.1.5 から導入されました。 本実装が最初に登場したのは .Fx 4.1 です。 .Sh 作者 .An -nosplit .Nm のオリジナル実装は .An Jean-Marc Zucconi Aq jmz@FreeBSD.org が行いました。 .Fx 2.2 のために、拡張を行ったのは .An Garrett Wollman Aq wollman@FreeBSD.org であり、後に .Xr fetch 3 を使用するように .An Dag-Erling Sm\(/orgrav Aq des@FreeBSD.org が完全に書き直しました。 .Sh 注 .Fl b および .Fl t のオプションは、すでにサポートされておらず、警告を表示します。 これらのオプションは、他の OS のバグの回避策であって、 本実装ではバグを引き起こしません。 .Pp .Fl h , .Fl c , .Fl f オプションの使用と、コマンド行上の URL 指定は、同時にはできません。