diff --git a/ja_JP.eucJP/man/man1/apropos.1 b/ja_JP.eucJP/man/man1/apropos.1 index 1c759bd8b0..be0d73ce96 100644 --- a/ja_JP.eucJP/man/man1/apropos.1 +++ b/ja_JP.eucJP/man/man1/apropos.1 @@ -1,48 +1,48 @@ -.\" Man page for apropos an wahtis +.\" Man page for apropos an whatis .\" .\" Copyright (c) 1990, 1991, John W. Eaton. .\" .\" You may distribute under the terms of the GNU General Public .\" License as specified in the README file that comes with the man 1.0 .\" distribution. .\" .\" John W. Eaton .\" jwe@che.utexas.edu .\" Department of Chemical Engineering .\" The University of Texas at Austin .\" Austin, Texas 78712 .\" .\" %FreeBSD: src/gnu/usr.bin/man/apropos/apropos.man,v 1.12 2004/07/02 19:07:29 ru Exp % .\" .\" $FreeBSD$ .Dd January 15, 1991 .Dt APROPOS 1 .Os .Sh 名称 .Nm apropos , .Nm whatis .Nd whatis データベースを文字列で検索する .Sh 書式 .Nm apropos .Ar keyword ... .Nm whatis .Ar keyword ... .Sh 解説 .Nm は、システムコマンドに関する短い簡単な説明を含んだデータベースファイルを、 キーワードによって検索して、その結果を標準出力に表示します。 .Nm whatis では完全な語にのみマッチします。 .Pp .Ar keyword は実際には拡張正規表現です。 この書式に関する詳細は .Xr grep 1 マニュアルページを参照してください。 .Sh 診断 .Nm は成功時には 0 を、キーワードがマッチしない場合には 1 を返します。 .Sh 関連項目 .Xr grep 1 , .Xr makewhatis 1 , .Xr man 1 diff --git a/ja_JP.eucJP/man/man1/at.1 b/ja_JP.eucJP/man/man1/at.1 index 95f08c96c0..ae5eb528a2 100644 --- a/ja_JP.eucJP/man/man1/at.1 +++ b/ja_JP.eucJP/man/man1/at.1 @@ -1,348 +1,347 @@ .\" %FreeBSD: src/usr.bin/at/at.man,v 1.34 2003/03/26 02:38:18 keramida Exp % .\" $FreeBSD$ .Dd January 13, 2002 -.Dd April 12, 1995 .Dt "AT" 1 .Os .Sh 名称 .Nm at , .Nm batch , .Nm atq , .Nm atrm .Nd あとでジョブを実行させるためのキューの設定、確認、ジョブの削除を行なう .Sh 書式 .Nm at .Op Fl q Ar queue .Op Fl f Ar file .Op Fl mldbv .Ar time .Nm at .Op Fl q Ar queue .Op Fl f Ar file .Op Fl mldbv .Fl t .Sm off .Op Oo Ar CC Oc Ar YY .Ar MM DD hh mm Op . Ar SS .Sm on .Nm at .Fl c Ar job Op Ar job ... .Nm at .Fl l Op Ar job ... .Nm at .Fl l .Fl q Ar queue .Nm at .Fl r Ar job Op Ar job ... .Pp .Nm atq .Op Fl q Ar queue .Op Fl v .Pp .Nm atrm .Ar job .Op Ar job ... .Pp .Nm batch .Op Fl q Ar queue .Op Fl f Ar file .Op Fl mv .Op Ar time .Sh 解説 .Nm at と .Nm batch のユーティリティは、標準入力もしくは指定したファイルからコマンドを読み 込み、あとで .Xr sh 1 を使って実行します。 .Bl -tag -width indent .It Nm at コマンドを、引数で指定した時間に実行します。 .It Nm atq ユーザの、実行待ち状態のジョブのリストを表示します。 スーパユーザが実行した場合は全員のジョブが表示されます。 .It Nm atrm 指定したジョブを削除します。 .It Nm batch ロードアベレージが特定の値以下になったときにジョブを実行 します。この値は、デフォルトでは 1.5 です。 この値は .Nm atrun によって指定可能です。 .El .Pp .Nm at ユーティリティでは、様々な形式の時間を .Ar time として受け付けます。 時刻は .Ar HHMM もしくは .Ar HH:MM の形で指定します (もしこの時刻が過ぎていた場合は、次の日のその時刻に設定されます)。 また、 .Em midnight , .Em noon , .Em teatime (4pm) のキーワードも受け付けますし、時刻の後ろに .Em AM もしくは .Em PM をつけた時間も受け付けます。 日付は、 .Ar \%month-name day およびオプションの .Ar year の形で受け付けます。 .Ar DD.MM.YYYY , .Ar DD.MM.YY , .Ar MM/DD/YYYY , .Ar MM/DD/YY , .Ar MMDDYYYY , .Ar MMDDYY も受け付けます。 日付の指定は時刻の指定の後に記述します。 .Op Em now .Em + Ar count \%time-units のような形式で時間を指定することも可能です。time-units は時間の単位で、 .Em minutes , .Em hours , .Em days , -.Em weeks +.Em weeks , +.Em months , +.Em years のいずれかです。時間のサフィックスの .Em today はジョブを今日に設定すること、 .Em tomorrow はジョブを明日に設定することを意味します。 .Pp 例えば、今から 3 日後の午後 4 時にジョブを走らせるためには .Nm at Ar 4PM + 3 days とします。7 月 31 日の午前 10 時の場合は .Nm at Ar 10am Jul 31 とします。明日の午前 1 時は .Nm at Ar 1am tomorrow です。 .Pp .Nm at ユーティリティは、 .Tn POSIX 時刻書式 ( .Fl t オプションを参照してください) もサポートしています。 .Pp .Nm at と .Nm batch はどちらも、標準入力または .Fl f オプションで指定したファイルからコマンドを読み込み、実行します。 ワーキングディレクトリと環境変数 ( .Ev TERM , .Ev TERMCAP , .Ev DISPLAY および .Em _ -は除く)、umask は実行時のものが保持されます。 +は除く)、 +.Ar umask +は実行時のものが保持されます。 .Nm at もしくは .Nm batch が .Xr su 1 で起動されたシェルから実行された場合は、カレントの userid を保持します。 出力結果が得られた場合は、 その標準出力と標準エラー出力がメールで送られます。メールは .Xr sendmail 8 を使って送られます。もし .Nm at が .Xr su 1 で起動されたシェルから実行された場合は、そのログインシェルの所有者が メールを受けることになります。 .Pp スーパユーザはどんな場合でもこれらのコマンドを実行できます。 その他のユーザは .Pa /var/at/at.allow と .Pa /var/at/at.deny のファイルによって .Nm を実行できるか決められます。 .Pp もし .Pa /var/at/at.allow が存在するならば、その中にユーザ名を記述されたユーザだけが .Nm at の実行を許可されます。 これらの 2 ファイルでは、ユーザ名の行において、 ユーザ名の前に空白や他の文字が無く、 たとえファイルの最後であってもユーザ名の直後に改行がある場合のみ、 ユーザが列挙されているとみなされます。 他の行は無視され、コメントとして使用可能です。 .Pp もし .Pa /var/at/at.allow が存在しなければ、 .Pa /var/at/at.deny がチェックされ、その中にユーザ名が記述されていないすべてのユーザが .Nm at の実行を許可されます。 .Pp もし両方ともなければ、スーパユーザだけが .Nm at を実行できます。 これがデフォルトの設定です。 -.Pp -空の -.Pa /var/at/at.deny -は全てのユーザがこれらのコマンドを使用できることを意味します。 .Sh 実装に関する注 .Nm の実装は、 .Xr atrun 8 を 5 分毎に呼び出す .Xr cron 8 デーモンを通じて実装されていることに注意してください。 これは、 .Nm の粒度がすべての用途において最適ではないかもしれないことを意味します。 より細かい粒度が必要な場合、システムの crontab .Pa /etc/crontab を変更してください。 .Sh オプション .Bl -tag -width indent .It Fl q Ar queue 指定したキューを用います。キューの名称は単一の文字からなります。 有効なキューの名前は .Ar a から .Ar z と .Ar A から .Ar Z です。 .Nm at のデフォルトのキューは .Ar c で、 .Nm batch のデフォルトのキューは .Ar E です。 キューの文字が後の方であればあるほど nice 値が上がります。 もし大文字のキューがジョブに対して指定されたならば、時間を指定して batch が実行されたものとして扱われます。 もし .Nm atq でキューが指定されたときは、そのキューだけの実行待ちのジョブを表示します。 .It Fl m 出力がなかった場合でも、ジョブの完了時にメールをユーザに送ります。 .It Fl f Ar file 標準入力のかわりにファイルからジョブを読み込みます。 .It Fl l 引数無しの場合、起動したユーザの全ジョブを表示します。 1 個以上のジョブ番号を指定した場合、それらのジョブのみを表示します。 .It Fl d .Nm atrm の別名 (本オプションは価値が低下しています。 代りに .Fl r を使用してください)。 .It Fl b .Nm batch の別名。 .It Fl v .Nm atq の場合は、キューの中の実行されたがまだ削除されていないジョブを 表示します。さもなければジョブが実行される時間を表示します。 .It Fl c コマンドラインにリストされたジョブを標準出力に出力します。 .It Fl r 指定したジョブを削除します。 .It Fl t \*[Px] 時刻書式を使用して、ジョブの時刻を指定します。 引数の書式は .Sm off .Op Oo Ar CC Oc Ar YY .Ar MM DD hh mm Op . Ar SS .Sm on という形式であることが必要であり、各文字の組は以下の意味です: .Pp .Bl -tag -width indent -compact -offset indent .It Ar CC 年の最初の 2 桁 (世紀)。 .It Ar YY 年の次の 2 桁。 .It Ar MM 月であり 1 から 12 です。 .It Ar DD 日であり 1 から 31 です。 .It Ar hh 時間であり、0 から 23 です。 .It Ar mm 分であり、0 から 59 です。 .It Ar SS -秒あり、0 から 61 です。 +秒であり、0 から 61 です。 .El .Pp .Ar CC および .Ar YY の文字の組が指定されない場合、今年を意味します。 .Ar SS の文字の組が指定されない場合、値は 0 になります。 .El .Sh 関連ファイル .Bl -tag -width /var/at/jobs/.lockfile -compact .It Pa /var/at/jobs ジョブファイルを保管しておくディレクトリ .It Pa /var/at/spool 出力ファイルを保管しておくディレクトリ .It Pa /var/run/utmp ログインレコード .It Pa /var/at/at.allow 許可属性の設定 .It Pa /var/at/at.deny 不許可属性の設定 .It Pa /var/at/jobs/.lockfile ジョブ作成のロックファイル .El .Sh 関連項目 .Xr nice 1 , .Xr sh 1 , .Xr umask 2 , .Xr atrun 8 , .Xr cron 8 , .Xr sendmail 8 .Sh バグ .Pa /var/run/utmp が利用できないか不正であった場合、もしくは .Nm at が実行された時にユーザがログインしていない場合、 環境変数 .Ev LOGNAME で表される userid にメールが送られます。 もし定義されていないか空ならばカレントの userid になります。 .Pp ユーザ同士でリソースの競合がある場合は現実装の .Nm at と .Nm batch ユーティリティは適当ではありません。 もしこのような場合にあてはまるのなら、 .Em nqs のような他のバッチシステムを検討してください。 .Pp 2038 年以降の日付を指定しても動作しないシステムがあるかもしれません。 .Sh 作者 at のほとんどの部分は .An Thomas Koenig Aq ig25@rz.uni-karlsruhe.de が作成しました。 時間の構文解析部分は .An David Parsons Aq orc@pell.chi.il.us が作成し、 .An Joe Halpin Aq joe.halpin@attbi.com が少し拡張しました。 diff --git a/ja_JP.eucJP/man/man1/basename.1 b/ja_JP.eucJP/man/man1/basename.1 index 152ba8e987..1ed2f81054 100644 --- a/ja_JP.eucJP/man/man1/basename.1 +++ b/ja_JP.eucJP/man/man1/basename.1 @@ -1,112 +1,116 @@ -.\" Copyright (c) 1990 The Regents of the University of California. -.\" All rights reserved. +.\" Copyright (c) 1990, 1993, 1994 +.\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)basename.1 8.2 (Berkeley) 4/18/94 .\" %FreeBSD: src/usr.bin/basename/basename.1,v 1.14 2004/07/03 00:24:39 ru Exp % .\" .\" $FreeBSD$ .\" .Dd April 18, 1994 .Dt BASENAME 1 .Os .Sh 名称 .Nm basename , dirname .Nd 指定したパスのファイル名部分やディレクトリ名部分を返す .Sh 書式 -.Nm basename +.Nm .Ar string .Op Ar suffix .Nm .Op Fl a .Op Fl s Ar suffix .Ar string .Op Ar ... .Nm dirname .Ar string .Sh 解説 .Nm ユーティリティは .Ar string から最後の .Ql \&/ までを 削除し、 .Ar suffix が指定された場合はこれも削除します。 (まず後続する複数のスラッシュを取り除いた) .Ar string に残された文字列と .Ar suffix がまったく同じ場合には、削除しません。 そして、その結果得られるファイル名を標準出力に書き出します。 存在しない .Ar suffix は無視します。 .Fl a が指定された場合、各引数が単一の .Ar string として扱われ、あたかも .Nm が単一の引数で起動されたかのようになります。 .Fl s が指定された場合、 .Ar suffix がその引数として扱われ、残りすべての引数が単一の .Ar string として扱われます。 .Pp .Nm dirname ユーティリティは (まず後続する複数のスラッシュを取り除いた) .Ar string 中の最後の .Ql \&/ から最後尾までをファイル名とみなしてこの部分を削除し、 残りを標準出力に書き出します。 .Sh 使用例 -次の行は、シェル変数 FOO に /usr/bin を設定するものです。 +次の行は、シェル変数 +.Ev FOO +に +.Pa /usr/bin +を設定するものです。 .Pp .Dl FOO=`dirname /usr/bin/trail` .Sh 診断 .Ex -std basename dirname .Sh 関連項目 .Xr csh 1 , .Xr sh 1 .Sh 規格 .Nm および .Nm dirname のユーティリティは、 .St -p1003.2 準拠であると思われます。 diff --git a/ja_JP.eucJP/man/man1/biff.1 b/ja_JP.eucJP/man/man1/biff.1 index 224abd60f2..4e0e83a8f1 100644 --- a/ja_JP.eucJP/man/man1/biff.1 +++ b/ja_JP.eucJP/man/man1/biff.1 @@ -1,131 +1,131 @@ -.\" Copyright (c) 1980, 1990 The Regents of the University of California. -.\" All rights reserved. +.\" Copyright (c) 1980, 1990, 1993 +.\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" -.\" from: @(#)biff.1 6.5 (Berkeley) 3/14/91 +.\" @(#)biff.1 8.1 (Berkeley) 6/6/93 .\" %FreeBSD: src/usr.bin/biff/biff.1,v 1.19 2002/08/16 03:08:25 johan Exp % .\" .\" $FreeBSD$ .\" .Dd July 9, 2002 .Dt BIFF 1 .Os .Sh 名称 .Nm biff .Nd メールの到着時に、メールの着信とメールの発信人を報告するかどうか設定する .Sh 書式 -.Nm biff +.Nm .Op Cm n | y | b .Sh 解説 .Nm ユーティリティは、端末に対し、メールの到着を システムから報告してもらうかどうかを設定します。 .Pp 影響を受けるのは、次のファイル記述子に結び付けられた最初の端末です: 標準入力、標準出力または標準エラーで、この順番です。 よって、シェルのリダイレクション機能を使用することで、 .Nm が実行しているのとは別の端末における報告を切り替えることが可能です。 .Pp .Nm がサポートしているオプションとしては、以下のものがあります: .Bl -tag -width indent .It Cm n 報告しないように設定します。 .It Cm y ヘッダ報告を設定します。 .It Cm b ベル報告を設定します。 .El .Pp .\" 以下の一文は元の英語版マニュアルには含まれていないので .\" とりあえずコメントアウトしてある --- jpman project sakai@csl.cl.nec.co.jp .\" .\" オプションを指定しない場合は現在状態を表示します。 .\" ヘッダ報告を設定しているときにメールが届いた場合、 メールのヘッダとメッセージの最初の数行が自分の画面に表示されます。 ログインするたびに設定されるように、たいてい .Pa \&.login や .Pa \&.profile ファイルに .Dq Li biff y コマンドの記述が含められます。 .Pp ベル報告を設定しているときは、ベル文字 .Tn ( ASCII \\007) 2 個だけが、 メール到着時に端末に表示されます。 .Pp 引数を指定しないと、 .Nm は端末の現在の報告状態を標準出力へ表示します。 .Pp .Nm ユーティリティは非同期に動作します。同期して動作させる場合は、 .Xr sh 1 の .Ev MAIL 変数を用いるか、 .Xr csh 1 の .Ev mail 変数を利用してください。 .Sh 診断 .Nm ユーティリティは次のいずれかの値で終了します: .Bl -tag -width indent .It 0 報告するようになっています。 .It 1 報告しないようになっています。 .It >1 エラーが発生しました。 .El .Sh 互換性 以前のバージョンの .Nm ユーティリティは、 まず標準入力および標準出力のデバイスを試す前に、 標準エラーに結び付けられた端末に影響していました。 .Sh 関連項目 .Xr csh 1 , .Xr mail 1 , .Xr sh 1 , .Xr comsat 8 .Sh 歴史 .Nm コマンドは .Bx 4.0 から登場しました。 .Nm コマンドの名前は、 Heidi Stettner の犬の名前にちなんでいます。 彼は、1993年の8月に15歳で亡くなりました。 diff --git a/ja_JP.eucJP/man/man1/cap_mkdb.1 b/ja_JP.eucJP/man/man1/cap_mkdb.1 index 546d053204..05206d1660 100644 --- a/ja_JP.eucJP/man/man1/cap_mkdb.1 +++ b/ja_JP.eucJP/man/man1/cap_mkdb.1 @@ -1,107 +1,107 @@ -.\" Copyright (c) 1992 The Regents of the University of California. -.\" All rights reserved. +.\" Copyright (c) 1992, 1993 +.\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" -.\" from: @(#)cap_mkdb.1 5.4 (Berkeley) 3/6/93 +.\" @(#)cap_mkdb.1 8.1 (Berkeley) 6/6/93 .\" %FreeBSD: src/usr.bin/cap_mkdb/cap_mkdb.1,v 1.12 2002/04/19 23:21:39 charnier Exp % .\" $FreeBSD$ .\" .Dd June 6, 1993 .Dt CAP_MKDB 1 .Os .Sh 名称 .Nm cap_mkdb .Nd ケーパビリティ・データベースを作る .Sh 書式 .Nm cap_mkdb .Op Fl v .Op Fl f Ar outfile .Ar file .Op Ar .Sh 解説 .Nm cap_mkdb ユーティリティは、指定したファイルを連結して形成した .Xr getcap 3 論理データベースから、ハッシュ化 されたデータベースを作ります。 .Pp データベースの名前は、先頭に指定したファイルのベース名に文字列 .Dq .db を付け加えたものになります。 .Xr getcap 3 ルーチンの検索速度は、オリジナルのテキストファイルよりも、 このデータベースのほうがずっと高速です。 .Pp ファイル内の ``tc'' エントリは、データベースにストアされる前に展開され ます。 .Pp オプションとしては、以下のものがあります: .Bl -tag -width indent .It Fl f Ar outfile データベースのベース名として別のものを指定します。 .It Fl v データベース内のケーパビリティレコードの登録数を表示します。 .El .Sh 書式 個々のレコードは二種類の異なるキーを用いてデータベース内に格納されます。 .Pp 第一の形式は、キーがレコードの最初のケーパビリティ (末端のコロン(``:'')は含みません)から構成され、 データフィールドがスペシャルバイトとレコードの残りの部分から構成されています。 スペシャルバイトの値は、0 あるいは 1 のいずれかです。ここで 0 はレコードの 状態が良好であることを、1 はレコード中に展開することができなかっ た ``tc'' ケーパビリティが存在することを示します。 .Pp 第二の形式は、キーがレコード最初のケーパビリティの中の名前の一つで 構成され、データフィールドがスペシャルバイトとレコードの最初のケーパビリティ から構成されています。この場合スペシャルバイトの値は 2 です。 .Pp 通常の動作においては、まずデータベースから名前を検索します。 その結果得られるのは、第二の形式のキー/データ組です。 このキー/データ組のデータフィールドを用いて、 第一の形式のキー/データ組を検索します。これが 与えられた名前に対する実際のデータになります。 .Sh 診断 .Ex -std .\" .\" 以下の使用例の章は FreeBSD オリジナルマニュアルには無い。 .\" このような使用例の正当性を容易には確認できないので、 .\" 残念だがこの章はコメントアウトすることにした。 --- jpman J.Sakai .\" .\".Sh 使用例 .\"termcap ファイルにエントリを追加した場合などは、 .\"このコマンドを用いてデータベースファイルを更新しておきます。 .\".Pp .\".Dl # cap_mkdb -v /usr/share/misc/termcap .\".Dl cap_mkdb: 555 capability records .Sh 関連項目 .Xr dbopen 3 , .Xr getcap 3 , .Xr termcap 5 diff --git a/ja_JP.eucJP/man/man1/cat.1 b/ja_JP.eucJP/man/man1/cat.1 index aa192ab25a..aa219bb96a 100644 --- a/ja_JP.eucJP/man/man1/cat.1 +++ b/ja_JP.eucJP/man/man1/cat.1 @@ -1,200 +1,200 @@ .\" Copyright (c) 1989, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" .\" 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. .\" 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. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)cat.1 8.3 (Berkeley) 5/2/95 .\" %FreeBSD: src/bin/cat/cat.1,v 1.22 2004/04/06 20:06:44 markm Exp % .\" .\" $FreeBSD$ .\" .Dd March 21, 2004 .Dt CAT 1 .Os .Sh 名称 .Nm cat .Nd ファイルの連結、表示を行う .Sh 書式 .Nm cat .Op Fl benstuv .Op Ar .Sh 解説 .Nm はファイルを連続的に読み込み、標準出力に書き出します。 .Ar file が単一のダッシュ .Pq Sq \&- または存在しない場合、 .Nm は標準入力から読み込みます。 .Ar file が .Ux ドメインソケットの場合、 .Nm はこれに接続し、 .Dv EOF まで読み取りを行います。 これは、 .Xr inetd 8 で利用可能な .Ux ドメインのバインディング機能を補うものです。 .Pp オプションは以下のとおりです。 .Bl -tag -width width .It Fl b 非空白行に、1 から開始する番号を付けます。 .It Fl e 表示できない文字を目に見える形で表示し ( .Fl v オプション参照)、各行の最後に .Pq Ql \&$ を表示します。 .It Fl n 行番号を付け加えます。行番号は 1 から始まります。 .It Fl s 連続した空行を圧縮します。連続した空行は 1 行の空行 として出力されます。 .It Fl t 表示できない文字を目に見える形で表示し ( .Fl v オプション参照)、タブを .Ql ^I で表示します。 .It Fl u 出力のバッファリングを行いません。 .It Fl v 表示できない文字を目に見える形で表示します。 control-X は .Ql ^X 、削除文字 (8進数で 0177) は .Ql ^? と表示されます。 .Tn ASCII 文字でないもの ( 最上位ビットが立っているもの ) は、 .Ql M- (メタ) のあとに残りの7ビットで表されるキャラクタを 表示します。 .El .Sh 診断 .Ex -std .Sh 使用例 コマンド .Bd -literal -offset indent .Ic cat file1 .Ed .Pp は、 .Ar file1 の内容を標準出力へ表示します。 .Pp コマンド .Bd -literal -offset indent .Ic cat file1 file2 > file3 .Ed .Pp は、 .Ar file1 と .Ar file2 の内容を .Ar file3 へ順番に表示します。 .Ar file3 が既に存在する場合にはこれを切り詰めます。 リダイレクトについての更なる情報は、シェル (すなわち .Xr sh 1 ) のマニュアルページを参照してください。 .Pp コマンド .Bd -literal -offset indent .Ic cat file1 - file2 - file3 .Ed .Pp は、 .Ar file1 の内容を表示し、標準入力から .Dv EOF .Pq Sq ^D 文字を受け取るまでに受け取ったデータを表示し、 .Ar file2 の内容を表示し、再度標準入力から読取った内容を出力し、 最後に .Ar file3 の内容を出力します。 標準入力がファイルを参照している場合、 コマンドライン上の 2 番目のダッシュは効果がなくなることに注意してください。 最初の .Ql \&- において、ファイルの内容全体が、 .Nm によって既に読み取られて表示されてしまったからです。 .Sh 関連項目 .Xr head 1 , .Xr more 1 , .Xr pr 1 , .Xr sh 1 , .Xr tail 1 , .Xr vis 1 , .Xr zcat 1 , .Xr setbuf 3 .Rs .%A Rob Pike .%T "UNIX Style, or cat -v Considered Harmful" .%J "USENIX Summer Conference Proceedings" .%D 1983 .Re -.Sh 標準 +.Sh 規格 .Nm ユーティリティは .St -p1003.2-92 仕様に準拠しています。 .Pp フラグ .Op Fl benstv はこの仕様に対する拡張です。 .Sh 歴史 .Nm ユーティリティは .At v1 から登場しました。 .An Dennis Ritchie がマニュアルの初版をデザインし、執筆しました。 .Sh バグ シェルの出力リダイレクトのメカニズムが原因で、 .Dq Li cat file1 file2 > file1 は file1 に最初に入っているデータを消去してしまいます! .Pp .Nm ユーティリティは、 .Fl t や .Fl v オプションが有効な場合、マルチバイト文字を認識しません。 diff --git a/ja_JP.eucJP/man/man1/catman.1 b/ja_JP.eucJP/man/man1/catman.1 index 4d7c859353..55e8c84eb5 100644 --- a/ja_JP.eucJP/man/man1/catman.1 +++ b/ja_JP.eucJP/man/man1/catman.1 @@ -1,101 +1,101 @@ .\" Copyright (c) 2002 John Rochester .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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/catman/catman.1,v 1.3 2002/12/13 16:53:51 ru Exp % .\" .\" $FreeBSD$ .Dd May 11, 2002 .Dt CATMAN 1 .Os .Sh 名称 .Nm catman .Nd オンラインマニュアルを事前にフォーマットする .Sh 書式 .Nm catman .Op Fl fnrvL .Op Ar directories ... .Sh 解説 .Nm ユーティリティは、 .Ar directories の全てのマニュアルページを .Nm nroff Fl man コマンドを使用して、事前にフォーマットします。 ディレクトリはスペースの代りにコロンで区切ることもできます。 .Ar directories が指定されなかった場合、 .Ev MANPATH 環境変数の内容が使われるか、 -これが設定されていない場合にはデフォルトディレクトリに +これが設定されていない場合にはデフォルトディレクトリ .Pa /usr/share/man が処理されます。 .Pp オプションは次の通りです: .Bl -tag -width indent .It Fl f cat ページの方が新しくても、全ての man ページを再フォーマットします。 .It Fl L 標準の環境変数で指定されたロケールに対応するローカライズサブディレクトリ のみ処理します。 .It Fl n 実際のフォーマットを実行する代りに、なにが行われるかだけを表示します。 .It Fl r .Dq ゴミ ファイル、 すなわち man ページでもこれをフォーマットした cat ページでもないものを 探して削除します。 .It Fl v .Nm が何を行っているかに関して更に冗長になります。 .El .Sh 環境変数 .Bl -tag -width ".Ev MANPATH" -compact .It Ev LC_ALL , LC_CTYPE , LANG これらの変数は、 .Fl L オプション使用時に処理するサブディレクトリを制御します。 .It Ev MANPATH コマンドラインにディレクトリが指定されない場合に どのディレクトリを処理するかを決定します。 .El .Sh 関連ファイル .Bl -tag -width ".Pa /usr/share/man" -compact .It Pa /usr/share/man .Ev MANPATH 環境変数が設定されていない場合に処理されるデフォルトディレクトリ。 .El .Sh 診断 .Ex -std .Sh 関連項目 .Xr makewhatis 1 , .Xr man 1 , .Xr nroff 1 .Sh 歴史 以前のバージョンの .Nm コマンドは .Fx 2.1 に登場しました。 .Sh 作者 .An John Rochester diff --git a/ja_JP.eucJP/man/man1/ci.1 b/ja_JP.eucJP/man/man1/ci.1 index ec8c6f6e69..1af0b5a46d 100644 --- a/ja_JP.eucJP/man/man1/ci.1 +++ b/ja_JP.eucJP/man/man1/ci.1 @@ -1,890 +1,890 @@ .\" $FreeBSD$ .de Id .ds Rv \\$3 .ds Dt \\$4 .. .Id %FreeBSD: src/gnu/usr.bin/rcs/ci/ci.1,v 1.6 1999/08/27 23:36:38 peter Exp % .ds i \&\s-1ISO\s0 .ds r \&\s-1RCS\s0 .ds u \&\s-1UTC\s0 .if n .ds - \%-- .if t .ds - \(em .TH CI 1 \*(Dt GNU .SH 名称 ci \- RCS ファイルにリビジョンをチェックインする .SH 書式 .B ci .RI [ options ] " file " .\|.\|. .SH 解説 .B ci は \*r ファイルに新たなリビジョンを格納します。 引数のうち、\*r ファイルの拡張子形式に一致する ファイル名を \*r ファイルとみなします。 それ以外のファイル名は、新たなリビジョンを含んだワークファイルとみなします。 .B ci はワークファイルの内容を対応した \*r ファイルに格納します。 もしワークファイルのみが指定されたなら、 .B ci はサブディレクトリ \*r、次にワークファイルがあるディレクトリの順に 対応する \*r ファイルを検索します。 詳細は後述の .SM "ファイル名規則" の項を参照してください。 .PP .B ci が動作するには、 .B ci を起動したユーザが \*r ファイルのアクセスリスト に登録されているか、アクセスリストが空であるか、 ユーザが \*r ファイルの持ち主であるか、 あるいはスーパユーザである必要があります。 すでに存在する枝 (branch) に新しいリビジョンを追加するには、 枝の先端 (tip) リビジョンが、 追加しようとするユーザによってロックされていなければなりません。 ロックされていない場合、新たな枝のみ作成可能です。 非厳格モード ( .BR rcs (1) 参照) の場合、 ファイルの所有者に対してはこの制限はありません。 他人が行っているロックは、 .B rcs コマンドによって解除できます。 .PP .B \-f オプションが指定されていなければ、 .B ci は追加しようとするリビジョンと直前のリビジョンとの比較を行います。 違いがなかった場合、新たなリビジョンを作成するかわりに、 ワークファイルを元のリビジョンのものに復元します。 復元するときには、ci はいったんワークファイルを削除し、 ロックを解除します。 .B "ci\ \-l" はロックし、 .B "ci\ \-u" はロックを解除します。 これらのオプションが指定されていれば、あたかも直前のリビジョンに対して .B "co\ \-l" または .B "co\ \-u" を実行したかのようにして直前のリビジョンの内容を取り出します。 復元が行われる場合、 .B \-n と .B \-s オプションは復元されるリビジョンに対して作用します。 .PP リビジョンを格納するときに、 .B ci はログメッセージの入力を促すプロンプトを表示します。 ログメッセージは、そのリビジョンの変更点の要約です。 ファイル終端 (EOF) あるいは、 ピリオド .B \&. のみからなる行によって入力を完了させます。 複数のファイルが登録される場合、 .B ci は前に入力したログメッセージを 再利用するかどうかを聞いてきます。 もし標準入力が端末でなければ、 .B ci は確認を行わず、 登録されるすべてのファイルに対して同じログメッセージを使用します。 .B \-m オプションの項も参照してください。 .PP もし \*r ファイルが存在しなければ、 .B ci は新規に \*r ファイルを作成し、 ワークファイルの内容を初期リビジョン (デフォルトでは .BR 1.1 ) として格納します。 その場合、アクセスリストは空に初期化されます。 初期リビジョンを格納するときは、 ログメッセージのかわりに ファイルの内容を記述したテキストを入力します (後述の .B \-t オプションの項を参照してください)。 .PP 登録するリビジョン番号 ( .I rev ) は、 .BR \-f , .BR \-i , .BR \-I , .BR \-j , .BR \-k , .BR \-l , .BR \-M , .BR \-q , .BR \-r , .B \-u のオプションのうちのいずれかで指定することができます。 .I rev はシンボル、数値、あるいは両者の組み合わせたものです。 .I rev で使用するシンボル名は定義済みでなければなりません; チェックイン時にシンボル名を割り当てる方法については .B \-n および .B \-N を参照して下さい。 もし .I rev が .B $ ならば、 .B ci はワークファイル中のキーワードからリビジョン番号を決定します。 .PP もし .I rev がピリオドから始まる場合、デフォルトの枝 (通常は幹 (trunk)) に格納されます。 もし .I rev が枝番号に続いてピリオドである場合、当該枝の最新のリビジョンが使用されます。 .PP .I rev がリビジョン番号の場合、 それは登録する枝のなかで最も大きな値である必要があります。 さもなければ、新しい枝を作成する必要があります。 .PP .I rev がリビジョン番号ではなく枝番号の場合、 その枝に対する新しいリビジョンが作成されます。 新しいリビジョン番号は、その枝の先端リビジョン番号に 1 を加えたものとなります。 もし .I rev が存在しない枝番号ならば、新たな枝が作成され、初期リビジョンとして .IB rev .1 が作成されます。 .br .ne 8 .PP .I rev が省略された場合、 .B ci はユーザが行った最後のロックからリビジョン番号を決定します。 ユーザがある枝の先端リビジョンをロックしている場合は、 新たなリビジョンがその枝に追加されます。 新しいリビジョン番号は 先端リビジョン番号に 1 を加えたものになります。 ユーザが先端ではないリビジョンをロックしている場合は、 新たな枝が作成されます。 新たな枝番号は、ロック対象のリビジョンの 最も大きな枝番号に 1 を加えたものになります。 デフォルトでは、新たな枝やリビジョンの番号は .B 1 となります。 .PP .I rev が省略され、ユーザがロックを行わず、そのファイルの所有者であり、 かつロックが .I 非厳格モード であるなら、 デフォルトの枝 (通常は幹 (trunk); .BR rcs (1) の .B \-b オプションの項を参照) に新たなリビジョンが作成されます。 .PP 例外: 幹 (trunk) においてリビジョンを追加することはできますが、 途中に挿入することはできません。 .SH オプション .TP .BI \-r rev リビジョン .I rev をチェックインします。 .TP .B \-r .B \-r オプションをリビジョン抜きで使用した場合、 .B ci にとって特別な意味が有ります。他の \*r コマンドでは .B \-r オプションを単体で使用するとデフォルト枝の最新のリビジョンを指定します。 しかし、 .B ci ではロック解除、ワークファイル削除を行い、 シェルのエイリアスやスクリプトによりデフォルトとされてしまった .B \-l や .B \-u オプションの効果を打ち消します。 .TP .BR \-l [\f2rev\fP] .B \-r と同様の動作を行ったあと、 .B "co\ \-l" と同様の動作も行います。 すなわち、登録されたリビジョンは即座にロックされ、チェックアウトされます。 これは、リビジョンをチェックインしてさらに編集を続けたい場合に便利です。 .TP .BR \-u [\f2rev\fP] .B \-l とほぼ同様の動作をしますが、登録されたリビジョンはロックされません。 これは、チェックインしたリビジョンの内容をすぐに参照したい場合に便利です。 .RS .PP .BR \-l 、リビジョン無し .BR \-r , .B \-u オプションは、最後に指定したもののみが効力を持ちます。 たとえば、 .B "ci\ \-u\ \-r" は .B "ci\ \-r" と等価です。 リビジョン無し .B \-r が .B \-u に優先するからです。 .RE .TP .BR \-f [\f2rev\fP] 強制的に登録します。 直前のリビジョンとの違いがない場合にも、 新しいリビジョンとして登録します。 .TP .BR \-k [\f2rev\fP] リビジョン番号などをローカルに算出せずに、 ワークファイルからキーワードを探し、 リビジョン番号、作成日時、状態、作者 ( .BR co (1) を参照) を検索し、登録されるリビジョンに割り当てます。 さらに、 .B ci を起動したユーザ名と実際にチェックインされた日付を含む デフォルトのログメッセージを作成します。 本オプションは、配布されたソフトウェアを登録するのに便利です。 複数のサイトに配布されたリビジョンは、 元のリビジョン番号、作成日付、状態、作者を保存するために、 .B \-k オプションを使って登録するべきです。 ワークファイルのキーワードから取り出した値とログメッセージは、 .BR \-d , .BR \-m , .BR \-s , .B \-w や、他のリビジョン番号を生成するようなオプションにより 変更することができます。 .TP .BR \-q [\f2rev\fP] 沈黙モードです。 診断メッセージを表示しません。 直前のリビジョンから変更がない場合、 .B \-f オプションを指定していなければ、登録を行いません。 .TP .BR \-i [\f2rev\fP] 最初のチェックイン; \*r ファイルが既に有る時にはエラー報告します。 特定のアプリケーションのレース状態を避けます。 .TP .BR \-j [\f2rev\fP] 初期化を行わず、チェックインします; \*r ファイルが無いとエラー報告します。 .TP .BR \-I [\f2rev\fP] 対話モードで動作します。 たとえ標準入力が端末でなくても、ユーザに対して問い合わせを行います。 .TP .BR \-d "[\f2date\fP]" チェックイン日付として指定された .I date を用います。 .I date は .BR co (1) で記述された自由形式で指定することができます。 これは、チェックイン日時をごまかしたい場合や、 日付キーワードがワークファイルにないにもかかわらず .B \-k オプションを使いたい場合に便利です。 .I date が指定されなかった場合、ワークファイルの最終更新日付が用いられます。 .TP .BR \-M [\f2rev\fP] 作成されるワークファイルの最終更新日付を、 取り出されたリビジョンの日付にします。 たとえば、 .BI "ci\ \-d\ \-M\ \-u" "\ f" は、 .I f の内容がキーワード置換により変更された場合も最終更新日時を変更しません。 本オプションを指定すると .BR make (1) に影響を与えるので、注意して使用する必要があります。 .TP .BI \-m "msg" チェックインするすべてのリビジョンのログメッセージとして .I msg を用います。 慣習的に .B # で始まるログメッセージはコメントであり、GNU Emacs の .B vc パッケージのようなプログラムはこれを無視します。 また、 .BI { clumpname } (の後に空白が続く) ログメッセージは可能であればまとめられることを意味します。 それはたとえ別々のファイルに関連づけられていてもです; .BI { clumpname } ラベルは、まとめる目的でのみ使用されます。 それ自身はログメッセージであるとは見なされません。 .TP .BI \-n "name" チェックインしたリビジョンにシンボリック名 .I name をつけます。 もし同じシンボリック名が別のリビジョンに割り当てられていた場合、 .B ci はエラーメッセージを出力します。 .TP .BI \-N "name" .B -n と同様の動作を行います。 ただし、同じシンボリック名が他のリビジョンに割り当てられていた場合は、 再割り当てを行います (こちらを優先します)。 .TP .BI \-s "state" チェックインされるリビジョンの状態を .I state とします。デフォルトは .B Exp (Experimental: 実験的) です。 .TP .BI \-t file \*r ファイル中の内容記述テキストをファイル .I file の内容で置き換えます。 すでに内容記述テキストがある場合はこれを削除します。ファイル名 .I file は .B \- で始まってはいけません。 .TP .BI \-t\- string \*r ファイル中の内容記述テキストを文字列 .I string で置き換えます。 すでに内容記述テキストがある場合は削除されます。 .RS .PP .B \-t オプションは、どちらの形式で使う場合も、 最初のチェックイン時にしか意味を持ちません。 それ以外の場合は単に無視されます。 .PP 最初のチェックイン時に .B \-t オプションが指定されなかった場合、 .B ci は標準 入力から内容記述テキストを読み込みます。 テキストは、ファイル終端 (EOF) あるいはピリオド ( .BR \&. ) のみの行で終了します。 ユーザへの問い合わせが可能な場合には、 テキストの入力を促すプロンプトが表示されます ( .B \-I オプション参照)。 .PP 旧バージョンとの互換性のため、引数のない .B \-t オプションは無視されます。 .RE .TP .B \-T 新しいリビジョンが存在し、 \*r ファイルの修正時刻が新しいリビジョンの時刻よりも古ければ、 \*r ファイルの修正時刻に対して新しいリビジョンの時刻を代入します; そうでない場合は \*r ファイルの修正時刻は保たれます。 リビジョンをロックした場合は、 .B ci は通常 \*r ファイルの修正時刻を現在の時刻に設定します。 なぜならロックが \*r ファイルに格納され、 ロックの削除は \*r ファイルの変更を要するからです。 \*r ファイルがワークファイルよりも新しくなる方法として 2 通り有ります: まず、 .B "ci\ \-M" は現在時刻以前の日付でワークファイルを作成します; 2 番目に、直前のバージョンを回復する時、 ワークファイルを変更しない場合にも \*r ファイルは変更され得ます。 \*r ファイルのワークファイルにおける .BR make (1) 依存により、上記 2 ケースは過剰の再コンパイルという結果になり得ます。 .B \-T オプションを使用することで、\*r ファイルの日付をごまかし、 再コンパイルを禁止します。 このオプションは注意して使って下さい; あるワークファイルのチェックインが、 同じ \*r ファイルに関連づけられている別のワークファイルに影響を及ぼすべき 時でも、再コンパイルを抑制し得ます。 例えば、\*r ファイルの時刻を 01:00、 (変更された) ワークファイルの時刻を 02:00、 別のワークファイルのコピーの時刻を 03:00、 現在の時刻を 04:00 とします。 ここで、 .B "ci\ \-d\ \-T" とすると、\*r ファイルの時刻は通常の 04:00 ではなく 02:00 になります; この結果、 .BR make (1) は別のコピーが \*r ファイルよりも新しいと (誤って) 認識します。 .TP .BI \-w "login" 指定された .I login をリビジョンの作者として登録します。 作者名をごまかしたい場合や、 作者キーワードがワークファイルにないにもかかわらず .B -k オプションを使いたい場合に便利です。 .TP .BI \-V \*r のリビジョン番号を表示します。 .TP .BI \-V n \*r システムのバージョン .I n のエミュレーションを行います。詳細は .BR co (1) を参照してください。 .TP .BI \-x "suffixes" \*r ファイルの拡張子を指定します。 拡張子が空ではない場合、 拡張子まで含めたすべてのパス名を \*r ファイル名であるとみなします。 拡張子が空の場合は、 .BI RCS/ path または .IB path1 /RCS/ path2 形式のものを \*r ファイル名であるとみなします。 本オプションの場合、 .B / で区切ることにより、複数の拡張子を指定できます。たとえば、 .B \-x,v/ は、 .B ,v と空の拡張子の 2 つの拡張子を持つ \*r ファイルを指定します。 複数の拡張子が指定された場合、指定された順に \*r ファイルを検索します。 最初に見つかったサフィックスが \*r ファイルに対して用いられます。 \*r ファイルを生成できるが、 \*r ファイルが見つからないときは、 これらのサフィックスを新しいファイル名に対して用います。 デフォルトの拡張子は、インストールされる環境により異なります。 UNIX のようなコンマをファイル名中に含めることの出来る計算機では、通常 .B \-x,v/ が、それ以外の計算機では空の拡張子が用いられます。 .TP .BI \-z zone キーワード置換での日付の出力書式の指定を行い、また、 .BI \-d date オプションでの .I date のデフォルトのタイムゾーンの指定を行います。 .I zone は、省略する事も、UTC からの数値差で指定する事も、特別な文字列 .B LT を使ってローカル時間で指定する事もできます。 デフォルトでは .I zone は空であり、 この場合は伝統的な \*r フォーマット、 すなわちタイムゾーン無しの \*u であり日付をスラッシュで区切ります; そうでない場合は時刻はタイムゾーン付の \*i 8601 フォーマットです。 例えば、ローカルタイムが 1990 年 1 月 11 日 太平洋標準時間 (\*u の 8 時間西) 午後 8 時の場合、時間の出力は次のようになります: .RS .LP .RS .nf .ta \w'\f3\-z+05:30\fP 'u +\w'\f31990-01-11 09:30:00+05:30\fP 'u .ne 4 \f2オプション\fP\f2時刻の出力\fP \f3\-z\fP \f31990/01/12 04:00:00\fP \f2(デフォルト)\fP \f3\-zLT\fP \f31990-01-11 20:00:00\-08\fP \f3\-z+05:30\fP \f31990-01-12 09:30:00+05:30\fP .ta 4n +4n +4n +4n .fi .RE .LP .B \-z オプションは \*r ファイルに格納されている日付 (常に \*u です) には影響しません。 .SH "ファイル名規則" \*r ファイルとワークファイルの組み合わせは 3 通りの方法で指定することができます (使用例の項目も参照してください)。 .PP 1) \*r ファイルとワークファイルの両方を指定する。 \*r ファイルのパス名は .IB path1 / workfileX 形式、ワークファイルのパス名は .IB path2 / workfile 形式をとります。この場合の .IB path1 / と .IB path2 / はパス (異なるパスや、空でも可) を示し、 .I workfile はファイル名、 .I X は \*r ファイルの拡張子です。もし .I X が空なら、 .IB path1 / は .B RCS/ で始まるか、 .B /RCS/ を含まねばなりません。 .PP 2) \*r ファイルのみを指定する。 ワークファイルがカレントディレクトリに作成され、\*r ファイル名から .IB path1 / と拡張子 .I X を取り除いたファイル名になります。 .PP 3) ワークファイルのみを指定する。 .B ci はまず、各 \*r 拡張子 .I X に対して、 .IB path2 /RCS/ workfileX 形式の名前で検索を行います。 さらに、(もしこれが見つからず、 .I X が空でなければ、) .IB path2 / workfileX を検索します。 .PP 1) または 2) の方法で \*r ファイルが指定されていない場合、 .I ci はまずディレクトリ .B ./RCS を検索し、次にカレントディレクトリを検索します。 .PP 異常により \*r ファイルのオープンに失敗すると、 .I ci はエラー報告します。 他に \*r ファイルのパス名の候補があってもです。 たとえばディレクトリ .I d で \*r コマンドを利用できないようにするには、 .IB d /RCS なる名前の通常ファイルを作成しておきます。 すると、\*r コマンドは .IB d /RCS をディレクトリとしてオープンしようとしますが、 ディレクトリではないのでオープンすることができず失敗します。 .SH 使用例 \*r 拡張子が .B ,v 、カレントディレクトリには \*r ファイルを含む .B RCS というサブディレクトリがあり、 .B io.c,v があると仮定します。 ここで、以下に示したコマンドを実行すると、 どれもカレントディレクトリにある .B io.c を .B RCS/io.c,v にチェックインし、 .B io.c を削除します。 .LP .RS .nf .ft 3 ci io.c; ci RCS/io.c,v; ci io.c,v; ci io.c RCS/io.c,v; ci io.c io.c,v; ci RCS/io.c,v io.c; ci io.c,v io.c; .ft .fi .RE .PP \*r 拡張子が空、カレントディレクトリには \*r ファイルを含む .B RCS というサブディレクトリがあり、 .B io.c があると仮定します。ここで以下に示すコマンドは、どれも新しい リビジョンのチェックインを行います。 .LP .RS .nf .ft 3 ci io.c; ci RCS/io.c; ci io.c RCS/io.c; ci RCS/io.c io.c; .ft .fi .RE .SH "ファイルモード" .B ci が作成した \*r ファイルは、 ワークファイルの読み込みと実行の許可属性を受け継ぎます。 すでに \*r ファイルが存在すれば、 .B ci はその読み込みと実行の許可属性を保持します。 .B ci は、つねに \*r ファイルの書き込み許可属性を不許可にします。 .SH 関連ファイル いくつかの一時ファイルが、ワークファイルの存在するディレクトリまたは 一時ディレクトリ (環境変数の項の .B \s-1TMPDIR\s0 参照) に作成されます。 セマフォファイル等のファイルが \*r ファイルが存在するディレクトリに作成されます。 空ではない拡張子を用いている場合、 セマフォファイル名の先頭文字には、 拡張子の先頭文字と同じ文字が用いられます; よって、拡張子として、ワークファイルの拡張子の先頭文字と同じ文字を 指定しないように注意してください。 空の拡張子を指定している場合、 セマフォファイル名の最後の文字がアンダスコア ( .B _ ) となります。 .PP .B ci は、 \*r ファイルやワークファイルを変更しません。通常 .B ci はそれらのファイルをアンリンクし、新しいファイルを作成します; ただし、\*r ファイルへのシンボリックリンクの鎖を壊す代わりに、 目的のファイルをアンリンクします。 よって、 .B ci は変更されるワークファイルへの ハードリンク、シンボリックリンクを全て壊します; さらに、\*r ファイルへのハードリンクは無効となり、 シンボリックリンクは保存されます。 .PP 実効ユーザは、\*r ファイルを含むディレクトリの 検索および書き込み権を持っていなければなりません。 通常実ユーザは、 \*r ファイルとワークファイルの読み込み許可と、 それらを含むディレクトリの検索および書き込み権を持っていなければなりません。 しかし、古い計算機のなかには実ユーザと実効ユーザの間を 容易に行き来することができないものもあります。 これらの計算機では、実効ユーザのみが利用されます。 .B ci や .B co のコピーに setuid が設定されていなければ、 実ユーザと実効ユーザは同一です。 次節で説明するように、 もし実効ユーザが全 \*r ファイルとそれを含むディレクトリを所有し、 実効ユーザのみが \*r ディレクトリに書き込めるように設定できるなら、 \*r ファイルのセキュリティを強化することが可能です。 .PP ユーザは \*r ファイルを含むディレクトリの許可属性を変更することで、 \*r ファイルに対するアクセスを制限できます; そのディレクトリに書き込み権のあるユーザだけが、 \*r ファイルを変更する \*r コマンドを使用することができます。 たとえば、ユーザが複数のグループに属することが出来る計算機では、 \*r ディレクトリをあるグループのみが書き込み権を持つように設定します。 これは、略式のプロジェクトでは十分ですが、 グループに所属するユーザが自由に \*r ファイルを変更することができ、 \*r ファイルすべてを削除することもできます。 そのため、正式なプロジェクトでは、 \*r ファイルを自由に操作きる \*r 管理者と、 新たなリビジョンをチェックインすること以外の操作はできない他のユーザとを、 区別することがあります。 .SH SETUID の使用 \*r 管理者以外のユーザがリビジョンを削除できないようにするには、 以下のように setuid 特権を使用することができます。 .nr n \w'\(bu'+2n-1/1n .ds n \nn .if \n(.g .if r an-tag-sep .ds n \w'\(bu'u+\n[an-tag-sep]u .IP \(bu \*n その計算機で \*r にて setuid が使用できるか確認します。 疑問があるときは、信頼できる専門家に意見を聞いてください。 最も良いのは、 .B seteuid() システムコールが Posix 1003.1a Draft 5 に 記述されているように動作することです。 なぜなら、実ユーザが .BR root であっても、\*r は実ユーザと実効ユーザを簡単に切り替えることができるからです。 その次に良いのは、 .B setuid() システムコールが saved setuid (Posix 1003.1-1990の {\s-1_POSIX_SAVED_IDS\s0} の動作) を サポートしている場合です; この場合、実ユーザもしくは実効ユーザが .BR root である時のみ失敗します。 \*r は setuid に失敗すると、ただちに終了します。 .IP \(bu \nn ユーザグループの \*r 管理者として、ユーザ .I A を選びます。 .I A だけが、\*r ファイルに対して .B rcs コマンドを実行することができます。 .I A は .B root や、特権を持ったユーザであってはいけません。 相互に異なるユーザグループには、異なる管理者を使用するべきです。 .IP \(bu \nn ユーザが実行するファイルのディレクトリに、パス名 .I B を選びます。 .IP \(bu \nn 以下のように、通常のインストールディレクトリ .I D から、 .B ci と .B co を .I B にコピーし、 .I A へ setuid します: .LP .RS .nf .ne 3 \f3mkdir\fP \f2B\fP \f3cp\fP \f2D\fP\^\f3/c[io]\fP \f2B\fP \f3chmod go\-w,u+s\fP \f2B\fP\f3/c[io]\fP .fi .RE .IP \(bu \nn 以下のように、各ユーザのパスに .I B を加えます: .LP .RS .nf .ne 2 \f3PATH=\fP\f2B\fP\f3:$PATH; export PATH\fP # ordinary shell \f3set path=(\fP\f2B\fP \f3$path)\fP # C shell .fi .RE .IP \(bu \nn 以下のように、 .I A だけが書き込み許可を持つ \*r ディレクトリ .I R を作成します: .LP .RS .nf .ne 2 \f3mkdir\fP \f2R\fP \f3chmod go\-w\fP \f2R\fP .fi .RE .IP \(bu \nn 特定のユーザだけに \*r ファイルの読み込みを許可したい場合、 そのユーザをユーザグループ .IR G に入れて、さらに .I A が以下のように、\*r ディレクトリを保護します: .LP .RS .nf .ne 2 \f3chgrp\fP \f2G R\fP \f3chmod g\-w,o\-rwx\fP \f2R\fP .fi .RE .IP \(bu \nn (存在すれば) 古い \*r ファイルを .IR R にコピーし、 .I A が所有であることを保証します。 .IP \(bu \nn \*r ファイルのアクセスリストは、 リビジョンをチェックインおよびロックできるユーザを制限します。 デフォルトのアクセスリストは空で、 \*r ファイルを読むことのできる全てのユーザに、登録の権限を与えます。 チェックインを制限したい場合は、 .I A がそのファイルに対して .B "rcs\ \-a" を実行します; .BR rcs (1) を参照してください。 特に .BI "rcs\ \-e\ \-a" A は、 .IR A だけにアクセスを制限します。 .IP \(bu \nn 初めてチェックインを行う前に、 .I A は .B "rcs\ \-i" によって新しい \*r ファイルを初期化します。 チェックインを制限したい場合、 .B \-a オプションを付け加えます。 .IP \(bu \nn setuid 特権は、 .BR ci , .BR co , .BR rcsclean のみに与えます; .B rcs や他のコマンドに、setuid 特権を与えてはなりません。 .IP \(bu \nn \*r コマンドに対して、他の setuid コマンドを実行しないでください。 setuid はあなたが考えるより扱いにくいものです。 .SH 環境変数 .TP .B \s-1RCSINIT\s0 本変数に空白で区切ったオプションを設定することで、 コマンドライン引数に先立って処理されます。 空白はバックスラッシュによってエスケープすることができます。 .B \s-1RCSINIT\s0 はほとんどの \*r コマンドで参照されます。特に .BR \-q , .BR \-V , .BR \-x , .B \-z オプションを指定しておくと便利です。 .TP .B \s-1TMPDIR\s0 一時ディレクトリ名を指定します。 設定されていない場合は、環境変数 .B \s-1TMP\s0 と .B \s-1TEMP\s0 とを調べ、始めに見つかった値を用います; どれも設定されていない場合は、 計算機依存のデフォルトのディレクトリ (たいていは .B /tmp ) を使用します。 .SH 診断 各リビジョンに対して、 .I ci は \*r ファイル名、ワークファイル名、追加するリビジョン番号、直前の リビジョン番号を表示します。全ての処理が成功した場合のみ、 終了ステータスが 0 になります。 .SH 作者 Author: Walter F. Tichy. .br Manual Page Revision: \*(Rv; Release Date: \*(Dt. .br Copyright \(co 1982, 1988, 1989 Walter F. Tichy. .br -Copyright \(co 1990, 1991, 1992, 1993, 1994, 1995 by Paul Eggert. +Copyright \(co 1990, 1991, 1992, 1993, 1994, 1995 Paul Eggert. .SH 関連項目 co(1), ident(1), make(1), rcs(1), rcsclean(1), rcsdiff(1), rcsintro(1), rcsmerge(1), rlog(1), setuid(2), rcsfile(5) .br Walter F. Tichy, \*r\*-A System for Version Control, .I "Software\*-Practice & Experience" .BR 15 , 7 (July 1985), 637-654. .br diff --git a/ja_JP.eucJP/man/man1/comm.1 b/ja_JP.eucJP/man/man1/comm.1 index dbb29af573..47816a6c9b 100644 --- a/ja_JP.eucJP/man/man1/comm.1 +++ b/ja_JP.eucJP/man/man1/comm.1 @@ -1,117 +1,115 @@ -.\" %NetBSD: comm.1,v 1.4 1995/03/26 09:25:50 glass Exp % -.\" .\" Copyright (c) 1989, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" From: @(#)comm.1 8.1 (Berkeley) 6/6/93 .\" %FreeBSD: src/usr.bin/comm/comm.1,v 1.12 2004/07/02 22:56:14 tjr Exp % .\" $FreeBSD$ .\" .Dd July 3, 2004 .Os .Dt COMM 1 .Sh 名称 .Nm comm .Nd 2つのファイルの共通な行もしくは共通でない行を出力する .Sh 書式 .Nm comm .Op Fl 123i .Ar file1 file2 .Sh 解説 .Nm ユーティリティは、 .Ar file1 と .Ar file2 を読み込んで(辞書的にソートされている必要があります)、 3 つのテキストカラムを出力します: それぞれ、 .Ar file1 のみにある行; .Ar file2 のみにある行; 両方のファイルにある行です。 .Pp ファイル名 ``-'' は標準入力を意味します。 .Pp オプションとしては以下のものがあります: .Bl -tag -width indent .It Fl 1 第 1 カラムの表示をしません。 .It Fl 2 第 2 カラムの表示をしません。 .It Fl 3 第 3 カラムの表示をしません。 .It Fl i 行比較を大文字と小文字を区別せずに行います。 .El .Pp それぞれのカラムの前にタブが付属しますが、 タブの数はそのカラムより番号の若いカラムで表示されるカラムの数に等しいです。 例えば、第 2 カラムの表示をしない場合、 第 1 カラムを表示する行では先頭にタブは付属せず、 第 3 カラムを表示する行では先頭にタブが 1 つ付属します。 .Pp .Nm はファイルが辞書的にソートされている事を期待します; 全ての文字が行の比較に使用されるからです。 .Sh 環境変数 .Xr environ 7 に記述されているように、 .Ev LANG , LC_ALL , LC_CTYPE 環境変数は .Nm の実行に影響を及ぼします。 .Sh 診断 .Ex -std .Sh 関連項目 .Xr cmp 1 , .Xr diff 1 , .Xr sort 1 , .Xr uniq 1 .Sh 規格 .Nm ユーティリティは .St -p1003.2-92 を満します。 .Pp .Fl i オプションは、 .Tn POSIX 標準を拡張しています。 .Sh 歴史 .Nm コマンドは .At v4 で登場しました。 diff --git a/ja_JP.eucJP/man/man1/compile_et.1 b/ja_JP.eucJP/man/man1/compile_et.1 index 9ff9e6a461..a78234569a 100644 --- a/ja_JP.eucJP/man/man1/compile_et.1 +++ b/ja_JP.eucJP/man/man1/compile_et.1 @@ -1,79 +1,77 @@ .\" Copyright (c) 1988 Massachusetts Institute of Technology, .\" Student Information Processing Board. All rights reserved. .\" .\" %FreeBSD: src/contrib/com_err/compile_et.1,v 1.3 2001/02/16 11:35:39 ru Exp % .\" .\" $FreeBSD$ .Dd November 22, 1988 .Os .Dt COMPILE_ET 1 .Sh 名称 .Nm compile_et .Nd エラーテーブルコンパイラ .Sh 書式 .Nm compile_et .Ar file .Sh 解説 .Nm compile_et は、エラーコード名とそれに対応するメッセージをリストアップしたテーブルを、 .Xr com_err 3 ライブラリと共に用いるのに適した C のソースファイルに変換します。 .Pp ソースファイル名は末尾が ``.et'' で終わっていなければなりません。 このファイルは以下のものから成ります。 まず、エラーコードテーブル名の宣言(4文字まで): .Pp .Em error_table name .Pp 続いて以下の形式のエントリ(256 エントリまで): .Pp .Em error_code name , -" -.Em string -" +.No \(dq Ns Em string Ns \(dq .Pp そして最後にテーブルの終わりを示す次の行です: .Pp .Em end .Pp 上のテーブル名はサブルーチン名 .Em initialize_XXXX_error_table を構築するのに用いられます。 このサブルーチンは .Xr com_err 3 ライブラリがエラーテーブルを認識するために呼び出される必要があります。 .Pp ここで定義された様々なエラーコードには、 連続した昇順の番号(最初の数は、テーブル名のハッシュ関数として求められた、 ある大きな数です)が割り当てられます。 従って、互換性を保つために、新しいコードは既存のテーブルの末尾にのみ 追加し、また既存のコードはテーブルから削除しないように すべきです。 .Pp このテーブルで定義された名前は C のヘッダファイルに置かれ、 プリプロセッサディレクティブによって 最大 32 ビットの大きさの整定数として定義されます。 .Pp 同時に C のソースファイルが生成されます。 このファイルはコンパイルされ、 これらのエラーコードを参照するオブジェクトファイルとリンクされます。 この C ソースファイルには、 メッセージテキストと初期化ルーチンが含まれます。 いずれの C のファイルも、オリジナルソースファイル 末尾の ``.et'' を ``.c'' および ``.h'' で置き換えた名前になります。 .Pp ソースファイル中の ``#'' はコメント文字として扱われ、 そこから行末までのテキストは無視されます。 .Sh バグ .Nm compile_et は .Xr yacc 1 に基づく極めて単純なパーサを用いているため、 エラー回復処理には改良すべき点が数多く残されています。 .Sh 関連項目 .Xr yacc 1 , .Xr com_err 3 .Rs .%A Ken Raeburn .%T "A Common Error Description Library for UNIX" .Re diff --git a/ja_JP.eucJP/man/man1/compress.1 b/ja_JP.eucJP/man/man1/compress.1 index d5441a52f8..ae63e58bf0 100644 --- a/ja_JP.eucJP/man/man1/compress.1 +++ b/ja_JP.eucJP/man/man1/compress.1 @@ -1,183 +1,183 @@ .\" Copyright (c) 1986, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" James A. Woods, derived from original work by Spencer Thomas .\" and Joseph Orost. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)compress.1 8.2 (Berkeley) 4/18/94 .\" %FreeBSD: src/usr.bin/compress/compress.1,v 1.19 2004/07/05 17:12:53 ru Exp % .\" $FreeBSD$ .\" .Dd May 17, 2002 .Dt COMPRESS 1 .Os .Sh 名称 .Nm compress , .Nm uncompress .Nd データを圧縮、展開する .Sh 書式 .Nm compress .Op Fl cfv .Op Fl b Ar bits .Op Ar .Nm uncompress .Op Fl cfv .Op Ar .Sh 解説 .Nm ユーティリティは adaptive Lempel-Ziv 法を用いて、ファイルを圧縮します。 個々の圧縮された .Ar file は、元のファイル名に拡張子 .Dq .Z を付加したものにリネームされます。 そして、ファイルの更新時刻、最終アクセス時刻、ファイルフラグ、モード、 ユーザ ID、グループ ID の大半は、パーミッションの許す範囲で圧縮ファイルに 引き継がれます。 もし圧縮しても .Ar file のサイズが小さくならない場合、compress はそのファイルを無視します。 .Pp .Nm uncompress ユーティリティは、compress されたファイルを元通りのファイルにリストアし、 ファイル名を拡張子 .Dq .Z を除いたものにリネームします。 .Pp compress, uncompress によってリネームされるファイルの名前がすでに存在し、 標準入力が端末の場合は、上書きしてもよいか確認を求めるプロンプトが (標準エラー出力に) 出力されます。 プロンプトが出せなかったり、確認の回答が得られなかった場合には、 ファイルは上書きされません。 .Pp ファイル名が指定されなかった場合または .Ar file 引数が単一のダッシュ .Pq Sq Fl の場合、標準入力からのデータが圧縮もしくは 展開され、結果が標準出力に出力されます。 入力および出力ファイルが通常ファイルでない場合、圧縮後のサイズの チェックとファイルの上書きチェックは行なわれません。 入力ファイルは削除されず、また入力ファイルの属性は引き継がれません。 .Pp オプションは以下のものがあります: .Bl -tag -width indent .It Fl b .Ar bits コードの上限値を指定します (以下を参照)。 .It Fl c compressed または uncompressed の出力を標準出力に出します。 入力元のファイルは参照されるのみで変更されません。 .It Fl f ファイル長が小さくなるならないにかかわらず、ファイルの圧縮を強行します。 また、圧縮ファイルと同名のファイルがすでに存在しても、確認を 求めることなく強制的にファイルの上書きを行ないます。 .It Fl v 圧縮後、ファイルサイズがどれだけ減ったかをパーセント表示します。 .El .Pp .Nm ユーティリティは Lempel-Ziv 修正アルゴリズムを使用します。 ファイル内の重複する部分文字列は、まず、257 以上の 9ビットコードに 置き換えられます。 コードが 512 に達すると、アルゴリズムは 10 ビットコードへ切り替えられ、 .Fl b フラグによって指定された上限 (デフォルトは 16) に達するまで、更に上の ビットを使っていきます。 -.Ar Bits +.Ar bits は、9 から 16 の範囲になければなりません。 .Pp .Ar bits の上限に達すると、 .Nm は圧縮率を定期的にチェックします。 圧縮率が上がっているとき、 .Nm は既存のコード辞書を使い続けますが、 圧縮率が下がったときは .Nm は、部分文字列のテーブルを破棄し、最初からテーブルを作り直します。 こうして、アルゴリズムをファイルの次の "block" へ適用していくことが できます。 .Pp ランダムデータの展開または圧縮されたデータの再圧縮を行わないように するためのマジックナンバと共に、圧縮の際に指定された .Ar bits パラメータがエンコードされ、圧縮ファイルの中に保存されるため、 .Nm uncompress では .Fl b フラグが省略されています。 .Pp 得られる圧縮の量は、入力サイズ、コードあたりの .Ar bits の数, および重複する部分文字列の分布に依存しています。 普通、ソースコードや英語のテキストは、50\-60% 圧縮されます。 一般的に (pack コマンドで使われている) Huffman 法、または (compact コマンドで使われている) 最適化 Huffman 法によって得られるより、 圧縮は良く、計算時間もかかりません。 .Sh 診断 .Ex -std compress uncompress .Pp 圧縮を試みたファイルの大きさが減少しない場合で .Fl f オプションが指定されなかった場合、ユーティリティ .Nm compress は 2 で終了します。 .Sh 関連項目 .Xr gunzip 1 , .Xr gzexe 1 , .Xr gzip 1 , .Xr zcat 1 , .Xr zmore 1 , .Xr znew 1 .Rs .%A Welch, Terry A. .%D June, 1984 .%T "A Technique for High Performance Data Compression" .%J "IEEE Computer" .%V 17:6 .%P pp. 8-19 .Re .Sh 規格 ユーティリティ .Nm compress および .Nm uncompress は .St -p1003.1-2001 に適合しています。 .Sh 歴史 .Nm コマンドは .Bx 4.3 から登場しました。 diff --git a/ja_JP.eucJP/man/man1/cpp.1 b/ja_JP.eucJP/man/man1/cpp.1 index 03605f664c..1d4fdce5b8 100644 --- a/ja_JP.eucJP/man/man1/cpp.1 +++ b/ja_JP.eucJP/man/man1/cpp.1 @@ -1,644 +1,644 @@ .\" %FreeBSD: src/contrib/gcc/cccp.1,v 1.3 1999/09/19 08:18:18 obrien Exp % .\" Copyright (c) 1991, 1992, 1993 Free Software Foundation -*- nroff -*- .\" See section COPYING for conditions for redistribution .\" .\" $FreeBSD$ .\" .TH cpp 1 "April 30, 1993" "FreeBSD" "GNU Tools" .SH 名称 cpp \- GNU-C 互換のコンパイラプリプロセッサ .SH 書式 .hy 0 .na .TP .B cpp .RB "[\|" \-$ "\|]" .RB "[\|" \-A \c .I predicate\c .RB [ (\c .I value\c .BR ) ]\|] .RB "[\|" \-C "\|]" .RB "[\|" \-D \c .I name\c .RB [ =\c .I definition\c \&]\|] .RB "[\|" \-dD "\|]" .RB "[\|" \-dM "\|]" .RB "[\|" "\-I\ "\c .I directory\c \&\|] .RB "[\|" \-H "\|]" .RB "[\|" \-I\- "\|]" .RB "[\|" "\-imacros\ "\c .I file\c \&\|] .RB "[\|" "\-include\ "\c .I file\c \&\|] .RB "[\|" "\-idirafter\ "\c .I dir\c \&\|] .RB "[\|" "\-iprefix\ "\c .I prefix\c \&\|] .RB "[\|" "\-iwithprefix\ "\c .I dir\c \&\|] .RB "[\|" \-lang\-c "\|]" .RB "[\|" \-lang\-c++ "\|]" .RB "[\|" \-lang\-objc "\|]" .RB "[\|" \-lang\-objc++ "\|]" .RB "[\|" \-lint "\|]" .RB "[\|" \-M\ [ \-MG "\|]]" .RB "[\|" \-MM\ [ \-MG "\|]]" .RB "[\|" \-MD\ \c .I file\ \c \&\|] .RB "[\|" \-MMD\ \c .I file\ \c \&\|] .RB "[\|" \-nostdinc "\|]" .RB "[\|" \-nostdinc++ "\|]" .RB "[\|" \-P "\|]" .RB "[\|" \-pedantic "\|]" .RB "[\|" \-pedantic\-errors "\|]" .RB "[\|" \-traditional "\|]" .RB "[\|" \-trigraphs "\|]" .RB "[\|" \-U \c .I name\c \&\|] .RB "[\|" \-undef "\|]" .RB "[\|" \-Wtrigraphs "\|]" .RB "[\|" \-Wcomment "\|]" .RB "[\|" \-Wall "\|]" .RB "[\|" \-Wtraditional "\|]" .br .RB "[\|" \c .I infile\c .RB | \- "\|]" .RB "[\|" \c .I outfile\c .RB | \- "\|]" .ad b .hy 1 .SH 解説 C プリプロセッサは、 実際のコンパイルの前にプログラムを変換するために C コンパイラから自動的に利用される .I マクロプロセッサ\c です。 長い記述を簡略してマクロとして定義することができるため、 マクロプロセッサと呼ばれます。 C プリプロセッサは、以下の4つの機能を提供します。 .TP \(bu ヘッダファイルを読み込みます。 これは プログラムに組み込まれる (C 言語の)宣言の入ったファイルです。 .TP \(bu C 言語の任意の部分の省略形として \c .I マクロ\c \&を定義し、C プリプロセッサがプログラム内の全てのマクロを その定義で置き換えます。 .TP \(bu 条件文の処理をします。専用のプリプロセッサコマンドを用いて、 いろいろな条件にしたがってプログラムの一部を含めたり除外したりできます。 .TP \(bu 行番号の制御をします。 ソースファイルと コンパイルされた中間ファイルとを組み合わせたり再アレンジしたりするプログラムを 用いる場合、 コンパイラにオリジナルのソースの何行目であるかを知らせるための、 行番号制御のプリプロセッサコマンドを利用できます。 .PP C プリプロセッサは、そのインプリメントによって細かな部分に違いが いくつかあります。GNU C プリプロセッサの完全なドキュメントは、 .B info ファイルの `\|\c .B cpp.info\c \&\|', もしくは、マニュアルの .I The C Preprocessor\c \&を参照して下さい。 この双方は `\|\c .B cpp.texinfo\c \&\|'から生成されます。GNU C プリプロセッサは ANSI Standard C のスーパセットと なっています。 ANSI Standard C では、今日 C プログラムで一般的に用いられている多くの (無害な)構造が認められていません。 この非互換性はユーザにとっては不便であり、そのため GNU C preprocessor ではこの記述をデフォルトで受け付けるように作られています。 厳密にいえば、 ANSI Standard C にするためには オプションとして `\|\c .B \-trigraphs\c \&\|', `\|\c .B \-undef\c \&\|', `\|\c .B \-pedantic\c \&\|'をつけなければなりません。 しかし経験則から、厳密な ANSI Standard C にあわせてこうした設定を 行なうと支障のある場合が多いことがわかっています。 ほとんどの場合は、C プリプロセッサは明示的に実行する必要はありません。 C コンパイラが自動的に実行してくれるからです。しかしながら、 明示的にプリプロセッサを実行するのが有効なことが個々にはあります。 C プリプロセッサ は、引数として \c .I infile\c \& と \c .I outfile\c \&の 2 つのファイル名を期待します。 プリプロセッサは `\|\c .B #include\c \&\|'で指定したファイルと一緒に \c .I infile\c を読み込みます。 入力ファイルの組み合わせで作られた出力は、 全て \c .I outfile\c \&に書かれます。 .I infile\c \& と \c .I outfile\c \& の指定に `\|\c .B \-\c \&\|'を使用することができます。\c .I infile\c \& が `\|\c .B \-\c \&\|' であれば\c \& 標準入力からデータを読み、\c .I outfile\c \& が `\|\c .B \-\c \&\|' であれば標準出力へ結果を書きます。もし \c .I outfile\c \& もしくは両方のファイル名が省略された場合、 省略されたファイルの代わりに標準入力と標準出力が使われます。 .SH オプション 以下が C プリプロセッサが受け付けるオプションの一覧です。 これらのオプションは、 プリプロセッサがコンパイラから起動されている場合にも 自動的に引き渡されるので、 C プログラムをコンパイルする際にも指定することができます。 .TP .B \-P `\|\c .B #\c \&\|'-行番号 という行番号情報をプリプロセッサの出力に含めません。 これは、C 以外の言語で行番号情報が含まれているとエラーを起こす言語を 処理する場合に有用でしょう。 .TP .B \-C コメントを削除せず、そのまま出力ファイルに含めます。 マクロ呼び出しの引数に現れるコメントはマクロ呼び出しの展開後にコピーされます。 .TP .B -traditional ANSI ではなく、旧形式の C の文法として解釈します。 .TP .B -trigraphs ANSI標準のトリグラフ(trigraph)構文を処理します。 これは ANSI C で 1 文字を表示すると定められた `\|\c .B ??\c \&\|' で始まる 3 文字の並びです。例えば、`\|\c .B ??/\c \&\|' は `\|\c .BR "\e" "\|'" を表しますので、`\|\c .B '??/n'\c \&\|' は改行文字の文字定数となります。 厳密に言えば、GNU C プリプロセッサの `\|\c .B \-trigraphs\c \&\|' オプションは ANSI C 標準を完全にはサポートしません。 が、普通のユーザならばその違いに気づく事は稀でしょう。 トリグラフについて、これ以上知りたいとは思わないでしょ? .TP .B \-pedantic `\|\c .B #else\c \&\|' や `\|\c .B #endif\c \&\|' の後にコメント以外のテキストがつくといった場合に、 ANSI C 標準で求められる警告を出力します。 .TP .B \-pedantic\-errors `\|\c .B \-pedantic\c \&\|' に似ていますが、警告ではなくエラーにします。 .TP .B \-Wtrigraphs トリグラフがあると警告を出力します(ただし、トリグラフの処理は行います)。 .TP .B \-Wcomment .TP .B \-Wcomments コメント開始シーケンスである `\|\c .B /*\c \&\|' がコメント中に存在したならば警告を発生します (両形式は同じ効果を持ちます)。 .TP .B \-Wall `\|\c .B \-Wtrigraphs\c \&\|' と `\|\c .B \-Wcomment\c \&\|' (ただし `\|\c .B \-Wtraditional\c \&\|' は除く) を指定したのと同じです。 .TP .B \-Wtraditional ANSI と伝統派の C とで異なる振る舞いをとる構文が出現した場合に 警告を発します。 .TP .BI "\-I " directory\c \& ディレクトリ \c .I directory\c \& をヘッダファイルを検索するディレクトリリストの末尾に追加します。 このオプションは、指定したディレクトリが システムのヘッダファイルが格納されているディレクトリよりも先に 検索されるので、ユーザ自身の作成したバージョンで システムが提供するヘッダファイルを上書きさせることもできます。 1 つ以上の `\|\c .B \-I\c \&\|' オプションを使用する場合、ディレクトリは左から右の順番で検索され、 標準のシステムヘッダファイルはその後になります。 .TP .B \-I\- `\|\c .B \-I\-\c \&\|' オプションよりも前に指定された `\|\c .B \-I\c \&\|' オプションで与えられたディレクトリは、`\|\c .B #include \c \&"\c .I file\c \&"\c \&\|' のインクルード文の場合にのみ検索されます。`\|\c .B #include <\c .I file\c \&>\c \&\|' では検索されません。 オプション `\|\c .B \-I\-\c \&\|' の後のオプション `\|\c .B \-I\c \&\|' に追加のディレクトリが指定された場合、それらのディレクトリは 全ての `\|\c .B #include\c \&\|' 文で検索されます。 付け加えて言うならば、`\|\c .B \-I\-\c \&\|' オプションを指定すると、カレントディレクトリは `\|\c .B #include \c .I \&"file\c \&"\c \&\|' 文に対する最初の検索ディレクトリではなくなります。 それゆえ、カレントディレクトリは明示的に `\|\c .B \-I.\c \&\|' として指定された場合にのみ検索されることになります。 `\|\c .B \-I\-\c \&\|' と `\|\c .B \-I.\c \&\|' を双方とも指定することで、どのディレクトリがカレントディレクトリ の前に、あるいは後に検索されるかを厳密に指定することができます。 .TP .B \-nostdinc ヘッダファイルの検索に標準システムディレクトリを用いません。`\|\c .B \-I\c \&\|' オプションで指定したディレクトリ(と、もし適切であるならば カレントディレクトリ)が検索されます。 .TP .B \-nostdinc++ ヘッダファイルの検索に C++ 仕様の標準ディレクトリを用いません。 が、その他の標準ディレクトリは検索します。 (このオプションは libg++ の構築時に用いられます。) .TP .BI "\-D " "name"\c \& \c .I name\c \& を既定義のマクロとして、`\|\c .B 1\c \&\|' に定義します。 .TP .BI "\-D " "name" = definition \& \c .I name\c \& をマクロとして\c .I definition\c \& に定義します。\c .I definition\c \& の内容に制限はありませが、プリプロセッサをシェルやシェルに類似した プログラムから起動している場合、シェルの文法上意味を持つスペース などの文字を保護するため、そのシェルのクォート文法を使用する必要が あります。もし、1 つの .I name\c \& に対して複数の `\|\c .B \-D\c \&\|' を指定したならば、もっとも右側の定義が有効となります。 .TP .BI "\-U " "name"\c \&\c .I name\c \& を定義しません。同一の \c .I name\c \& に対して `\|\c .B \-U\c \&\|' と `\|\c .B \-D\c \&\|' の双方が指定された場合、`\|\c .B \-U\c \&\|' が `\|\c .B \-D\c \&\|' に優先し、 \c .I name\c \& は定義されません。 .TP .B \-undef 非標準のマクロを一切定義しません。 .TP .BI "\-A " "name(" value ) (\c .B #assert\c \& コマンドと同じ方法で) 述語 \c .I name\c \& にトークンリスト \c .I value\c \& をアサートします。シェルのコマンドライン上では括弧を エスケープするなりクォートすることを忘れないで下さい。 既定義のアサーション全てを取り消すのに、`\|\c .B \-A-\c \&\|' を使えます。これはまた、既定義のマクロ全てを無効にします。 .TP .B \-dM プリプロセッサの結果を出力する代わりに、 プリプロセッサの実行中に定義された、既定義のものも含む全てのマクロの `\|\c .B #define\c \&\|' コマンドのリストを出力します。 これは、使用しているプリプロセッサのそのバージョンで、 どんなマクロが既定義であるかを知る方法を提供してくれます。 それには、空のファイル `\|\c .B foo.h\c \&\|' をこのオプションで処理してみればよいのです。 .sp .br touch\ foo.h;\ cpp\ \-dM\ foo.h .br .sp はすべての既定義マクロの値を見せてくれるでしょう。 .TP .B \-dD `\|\c .B \-dM\c \&\|' に似ていますが、2 つの相違点があります。これは既定義マクロを 出力\c .I しません\c \&。また、`\|\c .B #define\c \&\|' コマンドとプリプロセス結果の\c .I 双方\c \& を出力します。これらの出力は両方とも標準出力に行われます。 .PP .TP .BR \-M\ [ \-MG ] プリプロセスの結果を出力する代わりに、main のソースファイルの依存性を 記述する\c .B make\c \& 規則を出力します。 プリプロセッサはソースファイルのオブジェクトファイル名、コロン、 そのすべてのインクルードファイル名から成る\c .B make\c \& 規則を出力します。複数のインクルードファイルがある場合、規則は`\|\c .B \\\\\c \&\|'-改行で複数行に区切られます。 `\|\c .B \-MG\c \&\|' は、見つけられなかったヘッダファイルは(コンパイルの途中で)生成され、 ソースファイルと同じディレクトリに存在するものとして扱います。`\|\c .B \-M\c \&\|' と共に指定しなければなりません。 この機能は自動的に Makefile を更新するのに使います。 .TP .BR \-MM\ [ \-MG ] これは `\|\c .B \-M\c \&\|' に似ていますが、`\|\c .B #include "\c .I file\c \&"\c \&\|' でインクルードされるファイルのみを扱う点が異なります。`\|\c .B #include <\c .I file\c \&>\c \&\|' でインクルードされるシステムヘッダファイルは無視されます。 .TP .BI \-MD\ file これも `\|\c .B \-M\c \&\|' に似ていますが、依存情報が`\|\c .I file\c \&\|' に書き出されます。\(em\&`\|\c .B \-MD\c \&\|' を指定したファイルの処理もこれに加えて行われ、`\|\c .B \-M\c \&\|' のように通常の処理を抑制することはありません。 gcc を実行する場合は `\|\c .I file\c \&\|' 引数を指定してはいけません。gcc は、入力ファイル名の末尾の `\|\c .B .c\c \&\|' を `\|\c .B .d\c \&\|' で置き換えたファイル名を出力に用いるからです。 Mach では、`\|\c .B make\c \&\|' コマンドで便利なように複数のファイルを 1 つの依存規則ファイルに まとめるユーティリティ \c .B md\c \& が利用できます。 .TP .BI \-MMD\ file `\|\c .B \-MD\c \&\|' に似ていますが、ユーザのヘッダファイルのみを扱い、システムヘッダは 無視する点が異なります。 .TP .B \-H 通常の動作に加えて、 使用されたヘッダファイルのファイル名を出力します。 .TP .BI "\-imacros " "file"\c \& ファイル \c .I file\c \& を入力として処理しますが、 標準の入力ファイルを処理する前にその結果の出力を破棄します。 .I file\c \& によって生成される出力は捨てられるため、`\|\c .B \-imacros \c .I file\c \&\c \&\|' の処理結果の影響は、\c .I file\c \& 中に記述されたマクロがメインの入力ファイル中で使用可能になることだけです。 プリプロセッサは、`\|\c -.B \-imacros\c +.B \-imacros \c .I file\c \&\|' を処理する前に、 コマンドラインから与えられた全ての `\|\c .B \-D\c \&\|' や `\|\c .B \-U\c \&\|' オプションを評価します。 .TP .BI "\-include " "file"\c \& ファイル \c .I file\c \& を、標準の入力ファイルの前に処理し、その結果出力をインクルードします。 .TP .BI "\-idirafter " "dir" ディレクトリ \c .I dir\c \& を第 2 インクルードパスに加えます。第 2 インクルードパス中の ディレクトリは、メインインクルードパス (オプション `\|\c .B \-I\c \&\|' によって追加されます) 中にヘッダファイルを探した結果 発見できなかった場合に検索されます。 .TP .BI "\-iprefix " "prefix" \c .I prefix\c \& を、その後に続く `\|\c .B \-iwithprefix\c \&\|' オプション用のプレフィックスとして使用します。 .TP .BI "\-iwithprefix " "dir" ディレクトリを第 2 インクルードパスに追加します。ディレクトリ名は \c .I prefix\c \& と \c .I dir\c \& を連結することによって得られます。ここで \c .I prefix は `\|\c .B \-iprefix\c \&\|' オプションによって指定されたものです。 .TP .B \-lang-c .TP .B \-lang-c++ .TP .B \-lang-objc .TP .B \-lang-objc++ ソースの言語を指定します。`\|\c .B \-lang-c++\c \&\|' は、プリプロセッサに C++ のコメント文と、C++ 用の追加の デフォルトインクルードディレクトリを処理させ、`\|\c .B \-lang-objc\c \&\|' は、Objective C の `\|\c .B #import\c \&\|' ディレクティブを使用可能にします。`\|\c .B \-lang-c\c \&\|' は明示的にこれらの機能の切り離しを指定し、`\|\c .B \-lang-objc++\c \&\|' は双方を利用可能にします。 これらのオプションはコンパイラドライバ \c .B gcc\c \& によって生成されますが、`\|\c .B gcc\c \&\|' のコマンドラインから引き渡すことはできません。 .TP .B \-lint コメント中に埋め込まれた、プログラムチェッカ \c .B lint\c \& のコマンドを見つけ出し、それらの前に `\|\c .B #pragma lint\c \&\|' を埋め込みます。例えば、コメント `\|\c .B /* NOTREACHED */\c \&\|' は `\|\c .B #pragma lint NOTREACHED\c \&\|' になります。 このオプションは直接 \c .B cpp\c \& を呼び出す場合にのみ使えます。\c .B gcc\c \& は、コマンドラインからこのオプションを引き渡しません。 .TP .B \-$ 識別子中での `\|\c .B $\c \&\|' の使用を禁止します。 これは、標準が修正される以前は、C 標準への厳密な準拠のためにありました。 本オプションは、 .B cpp を直接呼ぶときのみ使用可能です。 .B gcc はコマンド行からこれを渡しません。 .SH 関連項目 .B info\c \&; .I The C Preprocessor\c , Richard M. Stallman. 中のエントリ .RB "`\|" cpp "\|'" .br .BR gcc "(" 1 ");" .B info\c \&; .I Using and Porting GNU CC (for version 2.0)\c , Richard M. Stallman. 中のエントリ .RB "`\|" gcc "\|'" .SH COPYING Copyright (c) 1991, 1992, 1993 Free Software Foundation, Inc. .PP 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. .PP Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. .PP 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 included in translations approved by the Free Software Foundation instead of in the original English. diff --git a/ja_JP.eucJP/man/man1/crunchgen.1 b/ja_JP.eucJP/man/man1/crunchgen.1 index 3665bb843e..e3ec42810c 100644 --- a/ja_JP.eucJP/man/man1/crunchgen.1 +++ b/ja_JP.eucJP/man/man1/crunchgen.1 @@ -1,471 +1,462 @@ .\" .\" Copyright (c) 1994 University of Maryland .\" All Rights Reserved. .\" .\" Permission to use, copy, modify, distribute, and sell this software and its .\" documentation for any purpose is hereby granted without fee, provided that .\" the above copyright notice appear in all copies and that both that .\" copyright notice and this permission notice appear in supporting .\" documentation, and that the name of U.M. not be used in advertising or .\" publicity pertaining to distribution of the software without specific, .\" written prior permission. U.M. makes no representations about the .\" suitability of this software for any purpose. It is provided "as is" .\" without express or implied warranty. .\" .\" U.M. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL U.M. .\" BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR .\" IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Author: James da Silva, Systems Design and Analysis Group .\" Computer Science Department .\" University of Maryland at College Park .\" %FreeBSD: src/usr.sbin/crunch/crunchgen/crunchgen.1,v 1.28 2002/05/30 07:51:22 ru Exp % .\" .\" $FreeBSD$ .Dd November 16, 2000 .Dt CRUNCHGEN 1 .Os .Sh 名称 .Nm crunchgen .Nd クランチバイナリ構築環境を作成する .Sh 書式 .Bk -words .Nm .Op Fl foql .Op Fl h Ar makefile-header-name .Op Fl m Ar makefile-name .Op Fl p Ar obj-prefix .Op Fl c Ar c-file-name .Op Fl e Ar exec-file-name .Op Ar conf-file .Ek .Sh 解説 クランチバイナリ (crunched binary) は、 たくさんの別々のプログラムをひとつにまとめて 単一の実行形式にしたプログラムです。 クランチバイナリの .Fn main 関数は、 .Va argv[0] の値をみて、 どのコンポーネントプログラムが実行されるべきかを決定します。 複数プログラムをクランチしてひとつにまとめる主たる理由は、 インストールフロッピあるいはシステム回復フロッピ上に、 できるだけ多くのプログラムを収納するためです。 .Pp .Nm ユーティリティは .Ar conf-file に記述されたクランチバイナリのための設定項目を読み込み、 .Pa Makefile とそれに付随するトップレベルの C ソースファイルを生成します。 これらはビルド時に各コンポーネントプログラムからクランチした実行形式を 作成します。 オプションにより、 .Nm は、各コンポーネントプログラムに対して、 そのソースディレクトリの .Pa Makefile から プログラムを構成するオブジェクトファイル (.o) を決定することも試みます。 この情報は実行のたびにキャッシュされます。 .Nm ユーティリティは関連するもうひとつのプログラム .Xr crunchide 1 を用い、全ての不要なシンボルを隠すことで コンポーネントプログラム間のリンク時のシンボル競合を防ぎます。 .Pp .Nm ユーティリティは特殊な要件をパッケージの .Pa Makefile に課しており、このことが原因で .Pa Makefile が非 .Bx ソース用に使えなくなっています。 特に、 .Pa Makefile はターゲット .Ic depend を含むことが必要であり、全オブジェクトファイルを変数 .Va OBJS で定義することが必要です。 場合によっては、偽の .Pa Makefile を使えるでしょう。 .Nm は、ソースディレクトリ .Pa foo 中の .Pa Makefile を見る前に、現在のディレクトリ中の .Pa Makefile.foo を見ます。 .Pp .Nm 実行後、 .Dq Li make -f .mk を実行することで クランチバイナリを作成できます。 コンポーネントプログラムのオブジェクトファイルは既に作成されている 必要があります。 出力される makefile に含まれる .Ic objs ターゲットは、 各コンポーネントプログラムのソースディレクトリで .Xr make 1 を実行し、ユーザのためにオブジェクトファイルを作成してくれます。 しかしこのターゲットは自動的には実行されません。 リリースエンジニアリング環境では、オブジェクトを他のディレクトリで 修正するのは一般に望ましくないからです。 .Pp オプションは以下の通りです: .Bl -tag -width indent .It Fl c Ar c-file-name 出力する C のファイル名を .Ar c-file-name とします。デフォルトの名前は .Pa .c です。 .It Fl e Ar exec-file-name クランチバイナリの実行形式ファイルの名前を .Ar exec-file-name とします。デフォルトの名前は .Pa です。 .It Fl f キャッシュを消去し、キャッシュされていたパラメータを強制的に再計算します。 .It Fl l 名前の表示。このバイナリが対応する名前を一覧表示します。 .It Fl h Ar makefile-header-name .Nm が生成する .Pa Makefile の先頭に含めるファイルの名前を設定します。 make の変数を定義するのに便利です。 これには、 .Xr make 1 の動作に影響を与え、環境変数を介してでは面倒である、 .Va RELEASE_CRUNCH が含まれます。 .It Fl m Ar makefile-name 出力する .Pa Makefile の名前を .Ar makefile-name とします。デフォルトの名前は .Pa .mk です。 .It Fl o 各プログラムの make ターゲットに対し、 .Dq Li make obj ルールを追加します。 .It Fl p Ar obj-prefix .Ic objdir を計算するときに、 .Ic srcdir の前に付けるパス名を設定します。 このオプションが存在しない場合、使用するプレフィックスは .Ev MAKEOBJDIRPREFIX 環境変数の内容か、または .Pa /usr/obj です。 .It Fl q 静粛処理モード。状況報告メッセージを抑制します。 .El .Sh CRUNCHGEN コンフィギュレーションファイルコマンド .Nm ユーティリティは、クランチバイナリのコンポーネントについて記述した設定項目を .Ar conf-file から読み取ります。 最も単純な場合は、各コンポーネントプログラム名を、 そのソースファイルが置かれたトップレベルのディレクトリ名とともに、 単に列挙するだけです。 次に .Nm ユーティリティは (ソースの makefile によって) オブジェクトファイルリストと その位置を求め、それをキャッシュします。 もっと特殊な場合には、 .Nm が必要とするあらゆるパラメータを、ユーザが手動で指定することができます。 .Pp .Ar conf-file のコマンドは以下の通りです: .Bl -tag -width indent .It Ic srcdirs Ar dirname ... コンポーネントプログラムのソースディレクトリがあるソースツリーのリスト。 これらのディレクトリは .Bx の .Dq Pa // 方式を用いて検索されます。 .Ic srcdirs 行は複数あってもよく、ディレクトリは記述された順に検索されます。 .It Ic progs Ar progname ... クランチバイナリを構成するプログラムのリスト。 .Ic progs 行は複数あっても構いません。 .It Ic libs Ar libspec ... クランチバイナリのリンク時に含めるライブラリ指定のリスト。 .Ic libs 行は複数あっても構いません。 .It Ic buildopts Ar buildopts ... 各 make ターゲットに追加される、ビルドオプションのリスト。 .It Nm ln Ar progname linkname .Va argv[0] に .Ar linkname が現われたときはいつも .Ar progname を起動するよう、クランチバイナリに要請します。 これにより、起動時の名前によって振る舞いを変えるようなプログラムも 正しく動作するようにできます。 .El .Pp 特別な状況、例えば ソースファイルがないとか、 従来の .Pa Makefile によらないビルドを行うといった場合に対応するため、以下に述べる .Ic special コマンドを用いてコンポーネントプログラムの .Nm パラメータを指定できます。 .Bl -tag -width indent .It Ic special Ar progname Ic srcdir Ar pathname -プログラム用 -.Ar progname -のオブジェクトファイル一覧を保持する make 変数の名前を設定します。 -これは通常 -.Nm OBJS -ですが、Makefile によっては、他の約束が好ましい場合や、 -.Nm SSHD_OBJS -のようにプログラム名が前に付くものがあります。 -.It Nm special Ar progname Nm srcdir Ar pathname プログラム .Ar progname のソースディレクトリを指定します。 通常は指定されたディレクトリ .Ic srcdirs 内の .Ar progname ディレクトリを検索して決定されます。 .It Ic special Ar progname Ic objdir Ar pathname プログラム .Ar progname の .Pa obj ディレクトリを指定します。 通常、 .Pa obj ディレクトリは、 ソースディレクトリ名の前に次のいずれかのコンポーネントを付けたものとして 計算され、コンポーネントには次の順番で優先度があります: コマンドラインにおける .Fl p の引数、環境変数 .Ev MAKEOBJDIRPREFIX の値、または .Pa /usr/obj です。 もしディレクトリが見つからなければ、ディレクトリ .Ic srcdir 自身が .Ic objdir となります。 .It Ic special Ar progname Ic buildopts Ar buildopts ビルドオプション集合を定義します。 .Ar progname 処理時には、 .Nm buildopts で指定されたものに加え、これらが追加されて .Xr make 1 のターゲットが作成されます。 .It Ic special Ar progname Ic objs Ar object-file-name ... プログラム .Ar progname のオブジェクトファイルのリストを指定します。 通常は、 .Dq Ic srcdir Ns / Ns Pa Makefile をインクルードし .Va $(OBJS) の値を出力するような一時 makefile を構築する ことで決定されます。 .It Ic special Ar progname Ic objpaths Ar full-pathname-to-object-file ... プログラム .Ar progname のオブジェクトファイルのパス名を指定します。 通常は .Ic objs リスト中の各ファイルのパス名の先頭に .Ic objdir を付加することで決定されます。 .It Ic special Ar progname Ic objvar Ar variable_name プログラム .Ar progname 用のオブジェクトファイルリストを保持する .Xr make 1 変数名を設定します。 これは通常 .Va OBJS ですが、 .Pa Makefile によっては別の規約を使用したいかもしれませんし、 変数名の前にプログラム名を付けたいかもしれません。例えば .Va SSHD_OBJS など。 .It Ic special Ar progname Ic lib Ar library-name ... .Ar progname Ns Pa .lo を生成するためにオブジェクトファイルとリンクするライブラリを指定します。 標準ライブラリに含まれるルーチンを再定義するライブラリを使用するときに 有用です。 .It Ic special Ar progname Ic keep Ar symbol-name ... プログラム .Ar progname の保持リストに、指定するシンボルのリストを追加します。 各シンボルの前にはアンダスコア .Pq Ql _ が付加され、 .Xr crunchide 1 フェーズでは .Fl k オプションの引数となります。 このオプションはシンボルが衝突するときの最後の拠所ですが、 シンボル解決の唯一の方法である場合もあります。 .It Ic special Ar progname Ic ident Ar identifier .Ar progname に対する .Pa Makefile Ns / Ns Tn C 識別子を設定します。 これは通常、 .Ar progname を元に、 .Ql - を .Ql _ にマップし、他のすべての非識別子文字を無視することにより、生成されます。 この結果、 .Qq Li foo.bar と .Qq Li foobar は、同一の識別子にマップされてしまいます。 .El .Pp 実際に .Nm が必要とするのは .Ic objpaths だけですが、 これは .Ic objdir と .Ic objs から求められ、これらも .Ic srcdir から求められます。 ですから、もし可能なら、初期のパラメータを指定し、あとは .Nm に求めさせたほうが便利な場合もあります。 .Pp .Nm が生成する makefile はオプションのターゲット .Ic objs を含みます。 これは、各コンポーネントプログラムのソースディレクトリ内で .Xr make 1 を実行してオブジェクトファイルを作成するターゲットです。 これがうまく動作するためには .Ic srcdir および .Ic objs パラメータが正しいものでなくてはなりません。 もしこれらの値があるプログラムに対して不正なものであると、 .Ic objs ターゲットではそのプログラムはスキップされてしまいます。 .Sh 実行例 .Nm の入力コンフィギュレーションファイルの例として .Dq Pa kcopy.conf の内容を示します。 .Pp .Bd -literal -offset indent srcdirs /usr/src/bin /usr/src/sbin progs test cp echo sh fsck halt init mount umount myinstall progs anotherprog ln test [ # test は [ として起動することもできる ln sh -sh # init は argv[0] を "-sh" としてシェルを起動する special myprog objpaths /homes/leroy/src/myinstall.o # ソースなし special anotherprog -DNO_FOO WITHOUT_BAR=YES libs -lutil -lcrypt .Ed .Pp このコンフィギュレーションファイルでは、 いくつかの基本的なシステムユーティリティと 自家製のインストールプログラム -.Dq Pq myinstall +.Dq Pa myinstall から成る 小さなクランチバイナリを記述しています。 ソースディレクトリは全く指定されていませんが、 オブジェクトファイルは -.Nm special +.Ic special 行で直接指定されています。 .Pp さらに、 .Dq Pa anotherprog 構築時には、引数 .Pp .Dl -DNO_FOO WITHOUT_BAR=YES .Pp がすべてのビルドターゲットに対して追加されます。 .Pp クランチバイナリ .Dq Pa kcopy は以下のようにして作成できます: .Pp .Bd -literal -offset indent % crunchgen -m Makefile kcopy.conf # Makefile と kcopy.c 作成 % make objs # コンポーネントプログラムの *.o 作成 % make # クランチバイナリ kcopy の作成 % kcopy sh # シェル sh を起動できるかどうか試すと.. $ # うまくいった! .Ed .Pp ここまでくれば、バイナリ .Dq Pa kcopy をインストールフロッピにコピーし、 各コンポーネントプログラムの名前でハードリンクを設けることができます。 .Sh 関連項目 .Xr crunchide 1 .Xr make 1 .Sh 警告 .Nm はクランチバイナリ中の各コンポーネントプログラム間のリンク競合を 除去するのに気を配っていますが、依然としてリンクされたライブラリ間で 競合が発生する可能性が残っています。 ライブラリ順の入れ換えが必要な場合もありますし、 二つのライブラリ間にどうしても解消できない競合が発生し、 結局ひとつにまとめられない場合も稀にあります。 .Pp .Bx のバージョンによっては、デフォルトのビルド環境では 単一ソースファイルのプログラムに対して 中間オブジェクトファイルを作成しないことがあります。 その場合は .Dq Li make objs ターゲットを用いてオブジェクトファイルを 作成するか、他の調整を施す必要があります。 .Sh 作者 .Nm ユーティリティは .An James da Silva Aq jds@cs.umd.edu によって作成されました。 .Pp Copyright (c) 1994 University of Maryland. All Rights Reserved. diff --git a/ja_JP.eucJP/man/man1/ctags.1 b/ja_JP.eucJP/man/man1/ctags.1 index 77bc4cbb2e..4bb1607cb6 100644 --- a/ja_JP.eucJP/man/man1/ctags.1 +++ b/ja_JP.eucJP/man/man1/ctags.1 @@ -1,231 +1,235 @@ .\" Copyright (c) 1987, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)ctags.1 8.1 (Berkeley) 6/6/93 .\" %FreeBSD: src/usr.bin/ctags/ctags.1,v 1.16 2003/06/08 13:43:56 charnier Exp % .\" $FreeBSD$ .\" .\" ctags.1 修正時には gctags.1 も同様に修正して下さい。 .\" Aug 31 1997 .Dd June 6, 1993 .Dt CTAGS 1 .Os .Sh 名称 .Nm ctags .Nd .Pa tags ファイルを作成する .Sh 書式 .Nm ctags .Op Fl BFTaduwvx .Op Fl f Ar tagsfile .Ar .Sh 解説 .Nm は、指定された C, Pascal, Fortran, .Xr yacc 1 , .Xr lex 1 , -lisp のソースから、 +Lisp のソースから、 .Xr ex 1 コマンド用の .Pa tags ファイルを作成します。 タグファイルは、指定されたオブジェクトが一群のファイル中の どの場所にあるかを示すものです。 タグファイルの各行はオブジェクトの名前、定義されているファイル、 オブジェクトの定義を見つけるための検索パターンを含み、 各々は空白で区切られています。 この .Pa tags ファイルを用いることにより、 .Xr ex 1 でこれらのオブジェクトが定義されている場所をすばやく見つけることが できます。 .Nm に与えられるオプションによりますが、オブジェクトは -subroutine、 typedef、 define、 struct、 enum、 union から +subroutine, typedef, define, struct, enum, union から 構成されます。 .Pp 次のオプションを使用可能です: .Bl -tag -width indent .It Fl B 後方検索パターン .Pq Li ?...? を用います。 .It Fl F 前方検索パターン .Pq Li /.../ を用います(デフォルト)。 .It Fl T typedefs, structs, unions, enums に関してタグを作成しません。 .It Fl a 既存の .Pa tags ファイルに追加します。 .It Fl d 引数を持たない .Li #define に関してもタグを作成します。引数を持つ .Li #define は自動的にタグが作成されます。 .It Fl f Ar tagsfile .Ar tagsfile で指定されたファイル名でタグファイルを生成します。 デフォルトでは .Pa tags というファイル名でタグファイルを生成します。 .It Fl u .Pa tags ファイル内の指定されたファイルに関する情報を更新します。 すなわち、関係するファイルへのすべての参照が削除され、新しいタグ情報が ファイルに追加されます。 (注意: このオプションはあまりスピードのでないような実装しか おこなわれていません。単に .Pa tags ファイルを再構築した方が早く終了するでしょう。) .It Fl v .Xr vgrind 1 形式のファイル一覧が標準出力に出力されます。 この一覧はオブジェクト名、ファイル名、1 ページあたり 64 行とした場合の ページ番号から構成されます。 出力は辞書式の順番でソートされているので、この後に .Xr sort 1 を通した方がよいでしょう。次のように使います。 .Bd -literal -offset indent ctags -v files | sort -f > index vgrind -x index .Ed .It Fl w 診断用メッセージを表示しないようにします。 .It Fl x .Nm はオブジェクト名、行番号、ファイル名、その行の内容からなる一覧を作成し、 それを標準出力に出力します。 これはオフラインでも読みやすいように印刷できる簡単な関数一覧として 利用できます。 .El .Pp .Pa .c や .Pa .h で終わる名前のファイルは、 C 言語のソースファイルとみなされ、 C の形式の関数・マクロ定義が検索されます。 .Pa .y で終わる名前のファイルは、 .Xr yacc 1 のソースファイルとみなされます。 .Pa .l で終わる名前のファイルは、最初の空白でない文字が .Ql \&; , .Ql \&( , .Ql \&[ のいずれかであれば Lisp のファイルであるとみなされ、そうでなければ .Xr lex 1 のファイルとみなされます。 その他のファイルは、まず Pascal か Fortran の定義が含まれるか どうかがチェックされ、含まれない場合には C 形式の定義が検索されます。 .Pp C 言語の場合、 .Dq Li main は特別に扱われ、元のソースファイルのパス名部分と末尾の .Pa .c の部分を取り除いたファイル名に対し、その先頭に .Ql M を付加したものをオブジェクト名とします。 これにより、同じディレクトリに複数のプログラムがある場合でも .Nm を実用的に使うことができます。 .Pp .Xr yacc 1 と .Xr lex 1 のファイルには特殊なタグがあります。 .Dq Li yyparse は .Xr yacc 1 ファイルの第二セクションの始まりを示し、 .Dq Li yylex は .Xr lex 1 ファイルの第二セクションの始まりを示します。 .Sh 関連ファイル .Bl -tag -width ".Pa tags" -compact .It Pa tags デフォルトで出力されるタグファイル .El .Sh 診断 .Nm ユーティリティは、エラーが発生すると 1 を返し、それ以外では 0 を返します。 同じ名前のオブジェクトが複数出てきてもエラーとはみなされません。 .Sh 互換性 .Fl t オプションは何もしません。 typedefs, enums, structs, unions に関してデフォルトでタグを作成しなかった、 以前のバージョンの .Nm との互換性のためです。 .Sh 関連項目 .Xr ex 1 , .Xr vi 1 +.Sh 規格 +.Nm +ユーティリティは +.St -p1003.1-2001 +に準拠しています。 .Sh 歴史 .Nm ユーティリティは .Bx 3.0 から登場しました。 .Sh バグ Fortran と Pascal 用の 関数(function)、サブルーチン(subroutine)、手続き(procedure) の認識にはとても単純な方法を用いています。 ブロック構造が解釈できないので、異なるブロックに同じ名前の Pascal 手続きが 存在するとうまく動作しません。 .Nm ユーティリティは Pascal の型(type)も理解しません。 .Pp -C か Pascal か -Fortran -かを判断する方法はとりあえず動いている、という程度のものです。 +C か Pascal か Fortran かを判断する方法は +とりあえず動いている、という程度のものです。 .Pp .Nm ユーティリティはきちんと整形された入力に頼っています。 また、ソースファイルに文法的な間違いがあると 簡単に混乱してしまいます。 文法的に間違っていなくても混乱する場合があります。 例えば、 .Li #ifdef を理解しないので(バグではなく仕様です)、 .Li #ifdef 内に括弧のつりあっていないコードがあると混乱してしまいます。 同様に、定義が複数行にわたっている場合、オブジェクトの先頭行ではなく 最終行が検索パターンにマッチします。 複数行にわたる .Li typedef に関しても同様です。 diff --git a/ja_JP.eucJP/man/man1/cut.1 b/ja_JP.eucJP/man/man1/cut.1 index 8d1ce73f0a..4c9d043a5a 100644 --- a/ja_JP.eucJP/man/man1/cut.1 +++ b/ja_JP.eucJP/man/man1/cut.1 @@ -1,162 +1,160 @@ -.\" %NetBSD: cut.1,v 1.5 1995/03/26 20:51:25 glass Exp % -.\" .\" Copyright (c) 1989, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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/cut/cut.1,v 1.29 2004/07/07 19:57:15 ru Exp % .\" .\" @(#)cut.1 8.1 (Berkeley) 6/6/93 .\" $FreeBSD$ .\" .Dd June 28, 2004 .Dt CUT 1 .Os .Sh 名称 .Nm cut .Nd ファイルの各行の、指定した部分を取り出す .Sh 書式 .Nm cut .Fl b Ar list .Op Fl n .Op Ar .Nm cut .Fl c Ar list .Op Ar .Nm cut .Fl f Ar list .Op Fl d Ar delim .Op Fl s .Op Ar .Sh 解説 .Nm は、 .Ar file から行を読み込み、 .Ar list の指定に従って選択した部分を取り出して標準出力に出力します。 .Ar file 引数が指定されない場合もしくはこれが単一のダッシュ .Pq Sq Fl の場合、 .Nm は標準入力から読み込みます。 .Ar list には、カラム番号、もしくはフィールド番号を指定します。 フィールドは特定の文字で区切られた領域です。 カラム番号およびフィールド番号は 1 から始まります。 .\" フィールド番号が 1 から始まるという記述はオリジナルには無いですが、 .\" 分かりやすくするために補足しました。 .\" By horikawa@isrd.hitachi.co.jp (Nov 9 1996) .Pp .Ar list オプション引数には、コンマもしくは空白で区切られた 複数の増加方向の番号もしくは番号範囲を指定することができます。 番号範囲は、1 番目の番号、ダッシュ .Pq Sq \- 、2 番目の番号の 3 つの組から構成され、 1 番目の番号から 2 番目の番号までの複数のフィールドもしくは複数のカラムを 選択します。 範囲には 1 番目の番号および 2 番目の番号も含まれます。 番号もしくは番号範囲の前にダッシュをつけた場合には、 1 番目の番号までのすべてのフィールドもしくはカラムも選択します。 番号もしくは番号範囲の後にダッシュをつけた場合には、 最後の番号以降のすべてのフィールドもしくはカラムも選択します。 番号もしくは番号範囲は、 繰り返しても、重なっても、いかなる順番であっても構いません。 また、入力行に指定のフィールドやカラムがない場合、 エラーとはなりません。 .Pp オプションとしては以下のものがあります: .Bl -tag -width indent .It Fl b Ar list バイト単位で指定します。 .It Fl c Ar list 文字単位で指定します。 .It Fl d Ar delim フィールドを区切る文字として .Ar delim を使用します。 デフォルトではタブが使用されます。 .It Fl f Ar list フィールド区切り文字で区切られたフィールド単位に指定します ( .Fl d オプションを参照)。 出力フィールドは、フィールド区切り文字 1 つによって区切られます。 .It Fl n マルチバイト文字を分割しません。 マルチバイト文字は、その文字を構成するバイト列のうち 1 バイト以上が選択されている、その選択された 1 バイトの前に その文字を構成する選択されていないバイト列が 0 バイト以上ある、 その選択された 1 バイトの後ろがすべて選択されている、という条件が 満たされた場合にのみ、出力されます。 .It Fl s 区切り文字のない行を出力しないようにします。 このオプションが指定されてない場合、区切り文字がない行はそのまま出力されます。 .El .Sh 環境変数 .Xr environ 7 に記述されているように、 .Ev LANG , LC_ALL , LC_CTYPE 環境変数は .Nm の実行に影響を及ぼします。 .Sh 使用例 ユーザのログイン名とシェルを、システムの .Xr passwd 5 ファイルから .Dq name:shell という組で取り出します: .Pp .Dl "cut -d : -f 1,7 /etc/passwd" .Pp 現在ログインしているユーザに対し、名前とログイン時刻を表示します: .Pp .Dl "who | cut -c 1-16,26-38" .Sh 診断 .Ex -std .Sh 関連項目 .Xr colrm 1 , .Xr paste 1 .Sh 規格 .Nm ユーティリティは -.St -p1003.2 +.St -p1003.2-92 準拠です。 .Sh 歴史 .Nm コマンドは .Tn AT&T System III .Ux に登場しました。 diff --git a/ja_JP.eucJP/man/man1/cvs.1 b/ja_JP.eucJP/man/man1/cvs.1 index e2126715bd..77a1fd4e80 100644 --- a/ja_JP.eucJP/man/man1/cvs.1 +++ b/ja_JP.eucJP/man/man1/cvs.1 @@ -1,2166 +1,2166 @@ .\" %FreeBSD: src/contrib/cvs/man/cvs.1,v 1.21 2004/04/15 01:17:26 peter Exp % .\" $FreeBSD$ .de Id .ds Rv \\$3 .ds Dt \\$4 .. .TH CVS 1 "\*(Dt" .\" Full space in nroff; half space in troff .de SP .if n .sp .if t .sp .5 .. .\" quoted command .de ` .RB ` "\|\\$1\|" '\\$2 .. .SH "名称" cvs \- コンカレントバージョンシステム -.SH "注記" -このマニュアルページは -.B cvs -の機能のまとめですが、最新ではないかもしれません。 -より新規で詳細な文書に関しては ( -.B info cvs -コマンドか、無い場合にはこのマニュアルページの関連項目の節に記述してあるように) -Cederqvist 著のマニュアルを参照して下さい。 .SH "書式" .TP \fBcvs\fP [ \fIcvs_options\fP ] .I cvs_command [ .I command_options ] [ .I command_args ] +.SH "注" +このマニュアルページは +.B cvs +の機能のまとめですが、最新ではないかもしれません。 +より新規で詳細な文書に関しては ( +.B info cvs +コマンドか、無い場合にはこのマニュアルページの関連項目の節に記述してあるように) +Cederqvist 著のマニュアルを参照して下さい。 .SH "解説" .IX "revision control system" "\fLcvs\fR" .IX cvs "" "\fLcvs\fP \- concurrent versions system" .IX "concurrent versions system \- \fLcvs\fP" .IX "release control system" "cvs command" "" "\fLcvs\fP \- concurrent versions system" .IX "source control system" "cvs command" "" "\fLcvs\fP \- concurrent versions system" .IX revisions "cvs command" "" "\fLcvs\fP \- source control" CVS はバージョン制御システムであり、RCS や SCCS のように、 ファイル (通常はソースコード) の古いバージョンの保持と 誰が何時何故変更を施したかなどの記録の保持を可能にします。 同様のシステムとは異なり、 CVS は一時に 1 ファイルや 1 ディレクトリのみを操作対象とするのではなく、 バージョン管理されたファイルを持つディレクトリ集合からなる階層を 操作対象とします。 CVS は、リリース管理を助け、 また複数の作者による並行的なソースファイル編集を助けます。 CVS は、 様々な操作を有効にしたり記録したり制御したりするためにトリガを使用可能であり、 広域ネットワークでうまく動作します。 .SP .B cvs はマスタソースの単一のコピーを保持します。 このコピーはソースの``リポジトリ''と呼ばれます。 これは、以前の ソフトウェアリリースをいつでもシンボリックなリビジョンタグか、 または過去の日付のいずれかに基づいて取り出せるようにするための 全ての情報を含みます。 .SH "不可欠なコマンド" .B cvs はバラエティに富んだコマンドを提供します (書式説明における \fIcvs_command\fP)。 また分散環境での多様なソース管理要求を満たすために、 これらのコマンドの多くにはいくつものオプションが用意されています。 しかしながら、 .BR cvs で便利に仕事をするためにそれぞれの細部に渡ってマスタする 必要はありません。 実際、ソースリポジトリを使う (そしてそれに貢献する) には 5 つの コマンドで充分です。 .TP \fBcvs checkout\fP \fImodules\fP\|.\|.\|. 大部分の \fBcvs\fP での作業のために必要な準備: \fImodules\fP (名前をつけたソースの集合。 ここにはソースリポジトリへの相対パスを 使うこともできます) のソースの私的なコピーを作成します。 他人の作業に邪魔されることなく このコピーで作業することができます。 少なくとも 1 レベルのサブディレクトリが必ず作成されます。 .TP .B cvs update 他の開発者がリポジトリのソースに行った変更を あなたのコピーに 取り込みたいと思ったときに、あなたの私的なソースのディレクトリの \fI中で\fP このコマンドを実行して下さい。 .TP \fBcvs add\fP \fIfile\fP\|.\|.\|. あなたの作業ディレクトリの \fBcvs\fP のレコードに新しいファイルを 載せるには、このコマンドを使います。そのファイルは次にあなたが .` "cvs commit" を実行した時にリポジトリに追加されます。 注意: 新しいソースをソースリポジトリに登録するには .` "cvs import" コマンドを使って下さい。 .` "cvs add" はすでにチェックアウトされているモジュールに新しいファイルを 追加するときにのみ使います。 .TP \fBcvs remove\fP \fIfile\fP\|.\|.\|. (指定するファイルを消した後に) リポジトリからファイルを 消したいことを宣言する場合に、このコマンドを使います。 .` "cvs commit" を実行するまで削除は他へは影響しません。 .TP \fBcvs commit\fP \fIfile\fP\|.\|.\|. あなたの変更をソースリポジトリに取り込むことで、他の開発者へ 変更結果を ``公開'' したいときに、このコマンドを使います。 .SH "オプション" .B cvs のコマンドラインには .IR cvs_options を含めることができ、 これは .B cvs プログラム全体に適用されます。 ひとつの .IR cvs_command がソースリポジトリへの特定の動作を 指定します。 そして .I cvs_command の動作を完全に指定するために .I command_options と .I command_arguments とを含めることができます。 .SP .I 警告: .IR cvs_command とオプションの相対的な位置関係に正確さを 期さなければなりません。 なぜなら同じオプションが .I cvs_options の位置 ( .B cvs コマンドの左側) と .I command_options の位置 ( .B cvs コマンドの右側) のいずれに置かれるかで異なる意味を持つ可能性が あるためです。 .SP .IR cvs_command を省略できる状況が 2 つだけあります: .` "cvs \-H" または .` "cvs --help" は利用可能なコマンドの一覧を引き出します、そして .` "cvs \-v" または .` "cvs --version" は \fBcvs\fP それ自身のバージョン情報を表示します。 .SP .SH "CVS OPTIONS" リリース 1.6 現在、 .B cvs は、短いオプションと共に .SM GNU スタイルの長いオプションもサポートします。 現在はまだ 2, 3 の長いオプションしかサポートされておらず、 それらは同じ意味を持つ短いオプションの後ろにかぎ括弧で囲んで 示されています。 .SP 以下のオプションは .B cvs プログラムの全体的な制御に使います: .TP .B \-H [ --help ] 指定された .I cvs_command の用法を表示します (が、コマンドの実行は行いません)。コマンド名を 指定しないと .` "cvs \-H" は利用可能な全コマンドの要約を表示します。 .TP .B \-Q はコマンドを .I 真に 寡黙にします。コマンドは深刻な問題についてのみ出力を行います。 .TP .B \-q はコマンドをいくぶん静かにします。サブディレクトリを再帰的に 移動する際の報告のような通知的なメッセージが抑制されます。 .TP \fB\-b\fP \fIbindir\fP .SM RCS プログラムが置かれているディレクトリとして .I bindir を使います (CVS 1.9 およびそれ以前)。 環境変数 .SM RCSBIN の設定より優先されます。 これは絶対パス名で指定しなければなりません。 .TP \fB\-d\fP \fICVS_root_directory\fP マスタとなる ソースリポジトリのルートディレクトリへのパス名として .I CVS_root_directory を使います。 環境変数 .SM CVSROOT の設定より優先されます。 これは絶対パスで指定しなければなりません。 .TP \fB\-e\fP \fIeditor\fP ログ情報の入力においてエディタとして .I editor を使います。 環境変数 .SM CVSEDITOR\c , .SM VISUAL\c , .SM EDITOR の設定より優先されます。 .TP .B \-f .B cvs スタートアップファイル (\fI~/.cvsrc\fP) を読み込みません。 .TP .B \-n いかなるファイルも変更しません。 .IR cvs_command を実行しようとしますが、 経過報告のみを行います。ファイルへの削除、更新やマージのいずれも 行いませんし、新しいファイルも作成しません。 .TP .B \-t プログラムの実行をトレースします。 .B cvs の動作のステップを示すメッセージを表示します。 不慣れなコマンドの影響の可能性を調べるのに .B \-n との組み合わせで特に有用です。 .TP .B \-r 新しい作業ファイルを読み出し専用にします。 環境変数 .SM CVSREAD がセットされている場合と同じ効果を持ちます。 .TP .B \-R 読み出し専用リポジトリモードをオンにします。 これにより、 anoncvs サーバ上などの読み出し専用リポジトリからのチェックアウトや、 CDROM 上のリポジトリからのチェックアウトが可能になります。 環境変数 .SM CVSREADONLYFS がセットされている場合と同じ効果を持ちます。 また、 .B \-R を使用すると NFS を介したチェックアウトが高速になります。 .TP .B \-v [ --version ] .BR cvs のバージョンと著作権情報を表示します。 .TP .B \-w 新しい作業ファイルを読み書き可能にします (デフォルトです)。 環境変数 .SM CVSREAD がセットされていても無視します。 .TP .B \-g 強制的に、グループ書き込み権限を作業ファイルに付加します。 典型的には、 単一のチェックアウトされたソースツリーを複数ユーザで共有する場合に このオプションを使用し、 各ユーザがより安全な umask でシェルを使用できるようにします。 この機能を使用するためには、 チェックアウトするソースツリーを格納するディレクトリを作成し、 本ディレクトリのグループをプライベートグループに設定し、 本ディレクトリ下のファイルがディレクトリのグループ ID を継承するようにします。 FreeBSD では自動的に、ファイルはディレクトリのグループ ID を継承します。 SysV では、典型的には SGID ビットをディレクトリに設定する必要があります。 チェックアウトしたツリーを共有するユーザは、 このグループに含まれる必要があります。 単一のチェックアウトされたソースツリーを共有するということは、 共通の CVS リポジトリに複数ユーザのアクセスを許すこととまったく異なることに 注意してください。 共通の CVS リポジトリへのアクセスは、 共有グループ書き込み権限によって既に実現されており、 本オプションを必要としません。 本オプションを透過的に使用するためには、 単に 'cvs -g' という行を ~/.cvsrc ファイルに置くだけで良いです。 プライベートグループもしくはプライベートモード 0700 のディレクトリに 全ソースをチェックアウトしたものをファイアウォールで防御しているのでない限り、 本オプションの使用は勧められません。 .TP .B \-x クライアントとサーバの間の通信を全て暗号化します。 現在では、Kerberos コネクション使用時のみ使用可能です。 .TP \fB\-z\fP \fIcompression\-level\fP ファイルをネットワーク経由でやりとりする際、 圧縮レベル \fIcompression\-level\fP で .B gzip を使い、やりとりするデータの圧縮と伸長を行います。リンクの両端で .SM GNU .B gzip プログラムがその時点でのサーチパス中に存在する必要があります。 .SH "使用法" .` "cvs \-H" で全般のヘルプを要求する場合を除き、 行いたい特定のリリース制御機能を選択するために、 .B cvs に対して一つの .I cvs_command を指定しなければなりません。 各 .B cvs コマンドはそれ自身のオプションと引数の集まりを受け付けます。 しかしながら、多くのオプションが複数のコマンドに渡って利用可能です。 .B \-H オプションをコマンドと共に指定することで、 各コマンドの使用法のまとめを表示することができます。 .SH "CVS のスタートアップファイル" 通常、CVS は起動時にユーザのホームディレクトリから .I .cvsrc というファイルを読み込みます。この起動時の手続きは .B \-f フラグで止めることができます。 .SP .I .cvsrc ファイルには CVS コマンドに引数リストを付けて、1 行に 1 つの コマンドを並べます。例えば \fI.cvsrc\fP に以下のように書くと: .SP diff \-c .SP .` "cvs diff" コマンドには常にコマンドラインで指定されたオプションに加えて \-c オプションが渡されるという意味になります (この場合 .` "cvs diff" を実行すると 全てにおいて context diff 形式が生成されるという 効果を持ちます)。 .SP 大域的なオプションは、\fBcvs\fP キーワードを使用して指定します。 例えば次の .SP cvs \-q .SP は、大域的オプション \-q が指定されたかのように全 .` "cvs" コマンドが動作することを意味します。 .SH "CVS COMMAND のまとめ" 以下は全 .B cvs コマンドの解説を要約したものです: .TP .B add 新しいファイルまたはディレクトリをリポジトリに追加します。 ファイルについては追加を同ファイルに対する .` "cvs commit" が行われるまで待ちます。 以前に .` "cvs checkout" を行うことで作成されたソースの中からのみ実行可能です。 新しいソース階層の全体を .B cvs の制御下に置くには .` "cvs import" を使って下さい。 (リポジトリを直接に変更するものではありません。 作業ディレクトリを変更します。) .TP .B admin ソースリポジトリに対して 制御コマンドを実行します。(リポジトリを直接に変更します。 作業ディレクトリを使用しますが変更は行いません。) .TP .B checkout 編集作業のためのソースファイルの作業ディレクトリを作成します。 (作業ディレクトリを生成または変更します。) .TP .B commit 作業ディレクトリでの変更、追加、削除部分をソースリポジトリに 反映します。(リポジトリを変更します。) .TP .B diff 作業ディレクトリのファイルとソースリポジトリ、または ソースリポジトリ中の 2 つのリビジョン間の差分を表示します。 (リポジトリ、作業ディレクトリのいずれも変更しません。) .TP .B export サイトからの出荷のための一揃いのソースファイルのコピーを用意します。 .` "cvs checkout" と違い .B cvs 管理のためのディレクトリが作られず (そしてそのため .` "cvs export" で作成されたディレクトリから .` "cvs commit" を行うことはできません)、 シンボリックタグが指定されなければなりません (リポジトリを変更しません。 作業ディレクトリに似たディレクトリを 作成します)。 .TP .B history ソースリポジトリの特定のファイルまたはディレクトリにあなたや 他の人が実行した .B cvs コマンドを表示します。(リポジトリも作業ディレクトリも変更しません。) ヒストリログは .` "$CVSROOT/CVSROOT/history" ファイルが作成されることで有効になった場合にのみ記録されます。 .BR cvs ( 5 ) を参照して下さい。 .TP .B import 外部で行われた更新内容を ``ベンダブランチ'' としてソースリポジトリに 取り込みます。(リポジトリを変更します。) .TP .B init CVSROOT サブディレクトリとデフォルトの制御ファイルを追加することで、 リポジトリを初期化します。 リポジトリを使用する前に、 本コマンドを使用するか、他の方法でリポジトリを初期化する必要があります。 .TP .B log ログ情報を表示します。 (リポジトリも作業ディレクトリも変更しません。) .TP .B rdiff リポジトリの中の 2 つのリリースの間の差分の集合をパッチファイルとして 用意します。(リポジトリも作業ディレクトリも変更しません。) .TP .B release .` "cvs checkout" をキャンセルし、 全ての変更を捨て去ります。 (作業ディレクトリを削除できます。 リポジトリは変更しません。) .TP .B remove ソースリポジトリからファイルを削除します、そのファイルに .` "cvs commit" が実行されるまで保留されます。(直接リポジトリには影響しません。 作業ディレクトリを変更します。) .TP .B rtag ソースリポジトリの特定のリビジョンのファイルに明示的に シンボリックタグを指定します。 .` "cvs tag" も参照して下さい。 (リポジトリを直接変更します。作業ディレクトリは必要なくまた 変更もしません。) .TP .B status 現在のファイルの状態を表示します: 最新バージョン、作業ディレクトリの ファイルのバージョン、作業バージョンが編集されたかどうか、オプションで .SM RCS ファイル中のシンボリックタグ。(リポジトリ、作業ディレクトリとも 変更しません。) .TP .B tag リポジトリ中のファイルにシンボリックタグを指定します。 デフォルトでは、作業ディレクトリと最後に同期を取ったリビジョンに タグをつけます。 (直接リポジトリを変更します。作業ディレクトリを使いますが 変更はしません。) .TP .B update リポジトリから変更を取り出して作業ディレクトリを最新状態にします。 可能であればマージが自動で行われます。 変更点が衝突しているために手動で解決しなければならない場合は、 警告が表示されます。(作業ディレクトリを変更します。 リポジトリは変更しません。) .SH "共通の COMMAND OPTIONS" この節では 複数の .B cvs コマンドで使用できる .I command_options について説明します。必ずしも全てのコマンドがこれら全てのオプションを サポートしているわけではありません。 コマンドの各オプションは、それが 意味を成すコマンドでのみサポートされます。しかしながら、 コマンドがそれらのオプションのひとつを持つとき、 他のコマンドでもそのオプションが同じ意味を持つと考えて差し支えありません。 (個々のコマンドと共に列挙してある別のオプションは ある .B cvs コマンドと別のコマンドで異なる意味を持つかもしれません。) .I "注意:" .B history コマンドは例外です。 このコマンドは、これら標準のオプションとも衝突するたくさんの オプションをサポートしています。 .TP \fB\-D\fP \fIdate_spec\fP \fIdate_spec\fP 以前のものの中で最も最近のリビジョンを使います (単独の 引数で、日時の表記は過去の日時を指定します)。 多種多様な日時のフォーマットが、 特に ISO ("1972-09-24 20:05") または Internet ("24 Sep 1972 20:05") が サポートされます。 特定のタイムゾーンが指定されていなければ、\fIdate_spec\fP は ローカルタイムゾーンで解釈されます。 ソースファイルの個人的なコピーを作るときに使うと、指定は ``sticky'' と なります。 つまり、\fB\-D\fP を使って作業ファイルを取り出すと、 \fBcvs\fP は指定された日時を記録します。 これは同じディレクトリでのその後の update で同じ日時を使うように するためです (これを明示的に無効にするよう指定していない場合に限ります。 \fBupdate\fP コマンドの説明を参照して下さい)。 .B \-D は .BR checkout ", " diff ", " history ", " export ", " .BR rdiff ", " rtag ", " .B update コマンドで有効です。 有効な日時指定には以下のようなものがあります: .in +1i .ft B .nf 1 month ago 2 hours ago 400000 seconds ago last year last Monday yesterday a fortnight ago 3/31/92 10:00:07 PST January 23, 1987 10:05pm 22:00 GMT .fi .ft P .in -1i .TP .B \-f \fBcvs\fP コマンドに特定の日時かタグを指定した場合、 通常は指定したタグを含まない (または指定した日時に存在しなかった) ファイルを無視します。一致するタグまたは日時が存在しなくても ファイルを取り出したいときは \fB\-f\fP オプションを使います。 (その場合、最も新しいバージョンが使われます。) .B \-f は以下のコマンドで使用できます: .BR checkout ", " export ", " .BR rdiff ", " rtag ", " update .TP \fB\-k\fP \fIkflag\fP デフォルトの キーワード処理を変更します。 \fB\-k\fP オプションは .BR add ", " checkout ", " diff ", " export ", " .BR rdiff ", " update コマンドで使用できます。 ソースファイルの個人的なコピーを作成するときに使うと \fIkflag\fP の指定は ``sticky'' になります。 つまり、このオプションを \fBcheckout\fP か \fBupdate\fP コマンドで指定すると、 \fBcvs\fP は指定した \fIkflag\fP をファイルに関連付け、 他のものを指定するまで、以降の \fBupdate\fP コマンドでそれを使い続けます。 .SP より有用な \fIkflag\fP としては \-ko と \-kb (バイナリファイル用) と \-kv があります。\-kv は .B export の際、どこか別のサイトで後に .B import されてもキーワード情報が残るようにしたい場合に有用です。 .TP .B \-l ローカル; サブディレクトリを再帰的に処理するのではなく、 現ディレクトリでのみ実行します。 以下のコマンドで使用できます: .BR checkout ", " commit ", " diff ", " .BR export ", " remove ", " rdiff ", " rtag ", " .BR status ", " tag ", " update .TP .B \-n .BR checkout / commit / tag / update のいずれのプログラムも .I 実行しません。 (プログラムはそれぞれの動作中にモジュールデータベースで 実行することを指定される可能性があり、このオプションはこれを バイパスします。) .BR checkout ", " commit ", " export ", " .B rtag コマンドで利用できます。 .I 警告: これは .B cvs コマンドの .I 左側 に指定できる、全体に作用する .` "cvs \-n" オプションと同じではありません。 .TP .B \-P .BR checkout " か " update によって更新されたことで空になった余分なディレクトリを 取り除きます (すなわち削除します)。 通常は、空のディレクトリ (リビジョン管理されたファイルを 含まないもの) は残されます。 .B \-P を指定すると、チェックアウトしたソースからそういったディレクトリを 黙って削除します。 これはリポジトリからはディレクトリを削除しません。あなたが チェックアウトしたコピーから削除するだけです。 このオプションは .B \-r か .B \-D オプションが .BR checkout " と " export で指定された場合に暗黙のうちに 指定されることに注意して下さい。 .TP .B \-T (ローカル) リポジトリからのコピーにより、CVS/Template を作成/更新します。 本オプションは、ローカルの cvs リポジトリを管理し、 リモートのリポジトリへコミットする開発者にとって有用です。 CVS/Template を維持することにより、 リモートコミットにおいても依然として、 適切なテンプレートをコミットエディタセッションに立ち上げ可能となります。 .BR checkout " と " update で利用可能です。 .TP .B \-p リポジトリから取り出されたファイルを、カレントディレクトリに 書き込むのではなく、標準出力へパイプします。 .BR checkout " と " update コマンドで使用できます。 .TP \fB\-r\fP \fItag\fP デフォルトの ``head'' リビジョンの代わりに引数 .I tag で指定されたリビジョンを使います。 \fBtag\fP と \fBrtag\fP コマンドで 付けられた任意のタグと共に、常に 2 つの特別なタグが使用できます: .` "HEAD" はリポジトリ中で最も新しい有効なバージョンを指し、 そして .` "BASE" はカレントの作業ディレクトリに最後にチェックアウトした リビジョンを指します。 .SP このオプションを .` "cvs checkout" か .` "cvs update" でファイルのコピーを作成するときに使うと、 \fItag\fP の指定は ``sticky'' です: \fBcvs\fP は \fItag\fP を記憶して以降の \fBupdate\fP コマンドでも、他のものを 指定するまで、それを使い続けます。 .I tag としては シンボリックまたは番号によるものが使用できます。 .SM RCS ファイルが指定されたタグを含んでいないときに警告メッセージを抑止するため 全体に作用する .B \-q オプションをコマンドオプション .B \-r と一緒に指定すると便利な場合が多くあります。 .B \-r は .BR checkout ", " commit ", " diff ", " .BR history ", " export ", " .BR rdiff ", " rtag ", " update コマンドで使用できます。 .I 警告: これは .B cvs コマンドの .I 左側 に指定し、全体に作用する .` "cvs \-r" オプションと同じではありません。 .SH "CVS COMMANDS" 以下が (最終的な) 全 .B cvs コマンドの詳細とそれぞれが受け付けるオプションです。 各コマンドの最初のサマリ行の説明は 3 種類の事柄をまとめています: .TP 1i \ \ \ \ コマンドのオプションと引数 特別なオプションが以下で説明されます。共通のコマンドオプションは サマリ行にしか現れないかもしれません。 .TP 1i \ \ \ \ 作業ディレクトリかリポジトリか? いくつかの \fBcvs\fP コマンドは実行に作業ディレクトリが必要です。 いくつかはリポジトリが必要です。同様に、いくつかのコマンドは リポジトリを \fI変更し\fP、いくつかは作業ディレクトリを変更し、 いくつかは何の変更も行いません。 .TP 1i \ \ \ \ 同義語 多くのコマンドには同義語があります。 同義語は正式な名前よりも覚えやすい (あるいはタイプしやすい) と 感じることでしょう。 .PP .TP \fBadd\fP [\fB\-k\fP \fIkflag\fP] [\fB\-m '\fP\fImessage\fP\fB'\fP] \fIfiles.\|.\|.\fP .I 以下が必要: リポジトリ、作業ディレクトリ。 .br .I 以下を変更: 作業ディレクトリ。 .br .I 同義語: .B new .br .B add コマンドを使って ソースリポジトリに新しいファイルまたはディレクトリを作成します。 .B add で指定されるファイルまたはディレクトリは、すでに カレントディレクトリ ( .B checkout コマンドで作成されたディレクトリでなければなりません) に 存在しなければなりません。 新しいディレクトリ階層の全体をソースリポジトリに追加する (例えば、サードパーティのベンダから受け取ったファイル群のような) には、 代わりに .` "cvs import" コマンドを使います。 .SP .` "cvs add" の引数が直下のサブディレクトリを指しているなら、そのディレクトリが ソースリポジトリの現位置に作成され、必要な .B cvs 管理ファイルが作業ディレクトリに作成されます。 ディレクトリがすでにソースリポジトリに存在した場合でも、 .` "cvs add" はあなたのバージョンのディレクトリに管理ファイルを作成します。 これによって、あなたがソースを .B checkout した後に誰か他の人がディレクトリを作っていても .` "cvs add" でそのディレクトリをあなたの私的なソースに作成することが 可能になります。以下のようにすることができます: .SP .in +1i .ft B .nf example% mkdir new_directory example% cvs add new_directory example% cvs update new_directory .fi .ft P .in -1i .SP .` "cvs update" を使った別のアプローチもあります: .SP .in +1i .ft B .nf example% cvs update -d new_directory .fi .ft P .in -1i .SP (新しく \fIできた\fP ディレクトリをあなたの作業ディレクトリに 追加するには、おそらく .` "cvs checkout" か .` "cvs update -d" を使用する方が簡単でしょう。) .SP .` "cvs commit" で変更が恒久的なものとされるまで、追加されたファイルは ソースリポジトリには置かれません。 .` "cvs remove" コマンドで削除されたファイルに対して .` "cvs add" を行うと、間で .` "cvs commit" コマンドが実行されていなければファイルが復活します。 .SP 新しいファイルを .` "cvs commit" で恒久的なものにするときに、いつものように、ログメッセージを指定する 機会があります。もしファイルの .I 作成 と対応するもう一つのログメッセージを指定したいならば (例えば、ファイルの目的を説明するなど)、 .B add コマンドの .` "\-m \fImessage\fP" オプションで指定することができます。 .SP .` "-k kflag" オプションで このファイルがチェックアウトされるときの デフォルトを指定できます。 引数 .` "kflag" は .SM RCS ファイルに記録されて .` "cvs admin" で変更することができます。 展開された キーワードを持たないであろうバイナリをチェックインする場合には .` "-ko" を指定すると便利です。 .TP \fBadmin\fP [\fIrcs-options\fP] \fIfiles.\|.\|.\fP .I 以下が必要: リポジトリ、作業ディレクトリ。 .br .I 以下を変更: リポジトリ。 .br .I 同義語: .B rcs .br これは .BR rcs ( 1 ) に似た管理機構と対応する .B cvs のインタフェースです。 なんのフィルタや変換も行いません。 しかしながら、このコマンドは再帰的に働きます。よって使用には 特別な注意を払わなければいけません。 .TP \fBcheckout\fP [\fBoptions\fP] \fImodules\fP.\|.\|. .I 以下が必要: リポジトリ。 .br .I 以下を変更: 作業ディレクトリ。 .br .I 同義語: .BR co ", " get .br .IR modules で指定されたソースファイルのコピーを持つ 作業ディレクトリを作成します。他の大部分の .B cvs コマンドは作業ディレクトリに作用するものなので、これらを使う前に .` "cvs checkout" を実行しなくてはなりません。 .SP \fImodules\fP はいくつかのソースディレクトリとファイルを 集めたものに対するシンボル名 (それ自体は .` "modules" というモジュールとしてソースリポジトリに定義されています。 .BR cvs ( 5 ) 参照) か、あるいはリポジトリ中でのディレクトリまたはファイルへのパス名です。 .SP 指定した .I modules に応じて、 .B checkout は再帰的にディレクトリを作成して適切なソースファイルで満たします。 その後はいつでも、(他のソフトウェア開発者達がソースの彼らの分のコピーを 編集しているかどうかを気にすることなく) これらのソースファイルを編集したり、 他の人によってソースリポジトリに行われた新しい変更を取り込むために これらを更新 (update) したり、 あなたの作業を恒久的な変更としてリポジトリに 登録 (commit) することができます。 .SP .B checkout はディレクトリの作成に使われることに注意して下さい。 作成されるディレクトリのトップレベルは常に .B checkout が起動されたディレクトリに追加され、そして通常、指定された .IR module と同じ名前を持ちます。 .I module がエイリアスの場合は、作成されたサブディレクトリは違う名前を持つかも しれませんが、それがサブディレクトリであること、そして .B checkout はファイルが私的な作業領域に取り出される際に各ファイルへの 相対パスを表示すること (全体に作用する .B \-Q オプションを指定していなければ) は当てにできます。 .SP すでに以前の .B checkout で作成されているディレクトリで .` "cvs checkout" を実行することも許されています。これは 以下で説明する .B update コマンドに .B \-d オプションを指定するのと同じ効果を持ちます。 .SP .` "cvs checkout" で使える .I options は以下の標準のコマンドオプションです。 .BR \-P ", " \-f ", " .BI \-k " kflag" \&, .BR \-l ", " \-n ", " \-p ", " .BR \-r .IR tag ", " .BI \-D " date"\c .SP これらに加えて、以下の特別のコマンドオプションを .BR checkout で使うことができます: .SP .B \-A オプションで sticky なタグ、日付または .B \-k オプションをリセットできます。(作業ファイルを \fB\-r\fP, \fB\-D\fP, \fB\-k\fP オプションのいずれかを使って取り出すと、 \fBcvs\fP は対応するタグ、日付、\fIkflag\fP を記録して以降の 更新 (update) でそれを使い続けます。 \fB\-A\fP オプションを使って \fBcvs\fP に それらの指定を忘れさせ、ファイルの ``head'' バージョンを取り出します)。 .SP .BI \-j " branch" オプションはベースとなったリビジョンと、そこから変更された結果の リビジョンとの差分をマージします (例えば、もしタグがブランチを 指しているときは、 .B cvs は、そのブランチで行われた全ての変更を作業ファイルにマージします)。 .SP 2 つの \fB-j\fP オプションを指定すると、 .B cvs は 2 つの各々のリビジョン間での変更をマージします。 これは特定の差分を作業ファイルから ``削除'' するために使うことが できます。 .SP 加えて、各 \fB-j\fP オプションをブランチで使う場合に必要であれば 日時指定を加えることができ、選択するリビジョンを指定した日時以内に 制限できます。 日時を加える場合はタグにコロン (:) を付けて指定します。 例としては .` "cvs import" でローカルな変更と衝突する部分のあるソースを import するときに 実行するように指示されるコマンドがあります: .SP .in +1i .ft B .nf example% cvs checkout -jTAG:yesterday -jTAG module .fi .ft P .in -1i .SP .B \-N オプションと .` "\-d \fIdir\fP" を指定することで作業ディレクトリでモジュールのパスが短縮されるのを 防げます。(通常、明示的に対象ディレクトリを指定すると \fBcvs\fP は なるべくパスが短くなるようにします。) .SP .B \-c オプションで、作業ディレクトリのファイルやディレクトリに作成や変更を 行う代わりに、モジュールファイルをソートしたものを標準出力にコピー します。 .SP .BI \-d " dir" オプションで、モジュール名ではなく、 .I dir で指定した名前のディレクトリを作業ファイルのために作成します。 \fB\-N\fP を一緒に指定しない場合は、\fIdir\fP の下に作成されるパスは 可能な限り短くなります。 .SP .B \-s オプションを使って .B \-s オプションでモジュールファイルに格納されたモジュール単位の ステータス情報を表示します。 .TP \fBcommit\fP [\fB\-lnR\fP] [\fB\-m\fP '\fIlog_message\fP' | \fB\-F\fP \fIfile\fP] [\fB\-r\fP \fIrevision\fP] [\fIfiles.\|.\|.\fP] .I 以下が必要: 作業ディレクトリ、リポジトリ。 .br .I 以下を変更: リポジトリ。 .br .I 同義語: .B ci .br 作業ディレクトリでの変更を共有のソースリポジトリに組み込むにときには .` "cvs commit" を使います。 .SP コミットする対象となる \fIfiles\fP を指定しない場合、現在の 作業ディレクトリ中の全ファイルが調べられます。 .B commit はあなたが本当に変更したファイルだけを慎重にリポジトリで変更します。 デフォルトでは (または明示的に .B \-R オプションを指定した場合)、サブディレクトリのファイルも 調べられ、もし変更されていればコミットされます。 .B \-l オプションで現ディレクトリのみ .B コミット するように制限できます。 変更されていなくても強制的にファイルをコミットしたい場合があるかも しれません。 これは .B \-f フラグで可能で、これは同時に再帰も抑止します (もちろん .B \-R で再帰するようにできます)。 .SP .B commit は選択されたファイルがソースリポジトリの現リビジョンに対して 最新であることを確認します。 もし選択されたファイルのいずれかが まず .` "cvs update" で最新にされなければならないなら、そこで通知してコミットせずに終ります。 .B commit は .B update コマンドを呼び出しません。update すべきときであるかどうかの判断は ユーザにゆだねられます。 .SP 全てがうまくいくと、ログメッセージを入力するためにエディタが 呼び出されます。ログメッセージは一つかそれ以上のログを取る プログラムに書き込まれて ソースリポジトリのファイルに置かれます。 代わりにコマンドラインで .B \-m オプションと共にログメッセージを指定し、 エディタの呼び出しを抑制することができます。また .B \-F オプションで引数の \fIfile\fP にログメッセージが含まれていることを 指示することもできます。 .SP .B \-r オプションで特定のシンボリックまたは番号で指定される リビジョンとしてコミットできます。 例えば、全ファイルを リビジョン ``3.0'' に上げる (変更されていないものも含めて) には、以下のようにします: .SP .in +1i .ft B .nf example% cvs commit -r3.0 .fi .ft P .in -1i .SP .B cvs はメインの幹上のリビジョン (ドットが 1 つのリビジョン) へのコミットのみ 許します。 しかしながら、 .B \-r オプションでブランチ上のリビジョン (偶数個のドットをもつリビジョン) へ コミットすることもできます。 ブランチとなるリビジョンを作成するには、通常 .BR rtag " または " tag コマンドの .B \-b オプションを使います。 その後、 .BR checkout " または " update のいずれかでソースのベースを新しく作成したブランチにすることができます。 それ以降、それらの作業ファイルで行われた全ての .B commit される変更点は自動的にブランチのリビジョンに追加され、 それによって主たる開発ラインが混乱させられることはありません。 例をあげると、製品のバージョン 1.2 へのパッチを作成しなければ ならなくなったとすると、バージョン 2.0 がすでに開発中だったとしても、 以下のようにできます: .SP .in +1i .ft B .nf example% cvs rtag -b -rFCS1_2 FCS1_2_Patch product_module example% cvs checkout -rFCS1_2_Patch product_module example% cd product_module [[ hack away ]] example% cvs commit .fi .ft P .in -1i .SP 極めて実験的なソフトウェアを開発しているとして、 前の週にチェックアウトしたなんらかのリビジョンをベースにしていると します。 あなたのグループの別の人がこのソフトウェアであなたと一緒に作業したいが、 主たる開発ラインの邪魔はしたくないと考えたなら、あなたはあなたの 変更点を新しいブランチにコミットすると良いでしょう。 すると別の人はあなたの実験的な変更をチェックアウトして .B cvs の衝突解決機能を最大限に利用することができます。 シナリオは以下のようになります: .SP .in +1i .ft B .nf example% cvs tag -b EXPR1 example% cvs update -rEXPR1 [[ hack away ]] example% cvs commit .fi .ft P .in -1i .SP 別の人は単純に .` "cvs checkout -rEXPR1 whatever_module" とすれば実験的な変更を採り入れてあなたと作業できるようになります。 .TP \fBdiff\fP [\fB\-kl\fP] [\fIformat_options\fP] [[\fB\-r\fP \fIrev1\fP | \fB\-D\fP \fIdate1\fP | \fB\-j\fP \fIrev1:date1\fP] [\fB\-r\fP \fIrev2\fP | \fB\-D\fP \fIdate2\fP | \fB\-j\fP \fIrev2:date2\fP]] [\fIfiles.\|.\|.\fP] .I 以下が必要: 作業ディレクトリ、リポジトリ。 .br .I 以下を変更: なにも変更しません。 .br 作業ディレクトリのファイルとソースリポジトリのリビジョンを .` "cvs diff" コマンドで比較できます。もし特定のリビジョンを指定しなければ、 ベースにしたリビジョンと比較されます。 標準の .B cvs コマンドのオプション .B \-r で比較の対象となるリビジョンを指定することもできます。 最後に、 .B \-r を 2 回 使うと、リポジトリの 2 つのリビジョン間の差分を取ることができます。 (head ブランチの) 過去のリビジョンとの差分を取るために .B \-D オプションを指定することもできます。 また、過去のブランチタグ間の差分を取るために .B \-j オプションを指定することもできます。 .B \-r と .B \-D と .B \-j オプションは常に指定された中で 2 つまでを組み合わせられます。 .SP サポートされている .IR format_options のリストは .` "cvs --help diff" を参照して下さい。 .SP ファイルを何も指定しないと、 .B diff は現ディレクトリ (そして、標準オプション .BR \-l を指定していなければ そのサブディレクトリ) の全てのファイルについて、 ソースリポジトリの対応するリビジョンと異なっているもの (つまり .I あなたが 変更したファイル) または指定されたリビジョンと 異なっているものについて、その差分を表示します .TP \fBexport\fP [\-\fBf\|lNnQq\fP] \fB\-r\fP \fIrev\fP\||\|\fB\-D\fP \fIdate\fP [\fB\-d\fP \fIdir\fP] [\fB\-k\fP \fIkflag\fP] \fImodule\fP.\|.\|. .I 以下が必要: リポジトリ。 .br .I 以下を変更: 現ディレクトリ。 .br このコマンドは .` "cvs checkout" の一種です。 \fBcvs\fP の管理ディレクトリを持たない \fImodule\fP のソースのコピーが必要なときに使います。 例えば、サイト外にソースを出す準備をするために .` "cvs export" を使うことができます。 このコマンドでは日付またはタグを指定することが \fI必要\fP です。 (\fB\-D\fP または \fB\-r\fP によって)。それによって出荷したソースを 確実に再構成できるようになります。 .SP 標準でないオプションは .` "\-d \fIdir\fP" (ソースをディレクトリ \fIdir\fP に書き込みます) と .` "\-N" (モジュールパスを短縮しません) のみです。 これらは .` "cvs checkout" の同名のオプションと同じ意味を持ちます。 .SP .B export が使われるときは .B \-kv オプションが有用です。 これによって キーワードが、どこか別のサイトで .B import が行われたときにリビジョン情報が失われないような形に展開されるように なります。 他の \fIkflag\fP を .` "cvs export" で使用することもできます。その説明は .BR co ( 1 ) にあります。 .TP \fBhistory\fP [\fB\-\fP\fIreport\fP] [\fB\-\fP\fIflags\fP] [\fB\-\fP\fIoptions args\fP] [\fIfiles\fP.\|.\|.] .I 以下が必要: .` "$CVSROOT/CVSROOT/history" ファイル。 .br .I 以下を変更: 何も変更しません。 .br \fBcvs\fP はヒストリファイルを管理しており、各 \fBcheckout\fP, \fBcommit\fP, \fBrtag\fP, \fBupdate\fP, \fBrelease\fP コマンドの使用を記録します。 .` "cvs history" を使って、この情報を色々なフォーマットで表示することができます。 .SP .I 警告: .` "cvs history" は .` "\-f", .` "\-l", .` "\-n", .` "\-p" を .SM 共通の COMMAND OPTIONS\c \&での説明とは異なる意味に使用します。 .SP いくつかのオプション (上で \fB\-\fP\fIreport\fP となっている部分) は どんな種類のレポートを生成するかを制御します: .TP 1i .B \ \ \ \ \ \ \-c 今までの各 \fBcommit\fP (つまりリポジトリの変更) についてレポートします。 .TP 1i \fB\ \ \ \ \ \ \-m\fP \fImodule\fP 特定の \fImodule\fP についてレポートします。(コマンドラインで複数の \fB\-m\fP を指定できます。) .TP 1i .B \ \ \ \ \ \ \-o チェックアウトされたモジュールについてレポートします。 .TP 1i .B \ \ \ \ \ \ \-T 全てのタグについてレポートします。 .TP 1i \fB\ \ \ \ \ \ \-x\fP \fItype\fP 特定のレコードタイプ \fIX\fP のセットを \fBcvs\fP ヒストリから 取り出します。タイプは 1文字で表され、組み合わせて指定できます。 以下のコマンドは単一のレコードタイプを持ちます: \fBcheckout\fP (タイプ `O')、 \fBrelease\fP (タイプ `F')、\fBrtag\fP (タイプ `T')。 \fBupdate\fP は 4 つのレコードタイプのうちの 1 つになります: `W' は 作業用のファイルのコピーが update で (それがリポジトリから無くなって いたために) 削除された場合です; `U' は作業ファイルがリポジトリから コピーされた場合です; `G' は必要なマージが無事に終った場合です; 'C' は マージが必要だが衝突が検出された場合 (手動でのマージが必要な場合) です。 また、\fBcommit\fP では 3つのレコードタイプのうちの 1つになります: `M' はファイルが変更された場合; `A' はファイルが最初に追加された場合; `R' はファイルが削除された場合です。 .TP 1i .B \ \ \ \ \ \ \-e 全て (全レコードタイプ); 以下を指定するのと等価です。 .` "\-xMACFROGWUT" .TP 1i \fB\ \ \ \ \ \ \-z\fP \fIzone\fP ヒストリレコードを出力する際に .I zone で指定されたタイムゾーンを使います。 .B LT というゾーン名はローカルタイムの意味になります。 数値によるオフセットは時分での UTC との時差を意味します。 例えば、 .B +0530 は 5 時間と 30 分だけ UTC より前 (つまり東側) の意味になります。 .PP .RS .5i \fB\-\fP\fIflags\fP と書かれた部分のオプションは、レポートする範囲を絞ります。 引数の指定はありません。 .RE .TP 1i .B \ \ \ \ \ \ \-a 全てのユーザのデータを表示します (デフォルトでは .` "cvs history" を実行しているユーザのみのデータを表示します)。 .TP 1i .B \ \ \ \ \ \ \-l 最後の変更のみ表示します。 .TP 1i .B \ \ \ \ \ \ \-w .` "cvs history" が実行されているのと同じ作業ディレクトリから行われた変更に関する レコードのみを表示します。 .PP .RS .5i \fB\-\fP\fIoptions args\fP と書かれた部分のオプションは引数に 基づいてレポート範囲を絞ります: .RE .TP 1i \fB\ \ \ \ \ \ \-b\fP \fIstr\fP 文字列 \fIstr\fP をモジュール名、ファイル名、リポジトリパスの いずれかに含むレコードに戻って表示します。 .TP 1i \fB\ \ \ \ \ \ \-D\fP \fIdate\fP \fIdate\fP 以降のデータを表示します。 .TP 1i \fB\ \ \ \ \ \ \-p\fP \fIrepository\fP 特定のソースリポジトリのデータを表示します (複数の \fB\-p\fP オプションを同じコマンド行で指定できます)。 .TP 1i \fB\ \ \ \ \ \ \-r\fP \fIrev\fP 個々の RCS ファイルに現れるリビジョンが \fIrev\fP で指定されたリビジョンまたはタグ以降であるレコードを表示します。 各 .SM RCS ファイルについてリビジョンまたはタグが検索されます。 .TP 1i \fB\ \ \ \ \ \ \-t\fP \fItag\fP \fItag\fP で指定されるタグがヒストリファイルに最後に 追加されてからのレコードを表示します。 このオプションは、 .SM RCS ファイルではなくヒストリファイルのみ参照する点で 上記の \fB-r\fP フラグと異なり、 より高速です。 .TP 1i \fB\ \ \ \ \ \ \-u\fP \fIname\fP \fIname\fP で指定されるユーザのレコードを表示します。 .PP .TP \fBimport\fP [\fB\-\fP\fIoptions\fP] \fIrepository vendortag releasetag\fP.\|.\|. .I 以下が必要: リポジトリ、ソース配布物のディレクトリ。 .br .I 以下を変更: リポジトリ。 .br .` "cvs import" を使うことで外部の供給元 (例えばソースベンダ) からのソース配布物 全体をあなたのソースリポジトリのディレクトリへ取り込めます。 最初のリポジトリの作成と、外部の供給元からのモジュールへの 大規模な更新の両方にこのコマンドを使うことができます。 .SP 引数 \fIrepository\fP で CVS ルートディレクトリ下のリポジトリ用 ディレクトリ名 (またはディレクトリへのパス) を与えます。 もしディレクトリが存在しないなら、\fBimport\fP が作成します。 .SP あなたのソースリポジトリで (前回の \fBimport\fP から) 変更された ソースへの更新に \fBimport\fP を使った場合、開発の 2 本のブランチで 衝突しているファイルについて警告します。 \fBimport\fP が指示するように、 .` "cvs checkout -j" を使って差分を調整できます。 .SP デフォルトでは、ある種のファイル名が .` "cvs import" で無視されます: .SM CVS 管理、または他の一般的なソース管理システムに関連する名前; パッチファイル、オブジェクトファイル、アーカイブファイル、 エディタのバックアップファイルのための一般的な名前; そして雑多なユーティリティの加工品であることを示すその他の名前。 無視されるファイルのリストの最新については、 (このマニュアルページの関連項目の節に記述してあるように) Cederqvist 著のマニュアルを参照して下さい。 .SP 外部からのソースは第一レベルの ブランチ、デフォルトでは .` "1.1.1" に保存されます。 以降の更新は このブランチのリーフになります。 例えば、最初に import したソース集合からのファイルはリビジョン .` "1.1.1.1" になり、 次の import による更新でファイルはリビジョン .` "1.1.1.2" になり、以下同様に続きます。 .SP 最低で 3 つの引数が必要です。ソースの集合を識別するために \fIrepository\fP が必要です。\fIvendortag\fP はブランチ全体を示す タグになります (例えば .` "1.1.1" と対応します)。 .` "cvs import" を実行する度にリーフとしてできるファイルを 識別するために少なくとも一つの \fIreleasetag\fP も指定しなければ なりません。 .SP .B cvs の標準のコマンドオプションのうちの 1 つ \fB\-m\fP が利用可能です: ログメッセージを \fB\-m\fP で指定しないと、(\fBcommit\fP でのように) メッセージを 入力できるようにエディタが起動されます。 .SP さらに 3 つの特別なオプションがあります。 .SP .` "\-d" を使って、各ファイルの最終更新日時がチェックインの日付と時刻として 使われるよう指示できます。 .SP .` "\-b \fIbranch\fP" を使って第一レベルのブランチを .` "1.1.1" 以外に指定できます。 .SP .` "\-I \fIname\fP" を使って \fBimport\fP 中に無視されるべきファイル名を指定できます。 このオプションは繰り返して指定できます。 いかなるファイルも無視されない (デフォルトで無視されるものでも) ようにするには、 .` "\-I !" と指定します。 .TP \fBlog\fP [\fB\-l\fP] \fIrlog-options [files\fP\|.\|.\|.] .I 以下が必要: リポジトリ、作業ディレクトリ。 .br .I 以下を変更: 何も変更しません。 .br .I 同義語: .B rlog .br \fIfiles\fP のログ情報を表示します。 \fBrlog\fP のオプションの中でも有用なものとしては、次のものがあります: ヘッダ (タグの定義を含むが、ログの大部分は省略される) のみ表示する \fB\-h\fP ; 特定のリビジョンまたはリビジョンの範囲でログを選択する \fB\-r\fP; そして特定の日時または時刻の範囲を選択する \fB\-d\fP が あります。完全な説明は .BR rlog ( 1 ) を参照して下さい。 このコマンドは .B \-l オプションが指定されていなければ、デフォルトで再帰的に働きます。 .TP \fBrdiff\fP [\fB\-\fP\fIflags\fP] [\fB\-V\fP \fIvn\fP] [\fB\-r\fP \fIt\fP|\fB\-D\fP \fId\fP [\fB\-r\fP \fIt2\fP|\fB\-D\fP \fId2\fP]] \fImodules\|.\|.\|.\fP .I 以下が必要: リポジトリ。 .br .I 以下を変更: 何も変更しません。 .br .I 同義語: .B patch .br 2 つのリリース間の .BR patch ( 1 ) ファイルを Larry Wall 氏のフォーマットで作成します。それは直接 .B patch プログラムに入力できるもので、古いリリースを新しいリリースに更新する ために使えます。 (これは直接リポジトリを参照するため、これに先立って .BR checkout する必要のない、数少ない \fBcvs\fP コマンドのうちの 1 つです。) 差分出力は標準出力デバイスに送られます。 (標準の \fB\-r\fP と \fB\-D\fP オプションを 使って) 1 つまたは 2 つのリビジョンまたは日時の任意の組み合わせを指定できます。 もしリビジョンまたは日時が 1 つしか指定されないと、 そのリビジョンまたは日時とその時点での .SM RCS ファイルの ``head'' リビジョンの差分がパッチファイルに反映されます。 .SP もしソフトウェアリリースへの影響が複数ディレクトリにわたるなら、 古いソースにパッチを当てる際、 .B patch が他のディレクトリに置かれたファイルを見つけられるように、 .B \-p オプションを .B patch コマンドに指定する必要があるかもしれません。 .SP 標準オプションの \fIflags\fP \fB\-f\fP、\fB\-l\fP が このコマンドで利用可能です。他にもいくつかの 特別なオプションフラグがあります: .SP .B \-s オプションを指定すると、パッチ出力が作られません。 代わりに、2 つのリリース間で変更または追加されたファイルの要約が 標準出力デバイスに送られます。 これは、例えば、2 つの日付またはリビジョンの間で、どのファイルが 変更されたかを調べるのに便利です。 .SP .B \-t オプションを指定すると、新しい方から 2 つのリビジョンの差分が 標準出力デバイスに送られます。これはファイルへの最後の変更が 何であったかを知るのに最適です。 .SP .B \-u オプションを指定すると、パッチ出力として新しい ``unidiff'' フォーマットを使って文脈差分とします。 .SP 希望するなら、 .B \-c を使って明示的に .` "diff \-c" 形式の文脈差分を指定できます (こちらがデフォルトです)。 .TP \fBrelease\fP [\fB\-dQq\fP] \fImodules\fP\|.\|.\|. .I 以下が必要: 作業ディレクトリ。 .br .I 以下を変更: 作業ディレクトリ、ヒストリログ。 .br このコマンドは .` "cvs checkout" の効果を安全にキャンセルすることになっています。 .B cvs はファイルをロックしないので、厳密にはこのコマンドを使用する必要は ありません。 単に作業ディレクトリを削除しても構いません。 しかし忘れているかも知れない変更を失う危険があり、そして .B cvs ヒストリファイルには捨ててしまったチェックアウトの記録は残りません。 .SP .` "cvs release" を使うとこれらの問題を回避できます。 このコマンドは以下の点をチェックします: コミットされていない変更が存在しないこと、 \fBcvs\fP の作業ディレクトリの直上または内部から実行していること、 ファイルが記録されたリポジトリがモジュールデータベースに 定義されたリポジトリと同じであること、です。 .SP これらの条件が全て真なら .` "cvs release" は その実行記録 (意図的にチェックアウトを削除した証拠) を .B cvs のヒストリログに残します。 .SP \fB\-d\fP フラグを使ってソースの作業用コピーを \fBrelease\fP が 成功したら削除するように指示できます。 .TP \fBremove\fP [\fB\-lR\fP] [\fIfiles\|.\|.\|.\fP] .I 以下が必要: 作業ディレクトリ。 .br .I 以下を変更: 作業ディレクトリ。 .br .I 同義語: .BR rm ", " delete .br このコマンドを使って、\fIfiles\fP をソースリポジトリから削除する つもりであることを宣言できます。大部分の .B cvs コマンドがそうであるように、 .` "cvs remove" は作業ディレクトリのファイルに作用し、リポジトリには直接には 作用しません。安全機構として、まず指定するファイルを作業ディレクトリ から削除することも必要になっています。 .SP リポジトリに .BR commit で変更を反映するまで、ファイルは実際には削除されません。 commit した時点で、ソースリポジトリの対応する .SM RCS ファイルが .` "Attic" ディレクトリ (これもソースリポジトリの中です) に .I 移動 されます。 .SP このコマンドはデフォルトで再帰的になっており、 物理的に削除された全てのファイルが次の .BR commit での削除されるようにスケジュールします。 .B \-l オプションを使うか、または実際に削除したいファイルのみを 指定することで、この再帰を抑制できます。 .TP \fBrtag\fP [\fB\-f\|alnRQq\fP] [\fB\-b\fP] [\fB\-d\fP] [\fB\-r\fP \fItag\fP | \fB\-D\fP \fIdate\fP] \fIsymbolic_tag\fP \fImodules\|.\|.\|.\fP .I 以下が必要: リポジトリ。 .br .I 以下を変更: リポジトリ。 .br .I 同義語: .B rfreeze .br このコマンドを使って、リポジトリ中の特定の、明示的に 指定されたソースバージョンにシンボリックタグを割り当てられます。 .` "cvs rtag" はリポジトリの内容に直接に作用します (これに先立って .BR checkout する必要はありません)。 作業ディレクトリの内容に基づいて タグを付けるバージョンを選択するには、代わりに .` "cvs tag" を使います。 .SP 一般に、タグ (しばしばソフトウェア配布物のシンボリックな 名前でもある) は削除されるべきではありません。 しかし完全に廃れてしまったシンボリックな名前を削除する場合 (例えば、 アルファリリースの場合など) の手段として、 .B \-d オプションが用意されています。 .SP .` "cvs rtag" はすでに存在するタグを移動しません。 しかしながら、\fB\-F\fP オプションが指定されると .` "cvs rtag" はそのファイルに既に存在する \fIsymbolic_tag\fP のインスタンスを 新しいリポジトリのバージョンへ移動します。 \fB\-F\fP オプションが無い場合、 .` "cvs rtag" を使ってすでにそのファイルに存在するタグを付けようとすると、 エラーメッセージが出力されます。 .SP \fB-b\fP オプションはタグを ``ブランチ'' タグにし、並行の、 独立した開発を可能にします。 これは以前にリリースしたソフトウェア配布物へのパッチを作成するのに 最も有用です。 .SP 標準の \fB\-r\fP と \fB\-D\fP オプションを使って、すでに特定の タグを含んでいるファイルのみにタグを付けることができます。 この方法はタグの名前を変えるのに使えるでしょう: 古いタグで指定されるファイルにのみタグを付け、 それから古いタグを削除すれば、確実に同じファイルで古いタグを 新しいタグで置き換えることができます。 .SP .B rtag はデフォルトで再帰的に実行し、引数で指定した \fImodules\fP の全てのサブディレクトリにタグをつけます。 この動作を トップレベルのディレクトリに制限するには標準の \fB\-l\fP オプションを 指定します。 また明示的に再帰を指定するには \fB\-R\fP を指定します。 .SP モジュールデータベースではタグが指定されたときに必ず実行される プログラムを指定できます。よくある使い方は、興味を持っている グループに電子メールを送るというものです。もしそのプログラムを バイパスしたい場合は、標準の \fB\-n\fP オプションを使います。 .SP .B \-a オプションを使うと .` "Attic" の中の指定されたタグを含む削除されたファイルを .B rtag の対象にできます。 タグはそれらのファイルから削除され、開発の進展につれての シンボリックタグの再利用に便利になります (そしてファイルは以降の 配布物から削除されます)。 .TP \fBstatus\fP [\fB\-lRqQ\fP] [\fB\-v\fP] [\fIfiles\fP\|.\|.\|.] .I 以下が必要: 作業ディレクトリ、リポジトリ。 .br .I 以下を変更: 何も変更しません。 .br \fIfiles\fP の現在の状態について、``sticky'' なタグ、 日付、\fB\-k\fP オプションを含む、ソースリポジトリに関する 簡潔なレポートを表示します。(``sticky'' オプションはリセットするまで .` "cvs update" がどう働くかを規定します。 .` "cvs update \-A\|.\|.\|." の説明を参照して下さい。) .SP このコマンドを用いて、作業用ソースディレクトリでの .` "cvs update" による潜在的な影響を予測することもできます。 もし \fIfiles\fP を明示的に指定しないと、\fBcvs\fP が 作業ディレクトリに置いた全てのファイルについてレポートが 表示されます。 この検索の範囲を (そのサブディレクトリではなく) カレントディレクトリ だけに制限するには、標準の \fB\-l\fP オプションフラグを使います。 \fB\-R\fP オプションによって、明示的に再帰的なステータスレポートを 指定することもできます。 .SP .B \-v オプションを指定すると .SM RCS ファイルのシンボリックタグも表示されるようになります。 .TP \fBtag\fP [\fB\-lQqR\fP] [\fB\-F\fP] [\fB\-b\fP] [\fB\-d\fP] [\fB\-r\fP \fItag\fP | \fB\-D\fP \fIdate\fP] [\fB\-f\fP] \fIsymbolic_tag\fP [\fIfiles\fP\|.\|.\|.\|] .I 以下が必要: 作業ディレクトリ、リポジトリ。 .br .I 以下を変更: リポジトリ。 .br .I 同義語: .B freeze .br このコマンドは、作業ディレクトリに最も近いリポジトリのバージョンに シンボリックタグをつけるために使います。\fBrtag\fP を 使ったときのように、タグはリポジトリに直接つけられます。 .SP \fBcvs tag\fP がリポジトリを直接操作するという事実に関し、 潜在的に驚いてしまうことがあります。 それは、チェックインバージョンに対してタグ付けするということであり、 これは作業ディレクトリにおいてローカルに修正したファイルとは 違ってもかまわないということです。 誤ってこのようなことをしたくない場合、 \fB-c\fP オプションを \fBcvs tag\fP へ指定してください。 ローカルに修正されたファイルがある場合、ファイルにタグ付けする前に、 CVS はエラーで中断します。 .SP タグの使い方の一つは、プロジェクトのソフトウェア凍結日が やってきたときに開発中のソースの ``snapshot'' を記録するというものです。 凍結した日の後でバグが修正されたら、それらの変更されたリリースの 一部となるソースのみに再度タグをつける必要があります。 .SP シンボリックタグはどのファイルのどのリビジョンがソフトウェア配布物を 作成する際に使われたかを恒久的に記録する意味があります。 .BR checkout , .B export および .B update コマンドは、タグをつけたリリースと全く同じものを、リリースのタグが つけられて以降にファイルが変更、追加、削除されたかどうかを気にする ことなく、将来のいつでも取り出すことを可能にします。 .SP 標準の \fB\-r\fP と \fB\-D\fP オプションを使って、すでに特定の タグを含んでいるファイルのみにタグを付けることができます。 この方法はタグの名前を変えるのに使えます。 すなわち、 古いタグで指定されるファイルにのみタグを付け、 それから古いタグを削除すれば、確実に同じファイルで古いタグを 新しいタグで置き換えることができます。 .SP \fB\-r\fP または \fB\-D\fP フラグに加えて \fB\-f\fP フラグを 指定すると、コマンドラインで指定したファイルで古いタグを 持っていないか指定された日時に存在しなかったものにもタグを 付けます。 .SP デフォルト (\fB\-r\fP または \fB\-D\fP フラグが無い場合) では、 バージョンは明示的に指定されるのではなく、暗黙のうちに作業ファイルの ヒストリの \fBcvs\fP レコードから取られます。 .SP .` "cvs tag \-d \fIsymbolic_tag\fP\|.\|.\|." とすると、指定したシンボリックタグが追加されるのではなく .I 削除 されます。\fI警告\fP: タグを削除する前にその根拠をしっかり確認して下さい。 これは効率的に一部の履歴情報を捨てますが、後になってその情報が重要だったと 判明するかも知れないからです。 .SP .` "cvs tag" はすでに存在するタグを移動しません。 しかしながら、\fB\-F\fP オプションが指定されると .` "cvs tag" はそのファイルに既に存在する \fIsymbolic_tag\fP のインスタンスを 新しいリポジトリのバージョンへ移動します。 \fB\-F\fP オプションが無い場合、 .` "cvs tag" を使って すでにそのファイルに存在するタグを付けようとすると エラーメッセージが出力されます。 .SP \fB-b\fP オプションはタグを ``ブランチ'' タグにし、並行して、 独立した開発を可能にします。 これは以前にリリースしたソフトウェア配布物へのパッチを作成するために 最も有効です。 .SP 通常、 .B tag はサブディレクトリに渡って再帰的に実行します。これは 標準の \fB\-l\fP オプションを使って抑制できます。 明示的に再帰を指定するには \fB\-R\fP を使います。 .TP \fBupdate\fP [\fB\-ACdf\|lPpQqR\fP] [\fB\-d\fP] [\fB\-r\fP \fItag\fP|\fB\-D\fP \fIdate\fP] \fIfiles\|.\|.\|.\fP .I 以下が必要: リポジトリ、作業ディレクトリ。 .br .I 以下を変更: 作業ディレクトリ。 .br あなたが共有のリポジトリから私的なソースのコピーを作成するために .B checkout を実行した後も、別の開発者は共有のソースへの変更を続けるでしょう。 時々、開発過程で都合のいいときに、作業ディレクトリ内から .B update コマンドを使うことで、 最後に .B checkout または .BR update してからソースリポジトリに登録された変更を、あなたの変更と 融合させることができます。 .SP .B update は進行状況をファイルごとに 1 行表示することで知らせ続けます。 各行の先頭には以下の .` "U P A R M C ?" のいずれか 1 文字があり、ファイルの状態を示しています: .TP 1i \fBU\fP \fIfile\fP file はリポジトリに関して \fI最新に\fP なりました。 これはリポジトリには存在するがあなたのソースには無いもの、 およびあなたは変更していないけれどもリポジトリの 最新リビジョンでは無いものに関して行われます。 .TP 1i \fBP\fP \fIfile\fP \fBU\fP と似ていますが、CVS サーバは全ファイルの代りにパッチを送りました。 \fBU\fP と同じことを、低バンド幅で実行しました。 .TP 1i \fBA\fP \fIfile\fP file はソースのあなたの私的なコピーに \fI追加\fP されたもので、 file に対して .` "cvs commit" を実行したときに ソースリポジトリに追加されます。 これは当該ファイルを commit する必要があるという助言です。 .TP 1i \fBR\fP \fIfile\fP これはソースのあなたの私的なコピーから file が \fI削除\fP されており、 file に対して .` "cvs commit" を実行すると ソースリポジトリから削除されることを示します。 これは当該ファイルを commit する必要があるという助言です。 .TP 1i \fBM\fP \fIfile\fP あなたの作業ディレクトリの file は \fI変更\fP されています。 .` "M" は作業中のファイルについて 2 つの状態のうちの 1 つを示します: リポジトリ中の対応するファイルは変更されておらず、あなたのファイルは 最後に見たときのままになっている。 または、あなたのコピー同様 リポジトリのものも変更されているが、それらの変更は 衝突することなく無事にあなたの作業ディレクトリに \fI融合 (merge)\fP されました。 .TP 1i \fBC\fP \fIfile\fP \fIfile\fP へのあなたの変更とソースリポジトリからの変更との 融合を試みる間に \fI衝突 (conflict)\fP が検出されました。 現在 \fIfile\fP (あなたの作業ディレクトリのコピー) は 2 つのバージョンをマージした結果になっています。 変更されていない あなたのファイルのコピーも作業ディレクトリに、 `\fB.#\fP\fIfile\fP\fB.\fP\fIversion\fP' という名前で置かれます。 ここで .I version は あなたの変更したファイルの出発点となった リビジョンです。 (ある種のシステムでは、 \& .` ".#" で始まるファイルは何日かアクセスされないと自動的に削除されるので 注意して下さい。もし元のファイルのコピーを取っておくつもりなら、 名前を変えておくのが良いでしょう。) .TP 1i \fB?\fP \fIfile\fP \fIfile\fP が あなたの作業ディレクトリにありますが、 ソースリポジトリのどれとも対応しておらず、 \fBcvs\fP が無視するファイルのリストにもありません (\fB\-I\fP オプションの説明を参照して下さい)。 .PP .RS .5i .SP .B \-A オプションを用いて sticky なタグ、日付、 .B \-k オプションをリセットできます。(\fB\-r\fP, \fB\-D\fP, \fB\-k\fP オプションの いずれかを使って作業ファイルのコピーを得ると、 \fBcvs\fP は対応するタグ、日付、\fIkflag\fP を記憶し、 以降の update で それを使い続けます。\fB\-A\fP オプションを使って \fBcvs\fP にそれらの指定を忘れさせることで、ファイルの ``head'' バージョンを取り出します)。 .SP \fB\-j\fP\fIbranch\fP オプションは、変更結果のリビジョンと ベースにしたリビジョンの間での変更をマージします (例えば、もしタグがブランチを指しているなら、 .B cvs は、そのブランチで行われた全ての変更をあなたの作業ファイルにマージします)。 .SP 2 つの \fB-j\fP オプションを指定すると、 .B cvs は 2 つの それぞれのリビジョン間での変更をマージします。 これは特定の変更を作業ファイルから ``削除'' するのに使えます。 例えば、ファイル foo.c がリビジョン 1.6 をベースにしていて、 1.3 と 1.5 の間で行われた変更を削除したいなら、次のようにします: .SP .in +1i .ft B .nf example% cvs update -j1.5 -j1.3 foo.c # 順番に注意... .fi .ft P .in -1i .SP 加えて、各 \fB-j\fP オプションにはオプションで、ブランチと使う場合に、 日付指定を含めることが可能で、選択するリビジョンを指定した 日付の範囲内に制限できます。 オプションの日付はコロン (:) をタグに付けることで指定します。 .SP .in +1i .ft B .nf -jSymbolic_Tag:Date_Specifier .fi .ft P .in -1i .SP .B \-d オプションを使うと、もし作業ディレクトリに無いディレクトリが リポジトリにあれば作成します。(通常、update は作業ディレクトリに すでに登録されているディレクトリとファイルのみに働きます。) これは最初の \fBcheckout\fP 以降に作成されたディレクトリを 更新するのに有用です。しかし不幸にも副作用があります。 もし作業ディレクトリを作る際に慎重にリポジトリ中の特定の ディレクトリを除いた (モジュール名を使ったか明示的に必要な ファイルとディレクトリをコマンドラインで指定したかのいずれかで) とすると、 .B \-d で更新するとそれらの不要かも知れないディレクトリができてしまいます。 .SP \fB\-I\fP \fIname\fP を使うと、update の際、名前が \fIname\fP に符合する (作業ディレクトリの) ファイルを無視します。 コマンドラインで \fB\-I\fP を 2 回以上指定することで、 複数の無視するファイルを指定できます。 デフォルトで、\fBupdate\fP はあるパターンに名前がマッチするファイルを 無視します; 無視されるファイル名の最新リストについては、 (このマニュアルページの関連項目の節に記述してあるように) Cederqvist 著のマニュアルを参照して下さい。 .SP いずれのファイルも無視しないようにするには .` "\-I !" を使います。 .SP ローカルで修正したファイルを、 リポジトリ上のクリーンなファイルで上書きするには、 .` "\-C" を使います (修正されたファイルは `\fB.#\fP\fIfile\fP\fB.\fP\fIrevision\fP' に保存されます)。 .SP 標準の \fBcvs\fP コマンドオプション \fB\-f\fP, \fB\-k\fP, \fB\-l\fP, \fB\-P\fP, \fB\-p\fP, \fB\-r\fP も \fBupdate\fP で使用可能です。 .RE .SH "関連ファイル" より詳細な .B cvs サポートファイルの情報については .BR cvs ( 5 ) を参照して下さい。 .LP .I ホームディレクトリのファイル: .TP \&.cvsrc .B cvs の初期化ファイル。このファイルの行は各 .B cvs コマンドのデフォルトのオプションの指定に使えます。例えば .` "diff \-c" と言う行は .` "cvs diff" に対して、コマンドラインで渡されたオプションに、常に .B \-c オプションが加えられて渡されることを指定します。 .TP \&.cvswrappers リポジトリのファイル CVSROOT/cvswrappers で指定されている ものに加えて使用されるラッパを指定します。 .LP .I 作業ディレクトリのファイル: .TP CVS \fBcvs\fP 管理ファイルのディレクトリ。 .I 削除してはいけません。 .TP CVS/Entries 作業ディレクトリのファイルのリストと状態。 .TP CVS/Entries.Backup .` "CVS/Entries" のバックアップ。 .TP CVS/Entries.Static フラグ: .` "cvs update" でそれ以上エントリを追加しません。 .TP CVS/Root チェックアウトしたときのリポジトリ ( .SM CVSROOT ) 位置へのパス名。 .SM CVSROOT 環境変数が設定されていない場合、このファイルが代わりに使用されます。 このファイルの内容と .SM CVSROOT 環境変数が異なっていると警告メッセージが出されます。 .SM CVS_IGNORE_REMOTE_ROOT 環境変数が設定されていると、このファイルは上書きされることがあります。 .TP CVS/Repository ソースリポジトリ中の対応するディレクトリへのパス名。 .TP CVS/Tag ディレクトリ毎の ``sticky'' なタグまたは日付情報を保持しています。 このファイルは .B \-r か .B \-D を .B checkout または .B update コマンドに指定して、ファイルが指定されなかったときに作成/更新されます。 .TP CVS/Checkin.prog .` "cvs commit" 時に実行するプログラム名。 .TP CVS/Update.prog .` "cvs update" 時に実行するプログラム名。 .LP .I ソースリポジトリ中のファイル: .TP $CVSROOT/CVSROOT リポジトリ全体の管理ファイルのディレクトリ。 .TP CVSROOT/commitinfo,v .` "cvs commit" のリクエストを選別するプログラムを登録します。 .TP CVSROOT/cvswrappers,v ファイルをリポジトリにチェックインそしてリポジトリから チェックアウトするときに使用される .B cvs ラッパコマンドを登録します。 ラッパはファイルまたはディレクトリが CVS で入出力される際に 処理を行うことを可能にします。使い道はいろいろありますが、 その一つとして、C のファイルをチェックインする前に再フォーマットして、 リポジトリ中のコードの見た目を揃えるというものがあります。 .TP CVSROOT/editinfo,v .` "cvs commit" のログエントリの編集/確認用プログラムを登録します。 .TP CVSROOT/history \fBcvs\fP 処理のログファイル。 .TP CVSROOT/loginfo,v .` "cvs commit" のログエントリをパイプで渡すプログラムを登録します。 .TP CVSROOT/modules,v このリポジトリ中のモジュールを定義します。 .TP CVSROOT/rcsinfo,v .` "cvs commit" 操作中に使用するテンプレートへのパス名を登録します。 .TP CVSROOT/taginfo,v .` "cvs tag" と .` "cvs rtag" での確認/ログ採集のためのプログラムを登録します。 .TP MODULE/Attic 削除されたソースファイルのためのディレクトリ。 .TP #cvs.lock ソースリポジトリに微妙な変更を行っているときに .B cvs が作成するロックディレクトリ。 .TP #cvs.tfl.\fIpid\fP リポジトリの一時的なロックファイル。 .TP #cvs.rfl.\fIpid\fP 読み出しロック。 .TP #cvs.wfl.\fIpid\fP 書き込みロック。 .SH "環境変数" .TP .SM CVSROOT .B cvs ソースリポジトリのルートへのフルパス名 ( .SM RCS ファイルが保存されている場所) を指定します。 この情報は大部分のコマンドの実行で \fBcvs\fP から参照できなければなりません。 もし .SM CVSROOT が設定されていないか、それを上書き指定したい場合は、 コマンドライン上で与えることができます: .` "cvs \-d \fIcvsroot cvs_command\fP\|.\|.\|." もし \fBcvs\fP バイナリのコンパイル時に正しいパスが指定されているなら .SM CVSROOT を設定しなくて構いません。 .TP .SM CVSREAD これがセットされていると、 .B checkout と .B update は作業ディレクトリのファイルを読み出し専用にするべく努力します。 これがセットされていないときは、デフォルトでは作業ファイルの 変更が許可されます。 .TP .SM CVSREADONLYFS これがセットされていると、 .B \-R オプションが仮定され、 .B cvs の動作が読み出し専用リポジトリモードになります。 .TP .SM RCSBIN .BR co ( 1 ) や .BR ci ( 1 ) といった .SM RCS のプログラムが置かれている場所へのフルパス名を指定します (CVS 1.9 またはそれ以前)。 .TP .SM CVSEDITOR .BR commit 中にログメッセージの記録に使われるプログラムを指定します。 設定されていないと、 .SM VISUAL と .SM EDITOR の環境変数が (この順序で) 試されます。 どちら も設定されていないなら、システム依存のデフォルトエディタ (例えば .BR vi ) が使用されます。 .TP .SM CVS_CLIENT_PORT この変数がセットされていると .B cvs はデフォルトポート (cvspserver 2401) の代りにこのポートを \fIpserver モード\fP で使用します。 .TP .SM CVS_IGNORE_REMOTE_ROOT この変数がセットされていると .B cvs は CVS/Root ファイル中のリモートのリポジトリへの参照を全て 無視します。 .TP .SM CVS_OPTIONS .B cvs のデフォルトオプションを指定します。 これらのオプションは、 スタートアップファイル (\fI~/.cvsrc\fP) の読み込み前に解釈されます。 また、コマンドラインパラメータにより明示的に上書き可能です。 .TP .SM CVS_RSH .B cvs サーバを開始するときに使用するリモートシェルコマンドの 名前を決定します。 この変数が設定されていない場合は .` "ssh" が使用されます。 .TP .SM CVS_SERVER .B cvs サーバコマンドの名前を指定します。 この変数が設定されていない場合は .` "cvs" が使用されます。 .TP .SM CVSWRAPPERS .` "cvswrappers" スクリプトは、 リポジトリの .SM CVSROOT/cvswrappers とユーザのホームディレクトリの ~/.cvswrappers に 含まれるデフォルトのラッパに加え、 変数 .SM CVSWRAPPERS を参照して、ラッパファイルの名前を決定します。 .SH "作者" .TP Dick Grune .B comp.sources.unix にポストされ、1986 年 12 月のリリース volume6 に収められたオリジナルの .B cvs シェルスクリプト版の作者。 .B cvs の衝突を解決するアルゴリズムの大部分を作成しました。 .TP Brian Berliner .B cvs プログラム自身のコーディングとデザインを 1989 年 4 月に、Dick によるオリジナルをベースにして行いました。 .TP Jeff Polk Brian を助けて .B cvs のモジュールとベンダブランチのサポートをデザインしました。 そして .BR checkin ( 1 ) シェルスクリプト ( .` "cvs import" の祖先) の作者でもあります。 .TP ここに書くには多くの人が他にもいます。 .SH "関連項目" CVS の最も包括的なマニュアルは Per Cederqvist らによる Version Management with CVS です。 システムによっては、 .B info cvs コマンドで閲覧できたり、 cvs.ps (postscript), cvs.texinfo (texinfo のソース), cvs.html が 利用可能かもしれません。 .SP CVS の更新、ドキュメントに関するさらなる情報、 CVS 関連のソフトウェア、CVS の開発等については、下記をご覧ください: .in +1i .B http://cvshome.org .B http://www.loria.fr/~molli/cvs-index.html .in -1i .SP .BR ci ( 1 ), .BR co ( 1 ), .BR cvs ( 5 ), .BR cvsbug ( 8 ), .BR diff ( 1 ), .BR grep ( 1 ), .BR patch ( 1 ), .BR rcs ( 1 ), .BR rcsdiff ( 1 ), .BR rcsmerge ( 1 ), .BR rlog ( 1 ). .SH 日本語訳 野首 寛高(h-nokubi@nmit.mt.nec.co.jp): FreeBSD 用に翻訳 .br 酒井 淳嗣(sakai@jp.freebsd.org): FreeBSD 版の校正 diff --git a/ja_JP.eucJP/man/man1/dc.1 b/ja_JP.eucJP/man/man1/dc.1 index 741b825715..d075509b9c 100644 --- a/ja_JP.eucJP/man/man1/dc.1 +++ b/ja_JP.eucJP/man/man1/dc.1 @@ -1,447 +1,453 @@ .\" .\" dc.1 - the *roff document processor source for the dc manual .\" .\" This file is part of GNU dc. .\" Copyright (C) 1994, 1997, 1998, 2000 Free Software Foundation, Inc. .\" .\" 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; see the file COPYING. If not, write to: .\" The Free Software Foundation, Inc. .\" 59 Temple Place, Suite 330 .\" Boston, MA 02111 USA .\" .\" %FreeBSD: src/contrib/bc/doc/dc.1,v 1.4 2001/02/26 07:17:03 kris Exp % .\" .\" $FreeBSD$ .\" .TH DC 1 "1997-03-25" "GNU Project" .ds dc \fIdc\fP .ds Dc \fIDc\fP .SH 名称 dc \- 任意精度の計算機 .SH 書式 dc [-V] [--version] [-h] [--help] [-e scriptexpression] [--expression=scriptexpression] [-f scriptfile] [--file=scriptfile] [file ...] .SH 解説 .PP \*(dc は、逆ポーランド形式の無限精度の計算が行える卓上計算機です。 この電卓は、定義やマクロ呼び出しも行えます。 普通、\*(dc は標準入力から読み込みます。 コマンドライン引数が与えられた時は、それはファイル名となり、 \*(dc はそのファイルを読み込み、ファイルの内容を実行した後で、 標準入力から入力を取ります。 通常の出力はすべて標準出力へ、エラー出力はすべて標準エラー出力へ 送られます。 .PP 逆ポーランド記法計算機は、数をスタックに保存します。 数字を入力すると、それをスタックに積み上げます。 計算操作は、引数をスタックから取り出し、結果をスタックに積み上げます。 .PP 数字を .IR dc に入力するためには、数字 (小数点が有っても構いません) を入力します。 指数表現はサポートされていません。 負の数字を入力するためには、``_'' で始まる数字を入力します。 ``-'' は減算の二項演算子として使われているので、 このために利用することはできません。 引き続いて 2 つの数字を入力するためには、あいだに空白文字か改行文字を 入力します。 これらは、コマンドとしての意味はありません。 .SH オプション \*(dc は、次のコマンドラインオプション付きで起動可能です: .TP .B -V .TP .B --version 実行される \*(dc のバージョンと著作権情報を表示し、終了します。 .TP .B -h .TP .B --help これらのコマンドラインオプションを短くまとめたメッセージと バグ報告アドレスを表示し、終了します。 .TP .B -e \fIscript\fP .TP .BI --expression= script .I script 中のコマンドを、入力処理中に実行するコマンド集合に追加します。 .TP .B -f \fIscript-file\fP .TP .BI --file= script-file ファイル .I script-file 中のコマンドを、入力処理中に実行するコマンド集合に追加します。 .PP 上記オプションの処理後にコマンドラインパラメータが残った場合、 これらのコマンドラインパラメータは処理対象の入力ファイル名として 解釈されます。 ファイル名 .B - は、標準入力ストリームを指します。 ファイル名を指定しないと、標準入力が処理されます。 .PD .SH 表示コマンド .TP .B p スタックを変更することなく、スタックの先頭の値を表示します。 改行文字が、数値の後に表示されます。 .TP .B n スタックの先頭の値を表示し、スタックから取り出します。 改行文字は、後に表示されません。 .TP .B P スタックの先頭の値をスタックから取り出します。 値が文字列の場合、末尾の改行を付けずに、単に表示します。 そうでない場合、これは数値であり、数値の絶対値の整数部分が、 \&"基数 (UCHAR_MAX+1)" のバイトストリームとして表示されます。 ここで (UCHAR_MAX+1) は 256 を仮定すると (ほとんどのマシンでは 8 ビットバイトなので)、文字列 \fBKSK 0k1/ [_1*]sx d0>x [256~aPd0 r スタックから 2 つの値を取り出し、それらを数と仮定して比較し、 もともとのスタックの先頭が大きい場合、レジスタ .I r の内容を実行します。 したがって、 .B 1 2>a は、レジスタ .BR a の内容を実行しますが、 .B 2 1>a では実行しません。 .TP .BI !> r 似ていますが、もともとのスタックの先頭が 2 番目の値よりも大きくない場合 (2 番目の値以下である場合)、マクロを起動します。 .TP .BI < r 似ていますが、もともとのスタックの先頭が小さい場合にマクロを実行します。 .TP .BI !< r 似ていますが、もともとのスタックの先頭が 2 番目の値よりも小さくない場合 (2 番目の値以上である場合)、マクロを起動します。 .TP .BI = r 似ていますが、2 つの取り出された値が等しい場合にマクロが実行されます。 .TP .BI != r 似ていますが、2 つの取り出された値が等しくない場合にマクロが実行されます。 .ig これは、2 つの文字列の等価性を比較するためにも使うことができます。 .. .TP .B ? 端末から行を読み込み、実行します。 このコマンドは、ユーザからの入力を要求するためのマクロで使えます。 .TP .B q マクロを終了し、それを呼び出したマクロからも終了します。 一番上のレベルか、一番上のレベルから直接呼ばれたマクロから呼ばれると、 .B q コマンドは \*(dc を終了します。 .TP .B Q スタックから値を取り出し、それを終了すべきマクロレベル数として、 その数のマクロを終了します。 したがって、 .B 3Q は、3 つのレベルを終了します。 .B Q コマンドでは、\*(dc を終了することはありません。 .SH 状態の問い合わせ .TP .B Z スタックから値を取り出し、その桁数 (文字列の場合は、文字数) を計算し、 その値をスタックに積みます。 .TP .B X スタックから値を取り出し、その小数点以下の桁数を計算し、 その値をスタックに積みます。文字列の場合、スタックには .\" -1. 0 が積まれます。 .TP .B z 現在のスタックの深さを、スタックに積みます。 スタックの深さとは、 .B z コマンドが実行される前のスタックのデータ数です。 .SH その他のさまざまなこと .TP .B ! 行の末尾までをシステムコマンドとして実行します (シェルエスケープ)。 .\"(訳注)シェルエスケープは、訳者が付け足しました。 .\" 2.2.1R 対象(1997/05/04) Takeshi MUTOH コマンド !<, !=, !> のパーズが優先しますので、<, =, > で開始する コマンドを起動したい場合には、! の後に空白を加える必要があります。 .TP .B # 行の末尾までをコメントとして取り扱います。 .TP .BI : r スタックから 2 つの値を取り出します。 スタックの先頭だった値で配列 .IR r をインデックスし、スタックの先頭から 2 番目だった値をそこに保存します。 .TP .BI ; r スタックから値を取り出し、配列 .IR r のインデックスとして利用します。 配列から選ばれた値は、その後でスタックに積まれます。 +.P +レジスタに積まれた各インスタンスは、 +それぞれが自身に関連づけられた配列を持つことに注意してください。 +このため、\fB1 0:a 0Sa 2 0:a La 0;ap\fP は 1 を表示します。 +2 は、後でスタックから取り出された方の 0:a の +インスタンスに保存されたからです。 .SH バグ .PP バグ報告は、 .BR bug-dc@gnu.org に電子メールでお願いします。 単語 ``dc'' を ``Subject:'' フィールドのどこかに入れておいてください。 diff --git a/ja_JP.eucJP/man/man1/dig.1 b/ja_JP.eucJP/man/man1/dig.1 index ba3ff00e7f..d93a3079f7 100644 --- a/ja_JP.eucJP/man/man1/dig.1 +++ b/ja_JP.eucJP/man/man1/dig.1 @@ -1,696 +1,696 @@ .\" %FreeBSD: src/contrib/bind/doc/man/dig.1,v 1.6 2003/06/17 08:32:40 dougb Exp % -.\" $Id: dig.1,v 1.16 2003-07-13 04:44:40 horikawa Exp $ +.\" $Id: dig.1,v 1.17 2004-10-11 08:22:59 metal Exp $ .\" .\" ++Copyright++ 1993 .\" - .\" Copyright (c) 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" - .\" Portions Copyright (c) 1993 by Digital Equipment Corporation. .\" .\" Permission to use, copy, modify, and distribute this software for any .\" purpose with or without fee is hereby granted, provided that the above .\" copyright notice and this permission notice appear in all copies, and that .\" the name of Digital Equipment Corporation not be used in advertising or .\" publicity pertaining to distribution of the document or software without .\" specific, written prior permission. .\" .\" THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL .\" WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL DIGITAL EQUIPMENT .\" CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL .\" DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR .\" PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS .\" ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS .\" SOFTWARE. .\" - .\" --Copyright-- .\" .\" Distributed with 'dig' version 2.0 from University of Southern .\" California Information Sciences Institute (USC-ISI). .\" .\" dig.1 2.0 (USC-ISI) 8/30/90 .\" .\" Original Regision: 1.1.1.1 .\" $FreeBSD$ .Dd August 30, 1990 .Dt DIG 1 .Os BSD 4 .Sh 名称 dig \- ドメイン名問い合わせパケットをネームサーバに送る .Sh 書式 .Nm dig .Op Ic @ Ns Ar server .Ar domain .Op Aq Ar query-type .Op Aq Ar query-class .Op Ic + Ns Aq Ar query-option .Op Fl Aq Ar dig-option .Op Ar %comment .Sh 解説 .Ic dig (ドメイン情報手探り器; domain information groper) は、 DNS (Domain Name System) サーバから情報を集めるために使われる 柔軟なコマンドラインツールです。 .Ic dig は 2 つのモードを持っています。 これは、1 つの問い合わせを行う単純な対話的利用モードと、 いくつかの問い合わせ行のリスト中の各問い合わせを実行するバッチモードです。 すべての問い合わせオプションは、コマンドラインから利用可能です。 .Pp 普通の簡単な .Ic dig の使用法は、以下のような形式です。 .Pp .Bd -ragged -offset indent-two .Ic dig @ Ns Ar server domain query-type query-class .Ed .Pp ここで、 .Bl -tag -width Fl .It Ar server -は、ドメイン名かドット表記のインターネットアドレスのどちらかです。 +は、ドメイン名かドット表記のインターネットアドレス (IPv4/IPv6) のどちらかです。 もし、このオプションフィールドが省略された場合、 .Ic dig は、そのマシンのデフォルトのネームサーバを利用しようとします。 .Pp .Em 注 : ドメイン名が指定された時は、ドメイン名システムリゾルバ (つまり、BIND) を使うことで解決しようとします。システムが DNS を 提供していない時は、ドット形式のアドレスを指定する必要があります。 利用できるサーバがどこかにある場合は、必要なことは .Pa /etc/resolv.conf が存在し、 .Ar server 自身が解決できるように、そのデフォルトネームサーバがどこにあるかが 記述されていることだけです。 .Pa /etc/resolv.conf についての情報は .Xr resolver 5 を参照してください。 .Sy 警告 : .Pa /etc/resolv.conf を変更すると、標準のリゾルバライブラリと .Pq 潜在的に それを使ういくつかのプログラムに影響を与えます。 オプションとして、ユーザは環境変数 .Ev LOCALRES を設定し、 .Pa /etc/resolv.conf の代わりに使うファイルの名前を指定できます。 .Po Ns Ev LOCALRES 変数は .Ic dig リゾルバ固有のもので、標準のリゾルバでは 参照されません .Pc 。 .Ev LOCALRES 変数が設定されていないか、 設定されたファイルが読み込めない場合は、 .Pa /etc/resolv.conf が使われます。 .It Ar domain は、あなたが情報を要求しているドメイン名です。 逆アドレスの問い合わせのための便利な方法は、 .Fl x オプションを参照してください(この節の .Sx その他のオプション の項で述べられています)。 .It Ar query-type は、あなたが要求している情報のタイプ(DNS 問い合わせタイプ)です。 省略された場合のデフォルトは、 .Dq Ar a .Pq Dv T_A = アドレス が使われます。以下のタイプが認識されます。 .Pp .Bl -hang -width "hinfo T_HINFO " -compact .It Ar a\ \ \ \ \ \ Dv T_A ネットワークアドレス .It Ar any\ \ \ \ Dv T_ANY 指定されたドメインのすべて/任意の情報 .It Ar mx\ \ \ \ \ Dv T_MX ドメインのメール交換情報 (MX) .It Ar ns\ \ \ \ \ Dv T_NS ネームサーバ .It Ar soa\ \ \ \ Dv T_SOA ゾーンの権威者を表すレコード .It Ar hinfo\ \ Dv T_HINFO ホスト情報 .It Ar axfr\ \ \ Dv T_AXFR ゾーン転送情報(権威を持ったサーバに尋ねなければなりません) .It Ar txt\ \ \ \ Dv T_TXT 任意の数の文字列 .El .Pp (完全なリストは、RFC 1035 を参照してください。) .It Ar query-class は、問い合わせで要求されるネットワーククラスです。 省略された場合のデフォルトは、 .Dq Ar in .Pq Dv C_IN = Internet です。 以下のクラスが認識されます。 .Pp .Bl -tag -width "hinfo T_HINFO " -compact .It Ar in\ \ \ \ \ Dv C_IN インターネットクラスドメイン .It Ar any\ \ \ \ Dv C_ANY すべて/任意のクラスの情報 .El .Pp (完全なリストは、RFC 1035 を参照してください。) .Pp .Em 注 : .Dq Ar any は、 .Em クラス や問い合わせの .Em タイプ を指定するために使われます。 .Ic dig は、最初に現れた .Dq Ar any を .Ar query-type = Dv T_ANY として解析します。 .Ar query-class = Dv C_ANY にするためには、 .Dq any を 2 度指定するか、 .Fl c オプション(以下参照)を利用して問い合わせクラスを 指定しなければなりません。 .El .Ss その他のオプション .Bl -tag -width Fl .It % Ns Ar ignored-comment .Dq % は、単に解析されない引数を含むために使われます。 これは、 .Ic dig をバッチモードで実行する時に有効です。 問い合わせリスト中のすべての .Ar @server-domain-name を解決する代わりに、 そのオーバヘッドを避けつつコマンドライン上にドメイン名を書くことが出来ます。 以下の例を参照。 .Pp .Bd -ragged -offset indent-two .Ic dig @128.9.0.32 %venera.isi.edu mx isi.edu .Ed .Pp .It Fl Aq Ar dig option .Dq Fl は、 .Ic dig の操作に影響を与えるオプションを指定するために 使われます。以下のオプションが現在利用可能です ( 便利であるかどうかは保証しません )。 .Bl -tag -width Fl .It Fl x Ar dot-notation-address 逆アドレス変換を指定する便利な形式です。 .Dq Ic dig 32.0.9.28.in-addr.arpa の代わりに、 .Dq Ic dig -x 28.9.0.32 と指定できます。 .It Fl x Ar IPv6-address 逆アドレス変換を指定する便利な形式です。 .Dq Ic dig 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa の代わりに、 .Dq Ic dig -x ::1 と指定できます。 .It Fl f Ar file .Ic dig のバッチモードのためのファイルです。ファイルは、 つづいて実行される問い合わせの指定 ( .Ns Ic dig のコマンドライン) の リストを含んでいます。 .Sq \&; , .Sq # , .Sq \en で始まる行は無視されます。その他のオプションは、 コマンドラインで現れるものは、個々のバッチによる問い合わせでも 影響があります。 .It Fl T Ar time バッチモードで実行した時、連続した問い合わせの始まる時間間隔を秒で与え ます。2 つ以上のバッチ .Ic dig コマンドの実行を大体同期することができる ようになります。デフォルトは 0 です。 .It Fl p Ar port ポート番号です。標準でないポート番号で待つネームサーバに問い合わせます。 デフォルトは 53 です。 .It Fl P Ns Bq Ar ping-string 問い合わせからかえってきた後で、 .Xr ping 8 コマンドを応答時間の比較のために実行します。これは、美しくないのですが、 シェルを呼び出します。統計の最後の 3 行がコマンドのために 表示されます。 .Pp .Bd -ragged -offset indent-two .Ic ping Fl s server_name 56 3 .Ed .Pp オプションの .Dq Ar ping-string が存在した時は、シェルコマンドでは .Dq Ic ping Fl s を置き換えます。 .It Fl t Ar query-type 問い合わせのタイプを指定します。タイプフィールド内の整数値か、 上で述べたニーモニック表現 (つまり .Ar mx = Dv T_MX ) かで 指定することができます。 .It Fl c Ar query-class 問い合わせのクラスを指定します。クラスフィールド内の整数値か、 上で述べたニーモニック表現 (つまり in = C_IN) で 指定することができます。 .It Fl k Ar keydir:keyname ディレクトリ keydir 中の TSIG キー名 keyname で、問い合わせます。 .It Fl envsav このフラグを指定すると、すべての引数が解析された後で .Ic dig 環境 (デフォルトや表示オプション等) を デフォルト環境としてファイルに保存します。 標準のデフォルトが気に入らず、 .Ic dig を使う度にたくさんのオプションを指定することが嫌な場合は便利です。 環境は、 .Ic dig 出力 (以下参照) で詳しく述べられるフラグと同じように、 リゾルバの状態変数フラグや、タイムアウト、再試行回数からなります。 シェル環境変数 .Ev LOCALDEF がファイルの名前に設定されている場合、 これが、デフォルトの .Ic dig 環境が保存される場所となります。 そうでない場合は、ファイル .Dq DiG.env が現在の作業ディレクトリに 作成されます。 .Pp .Em 注 : .Ev LOCALDEF は、 .Ic dig のリゾルバ固有であり、 標準のリゾルバライブラリの操作には影響を与えません。 .Pp .Ic dig が実行される度に、 .Dq ./DiG.env またはシェル環境変数 .Ev LOCALDEF で指定されたファイルが探されます。そのようなファイルが 存在し読める場合は、引数を解析する前にこのファイルから環境が 読み込まれます。 .It Fl envset このフラグは、バッチ問い合わせを実行する時にだけ影響があります。 .Ic dig バッチファイル中で .Dq Fl envset が指定されていると、 この引数が解析された後の .Ic dig 環境は、バッチファイルが実行されている間もしくは、次の .Dq Fl envset が指定されるまでの間は、 デフォルトの環境となります。 .It Xo .Fl Op Cm no .Ns Cm stick .Xc このフラグは、バッチ問い合わせ実行にだけ影響を与えます。 これは、 .Ic dig 環境を .Ic dig バッチファイル中での 各問い合わせ (行) の前に (初期状態もしくは、 .Dq Fl envset で設定された) 元の状態に戻すことを指定します。 デフォルトの .Dq Fl nostick は、 .Ic dig 環境を回復しないという意味ですので、 .Ic dig バッチファイルの各行で指定されたオプションは、 後の行でもその効果が残ったままになります (つまり .Dq sticky 時のデフォルトのようには回復されません)。 .El -.It Ic + Ns Aq Ar query option +.It Ic + Ns Aq Ar query-option .Dq + はパケット問い合わせ中のオプション変更や .Ic dig 出力仕様を変更するために使われます。 これらの多くは、 .Xr nslookup 8 で受け入れられるパラメータと同じものです。 オプションが値を必要とする場合、その指定形式は以下のようになります。 .Pp .Bd -ragged -offset indent-two .Ic + .Ns Ar keyword .Ns Op = Ns Ar value .Ed .Pp ほとんどのキーワードは、省略が可能です。 .Dq + オプションの解釈は非常に単純です。 値はキーワードとスペースで区切ってはなりません。 以下のキーワードが現在利用可能です。 .Pp .Pp キーワード 省略形 意味 [デフォルト] .Pp .Bl -tag -width "[no]primary (ret) " -compact .It Xo .Op Cm no .Ns Cm debug\ \ \ \ .Pq Cm deb .Xc デバッグモードを変更 .Bq Cm deb .It Xo .Op Cm no .Ns Cm d2\ \ \ \ \ \ \ \ \ \ .Xc 追加のデバッグモードを変更 .Bq Cm nod2 .It Xo .Op Cm no .Ns Cm recurse\ \ .Pq Cm rec .Xc 再帰的探索を使うかどうか指定 .Bq Cm rec .It Xo .Cm retry= Ns Ar # .Cm \ \ \ \ \ .Pq Cm ret .Xc 再試行の回数を # に設定 .Bq 4 .It Xo .Cm time= Ns Ar # .Cm \ \ \ \ \ \ .Pq Cm ti .Xc タイムアウト時間を # 秒に設定 .Bq 4 .It Xo .Op Cm no .Ns Cm ko .Xc 繋げておくオプション(vc を暗黙指定) .Bq Cm noko .It Xo .Op Cm no .Ns Cm vc .Xc 仮想回線を使うかどうか指定 .Bq Cm novc .It Xo .Op Cm no .Ns Cm defname\ \ .Pq Cm def .Xc デフォルトドメイン名を使うかどうか指定 .Bq Cm def .It Xo .Op Cm no .Ns Cm search\ \ \ .Pq Cm sea .Xc ドメインサーチリストを使うかどうか指定 .Bq Cm sea .It Xo .Cm domain= Ns Ar NAME\ \ .Pq Cm do .Xc デフォルトドメイン名を .Ar NAME に指定 .It Xo .Op Cm no .Ns Cm ignore\ \ \ .Pq Cm i .Xc trunc. エラーを無視するかどうか指定 .Bq Cm noi .It Xo .Op Cm no .Ns Cm primary\ \ .Pq Cm pr .Xc プライマリサーバを使うかどうか指定 .Bq Cm nopr .It Xo .Op Cm no .Ns Cm aaonly\ \ \ .Pq Cm aa .Xc 権威を持った問い合わせのみのフラグ .Bq Cm noaa .It Xo .Op Cm no .Ns Cm cmd .Xc 解析された引数を表示 .Bq Cm cmd .It Xo .Op Cm no .Ns Cm stats\ \ \ \ .Pq Cm st .Xc 問い合わせの統計を表示 .Bq Cm st .It Xo .Op Cm no .Ns Cm Header\ \ \ .Pq Cm H .Xc 基本的なヘッダを表示 .Bq Cm H .It Xo .Op Cm no .Ns Cm header\ \ \ .Pq Cm he .Xc ヘッダフラグを表示 .Bq Cm he .It Xo .Op Cm no .Ns Cm ttlid\ \ \ \ .Pq Cm tt .Xc TTL を表示 .Bq Cm tt .It Xo .Op Cm no .Ns Cm trunc\ \ \ \ .Pq Cm tr .Xc 名前から origin を削除 .Bq Cm tr .It Xo .Op Cm no .Ns Cm cl .Xc クラス情報を表示 .Bq Cm nocl .It Xo .Op Cm no .Ns Cm qr .Xc 出て行った問い合わせを表示 .Bq Cm noqr .It Xo .Op Cm no .Ns Cm reply\ \ \ \ .Pq Cm rep .Xc 応答節を表示 .Bq Cm rep .It Xo .Op Cm no .Ns Cm ques\ \ \ \ \ .Pq Cm qu .Xc 質問節を表示 .Bq Cm qu .It Xo .Op Cm no .Ns Cm answer\ \ \ .Pq Cm an .Xc 回答節を表示 .Bq Cm an .It Xo .Op Cm no .Ns Cm author\ \ \ .Pq Cm au .Xc 権威節を表示 .Bq Cm au .It Xo .Op Cm no .Ns Cm addit\ \ \ \ .Pq Cm ad .Xc 追加節を表示 .Bq Cm ad .It Xo .Op Cm no .Ns Cm dnssec\ \ \ .Pq Cm \ddn .Xc OPT 擬似レコード中で DNSSEC OK ビットを設定 .Bq Cm nodn .It Cm pfdef デフォルト表示フラグを設定 .It Cm pfmin 最小のデフォルト表示フラグを設定 .It Cm pfset= Ns Ar # 表示フラグを # に設定 (# は 16 進 /8 進/10 進が可能です) .It Cm pfand= Ns Ar # 表示フラグに # とのビット論理積 (and) 適用 .It Cm pfor= Ns Ar # 表示フラグに # とのビット論理和 (or) 適用 .El .Pp .Cm 再試行回数 と .Cm 時間 のオプションは、問い合わせデータグラムを送る際に、 リゾルバライブラリによって使われる再送戦略に影響を与えます。 アルゴリズムは以下の通りです .Pp .Bd -literal -offset indent for i = 0 to retry - 1 for j = 1 to num_servers send_query wait((time * (2**i)) / num_servers) end end .Ed .Pp (注: .Ic dig はいつも .Dq Li num_servers として値 1 を使います。) .El .Ss 詳細 .Ic dig は、かつて BINDの .Xr resolver 3 ライブラリの変更版を要求しました。 BIND のリゾルバは、(BIND 4.9のように) .Ic dig を正しく動作させるようになって来ています。本質的には、 .Ic dig は、引数の解釈と適切なパラメータ設定を(見事にではなく)卒直に行うものです。 .Ic dig はリゾルバの関数 .Fn res_init , .Fn res_mkquery , .Fn res_send を使い、また .Ft _res 構造体を操作します。 .Sh 環境変数 .Bl -tag -width "LOCALRES " -compact .It Ev LOCALRES .Pa /etc/resolv.conf の代わりに使うファイル .It Ev LOCALDEF デフォルトの環境ファイル .El .Pp 上述した .Fl envsav , .Fl envset , .Xo .Fl Op Cm no .Ns Cm stick .Xc オプションの説明も参照してください。 .Sh 関連ファイル .Bl -tag -width "/etc/resolv.conf " -compact .It Pa /etc/resolv.conf 初期状態のドメイン名とネームサーバのアドレス .It Pa \./DiG.env デフォルトオプションを保存するデフォルトファイル .El .Sh 関連項目 .Xr named 8 , .Xr resolver 3 , .Xr resolver 5 , .Xr nslookup 8 .Sh 規格 RFC 1035 .Sh 作者 Steve Hotz hotz@isi.edu .Sh 謝辞 .Ic dig は、Andrew Cherenson によって書かれた .Xr nslookup 8 の関数を使っています。 .Sh バグ .Ic dig は "潜行性機能過多" を患っています。 これは開発中に潜在的な用途をいくつも考えていた結果です。 苛酷なダイエットをしたらきっとよくなるでしょう。 同様に、表示フラグとそれで指定できる表示項目の粗さとから、 これらがその場限りの必要性から追加されたものだということが わかるはずです。 .Pp リゾルバ中のどこかで問題が発生した時に、 .Ic dig はうまく (しかるべき終了ステータスで) 終了してくれるとは限りません。 .Po .Sy 注 : 大概のよくある終了条件はきちんと処理できます .Pc 。 これは、特にバッチモードで実行している時に頭の痛い問題です。 異常終了し (さらにそれが捕捉されなかっ) た時には、 バッチ全体が終了してしまいますが、 そのようなイベントが捕捉された時には、 .Ic dig はそのまま次の問い合わせを続けるだけです。 diff --git a/ja_JP.eucJP/man/man1/du.1 b/ja_JP.eucJP/man/man1/du.1 index a087ed8390..15782da1d3 100644 --- a/ja_JP.eucJP/man/man1/du.1 +++ b/ja_JP.eucJP/man/man1/du.1 @@ -1,147 +1,147 @@ .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)du.1 8.2 (Berkeley) 4/1/94 .\" %FreeBSD: src/usr.bin/du/du.1,v 1.28 2004/07/02 22:22:23 ru Exp % .\" .\" $FreeBSD$ .\" .Dd June 2, 2004 .Dt DU 1 .Os .Sh 名称 .Nm du .Nd ディスク使用統計の表示 .Sh 書式 .Nm .Op Fl H | L | P .Op Fl I Ar mask .Op Fl a | s | d Ar depth .Op Fl c .Op Fl h | k | m .Op Fl x .Op Ar .Sh 解説 .Nm ユーティリティは、引数に指定された各ファイル、および 引数に指定された各ディレクトリを根とするファイル階層内にある 各ディレクトリ内のディスク使用統計をブロック単位で表示します。 引数にファイルが指定されなかった場合には、カレントディレクトリを 根とするファイル階層内のブロック単位の使用統計を表示します。 .Pp オプションは以下の通りです: .Bl -tag -width indent .It Fl H コマンド行に指定されたシンボリックリンクをたどります。 階層内を調べている途中で見つかったシンボリックリンクはたどりません。 .It Fl L コマンド行のシンボリックリンク および階層内を調べている途中で見つかったシンボリックリンクをたどります。 .It Fl I Ar mask 指定した .Ar mask に適合するファイルおよびディレクトリを無視します。 .It Fl P シンボリックリンクを全くたどりません。 これがデフォルトです。 .It Fl a ファイル階層内の各ファイルの情報も表示します。 .It Fl h 「人間が読める」出力。 単位のサフィックス、 -Byte, Kilobyte, Megabyte, Gigabyte, Terabyte and Petabyte を付けます。 +Byte, Kilobyte, Megabyte, Gigabyte, Terabyte, Petabyte を付けます。 .It Fl r 読めないディレクトリやオープンできないファイルといったメッセージを生成します。 これはデフォルトです。 このオプションは、単に .St -xpg4 準拠のためだけにあります。 .It Fl s 指定したファイルのエントリを表示します ( .Fl d Li 0 と等価です)。 .It Fl d Ar depth 深さ .Ar depth までの全てのファイルとディレクトリだけを表示します。 .It Fl c 総計を表示します。 .It Fl k 1024 バイト (1 キロバイト) ブロックとして報告します。 .It Fl m 1048576 バイト (1 メガバイト) ブロックとして報告します。 .It Fl x ファイルシステムマウントポイントはたどりません。 .El .Pp .Nm ユーティリティは、 .Fl H もしくは .Fl L オプションが指定されない限り、シンボリックリンクの大きさは リンクの参照先の大きさではなく、シンボリックリンク自身の 占める大きさとして数えます。 もし .Fl H もしくは .Fl L のどちらかのオプションが指定された場合には、 たどられた全てのシンボリック リンクの大きさは数えられず、また表示もされません。 .Pp 複数のハードリンクを持つファイルは、 .Nm の実行中、1 回しか数えられず、1 回しか表示されません。 .Sh 環境変数 .Bl -tag -width BLOCKSIZE .It Ev BLOCKSIZE .Ev BLOCKSIZE 環境変数が指定されていて .Fl k オプションが指定されていないと、ブロック数はそのブロックサイズ単位で 表示されます。 .Ev BLOCKSIZE 環境変数が指定されておらず .Fl k オプションが指定されていないと、ブロック数は 512 ブロックサイズ単位で 表示されます。 .El .Sh 関連項目 .Xr df 1 , .Xr fts 3 , .Xr symlink 7 , .Xr quot 8 .Sh 歴史 .Nm コマンドは、 .At v1 で登場しました。 diff --git a/ja_JP.eucJP/man/man1/ed.1 b/ja_JP.eucJP/man/man1/ed.1 index 507ea64cb2..7010e33914 100644 --- a/ja_JP.eucJP/man/man1/ed.1 +++ b/ja_JP.eucJP/man/man1/ed.1 @@ -1,964 +1,954 @@ .\" %FreeBSD: src/bin/ed/ed.1,v 1.34 2004/07/03 02:03:43 tjr Exp % .\" .\" $FreeBSD$ .Dd July 3, 2004 .Dt ED 1 .Os .Sh 名称 .Nm ed , .Nm red .Nd 行指向のテキストエディタ .Sh 書式 .Nm ed .Op Fl .Op Fl sx .Op Fl p Ar string .Op Ar file .Nm red .Op Fl .Op Fl sx .Op Fl p Ar string .Op Ar file .Sh 解説 .Nm ユーティリティは、行指向のテキストエディタです。 本コマンドを用いることで、テキストファイルの生成、表示、変更その他の操作を 行なうことができます。 .Nm red として起動された場合、エディタは .Qq 制限 モードで動作します。 唯一の違いは、 .Ql \&! .Nm ( ed がシェルコマンドと解釈) で開始または .Ql \&/ を含むファイル名の使用を制限することです。 カレントディレクトリ外の編集を妨げるのは、 ユーザがカレントディレクトリに対して書き込み権限が無い場合だけです。 ユーザがカレントディレクトリに対して書き込み権限がある場合、 カレントディレクトリにシンボリックリンクを作成可能であり、 シンボリックリンクが指すファイルをユーザが編集することを .Nm red は妨げません。 .Pp .Ar file 引数を指定して本コマンドを起動すると、ファイル .Ar file のコピーをエディタのバッファに読み込みます。 以後の変更はそのコピーに対して行なわれ、 .Ar file で指定したファイル自身が直接変更されることはありません。 .Nm コマンドを終了する際、 .Em w コマンドで明示的にセーブしなかった変更点はすべて失われます。 .Pp 編集は、 .Em コマンド モードと .Em 入力 モードの 2 つの異なるモードを使い分けて行ないます。 .Nm を起動したら、まずコマンドモードに入ります。 本モードでは、標準入力からコマンドを読み込み、それを実行することで エディタバッファの内容操作を行ないます。 典型的なコマンドは、以下のようなものです。 .Pp .Sm off .Cm ,s No / Em old Xo .No / Em new .No / Cm g .Xc .Sm on .Pp これは、編集しているテキストファイル中に .Em old という文字列があったら、これらをすべて文字列 .Em new に置き換えるコマンドです。 .Pp .Em a (append)、 .Em i (insert)、あるいは .Em c (change) といった入力コマンドが入力された場合、 .Nm は入力モードに移行します。 これが、ファイルにテキストを追加する主たる方法です。 このモードでは、コマンドを実行することはできません。 そのかわり、標準入力から入力されたデータは、 直接エディタバッファへと書き込まれます。 行は、改行キャラクタまでのテキストデータおよび、最後の .Em 改行 キャラクタを含むデータから構成されます。 ピリオド 1 つだけ .Pq Em .\& の行を入力すると、入力モードを終了します。 .Pp すべての .Nm コマンドは、全ての行もしくは指定した範囲の行の操作が可能です。 例えば、 .Em d コマンドは指定した行を削除し、 .Em m コマンドは指定した行を移動します。 上に示した例のように、置換によってある行の一部分のみを変更することは 可能ですが、 .Em s コマンドは、一度に全部の行にわたって変更を行なうことも可能です。 .Pp 一般的には、 .Nm コマンドは、0 個以上の行番号および、それに連なる 1 文字コマンドから 成り立ちます。 場合によっては追加のパラメータをもつこともあります。 いうなれば、コマンドは以下の構造を持ちます。 .Pp .Sm off .Xo .Op Ar address Op , Ar address .Ar command Op Ar parameters .Xc .Sm on .Pp 行番号はコマンドの操作対象行あるいは対象行範囲を示します。 行番号の指定個数が、コマンドが受け付け可能な個数よりも少ない場合には、 デフォルトの行番号が採用されます。 .Sh オプション 以下のオプションが使用できます。 .Bl -tag -width indent .It Fl s 診断メッセージを抑制します。 本オプションは、 .Nm の入力がスクリプトによって行なわれる場合に有効です。 .It Fl x 続く読み書きの際に行なわれる暗号化に用いる鍵の入力を促します .Em ( x コマンドを参照して下さい)。 .It Fl p Ar string コマンドプロンプトとして表示する文字列を指定します。 コマンドプロンプトは、コマンドモードで .Em p コマンドを実行することで、表示する/しないを切り替えることが可能です。 .It Ar file 編集対象のファイルを指定します。 .Ar file 名の先頭に感嘆符 (!) が付加されていた場合、そのファイル名はシェルコマンドと して解釈されます。 この場合、編集対象として読み込まれるテキストは、 .Xr sh 1 が .Ar file で指定したコマンドを実行した結果、標準出力に出力されるデータです。 先頭が感嘆符で始まるファイルを編集する場合には、ファイル名の先頭に バックスラッシュ (\\) を付加して下さい。 感嘆符以外の文字で始まるファイル名については、編集対象のファイル名は .Ar file となります。 .El .Sh 行指定 行は、バッファ内の行番号で表現されます。 .Nm ユーティリティは .Em 現在行 を管理しており、 コマンドに行番号が指定されない場合は、 現在行がデフォルト行として用いられます。 ファイルが最初に読み出された直後は、現在行はファイルの最後の行となります。 一般的に、現在行はコマンドが操作した最後の行となります。 .Pp 行番号は、以下の一覧のうち 1 つおよび、補助的に付加される 相対行番号 (オフセット) から構成されます。 相対行番号は、任意の数字の組み合わせと演算子、そして空白文字を含みます (例えば .Em + , .Em - や .Em ^ が演算子に含まれます)。 行番号は、左から右に解釈され、それらの演算子を含む値は、現在行からの相対行番 号と解釈されます。 .Pp 行番号の表現に関して上記の規則が適用される中で、行番号 .Em 0 (ゼロ) に関しては、例外的な扱いがされます。 これは「最初の行より前」を意味し、 それが正しい意味を持つ場合は常に利用可能です。 .Pp 行範囲は、コンマもしくはセミコロンで区切られた 2 つのアドレスで示されます。 最初に指定される行番号は、2 番目に指定される行番号を超える値を指定して はいけません。 行範囲指定で行番号が 1 つしか指定されなかった場合には、2 番目に 指定されるアドレスとして最初に指定されたアドレスが設定されます。 ここで 3 個以上の行番号が指定されると、最後の 2 つの行番号で 決定される範囲がコマンド実行対象になります。 行番号の指定を 1 つだけしか 想定していないコマンドの場合、最後の 1 つの行番号の行がコマンド実行対象 となります。 .Pp コンマで区切られた各行番号は、現在行からの相対行を指し示します。 セミコロンで区切られている場合は、範囲の始めの行は現在行が設定され、 範囲の終りは始めの行からの相対行で表わされます。 .Pp 行番号の指定には、以下のシンボルが使用可能です。 .Bl -tag -width indent .It . バッファ中の現在行を表します。 .It $ バッファ中の最終行を表します。 .It n バッファ内の .Em n 番目の行を表します。 .Em n は、 .Em [0,$] の間です。 .It - or ^ 1 行前の行です。 相対行指定 .Em -1 と同等であり、複数指定することで効果を累積することが可能です。 .\" --- という指定をすることで、2 行前を示すことができます。 .\" ↑原文中に無いのでコメントアウト sakai@jp.freebsd.org (Jun 9,1997) .It -n or ^n .Em n 行前の行を表します。 .Em n は、負でない整数です。 .It + 次の行を表します。 これは、 .Em +1 と同様であり、 .Em - と同様の累積的指定が可能です。 -.It +n or whitespace +.It +n .Em n 行後ろの行を表します。 .Em n は、負でない整数です。 -.Em n -の前に -.Em whitespace (空白文字) -を付加して指定した場合も -.Em +n -と解釈されます。 -.\" ↓原文中に無いのでコメントアウト sakai@jp.freebsd.org (Jun 9,1997) -.\" ただし、空白文字による指定を行なった場合は、単独では現在行からの相対行数を -.\" 指定することはできず、相対行指定の基準となる行をその前に指定しなければなり -.\" ません。 .It , or % バッファの最初から最後までを表します。 これは、 .Em 1,$ と指定した場合と同等です。 .It ; バッファ中の現在行から最後の行までを表します。 これは、 .Em .,$ と指定した場合と同等です。 .It /re/ 指定された正規表現 .Em re を含む、(現在行よりも後ろの) 次の行を表します。 必要であれば、文字列検索はテキスト先頭に折り返し、 現在行に達するまで検索を行ないます。 // は、最後に行なった検索を繰り返します。 .It ?re? 指定した正規表現 .Em re を含む、現在行より前の行を表します。 必要であれば、文字列検索はテキストの最後に折り返し、 現在行に達するまで検索を行ないます。 ?? は、最後に行なった検索を繰り返します。 .It 'lc .Em k (mark) コマンドでマークをつけた行を表します。 ここで .Em lc は、英小文字1文字です。 .El .Sh 正規表現 正規表現はテキストを選択する際に用いるパターンです。 例えば次の .Em ed コマンド .Pp .Sm off .Cm g No / Em string Xo .No / .Xc .Sm on .Pp は .Em string を含む全ての行を表示します。 正規表現は .Em s コマンドで古いテキストを新しいテキストで置き換える際にも用いられます。 .Pp 文字リテラルを指定するのに加え、 正規表現は文字列のクラスを表現することができます。 このようにして表現された文字列は、それに対応する正規表現に「マッチする」と 言います。 ある正規表現が一つの行の中の複数の文字列にマッチする場合、 マッチする部分のうち最も左にあって最も長いものが選択されます。 .Pp 正規表現を組み立てる際には以下のシンボルが用いられます: .Bl -tag -width indent .It c 以下に挙げるものを除く任意の文字 .Em c は、その文字自身にマッチします。 このような文字には .Ql \&{ , .Ql \&} , .Ql \&( , .Ql \&) , .Ql < , .Ql > が含まれます。 .It Pf \e c バックスラッシュでエスケープした文字 .Em c は、その文字自身にマッチします。 ただし .Ql \&{ , .Ql \&} , .Ql \&( , .Ql \&) , .Ql < , .Ql > を除きます。 .It . 任意の一文字にマッチします。 .It Op char-class 文字クラス .Em char-class に含まれる任意の一文字にマッチします。 文字クラス .Em char-class に .Ql \&] を含めるには、文字 .Ql \&] を最初の文字に指定します。 文字の範囲を指定するには、範囲の両端の文字の間を .Ql - でつなぎます。 例えば .Ql a-z は小文字全体を表します。 以下のようなリテラル表記も、文字集合を指定するために文字クラス .Em char-class で使用することができます: .Pp .Bl -column "[:alnum:]" "[:cntrl:]" "[:lower:]" "[:xdigit:]" -compact .It [:alnum:] Ta [:cntrl:] Ta [:lower:] Ta [:space:] .It [:alpha:] Ta [:digit:] Ta [:print:] Ta [:upper:] .It [:blank:] Ta [:graph:] Ta [:punct:] Ta [:xdigit:] .El .Pp 文字クラス .Em char-class の最初あるいは最後の文字として .Ql - が用いられると、 それはその文字自身にマッチします。 文字クラス .Em char-class 中のこれ以外の文字は全て、それら自身にマッチします。 .Pp 以下の形式の文字クラス中のパターン: .Pp .Bl -item -compact -offset 2n .It .Op \&. Ns Ar col-elm Ns .\& or, .It .Op = Ns Ar col-elm Ns = .El .Pp は 現在のロケール に沿って解釈されます (現在のところサポートされません)。 ここで .Ar col-elm は .Em collating element です。 詳しい説明は .Xr regex 3 と .Xr re_format 7 を参照して下さい。 .It Op ^char-class 文字クラス .Em char-class に含まれない、改行以外の任意の一文字にマッチします。 文字クラス .Em char-class は上で定義しています。 .It ^ .Em ^ が正規表現の最初の文字である場合、 その正規表現は行頭でのみマッチします。 それ以外の場合、 .Em ^ はそれ自身にマッチします。 .It $ .Em $ が正規表現の最後の文字である場合、 その正規表現は行末でのみマッチします。 それ以外の場合、 .Em $ はそれ自身にマッチします。 .It Pf \e < これに続く単一文字の正規表現あるいはその部分式が、 単語の先頭でのみマッチするようにします (この機能は利用できない 場合があります)。 .It Pf \e > これに続く単一文字の正規表現あるいはその部分式が、 単語の末尾でのみマッチするようにします (この機能は利用できない 場合があります)。 .It Pf \e (re\e) 部分式 (subexpression) .Em re を定義します。 部分式はネストできます。 これ以降、 .Pf \e Em n ( .Em n は [1,9] の範囲の数) の形式の後方参照は、 .Em n 番目の部分式にマッチしたテキストに展開されます。 例えば、正規表現 .Ql \e(.*\e)\e1 は、 同じ文字列が隣接しているような任意の文字列にマッチします。 部分式は左側のデリミタから順に番号が振られます。 .It * 直前にある単一文字の正規表現あるいはその部分式の 0 回以上の繰り返しに マッチします。 .Em * が正規表現あるいはその部分式の最初の文字として用いられた場合、 .Em * はその文字自身にマッチします。 .Em * 演算子は時に予期しない結果をもたらすことがあります。 例えば、正規表現 .Ql b* は文字列 .Ql abbb の先頭にマッチします (部分文字列 .Ql bbb ではありません)。 これはヌルへのマッチが最も左にあるマッチだからです。 .It \e{n,m\e} or \e{n,\e} or \e{n\e} 直前にある単一文字の正規表現あるいはその部分式の、 .Em n 回以上 .Em m 回以下の繰り返しにマッチします。 .Em m が省略された場合、 .Em n 回以上の繰り返しにマッチします。 更にコンマも省略された場合、ちょうど .Em n 回の繰り返しにのみマッチします。 .El .Pp 各 .Xr regex 3 の実装によっては、 更に正規表現演算子がいくつか定義されていることがあります。 .Sh コマンド 全ての .Nm コマンドは、1 文字からなりますが、追加パラメータが必要なコマンドもあります。 コマンドのパラメータが複数の行にわたる場合には、そのパラメータを含めたコマンド の終りを含む行を除き、行末にバックスラッシュ (\\) を付加して下さい。 .Pp 一般的には、1 行ごとに 1 コマンドを入れることが許されています。 しかしながら、ほとんどのコマンドは、コマンド実行を行なった後のデータ更新 その他を確認するために、 .Em p (print)、 や .Em l (list)、 .Em n (enumerate), のような表示系のコマンドを同時に指定できます。 .Pp インタラプト (一般的には ^C) を入力することで、現在実行しているコマンドを 強制終了し、コマンドモードに戻すことができます。 .Pp .Nm ユーティリティは、以下のコマンドを使用できます。 コマンド実行時に何の指定もない場合の デフォルトの行番号もしくは行範囲が括弧内に示されています。 .Bl -tag -width indent .It (.)a 指定した行の後にテキストを追加します。 テキストは入力モードで入力されていきます。 現在行番号は、入力された最後の行に設定されます。 .It (.,.)c バッファ内の指定した行を変更します。 指定した行のデータは、バッファから消去 され、そこに対してテキストデータを入力するようになります。 テキストは入力モードで入力されていきます。 現在行番号は、入力した最後の行に設定されます。 .It (.,.)d 指定した範囲をバッファから削除します。 削除した範囲の後に行が続いている場合、現在行番号は、その行に設定されます。 そうでない場合には、現在行番号は、削除された範囲の前の行に設定されます。 .It e Ar file .Ar file を編集し、デフォルトのファイル名を設定します。 もし .Ar file が指定されなかった場合には、デフォルトのファイル名が使用されます。 本コマンド実行時に、それまで別のファイルを編集していた場合には、 その内容はすべて消去され、新しいファイルが読み込まれます。 現在行番号は、入力された最後の行に設定されます。 .It e Ar !command .Ar !command で指定されたコマンドを実行し、その結果として標準出力へ 出力されたデータを編集します (後述する .Ar ! command を参照して下さい)。 デフォルトのファイル名は変更されません。 .Ar command の出力が読み込まれる前に、バッファ内に存在した行はすべて消去されます。 現在行番号は、入力された最後の行に設定されます。 .It E Ar file 無条件で .Ar file で指定したファイルを読み込み、編集します。 .Em e コマンドと動作は似ていますが、すでにバッファ上のデータに変更が加えられ ている場合でも、未書き込みの変更を警告を出さずに捨ててしまう点が異なります。 現在行番号は、入力された最後の行に設定されます。 .It f Ar file デフォルトファイル名を .Ar file に設定します。 .Ar file 名が指定されない場合には、デフォルトファイル名が表示されます。 .It (1,$)g/re/command-list .Ar command-list で指定されたコマンドを、指定した正規表現 .Ar re に一致する各行に対して実行します。 現在行番号は、 .Ar command-list で指定されたコマンドが実行される前に、指定した正規表現に一致した行 に設定されます。 .Em g コマンドが終了した場合、現在行番号は最後に .Ar command-list 実行の影響を受けた行に設定されます。 .Pp .Ar command-list で指定されるコマンドは、1 行ごとに 1 つずつ書かれる必要があります。 各コマンド 行の終りには、一番最後のコマンド行を除いてはバックスラッシュ (\\) を記述する 必要があります。 コマンド .Em g , .Em G , .Em v , .Em V を除くすべてのコマンドを指定可能です。 .Ar command-list 中の空行は、 .Em p コマンドと同等に扱われます。 .It (1,$)G/re/ 指定した正規表現 .Ar re に一致した行に対して、対話編集を行ないます。 指定した正規表現に一致する文字列を含む行があると、その行を表示し、現在行番号を 設定します。 そして、ユーザに .Ar command-list の入力を促します。 .Em G コマンドが終了した場合、現在行番号は、 .Ar command-list 実行の影響を受けた最後の行に設定されます。 .Pp .Ar command-list の記述形式は、 .Em g コマンドで指定するものと同じです。 改行のみの場合は、コマンド実行をしない (ヌルコマンドリストを指定した) ものとみなされます。 .Ql & 文字のみを入力した場合には、 直前に実行した (ヌルコマンドリストではない) コマンドを再実行します。 .It H エラーメッセージの出力の有無を切り替えます。 デフォルトでは、エラーメッセージは出力されません。 ed スクリプトを作成する場合、スクリプトのデバッグのために、本コマンドを 最初に実行することをおすすめします。 .It h 最後に表示されたエラーメッセージを表示します。 .It (.)i 編集バッファ中の現在行の前に、テキストを挿入します。 テキストは入力モードで入力されていきます。 現在行番号は、入力された最後の行に設定されます。 .It (.,.+1)j 指定した範囲の行を 1 行に連結します。 指定した行はバッファから削除され、 その行の内容を含む 1 行に置き換えられます。 現在行番号は、置き換えられた行に設定されます。 .It (.)klc 行に、英小文字 .Em lc で指定したマークをつけます。 その後、マークをつけられた行は、コマンド中で .Em 'lc (つまり、シングルクォートと小文字 .Em lc ) として指定できるようになります。 マークは、その行が削除されるかもしくは変更されるかしない限り、消えることは ありません。 .It (.,.)l 指定した範囲の行の内容を見やすく表示します。 もし 1 つの行が 1 画面以上を占める場合 (例えばバイナリファイルを見ている 場合など) .Dq Li --More-- プロンプトが最下行に表示されます。 次の画面を表示する前に .Nm ユーティリティはリターンキーが入力されるまで待ちます。 現在行番号は、表示された最後の行に設定されます。 .It (.,.)m(.) 指定した範囲の行をバッファ内で移動します。 指定した行は、コマンドの右辺で指定した行の後ろに移動されます。 移動先の行としては、 .Em 0 (ゼロ) が指定可能です。 現在行番号は、移動された最後の行に設定されます。 .It (.,.)n 指定した行の内容を、行番号つきで表示します。 現在行番号は、表示された最後の行に設定されます。 .It (.,.)p 指定した範囲の行の内容を表示します。 現在行番号は、表示された最後の行に設定されます。 .It P コマンドプロンプト表示の有無を切り替えます。 コマンド起動時のオプション .Fl p Ar string でプロンプトが指定されていなければ、 コマンドプロンプトの表示はデフォルトでオフになっています。 .It q .Nm を終了します。 .It Q 無条件に .Nm を終了します。 このコマンドは .Em q コマンドと似ていますが、まだファイルに書き出されていない 変更があっても警告せずに終了する点が異なります。 .It ($)r Ar file .Ar file で指定されたファイルを、指定した行の後ろに読み込みます。 .Ar file が指定されない場合、デフォルトのファイル名が読み込みに使用されます。 このコマンドに先だってデフォルトのファイル名が設定されていない場合、 デフォルトのファイル名には、 .Ar file で指定されたものが設定されます。 それ以外の場合、デフォルトのファイル名は変更されません。 現在行番号は、読み込まれたファイルの最後の行に設定されます。 .It ($)r Ar !command .Ar command で指定されたコマンドを実行し、その結果として標準出力へ出力された データを指定した行の後ろに読み込みます (後述する .Ar ! command を参照して下さい)。 デフォルトのファイル名は変更されません。 現在行番号は、読み込まれた最後の行の行番号に設定されます。 .It (.,.)s/re/replacement/ .It (.,.)s/re/replacement/g .It (.,.)s/re/replacement/n 指定した行のテキスト中の、正規表現 .Ar re に一致する文字列を、文字列 .Ar replacement に置き換えます。 デフォルトでは、それぞれの行で最初に一致した文字列のみを置き換えます。 .Em g (global) サフィックスが指定された場合、一致した文字列はすべて置き換えられます。 .Em n サフィックス .Em ( n は正の整数) が指定された場合、 .Em n 回目に一致した文字列だけを置き換えます。 指定した範囲で一度も文字列の置換が起こらなかった場合、エラーとみなされます。 現在行番号は、最後に置換が発生した行に設定されます。 .Pp .Ar re および .Ar replacement は、スペースおよび改行を除くすべてのキャラクタを用いて区切ることが 可能です (後述する .Em s コマンドを見て下さい)。 最後のデリミタのうち 1 つか 2 つが省略された場合、 最後に文字列置換が発生した行は、 .Em p コマンドが指定された場合と同様に表示されます。 .Pp .Ar replacement 中のエスケープされていない .Ql & は、一致した文字列と置き換えられます。 キャラクタシーケンス .Em \em .Em ( m は [1,9] の範囲の整数です ) は、一致した文字列の .Em m 番目の後方参照で置き換えられます。 .Ar replacement の中に入る文字が .Ql % のみだった場合、最後に行なった置換の .Ar replacement が使用されます。 改行を .Ar replacement に指定したい場合は、バックスラッシュを用いてエスケープすれば可能です。 .It (.,.)s 最後の置換を繰り返します。 この形式の .Em s コマンドは、回数を示すサフィックス .Em n もしくは、他の .Em r、 .Em g、 .Em p のどのキャラクタとの組み合わせも可能です。 .Em n が指定されると、 .Em n 回目に一致した文字列だけが置換されます。 .Em r サフィックスが指定されると、最後の置換が発生した文字列の変わりに、 最後に指定した正規表現が使用されます。 .Em g サフィックスは、最後の置換で用いたグローバルサフィックスの使用の 有効/無効を切り替えます。 .Em p サフィックスは、最後の置換に指定されたプリントサフィックスを反転します。 現在行番号は、最後に置換が発生した行に設定されます。 .It (.,.)t(.) 指定した範囲の行を、コマンド文字の右辺に指定した行番号の後に コピー (つまり転送) します。 コピー先の行番号としては、 .Em 0 (ゼロ) の指定が許されています。 現在行番号は、コピーした一番最後の行の行番号に設定されます。 .It u 最後に実行したコマンドの実行結果を取り消し、現在行番号を、取り消したい コマンドが実行される前のものに戻します。 グローバルコマンドである .Em g、 .Em G、 .Em v、 .Em V については、その改変は 1 コマンドで行なわれたとして扱います。 .Em u は自分自身の動作を取り消すこともできます。 .It (1,$)v/re/command-list 指定した範囲の行のうち、指定した正規表現 .Ar re と一致する文字列が含まれていない行について、 .Ar command-list で指定したコマンドを実行します。 これは .Em g コマンドに動作が似ています。 .It (1,$)V/re/ 指定した範囲の行のうち、指定した正規表現 .Ar re に一致する文字列が含まれていない行について、対話編集を行ないます。 これは .Em G コマンドに動作が似ています。 .It (1,$)w Ar file 指定した範囲の行を、 .Ar file で指定したファイルに書き出します。 それまで .Ar file に格納されていた内容は、警告なしに消去されます。 デフォルトファイル名が設定されていない場合、デフォルトファイル名は .Ar file に設定されます。 それ以外の場合では、デフォルトファイル名は変更されません。 ファイル名が指定されなかった場合には、デフォルトファイル名が使用されます。 現在行番号は変更されません。 .It (1,$)wq Ar file 指定した範囲の行を .Ar file で指定したファイルに書き出し、 .Em q コマンドを実行します。 .It (1,$)w Ar !command 指定した範囲の行の内容を .Ar !command の標準入力に書き出します .Em ( !command については、以下の説明を参照して下さい)。 デフォルトファイル名および現在行番号は変更されません。 .It (1,$)W Ar file 指定した範囲の行の内容を、 .Ar file で指定したファイルの後ろに追加書き込みします。 .Em w コマンドと似ていますが、指定したファイルにそれまで格納されていた内容 がなくなることはありません。 現在行番号は変更されません。 .It x 以降の読み書きで用いられる暗号化鍵の入力を促します。 改行のみが入力されると、暗号化は解除されます。 それ以外の場合、キー読み込み中のエコーは抑制されます。 暗号化および復号化は .Xr bdes 1 アルゴリズムを用いて行われます。 .It Pf (.+1)z n 指定した行から一度に .Ar n 行だけスクロールします。 .Ar n が指定されない場合には、現在のウィンドウサイズだけスクロールします。 現在行番号は、最後に表示した行の行番号に設定されます。 .It !command .Ar command で指定したコマンドを、 .Xr sh 1 を用いて実行します。 .Ar command の最初の文字が .Ql \&! の場合には、その文字は直前に .Ar !command で実行したコマンド文字列が格納されます。 .Ar command 文字列をバックスラッシュ (\\) でエスケープした場合には、 .Nm ユーティリティは処理を行ないません。 しかし、エスケープされない .Em % 文字があった場合には、その文字列はデフォルトファイル名に置き換えられます。 シェルがコマンド実行から戻ってきた場合には、 .Ql \&! が標準出力に出力されます。 現在行番号は変更されません。 .It ($)= 指定された行の行番号を表示します。 .It (.+1)newline 指定した行を表示します。 そして、現在行番号を表示した行のものに設定します。 .El .Sh 関連ファイル .Bl -tag -width /tmp/ed.* -compact .It /tmp/ed.* バッファファイル .It ed.hup 端末が回線切断した場合に、 .Nm がバッファ内容を書き出すファイル .El .Sh 関連項目 .Xr bdes 1 , .Xr sed 1 , .Xr sh 1 , .Xr vi 1 , .Xr regex 3 .Pp USD:12-13 .Rs .%A B. W. Kernighan .%A P. J. Plauger .%B Software Tools in Pascal .%O Addison-Wesley .%D 1981 .Re .Sh 制限 .Nm ユーティリティは、 .Ar file 引数に対してバックスラッシュエスケープ処理を施します。 つまり、ファイル名中でバックスラッシュ (\\) を前につけた文字は、 リテラルとして解釈されます。 .Pp (バイナリではない) テキストファイルの最後が改行文字で終っていない場合、 .Nm はそれを読み書きする際に改行文字を追加します。 バイナリファイルの場合は、 .Nm はこのような改行文字追加は行いません。 .Pp 1 行あたりのオーバヘッドは整数 4 つ分です。 .Sh 診断 エラーが発生すると、 .Nm は .Ql \&? を表示し、コマンドモードに戻るか、スクリプトによる実行のエラーの場合には プログラムを終了します。 最後のエラーメッセージについての説明は、 .Em h (help) コマンドを用いることで表示可能です。 .Pp .Em g (global) コマンドは、検索や置換が失敗したというエラーを隠蔽します。 そのため、スクリプトの中で条件つきコマンド実行を行なわせるのによく使われます。 例えば .Pp .Sm off .Cm g No / Em old Xo .No / Cm s .No // Em new .No / .Xc .Sm on .Pp は、出現した文字列 .Em old をすべて文字列 .Em new に置き換えます。 .Em u (undo) コマンドがグローバルコマンドリスト内で実行された場合、コマンドリストは 1 度だけの実行になります。 .Pp 診断が無効にされていないと、 .Nm を終了しようとする場合やバッファ内のデータを書き出さずに他のファイルを 編集しようとする場合にエラーになります。 その場合でも、同一のコマンドを 2 回入力すると、コマンドは成功します。 しかし、それまでの未保存の編集結果は、すべて失われます。 .Sh 歴史 .Nm コマンドは Version 1 AT&T UNIX で登場しました。 .Sh バグ .Nm ユーティリティは、マルチバイト文字を認識しません。 diff --git a/ja_JP.eucJP/man/man1/ee.1 b/ja_JP.eucJP/man/man1/ee.1 index c0f930e5a0..974edf237e 100644 --- a/ja_JP.eucJP/man/man1/ee.1 +++ b/ja_JP.eucJP/man/man1/ee.1 @@ -1,605 +1,605 @@ .\" .\" %FreeBSD: src/usr.bin/ee/ee.1,v 1.17 2004/07/03 00:24:40 ru Exp % .\" .\" $FreeBSD$ .Dd August 30, 1995 .Dt EE 1 .Os .Sh 名称 .Nm ee .Nd 簡単エディタ .Sh 書式 .Nm ee .Op Fl eih .Op +# .Op Ar .Nm ree .Op Fl eih .Op +# .Op Ar .Sh 解説 .Nm ユーティリティはシンプルなスクリーンエディタで、 端末の下部にプロンプトがあるか、 (端末中央の箱の中に) メニューがあるとき以外は、 常にテキスト挿入モードになっています。 .Nm ree ユーティリティは .Nm と同じものですが、指定されたファイルの編集しかできない (ファイル操作やシェル を使うことができない) ように機能が制限されています。 .Pp .Nm を正常に動作させるためには、使用する端末のタイプに合わせて、環境変数 .Ev TERM を正しく設定しなければなりません。例えば、 .Tn HP 700/92 端末の場合は、 .Ev TERM 変数を "70092" に設定する必要があります。 更に詳しい情報が必要な場合は、システム管理者にお尋ねください。 .Pp 下記のオプションが使用可能です: .Bl -tag -width indent .It Fl e タブからスペースへの展開を禁止します。 .It Fl i 端末上部に情報ウィンドウを表示しません。 .It Fl h ウィンドウとメニューの縁の強調表示を止めます (一部の端末で 表示速度が向上します)。 .It Sy +# スタート時のカーソルを行番号 '#' で指定される行に置きます。 .El .Ss "コントロールキー" テキストの挿入以外の操作では、コントロールキー ( .Li Control キーは "^" で表示され、例えば ^a のように、 アルファベットキーと組み合わせて使われます) や、 キーボード上にあるファンクションキー ( .Em "Next Page" , .Em "Prev Page" , 矢印キー等) を使わなければなりません。 .Pp すべての端末がファンクションキーを持っているわけではありませんから、 .Nm ではコントロールキーに割り当てられた基本的なカーソル移動は、 キーボードに装備された、より直感的なキーでも扱えるようにしてあります。例えば、 カーソルの上方移動は、上向き矢印キーと .Em ^u のいずれでも可能です。 .Bl -tag -width indent .It ^a 挿入文字を ASCII の 10 進数で指定。 .It ^b テキストの終わりに移動。 .It ^c コマンド入力。 .It ^d カーソルを下に移動。 .It ^e 検索文字列を入力。 .It ^f 最後に削除した文字の復元。 .It ^g 行の先頭に移動。 .It ^h バックスペース。 .It ^i タブ。 .It ^j 改行を挿入。 .It ^k カーソル上の文字を消去。 .It ^l カーソルを左に移動。 .It ^m 改行を挿入 .It ^n 次ページに移動。 .It ^o 行末に移動。 .It ^p 前ページに移動。 .It ^r カーソルを右に移動。 .It ^t テキスト先頭に移動。 .It ^u カーソルを上に移動。 .It ^v 最後に削除した単語を復元。 .It ^w カーソル位置以降の単語を削除。 .It ^x 文字列検索。 .It ^y カーソル位置から行末まで削除。 .It ^z 最後に削除した行の復元。 .It ^[ (ESC) メニュー表示。 .El .Ss "EMACS キーモード" 多くのシェルは (カーソル移動その他の編集操作で) Emacs モードを 用意していますから、それらのキー割当に慣れた利用者のために、 いくつかのキー割当が別途用意されています。これは .Em 設定 メニューないしは初期化ファイル (下記を参照) から利用することができ、 その内容は次のとおりです: .Bl -tag -width indent .It ^a 行の先頭に移動。 .It ^b 1 文字後退。 .It ^c コマンド入力。 .It ^d カーソル位置の文字を消去。 .It ^e 行末に移動。 .It ^f 1 文字前進。 .It ^g 1 ページ戻る。 .It ^h バックスペース。 .It ^i タブ。 .It ^j 最後に削除した文字の復元。 .It ^k 行の削除。 .It ^l 最後に削除した行の復元。 .It ^m 改行の挿入。 .It ^n 次行に移動。 .It ^o 挿入文字を ASCII の 10 進数で指定。 .It ^p 前行に戻る。 .It ^r 最後に削除した後の復元。 .It ^t テキストの先頭に移動。 .It ^u テキストの最後に移動。 .It ^v 次ページに移動。 .It ^w カーソル以降の単語を削除。 .It ^y 検索文字列の入力。 .It ^z 次の単語。 .It ^[ (ESC) メニュー表示。 .El .Ss "ファンクションキー" .Bl -tag -width indent .It Next Page 次ページに移動。 .It Prev Page 前ページに移動。 .It Delete Char カーソル位置の文字を消去。 .It Delete Line カーソル位置から行末まで消去。 .It Insert line カーソル位置に改行を挿入。 .It Arrow keys 表示された方向にカーソルを移動。 .El .Ss コマンド ある種の操作では単一のキー操作で得られる以上の情報を必要とします。 基本的な操作のほとんどには、 .Tn ESC キーで表示されるメニューが用意されていますが、 それらに加え、いくつかの操作は、コマンド入力 (^c) に続いて 下記のうち一つをタイプすることで実行できます。 .Bl -tag -width indent .It ! Ns Ar cmd シェルを使って .Ar cmd を実行。 .It 0-9 指定された行番号に移動。 .It case 文字列検察で大文字と小文字を区別。 .It character カーソル位置の文字の ASCII 値を表示。 .It exit 編集したテキストを保存して終了。 .It expand タブをスペースに展開。 .It file ファイル名を表示。 .It help ヘルプ画面を表示。 .It line 現在行の行番号を表示。 .It nocase 文字列検索で大文字と小文字を区別しない (デフォルト)。 .It noexpand TAB キーが押されたとき、タブをスペースに展開しない。 .It quit テキストに加えられた変更を保存せずに終了。 .It read Ar file 指定されたファイル .Ar file を読み込む。 .It write Ar file 指定されたファイル .Ar file にテキストを書き込む。 .El .Ss "メニュー操作" .Em escape キー (存在しない場合は .Em ^[ ) を押すとメニューがでてきます。 メニューの中で escape キーを押すと、何もしないでメニューから抜け出すことが できます。上向き矢印と下向き矢印ないしは、上なら .Em ^u 下なら .Em ^d で希望する項目に移動して、 .Em return キーを押せば、その処理が実行されます。 .Pp メニュー項目の左側の文字のキーを押すと、そのメニューエントリを 選択することになります。 .Pp .Nm のメインメニューは次のとおりです: .Bl -tag -width indent .It leave editor 終了。 変更されている場合は、変更後のテキストを保存するかどうかの問い合わせ メニューが出ます。 .It help ヘルプ。 すべてのキー操作とコマンドを含むヘルプ画面を表示。 .It file operations ファイル操作。 ファイルの読み込み、書き込み、保存に加え、 編集内容の印刷コマンドへの送信メニュー ( .Sx "ファイルによる ee の初期化" を参照)。 .It redraw screen 画面再描画。 画面が乱れたとき画面を再描画するための手段。 .It settings 設定。 現在の操作モードと右マージンを表示。特定の項目上で return キーを押すと、 その値を変更できます。 このメニューから抜ける場合は .Em escape キーを押します。(下記の .Sx モード を参照。) .It search 検索。 新しい検索文字列ないしは既に設定した検索文字列で検索するためのメニュー。 .It miscellaneous その他。 現在の段落の整形、シェルコマンドの実行、編集中のテキストのスペルチェック を行うためのメニュー。 .El .Ss "段落整形" .Nm の段落 (paragraph) は、下記のいずれかで囲まれた部分を意味します: .Bl -bullet -width indent .It ファイルの先頭と終わり。 .It 文字を含まない行、ないしは、スペースとタブのみの行。 .It ピリオド ('.') か 大なり記号 ('>') で始まる行。 .El .Pp 段落整形を行う方法としては、メニューの .Em 段落整形(format paragraph) を選択して明示的に行う方法と、段落の自動整形を行うように .Nm を設定する方法の二つがあります。 自動モードはメニューからでも、初期化ファイルからでも設定可能です。 .Pp .Nm のテキスト操作には、自由形式 (free-form)、マージン (margins)、 自動整形 (automatic formatting) の 3 つの状態があります: .Pp 「自由形式」はプログラミングのような仕事に最適で、行の長さの制限がなく、 整形も行われません。 .Pp 「マージン」を使うと、右マージン (これは .Em 設定 (settings) メニューで指定しますが、 デフォルトは端末の右縁になっています) を越えていないかどうかを気にせずに テキストをタイプすることができます。 このモードでは .Em 段落整形 (format paragraph) メニュー項目が動作します。 .Pp 「自動整形」はワードプロセッサのようなふるまいをします。 ユーザがテキストを入力する一方で、 空白文字が入力されるかテキストを削除するたびに、 .Nm は段落全体が端末の幅を越えないように調整します。 自動整形を使う場合は、マージンも有効にしておかなければなりません。 .Ss モード .Nm そのものは「モードなし」(modeless) エディタ (常にテキスト挿入モードに なっています) ですが、その動作の中には次のようなモードをもつものもあります: .Bl -tag -width indent .It タブ拡張 タブ文字として挿入するか、空白文字に置換するかを決めます。 .It 大文字と小文字の区別 文字列検索では、大文字と小文字を区別することもできますし、 同一視させることもできます。 .It マージン監視 行の長さを右マージンまでに制限することもできますし、 無限に長くすることもできます。 .It 段落の自動整形 テキストの入力中、うまく画面の幅に収まるように、 エディタに調整させることができます。 .It 8 ビット文字 8 ビット文字をそのまま表示させるか、 その値を山括弧で囲んで表示 ("<220>" 等) させるかの切り替えです。 .It 情報ウィンドウ 実行可能なキー操作を表示するウィンドウを出すか出さないかを選択します。 .It emacs キー割り当て コントロールキーの割り当てを emacs 方式にするかどうかを決めます。 .It 16 ビット文字 16 ビット文字を 1 個の 16 ビット量として扱うのか、2 個の 8 ビット量として 扱うのかを切り替えます。 主として、Chinese Big 5 コードセットで動作します。 .El .Pp これらのモードは初期化ファイル (下記を参照) とメニュー (上記を参照) の いずれでも設定可能です。 .Ss "スペルチェック" .Nm でテキストに含まれる単語のスペルをチェックする方法には、 伝統的な .Xr spell 1 コマンドを使う方法と、オプションの .Nm ispell コマンドを使う方法の二つがあります。 .Pp .Nm spell を使う場合は、認識できない単語はファイルの先頭に置かれます。 .Nm ispell の場合は、ファイルをいったんディスクに書き出し、 .Nm ispell にそのファイルを処理させてから、 .Nm ispell が書き換えたファイルを再度読み込みます。 .Ss "編集内容の印刷" メニューの中に編集内容を印刷する項目があります。 .Nm ユーティリティは初期化コマンドの .Em printcommand (下記の .Sx "ファイルによる ee の初期化" を参照) で指定されたコマンドに編集中のテキストをパイプで転送します。 デフォルトでは .Xr lp 1 コマンドに転送します。 .Pp .Em printcommand で指定されたコマンドは、標準入力からテキストを読み込むものでなければ なりません。詳細はシステム管理者に聞いてください。 .Ss "シェルの操作" .Em その他 (miscellaneous) のメニューで .Em シェルコマンド (shell command) を選ぶか、 .Em command: プロンプトで感嘆符 ("!") に続けて実行したいコマンドを書くことで、 .Nm の中からシェルにコマンドを実行させることができます。さらに、"!' の前に 「大なり記号」(">") を書くことで、編集バッファの内容をシェルコマンドに リダイレクトすることができます。 同様に、感嘆符の前に「小なり記号」("<") を書くと、 シェルコマンドの実行結果を編集バッファに取り込みます。 これらを同時に指定することで、シェルコマンドに出力した後、コマンドの 実行結果を読み直すことも可能です。 従って、エディタで編集中の単語のリストをソートしたい場合は、 コマンド入力で次のようにタイプすることができます: .Dl >" のように山括弧で囲まれた数値 で表示します)。 .It 16bit 16 ビット文字を扱います。 .It no16bit 16 ビット文字を扱いません。 .It emacs emacs のキー割り当てにします。 .It noemacs emacs のキー割り当てをやめます。 .El .Ss "エディタの設定の保存" .Em settings メニューからこのエントリを使用すると、 ユーザは現在のエディタの設定 (前記 .Sx "ファイルによる ee の初期化" 参照) を現在のディレクトリもしくはユーザのホームディレクトリのファイル .Pa .init.ee に保存できます。 既に存在するファイル .Pa .init.ee は .Pa .init.ee.old にリネームされます。 .Sh 警告 (原文) .\" こういう部分は日本語訳により細かなニュアンスが変わって問題になる .\" かもしれないので、原文のままにしてあります。 sakai@jp.freebsd.org 1997.6.19 THIS MATERIAL IS PROVIDED "AS IS". THERE ARE NO WARRANTIES OF ANY KIND WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Neither Hewlett-Packard nor Hugh Mahon shall be liable for errors contained herein, nor for incidental or consequential damages in connection with the furnishing, performance or use of this material. Neither Hewlett-Packard nor Hugh Mahon assumes any responsibility for the use or reliability of this software or documentation. This software and documentation is totally UNSUPPORTED. There is no support contract available. Hewlett-Packard has done NO Quality Assurance on ANY of the program or documentation. You may find the quality of the materials inferior to supported materials. .Pp Always make a copy of files that cannot be easily reproduced before editing. Save files early, and save often. .Pp (上記段落の日本語訳 −参考−) .br このプログラムはこのままの状態 (AS IS) で供給されるもので、実用性や特定用途 に対する適合性を含む、いかなる保証もありません。 Hewlett-Packard と Hugh Mahon のいずれも、このプログラムの間違い、 あるいは、設置や使用に付随ないしは結果として生ずるいかなる問題についても 責任を負いません。 Hewlett-Packard と Hugh Mahon のいずれも、このプログラムとドキュメントの 信頼性に対する責任を負いません。 このプログラムとドキュメントに対するサポートはありませんし、 サポートの窓口もありません。 -Hewlett-Packard はプログラムとドキュメントの品質検査行っていません。 +Hewlett-Packard はプログラムとドキュメントの品質検査を行っていません。 サポートのある製品にくらべて品質が劣る可能性もあります。 .Pp 編集前の状態に戻すのが困難なファイルについては、常にコピーを残してください。 早めにファイルに保存し、小刻みに保存操作を行ってください。 .Ss "国際コードセットのサポート" .Nm ユーティリティは 8 ビット文字コード (8 ビットクリーン) または Chinese Big-5 コードセットをサポートしています (他のマルチバイトコードセットも動作するかもしれませんが、 Big-5 が動作する理由は、2 バイト文字は画面上で 2 桁を占めるためです)。 .Sh 警告 低速システムでは、段落自動整形は極端に遅くなります。 .Sh 関連ファイル .Bl -tag -width /usr/share/misc/init.ee -compact .It Pa /usr/share/misc/init.ee .It Pa $HOME/.init.ee .It Pa .init.ee .El .Sh 作者 ソフトウェア .Nm は .An Hugh Mahon が開発しました。 .Pp .\" 以下の部分も原文を残し、和訳併記としてあります。 .\" sakai@jp.freebsd.org 1997.6.19 This software and documentation contains proprietary information which is protected by copyright. All rights are reserved. .Pp (上記段落の日本語訳 −参考−) .br このプログラムとドキュメントは著作権法により保護されており、 すべての権利は著作者が有します。 .Pp Copyright (c) 1990, 1991, 1992, 1993, 1995, 1996 Hugh Mahon. .Sh "関連項目" .Xr ispell 1 , .Xr lpr 1 , .Xr spell 1 , .Xr termcap 5 , .Xr terminfo 5 , .Xr environ 7 .Sh 日本語マニュアル 平林浩一 (kh@mogami-wire.co.jp) による ee 日本語化キットに含まれている 日本語化 ee の日本語マニュアルをベースに、 酒井淳嗣 (sakai@jp.freebsd.org) が一部修正。 diff --git a/ja_JP.eucJP/man/man1/expand.1 b/ja_JP.eucJP/man/man1/expand.1 index 416b94f530..4d45a854c4 100644 --- a/ja_JP.eucJP/man/man1/expand.1 +++ b/ja_JP.eucJP/man/man1/expand.1 @@ -1,117 +1,117 @@ .\" Copyright (c) 1980, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" -.\" @(#)error.1 8.1 (Berkeley) 6/6/93 +.\" @(#)expand.1 8.1 (Berkeley) 6/9/93 .\" %FreeBSD: src/usr.bin/expand/expand.1,v 1.13 2004/07/02 22:22:24 ru Exp % .\" $FreeBSD$ .\" .Dd April 21, 2002 .Dt EXPAND 1 .Os .Sh 名称 .Nm expand , .Nm unexpand .Nd タブと空白文字の変換 .Sh 書式 .Nm expand .Oo .Fl t .Sm off .Ar tab1 , tab2 , ... , tabn .Sm on .Oc .Op Ar .Nm unexpand .Op Fl a .Oo .Fl t .Sm off .Ar tab1 , tab2 , ... , tabn .Sm on .Oc .Op Ar .Sh 解説 .Nm ユーティリティは、指定されたファイルまたは標準入力を読み込み、 タブを空白文字に変換して標準出力に出力します。 バックスペース文字はそのまま出力し、 同時にタブの計算に用いるカラム位置カウンタを一つ減じます。 .Nm ユーティリティは、 (ソートの前、特定のカラムに注目したいとき、など) タブを含んだテキストファイルの前処理用に便利です。 .Pp .Nm unexpand ユーティリティは、 .Nm とは逆に、空白文字をタブに戻します。デフォルトでは、 行頭の空白文字とタブだけを、できるだけ長いタブの並びに戻します。 .Pp オプションとしては以下のものがあります: .Bl -tag -width flag .It Fl a .Nm ( unexpand のみ)。 行頭でなくても、二つ以上の空白文字が続いており、空白文字をタブに置き換えれば サイズが圧縮されるような箇所はすべてタブに置き換えられます。 .It Fl t Sm Ar tab1 , tab2 , ... , tabn Sm コラム位置 .Ar tab1 , tab2 , ... , tabn にタブストップを設定します。 単一の数値が指定された場合、 デフォルト値の 8 の代りに、 その数値だけ離れたコラム位置にタブストップを設定します。 .El .Sh 環境変数 .Ev LANG , .Ev LC_ALL , .Ev LC_CTYPE の環境変数が、 .Xr environ 7 の記述通りに、 .Nm と .Nm unexpand の実行に影響します。 .Sh 診断 .Ex -std expand unexpand .Sh 規格 .Nm expand および .Nm unexpand のユーティリティは、 .St -p1003.1-2001 に適合しています。 .Sh 歴史 .Nm コマンドは .Bx 3.0 から登場しました。 diff --git a/ja_JP.eucJP/man/man1/expr.1 b/ja_JP.eucJP/man/man1/expr.1 index 6cb38d5b72..aa9dce3aee 100644 --- a/ja_JP.eucJP/man/man1/expr.1 +++ b/ja_JP.eucJP/man/man1/expr.1 @@ -1,262 +1,262 @@ .\" -*- nroff -*- .\" .\" Copyright (c) 1993 Winning Strategies, Inc. .\" All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by Winning Strategies, Inc. .\" 4. The name of the author may not be used to endorse or promote products -.\" derived from this software withough specific prior written permission +.\" 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/bin/expr/expr.1,v 1.25 2004/07/12 10:46:55 tjr Exp % .\" $FreeBSD$ .\" .Dd July 12, 2004 .Dt EXPR 1 .Os .Sh 名称 .Nm expr .Nd 式を評価する .Sh 書式 .Nm expr .Op Fl e .Ar expression .Sh 解説 .Nm ユーティリティは、与えられた式 .Ar expression を評価し、その結果を標準出力に書き出します。 .Pp すべての演算子およびオペランドは個別の引数として渡す必要があります。 演算子にはコマンドインタプリタにとって特別な意味を持つものがありますので、 適切にクォートする必要があります。 整数オペランドはすべて基数 10 として解釈されます。 .Pp 数値演算は、符号付き整数計算で行われます。 .Fl e フラグを指定すると、演算は C の .Vt intmax_t データ型 (使用可能な最大整数型) を使用し、 .Nm は数値あふれを検出するとエラー表示を返します。 整数に変換するとあふれるような大きさの数値オペランドが指定されると、 これは代りに文字列として解釈されます。 .Fl e を指定しないと、数値演算および整数引数の解釈は、 .Vt long データ型を使用し、C 標準のルールに従って黙って桁あふれを起します。 .Pp 以下に、使える演算子を優先度の低い順に示します。 すべて左結合です。 同じ優先度の演算子は、{ } で括ってあります。 .Bl -tag -width indent .It Ar expr1 Li | Ar expr2 .Ar expr1 が空の文字列でも 0 でもない場合は .Ar expr1 を評価した結果を返し、さもなければ .Ar expr2 を評価した結果を返します。 .It Ar expr1 Li & Ar expr2 .Ar expr1 と .Ar expr2 の各々の評価結果が、ともに空の文字列でも 0 でもない場合は .Ar expr1 を評価した結果を返し、さもなければ 0 を返します。 .It Ar expr1 Li "{=, >, >=, <, <=, !=}" Ar expr2 .Ar expr1 と .Ar expr2 がともに整数ならば整数としての比較結果を返し、さもなければ 文字列とみなして、ロカールに従った照合方法を用いた比較結果を 返します。 いずれの場合も、指定された関係が「真」ならば 1 を、「偽」ならば 0 を返します。 .It Ar expr1 Li "{+, -}" Ar expr2 整数値の引数に関して、加算あるいは減算した結果を返します。 .It Ar expr1 Li "{*, /, %}" Ar expr2 整数値の引数に関して、乗算、整数除算、または剰余の結果を返します。 .It Ar expr1 Li : Ar expr2 .Dq \&: 演算子は、 .Ar expr1 と .Ar expr2 のパターンマッチを行います。 .Ar expr2 は、正規表現でなければなりません。 またこの正規表現は、暗黙のうちに .Dq ^ が仮定されることにより、文字列の先頭から比較を始めることに なります。 .Pp パターンマッチが成功した場合、もし正規表現中に少なくとも1つ .Dq "\e(...\e)" の形の部分正規表現が含まれていたならば、このうち .Dq "\e1" に相当する文字列を返します。 このような部分正規表現が含まれていなければ、マッチした文字列の 長さを返します。 またパターンマッチが失敗した場合、もし部分正規表現が含まれて いたならば空の文字列を返し、含まれていない場合は 0 を返します。 .El .Pp 丸括弧 .Dq "()" は通常と同じくグループ分けに用いることができます。 .Pp .Nm ユーティリティは、 演算子かもしれない引数とオペランドかもしれない引数を字句的には区別しません。 字句的に演算子と等しいオペランドは、構文エラーと解釈されます。 回避方法については、後述の使用例を参照してください。 .Pp 一般に .Nm コマンドの構文は、歴史的なもので不便です。 新規アプリケーションでは、 .Nm の代りにシェルの数値演算を使用することをお勧めします。 .Ss 以前の実装との互換性 .Fx 4.x 互換性が有効にならない限り、本バージョンの .Nm は、 .Tn POSIX Utility Syntax Guidelines を支持します。 このガイドラインでは、マイナス記号が付いている先行引数は、 プログラムに対するオプションとみなすことが必要です。 標準の .Fl Fl 構文を使用し、このような解釈を避けられます。 しかしながら、以前の .Fx バージョンを含む多くの歴史的な .Nm 実装は、この構文を許しません。 正しい解釈を保証する可搬性のある方法については、 後述の使用例を参照してください。 .Xr check_utility_compat 3 関数 ( .Fa utility 引数を .Dq Li expr にします) を使用して、互換モードを有効にすべきかどうか判定できます。 可搬的でない使用方法を避けるように簡単にできないような複雑なスクリプトで .Nm が使用されている場合に、 移行およびデバッグのためにこの機能を使用することを意図しています。 互換モードを有効にすると、暗黙的に .Fl e オプションを有効にします。 これは、 .Fx における歴史的な .Nm の動作に合致するからです。 歴史的な理由で、環境変数 .Ev EXPR_COMPAT を定義しても互換モードが有効になります。 .Sh 環境変数 .Bl -tag -width ".Ev EXPR_COMPAT" .It Ev EXPR_COMPAT 設定すると、互換モードが有効になります。 .El .Sh 使用例 .Bl -bullet .It .Xr ( sh 1 構文での) 以下の例は、変数 .Va a に 1 を加えます: .Dl "a=$(expr $a + 1)" .It .Va a の値が負数だと、これは失敗します。 .Va a が負数の場合に .Nm コマンドへのオプションだと解釈されないようにするには、 この式を次のようにする必要があります: .Dl "a=$(expr 1 + $a)" .It より一般的には、負数となる可能性のある値は括弧で括ります: .Dl "a=$(expr \e( $a \e) + 1)" .It 以下の例は、変数 .Va a に設定されたパス名のうち、 ファイル名に当たる部分を表示します。 .Va a はパス .Pa / を表現している可能性があるので、 これが割り算の演算氏として解釈されないようにする必要があります。 .Li // 文字がこの曖昧性を解決します。 .Dl "expr \*q//$a\*q \&: '.*/\e(.*\e)'" .El .Pp 以下の例は、変数 .Va a に含まれる文字の数を返します。 繰り返しになりますが、 .Va a がハイフンで開始する可能性がある場合、 .Nm へのオプションとして解釈されることを避ける必要があります。 .Bl -bullet .It .Nm コマンドが .St -p1003.1-2001 に適合している場合、これは単純です: .Dl "expr -- \*q$a\*q \&: \*q.*\*q" .It 一方、古いシステムへも可搬とするためには、より複雑なコマンドが必要となります: .Dl "expr \e( \*qX$a\*q \&: \*q.*\*q \e) - 1" .El .Sh 診断 .Nm ユーティリティは、以下の値のうち1つを返して終了します。 .Bl -tag -width indent -compact .It 0 式は空文字列でも 0 でもない .It 1 式は空文字列か、0 であった .It 2 式が無効だった .El .Sh 関連項目 .Xr sh 1 , .Xr test 1 , .Xr check_utility_compat 3 .Sh 規格 .Nm expr ユーティリティは、互換モードが有効でない場合には、 .St -p1003.1-2001 に適合します。 .Fl e フラグは拡張です。 diff --git a/ja_JP.eucJP/man/man1/find.1 b/ja_JP.eucJP/man/man1/find.1 index 89ff30cc05..7088bd5632 100644 --- a/ja_JP.eucJP/man/man1/find.1 +++ b/ja_JP.eucJP/man/man1/find.1 @@ -1,936 +1,937 @@ +.\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)find.1 8.7 (Berkeley) 5/9/95 .\" %FreeBSD: src/usr.bin/find/find.1,v 1.70 2004/07/29 03:24:30 tjr Exp % .\" .\" $FreeBSD$ .Dd July 29, 2004 .Dt FIND 1 .Os .Sh 名称 .Nm find .Nd ディレクトリツリーを再帰的に下ってファイルを捜す .Sh 書式 .Nm .Op Fl H | Fl L | Fl P .Op Fl EXdsx .Op Fl f Ar pathname .Op Ar pathname ... .Ar expression .Sh 解説 .Nm ユーティリティは、 .Ar pathname に対してディレクトリツリーを再帰的に下って、 ツリー上の各ファイルについて .Ar expression (後に示す .Dq プライマリ と .Dq 演算子 から構成されます) で指定された処理を実行します。 .Pp オプションとしては以下のものがあります: .Bl -tag -width indent .It Fl E .Ic -regex および .Ic -iregex のオプションの後の正規表現を、 基本正規表現 (BRE) の代りに拡張 (最近の) 正規表現として解釈します。 .Xr re_format 7 マニュアルページは、両方のフォーマットを完全に解説しています。 .It Fl H コマンド行で指定したシンボリックリンクそれぞれに対する ファイル情報とファイルタイプ ( .Xr stat 2 参照) は、シンボリックリンク自体ではなく、 リンク先のファイルのものとなるようにします。 もしリンク先のファイルがなければ、 シンボリックリンク自体のものを使用します。 コマンド行で直接指定されたのではない シンボリックリンクのファイル情報は、 シンボリックリンク自体のものを使用します。 .It Fl L シンボリックリンクそれぞれに対する ファイル情報とファイルタイプ ( .Xr stat 2 参照) は、シンボリックリンク自体ではなく、 リンク先のファイルのものとなるようにします。 もしリンク先のファイルがなければ、 シンボリックリンク自体のものを使用します。 .Pp このオプションは、もはや推奨されない .Ic -follow プライマリと等価です。 .It Fl P シンボリックリンクそれぞれに対する ファイル情報とファイルタイプ ( .Xr stat 2 参照) は、シンボリックリンク自体のものとなるようにします。 これがデフォルトです。 .It Fl X .Xr xargs 1 と組み合わせた際に .Nm を安全に使えるようにします。 .Xr xargs 1 がデリミタ文字として扱う文字がファイル名に含まれる場合、 診断メッセージを標準エラー出力に表示して、 そのファイルをスキップします。 デリミタ文字は、 クォート .Pq Dq Li " ' " 、ダブルクォート .Pq Dq Li " \*q " 、バックスラッシュ .Pq Dq Li \e 、スペース、タブ、改行文字があります。 .Pp 効果的な代案として、 .Fl print0 プライマリを .Dq Nm xargs Fl 0 と共に使用することを検討すると良いかもしれません。 .It Fl d ファイルに対する処理順序を深さ優先の探索方式にします。 すなわち、ディレクトリ自体に 対する処理を行う前に、ディレクトリ内の個々のファイルに対して処理を 実行します。デフォルトでは、ディレクトリは最初に処理されます。 デフォルトの方式は幅優先探索方式では .Em ない ことに注意して下さい。 .Pp このオプションは .St -p1003.1-2001 の .Ic -depth プライマリと等価です。 .Fl d は、 .Nm を .Xr cpio 1 とともに使用する場合、 .Xr cpio 1 が通常でないパーミッションを持つディレクトリに存在する ファイルを処理する際に有益です。 このオプションにより、ファイルをディレクトリに置いている間は 書き込み許可が保持され、その後、最後にディレクトリのパーミッションが 設定されることが保証されます。 .It Fl f .Nm が探索するファイル階層を指定します。 ファイル階層は、本オプションの直後にオペランドとして続けて 指定することもできます。 .It Fl s .Nm がファイル階層を探索する際に、 辞書編集上の順に、すなわち各ディレクトリ内においてアルファベット順に、 辿らせるようにします。 注: .Ql find -s と .Ql "find | sort" とは異なった結果となる場合があります。 .It Fl x ディレクトリツリーを下って行くとき、下り始めのファイルが存在する デバイスのデバイス番号と異なるデバイス番号を持つディレクトリには 下らないようにします。 .Pp このオプションは、廃止された .Ic -xdev プライマリと同等のものです。 .El .Sh プライマリ .Bl -tag -width indent .It Ic -acl 他のオプションと組み合わせて、 拡張 ACL 属性を持つファイルの場所を示します。 これ以上の情報については .Xr acl 3 を参照してください。 .It Ic -amin Ar n 最後にファイルがアクセスされた時刻と、 .Nm を起動した時刻との差 (1 分単位で切り上げます) が .Ar n 分であれば、真とします。 .It Ic -anewer Ar file .Ic -neweram と同じです。 .It Ic -atime Ar n Ns Op Cm smhdw 単位を指定しない場合、 最後にファイルがアクセスされた時刻と、 .Nm を起動した時刻との差 (24 時間単位で切り上げます) が .Ar n 日であれば、真とします。 .Pp 単位を指定する場合、最後にファイルがアクセスされた時刻と、 .Nm を起動した時刻との差が正確に .Ar n 単位であれば、真とします。 可能な時間の単位は次の通りです: .Pp .Bl -tag -width indent -compact .It Cm s 秒 .It Cm m 分 (60 秒) .It Cm h 時間 (60 分) .It Cm d 日 (24 時間) .It Cm w 週 (7 日) .El .Pp いくつもの単位を組み合わせて 1 個の .Ic -atime 引数に使用可能であり、例えば .Dq Li "-atime -1h30m" とできます。 単位指定は、 .Cm + または .Cm - の修正子と組み合わせた場合のみ、おそらく有用でしょう。 .It Ic -cmin Ar n 最後にファイルのステータスが修正された時刻と、 .Nm を起動した時刻との差 (1 分単位で切り上げます) が .Ar n 分であれば、真とします。 .It Ic -cnewer Ar file .Ic -newercm と同じです。 .It Ic -ctime Ar n Ns Op Cm smhdw 単位を指定しない場合、最後にファイルのステータスが変更された時刻と、 .Nm を起動した時刻の差 (24 時間単位で切り上げます) が .Ar n 日であれば、真とします。 .Pp 単位を指定する場合、最後にファイルのステータスが変更された時刻と、 .Nm を起動した時刻との差が正確に .Ar n 単位であれば、真とします。 サポートされている時間の単位については、 .Ic -atime プライマリの記述を参照してください。 .It Ic -delete 見付けたファイルやディレクトリを消去します。常に真を返します。 現在の作業ディレクトリから .Nm は再帰的にディレクトリツリーを下ります。 セキュリティ上の理由から、 .Dq Pa \&. からの相対パス名に .Dq Pa / 文字を含むファイル名のファイルを 消去しようとはしません。 このオプションにより暗黙のうちに深さ優先の処理が指定されます。 .It Ic -depth 常に真です。 .Fl d オプションと同じです。 .It Ic -depth Ar n 探索の出発点からの深さが .Ar n である場合、真となります。 .It Ic -empty 現在のファイルまたはディレクトリが空の場合、真となります。 .It Ic -exec Ar utility Oo Ar argument ... Oc Li \&; .Ar utility で指定した名前のプログラムを実行し、終了コードが 0 の場合、真とします。 .Ar argument は、utility への引数として渡されます。 この指定は、最後に必ずセミコロン .Pq Dq Li \&; をつけてください。 .Nm をシェルから起動する場合、 そのシェルがセミコロンを制御オペレータと解釈する場合には、 セミコロンをクォートする必要があるかもしれません。 utility もしくは argument の指定 のなかで .Dq Li {} が使われていた場合は、その部分が、現在 .Nm が対象としているファイルのパス名に置き換えられます。 ただし、 .Ar utility が実行されるときのカレントディレクトリは、 .Nm が起動されたディレクトリのままです。 .Ar utility と .Ar arguments は、シェルのパターンと構造の更なる展開対象とはなりません。 .It Ic -exec Ar utility Oo Ar argument ... Oc Li {} + .Ic -exec と同じですが、各 .Ar utility の起動において .Dq Li {} はなるべく多くのパス名と置き換えられます。 この動作は .Xr xargs 1 のものに似ています。 .It Ic -execdir Ar utility Oo Ar argument ... Oc Li \&; .Ic -execdir プライマリは .Ic -exec プライマリと同様ですが、 .Ar utility が現在のファイルを持つディレクトリにおいて実行される点が異なります。 文字列 .Dq Li {} に対して置換されるファイル名は適切ではありません。 .It Ic -flags Oo Cm - Ns | Ns Cm + Oc Ns Ar flags , Ns Ar notflags フラグは、シンボル名 .Ns ( Xr chflags 1 参照) で指定します。 フラグの前に .Qq Li no を付けると .Ns ( Qq Li nodump は除きます)、 .Ar notflags と呼ばれます。 .Ar flags にあるフラグは設定されていることが検査され、 .Ar notflags にあるフラグは設定されていないことが検査されます。 これは、設定されているモードビットのみをユーザが指定可能な .Ic -perm とは異なることに注意してください。 .Pp フラグの前にダッシュ .Pq Dq Li - が付く場合、このプライマリは、ファイルのフラグビットのうち少なくとも .Ar flags 中の全ビットが設定されていて、 .Ar notflags 中のどのビットも設定されていない場合に真になります。 フラグの前にプラス .Pq Dq Li + が付く場合、このプライマリは、ファイルのフラグビットのうち .Ar flags のいずれかのビットが設定されているか、 .Ar notflags のいずれかのビットが設定されていない場合に真になります。 どちらでもない場合、このプライマリは、 .Ar flags のビットがファイルのフラグビットに完全に適合し、 .Ar flags のいずれもが .Ar notflags に適合しない場合に真になります。 .It Ic -fstype Ar type 対象ファイルが格納されているファイルシステムのタイプが、 .Ar type で指定されたものである場合に真となります。 .Xr sysctl 8 コマンドを使用して、 システム上で利用可能なファイルシステムタイプを調べることができます: .Pp .Dl "sysctl vfs" .Pp さらに、2 つの 擬似タイプ .Dq Li local と .Dq Li rdonly があります。 前者は、 .Nm を実行しているシステム上に物理的にマウントされているファイルシステムです。 後者は、読み取り専用でマウントされているファイルシステムです。 .It Ic -group Ar gname ファイルが .Ar gname で指定したグループに属している場合、真になります。 .Ar gname が数字で、そのようなグループ名がない場合は、 .Ar gname をグループ ID として扱います。 .It Ic -iname Ar pattern .Ic -name に似ていますが、大文字小文字を区別せずにマッチします。 .It Ic -inum Ar n ファイルの inode 番号が .Ar n なら、真になります。 .It Ic -ipath Ar pattern .Ic -path に似ていますが、大文字小文字を区別せずにマッチします。 .It Ic -iregex Ar pattern .Ic -regex に似ていますが、大文字小文字を区別せずにマッチします。 .It Ic -links Ar n ファイルのリンク数が .Ar n なら、真になります。 .It Ic -ls このプライマリは常に真になります。 対象となっているファイルの情報を標準出力に出力します。 出力する内容は inode 番号、 512 バイトブロックでのファイルの大きさ、 ファイルのパーミッション、ハードリンクの数、所有者、グループ、 バイトで表したファイルの大きさ、最後にファイルが修正された時刻、パス名です。 ファイルがブロック型もしくはキャラクタ型の特殊ファイルならば、 バイトで表したファイルの大きさの代わりにメジャー番号とマイナー番号を 出力します。 ファイルがシンボリックリンクならば、 .Dq Li -> の後にリンク先のファイルのパス名を表示します。 フォーマットは .Bk -words .Nm ls Fl dgils .Ek の出力結果と同じです。 .It Ic -maxdepth Ar n 常に真になります。 コマンド行引数の下、たかだか .Ar n ディレクトリレベルまで下ります。 .Ic -maxdepth プライマリが指定されている場合、(たとえ、通常なら評価されない場合でも) 式全体に適用されます。 .Ic -maxdepth Li 0 は、探索全体をコマンド行引数の範囲に制限します。 .It Ic -mindepth Ar n 常に真になります。 レベルが .Ar n 未満の場合、一切のテストとアクションは適用されません。 .Ic -mindepth プライマリが指定されている場合、(たとえ、通常なら評価されない場合でも) 式全体に適用されます。 .Ic -mindepth Li 1 は、コマンド行引数以外のすべてを処理します。 .It Ic -mmin Ar n 最後にファイルが修正された時刻と、 .Nm を起動した時刻との差 (1 分単位で切り上げます) が .Ar n 分であれば、真とします。 .It Ic -mnewer Ar file .Ic -newer と同じです。 .It Ic -mtime Ar n Ns Op Cm smhdw 単位を指定しない場合、最後にファイルが修正された時刻と、 .Nm を起動した時刻との差(24 時間単位で切り上げます)が .Ar n 日であれば、真とします。 .Pp 単位を指定する場合、最後にファイルが修正された時刻と、 .Nm を起動した時刻との差が正確に .Ar n 単位であれば、真とします。 サポートされている時間の単位については、 .Ic -atime プライマリの記述を参照してください。 .It Ic -name Ar pattern 対象ファイルのパス名の最後のファイル名部分が .Ar pattern で指定したものとマッチするかどうかを調べ、マッチした場合は真になります。 .Ar pattern としては、シェルで使われるパターンマッチ 指定 ( .Dq Li \&[ , .Dq Li \&] , .Dq Li * , .Dq Li \&? ) を使用することができます。 これらの文字は バックスラッシュ .Pq Dq Li \e を前において、パターンマッチ指定ではなく文字として 扱う事を明示することができます。 .It Ic -newer Ar file 対象ファイルの修正日付が、 .Ar file で指定したファイルのものより新しい場合は、真になります。 .It Ic -newer Ns Ar X Ns Ar Y Ar file 現在のファイルの最終アクセス時刻 .Ar ( X Ns = Ns Cm a ) ・ステータス修正時刻 .Ar ( X Ns = Ns Cm c ) ・内容修正時刻 .Ar ( X Ns = Ns Cm m ) が、 .Ar file の最終アクセス時刻 .Ar ( Y Ns = Ns Cm a ) ・ステータス修正時刻 .Ar ( Y Ns = Ns Cm c ) ・内容修正時刻 .Ar ( Y Ns = Ns Cm m ) より新しい場合は、真となります。 さらに .Ar Y Ns = Ns Cm t の場合、 .Ar file は代りに、 .Xr cvs 1 が理解する直接的な時刻指定として解釈されます。 .Ic -newermm は .Ic -newer と同じであることに注意してください。 .It Ic -nogroup 対象ファイルのグループが unknown の場合、真になります。 .It Ic -nouser 対象ファイルの所有者が unknown の場合、真になります。 .It Ic -ok Ar utility Oo Ar argument ... Oc Li \&; .Ic -ok プライマリは .Ic -exec とほぼ同じですが、 .Ar utility を実行するかどうかの確認をユーザに求め、端末にメッセージを出力します。 .Dq Li y 以外の返答をした場合は、 コマンドは実行されず、 .Ic -ok 式の値は偽になります。 .It Ic -okdir Ar utility Oo Ar argument ... Oc Li \&; .Ic -okdir プライマリは、 .Ic -execdir プライマリと同様ですが、 .Ic -ok プライマリのところで説明されたものと同じ例外事項が適用されます。 .It Ic -path Ar pattern 対象ファイルのパス名が、 .Ar pattern で指定したものとマッチするかどうかを調べ、 マッチした場合は真になります。 .Ar pattern としては、シェルで使われるパターンマッチ指定 .Dq ( Li \&[ , .Dq Li \&] , .Dq Li * , .Dq Li \&? ) を使用することができます。 これらの文字は バックスラッシュ .Pq Dq Li \e を前において、パターンマッチ指定ではなく文字として 明示的にマッチさせることができます。 スラッシュ .Pq Dq Li / は、通常文字として扱われますので、 明示的にマッチさせる必要はありません。 .It Ic -perm Oo Cm - Ns | Ns Cm + Oc Ns Ar mode ファイルのモードを、 .Ar mode と比較します。 .Ar mode は、シンボル 形式 ( .Xr chmod 1 参照) もしくは 8 進数形式で指定します。 .Ar mode がシンボル形式の場合は、 .Ar mode は 00000 から開始して、 プロセスのファイル生成マスクとは無関係に、 パーミッションのセットとクリアを行います。 .Ar mode が 8 進数形式の場合は、 ファイルのモードビットのうち、07777 .Pq Dv S_ISUID | S_ISGID | S_ISTXT | S_IRWXU | S_IRWXG | S_IRWXO の部分が比較対象になります。 .Ar mode の最初にダッシュ .Pq Dq Li - を指定した場合は、 .Ar mode でセットされているすべてのビットが ファイルのモードでもセットされていれば、このプライマリは真となります。 .Ar mode の最初にプラス .Pq Dq Li + を指定した場合は、 .Ar mode でセットされているビットのどれかがファイルのモードでもセットされていれば、 このプライマリは真となります。 どちらでもない場合、ファイルのモードと .Ar mode が完全に一致した場合にのみ真となります。 なお、 シンボル形式でモード指定をする場合は、最初の文字をダッシュ .Pq Dq Li - にできません。 .It Ic -print このプライマリは常に真になります。 対象となっているファイルのパス名を標準出力に出力して改行します。 .Ic -exec , -ls , -print0 , .Ic -ok のどのプライマリも指定されなかった場合は、 与えられた式 given expression は .Cm \&( Ar "given expression" Cm \&) Ic -print で置き換えられます。 .It Ic -print0 .Ic -print とほぼ同じですが、標準出力に対象となっているファイルのパス名を出力 したあと、改行ではなく、 .Tn ASCII NUL 文字 (文字コード 0) を出力します。 .It Ic -prune このプライマリは常に真になります。 対象となっているファイル配下のディレクトリに下りないようにします。 .Fl d オプションが指定されている場合は、 .Ic -prune プライマリの指定は無効になります。 .It Ic -regex Ar pattern ファイルのパス全体が、正規表現 .Ar pattern にマッチする場合、真になります。 ファイル名 .Dq Pa ./foo/xyzzy にマッチさせるには、 正規表現 .Dq Li ".*/[xyz]*" や .Dq Li ".*/foo/.*" が使えますが、 .Dq Li xyzzy や .Dq Li /foo/ は使えません。 .It Ic -size Ar n Ns Op Cm c ファイルサイズを 512 バイトのブロック単位で数えたとき (端数は切り上げ)、 .Ar n ブロックであれば真になります。 .Ar n のあとに .Cm c が指定されていた場合は、ファイルサイズが .Ar n バイト (文字) であれば真になります。 .It Ic -type Ar t ファイルタイプが .Ar t で指定されたタイプに一致すれば真になります。 タイプとして、次のような指定が可能です: .Pp .Bl -tag -width indent -compact .\" jpman project では special file を「特殊ファイル」と訳している。 .\" これにあわせて block special を「ブロックスペシャル」ではなく .\" 「ブロック特殊」とするのは違和感があるので、「ファイル」を補った。 .\" Kazuo Horikawa 1999/03/10 .It Cm b ブロック型特殊ファイル .It Cm c キャラクタ型特殊ファイル .It Cm d ディレクトリ .It Cm f 普通のファイル .It Cm l シンボリックリンク .It Cm p FIFO .It Cm s ソケット .El .It Ic -user Ar uname ファイルの所有者が、 .Ar uname で指定されたユーザと一致すれば真になります。 もし .Ar uname が数字で、そのようなユーザ名がなければ、 ユーザ ID が指定されたものとして扱います。 .El .Pp なお、数字を引数にとるプライマリは、 数字の前にプラス .Pq Dq Li + およびマイナス .Pq Dq Li \- をつけることができます。 それぞれ .Dq n より大 および .Dq n より小 の意味になり、 .Dq 正確に n という意味ではなくなります。 .Sh 演算子 以下の演算子を使って、プライマリを組み合わせることができます。 演算子は優先度が下がる順番で示されています。 .Pp .Bl -tag -width "( expression )" -compact .It Cm \&( Ar expression Cm \&) もし、括弧内の .Ar expression が真なら、真になります。 .Pp .It Cm \&! Ar expression .It Cm -false Ar expression .It Cm -not Ar expression 単項否定演算子 .Pq Tn NOT です。 .Ar expression が偽なら、真となります。 .Pp .It Ar expression Cm -and Ar expression .It Ar expression expression .Cm -and 演算子は論理積 .Pq Tn AND です。 式 2 個を並置することが意味するところとして、 この演算子をわざわざ指定する必要はありません。 両方の式がともに真のとき、この式の評価が真になります。 最初の式が偽ならば、2 番目の式は評価されません。 .Pp .It Ar expression Cm -or Ar expression .Cm -or 演算子は論理和 .Pq Tn OR です。 最初の式が真か、2 番目の式が真であるとき、この式の評価が真になります。 最初の式が真ならば、2 番目の式は評価されません。 .El .Pp 演算子とプライマリのすべては .Nm の個別の引数として与える必要があります。 プライマリ自身が引数を取る場合、その引数も .Nm の個別の引数として与える必要があります。 .Sh 使用例 コマンドラインからのタイプ例です。 .Bl -tag -width indent .It Li "find / \e! -name \*q*.c\*q -print" ファイル名の終わりが .Pa .c でない全ファイルを表示します。 .It Li "find / -newer ttt -user wnj -print" .Pa ttt というファイルより新しく 所有者が .Dq wnj である全ファイルを表示します。 .It Li "find / \e! \e( -newer ttt -user wnj \e) -print" .Pa ttt というファイルより古く所有者が .Dq wnj であるという条件が成立しない、全ファイルを表示します。 .It Li "find / \e( -newer ttt -or -user wnj \e) -print" .Pa ttt というファイルより新しいか、 所有者が .Dq wnj である、全ファイルを表示します。 .It Li "find / -newerct '1 minute ago' -print" inode 修正時刻が現在から 1 分以内の全ファイルを表示します。 .It Li "find / -type f -exec echo {} \e;" ファイルすべてのリストを出力するために、 .Xr echo 1 コマンドを使います。 .It Li "find -L /usr/ports/packages -type l -delete" .Pa /usr/ports/packages にある壊れたシンボリックリンクのすべてを削除します。 .It Li "find /usr/src -name CVS -prune -o -depth +6 -print" 作業ディレクトリ .Pa /usr/src の中で、少なくとも 7 レベル以上の深さのファイルとディレクトリを 探索します。 .It Li "find /usr/src -name CVS -prune -o -mindepth 7 -print" これは 1 つ前の例と同等ではありません。 というのは、 .Ic -prune がレベル 7 以下では評価されないからです。 .El .Sh 互換性 .Ic -follow プライマリは廃止されました。 かわりに .Fl L オプションを使用して下さい。 詳しくは下記の .Sx 規格 セクションを参照して下さい。 .Sh 関連項目 .Xr chflags 1 , .Xr chmod 1 , .Xr cvs 1 , .Xr locate 1 , .Xr whereis 1 , .Xr which 1 , .Xr xargs 1 , .Xr stat 2 , .Xr acl 3 , .Xr fts 3 , .Xr getgrent 3 , .Xr getpwent 3 , .Xr strmode 3 , .Xr re_format 7 , .Xr symlink 7 .Sh 規格 .Nm ユーティリティの文法は .St -p1003.1-2001 の仕様で決められた文法のスーパセットです。 .Pp .Ic -H , .Ic -L を除く全 1 文字オプションと .\" .Ic -iname , -inum , -iregex , -print0 , -delete , -ls , .\" ja-groff-0.100_3 で整形できないためマクロ使用方法を変えています .Ic -iname , .Ic -inum , .Ic -print0 , .Ic -delete , .Ic -ls , .Ic -regex のプライマリは .St -p1003.1-2001 に対する拡張です。 .Pp 昔は .Fl d , L , x のオプションは それぞれ .Ic -depth , -follow , -xdev のプライマリを 用いて実装されていました。 これらのプライマリは常に真に評価されていました。 これらのプライマリは 探索が始まる前に効果を与える本当のグローバル変数であったので、 いくつかの合法的な expression が予期しない結果となりました。 一例として .Ic -print Cm -o Ic -depth の expression があります。 .Ic -print が常に真に評価されるため 標準の評価の順番では .Ic -depth は決して評価されないはずですが、 そうではありませんでした。 .Pp 演算子の .Cm -or は .Cm -o として実装されていました。 演算子の .Cm -and は .Cm -a として実装されていました。 .Pp 昔の実装では .Ic -exec と .Ic -ok のプライマリでは、 utility 名やその引数中において、 空白以外の文字が前後に続く .Dq Li {} を置き換えませんでした。 このバージョンでは utility 名やその引数のどの場所に .Dq Li {} が現れても 置き換えます。 .Pp .Fl E オプションは、 .Xr grep 1 および .Xr sed 1 の同等のオプションから着想を得て実装されました。 .Sh 歴史 .Nm コマンドは .At v1 ではじめて出現しました。 .Sh バグ .Nm によって使われる特殊文字は多くのシェルプログラムにとっても 特殊文字です。 特に .Dq Li * , .Dq Li \&[ , .Dq Li \&] , .Dq Li \&? , .Dq Li \&( , .Dq Li \&) , .Dq Li \&! , .Dq Li \e , .Dq Li \&; は、 シェルからエスケープされなくてはならないでしょう。 .Pp オプションとファイル名との間および ファイル名と .Ar expression との間を区切るデリミタが存在しませんので、 .Pa -xdev や .Pa \&! を指定することは難しいです。 この問題に対処するには、 .Fl f オプションを使うか、 .Xr getopt 3 で使われるオプション指定の終了記号 .Dq Fl Fl を使用します。 .Pp .Ic -delete プライマリは、ファイルシステムツリーの探索オプションを変更する 他のオプションとは十分には連係しません。 .Pp (上で記したように) .Ic -mindepth と .Ic -maxdepth プライマリは実際にはグローバルオプションです。 これらをオプションらしく見えるオプションと置き換えるべきでしょう。 diff --git a/ja_JP.eucJP/man/man1/gcc.1 b/ja_JP.eucJP/man/man1/gcc.1 index 9f89bdeeb5..cb98a7b986 100644 --- a/ja_JP.eucJP/man/man1/gcc.1 +++ b/ja_JP.eucJP/man/man1/gcc.1 @@ -1,4136 +1,4147 @@ .\" %FreeBSD: src/contrib/gcc/gcc.1,v 1.19 2003/06/25 16:12:05 obrien Exp % .\" Copyright (c) 1991, 1992, 1993, 1994 Free Software Foundation -*-Text-*- .\" See section COPYING for conditions for redistribution .\" .\" $FreeBSD$ .\" Set up \*(lq, \*(rq if -man hasn't already set it up. .if @@\*(lq@ \{\ . ds lq " . if t .ds lq `` . if !@@\(lq@ .ds lq "\(lq .\} .if @@\*(rq@ \{\ . ds rq " . if t .ds rq '' . if !@@\(rq@ .ds rq "\(rq .\} .de Id .ds Rv \\$3 .ds Dt \\$4 .. .de Sp .if n .sp .if t .sp 0.4 .. .Id %Id: gcc.1,v 1.9 1998/12/16 20:55:57 law Exp % .TH GCC 1 "\*(Dt" "GNU Tools" "GNU Tools" .SH 名称 gcc, g++ \- GNU プロジェクト C および C++ コンパイラ (gcc-3.2.1) .SH 書式 .B gcc .RI "[ " option " | " filename " ].\|.\|." .br +.B g++ +.RI "[ " option " | " filename " ].\|.\|." .SH 注意 このマニュアルに書かれた情報は GNU C コンパイラの完全な ドキュメンテーションからの抜粋であり、オプションの意味の記述にとどめます。 .PP このマニュアルはボランティアのメンテナンスが行なわれた時にのみ更新され るもので、常に最新の情報を示しているわけではありません。 もしこのマニュアルと実際のソフトウェアの間に矛盾点があれば、 正式なドキュメントである Info ファイルのほうを参照して下さい。 .PP このマニュアル中の古い記述が重大な混乱や不具合をきたすことになれば、 このマニュアルページの配布は中止します。 GNU CCのメンテナンス作業の都合上、 Info ファイルを更新した時にマニュアルページも併せて更新することは できません。マニュアルページは時代遅れであり、 これに時間をかけるべきではないと GNU プロジェクトでは考えています。 .PP 完全な最新のドキュメンテーションが必要な場合は、Info ファイルの`\|\c .B gcc\c \&\|' またはマニュアルの .I Using and Porting GNU CC (for version 2.0)\c \& を参照して下さい。この双方は Texinfo のソースファイル .B gcc.texinfo から生成されます。 .SH 解説 C と C++ のコンパイラは統合されています。どちらの場合も、入力ファイル は、プリプロセス、コンパイル、アセンブル、リンクの 4 つの処理ステージの うちの 1 つ以上のステージを踏んで処理されます。 ソースファイル名の拡張子によってソースの言語を識別しますが、 デフォルトの動作は、どちらの名前でコンパイラを使うかに依存しています: .TP .B gcc プリプロセス済みの (\c .B .i\c \&) ファイルを C のファイルと仮定し、C スタイルのリンクを行います。 .TP .B g++ プリプロセス済みの(\c .B .i\c \&) ファイルを C++ のファイルと仮定し、C++ スタイルのリンクを行います。 .PP ソースファイル名の拡張子は、その言語が何であるかと、どのような処理が行われる べきかを示します: .Sp .nf .ta \w'\fB.cxx\fP 'u \&\fB.c\fP C言語ソースです。プリプロセッサ、コンパイラ、アセンブラにかけられます。 \&\fB.C\fP C++言語ソースです。プリプロセッサ、コンパイラ、アセンブラにかけられます。 \&\fB.cc\fP C++言語ソースです。プリプロセッサ、コンパイラ、アセンブラにかけられます。 \&\fB.cxx\fP C++言語ソースです。プリプロセッサ、コンパイラ、アセンブラにかけられます。 \&\fB.m\fP Objective-C 言語ソースです。プリプロセッサ、コンパイラ、アセンブラにかけられます。 \&\fB.i\fP プリプロセッサにかけられたC言語ソースです。コンパイラ、アセンブラにかけられます。 \&\fB.ii\fP プリプロセッサにかけられたC++言語ソースです。コンパイラ、アセンブラにかけられます。 \&\fB.s\fP アセンブリ言語ソースです。アセンブラにかけられます。 \&\fB.S\fP アセンブリ言語ソースです。プリプロセッサ、アセンブラにかけられます。 \&\fB.h\fP プリプロセッサファイルです。通常はコマンドラインには現れません。 .Sp .fi その他の拡張子を持つファイルはリンカに渡されます。以下のものがあります。 .Sp .nf \&\fB.o\fP オブジェクトファイルです。 \&\fB.a\fP アーカイブファイルです。 .br .fi .Sp リンクは、オプション .BR \-c , .BR \-S , .B \-E を指定して抑制しないかぎり(もしくはコンパイルエラーによってすべての処理が中断 しないかぎり)、常に最終ステージで実行されます。 リンクのステージにおいては、ソースファイルに対応した全ての .B .o ファイルと、 .B \-l で指定したライブラリと、認識されなかったファイル名 (名前に .B .o のついたオブジェクトファイルや .B .a のついたアーカイブを含む) は、 コマンドラインに並べられた順番でリンカに渡されます。 .SH オプション オプションは分割されていなければなりません。すなわち `\|\c .B \-dr\c \&\|' は `\|\c .B \-d \-r \&\|'とは異なった扱いを受けます。 .PP ほとんどの `\|\c .B \-f\c \&\|' と `\|\c .B \-W\c \&\|' 形式のオプションには、 .BI \-f name と .BI \-fno\- name\c \& (または .BI \-W name と .BI \-Wno\- name\c \&) の形式の、対照的な表現があります。ここではデフォルトでない形式の みを示します。 .PP すべてのオプションを種類別に分けてまとめました。詳しい解説は 以下の節で行ないます。 .hy 0 -.SH FreeBSD 固有のオプション +.na .TP -.BI "\-pthread" -スレッド化ユーザプロセスに libc の代りに libc_r をリンクします。 -.SH 全体的なオプション +.B 全体的なオプション .br \-c \-S \-E .RI "\-o " file \-pipe \-v .RI "\-x " language .TP .B 言語オプション \-ansi \-fall\-virtual \-fcond\-mismatch \-fdollars\-in\-identifiers \-fenum\-int\-equiv \-fexternal\-templates \-fno\-asm \-fno\-builtin \-fhosted \-fno\-hosted \-ffreestanding \-fno\-freestanding \-fno\-strict\-prototype \-fsigned\-bitfields \-fsigned\-char \-fthis\-is\-variable \-funsigned\-bitfields \-funsigned\-char \-fwritable\-strings \-traditional \-traditional\-cpp \-trigraphs .TP .B 警告オプション \-fsyntax\-only \-pedantic \-pedantic\-errors \-w \-W \-Wall \-Waggregate\-return \-Wcast\-align \-Wcast\-qual \-Wchar\-subscript \-Wcomment \-Wconversion \-Wenum\-clash \-Werror \-Wformat .RI \-Wid\-clash\- len \-Wimplicit \-Wimplicit\-int \-Wimplicit\-function\-declaration \-Winline \-Wlong\-long \-Wmain \-Wmissing\-prototypes \-Wmissing\-declarations \-Wnested\-externs \-Wno\-import \-Wparentheses \-Wpointer\-arith \-Wredundant\-decls \-Wreturn\-type \-Wshadow \-Wstrict\-prototypes \-Wswitch \-Wtemplate\-debugging \-Wtraditional \-Wtrigraphs \-Wuninitialized \-Wunused \-Wwrite\-strings .TP .B デバッグオプション \-a .RI \-d letters \-fpretend\-float \-g .RI \-g level \-gcoff \-gxcoff \-gxcoff+ \-gdwarf \-gdwarf+ \-gstabs \-gstabs+ \-ggdb \-p \-pg \-save\-temps .RI \-print\-file\-name= library \-print\-libgcc\-file\-name +.RI \-print\-prog\-name= program .TP .B 最適化オプション \-fcaller\-saves \-fcse\-follow\-jumps \-fcse\-skip\-blocks \-fdelayed\-branch \-felide\-constructors \-fexpensive\-optimizations \-ffast\-math \-ffloat\-store \-fforce\-addr \-fforce\-mem \-finline\-functions \-fkeep\-inline\-functions \-fmemoize\-lookups \-fno\-default\-inline \-fno\-defer\-pop \-fno\-function\-cse \-fno\-inline \-fno\-peephole \-fomit\-frame\-pointer \-frerun\-cse\-after\-loop \-fschedule\-insns \-fschedule\-insns2 \-fstrength\-reduce \-fthread\-jumps \-funroll\-all\-loops \-funroll\-loops \-O \-O2 \-O3 \-O0 \-Os .TP .B プリプロセッサオプション .RI \-A assertion \-C \-dD \-dM \-dN .RI \-D macro [\|= defn \|] \-E \-H .RI "\-idirafter " dir .RI "\-include " file .RI "\-imacros " file .RI "\-iprefix " file .RI "\-iwithprefix " dir \-M \-MD \-MM \-MMD \-nostdinc \-P .RI \-U macro \-undef .TP .B アセンブラオプション .RI \-Wa, option .TP .B リンカオプション .RI \-l library \-nostartfiles \-nostdlib \-static \-shared \-symbolic .RI "\-Xlinker\ " option .RI \-Wl, option .RI "\-u " symbol .TP .B ディレクトリオプション .RI \-B prefix .RI \-I dir \-I\- .RI \-L dir .TP .B ターゲットオプション .RI "\-b " machine .RI "\-V " version .TP .B コンフィギュレーション依存オプション .I M680x0\ オプション .br \-m68000 \-m68020 \-m68020\-40 \-m68030 \-m68040 \-m68881 \-mbitfield \-mc68000 \-mc68020 \-mfpa \-mnobitfield \-mrtd \-mshort \-msoft\-float .Sp .I VAX オプション .br \-mg \-mgnu \-munix .Sp .I SPARC オプション .br \-mepilogue \-mfpu \-mhard\-float \-mno\-fpu \-mno\-epilogue \-msoft\-float \-msparclite \-mv8 \-msupersparc \-mcypress .Sp .I Convex オプション .br \-margcount \-mc1 \-mc2 \-mnoargcount .Sp .I AMD29K オプション .br \-m29000 \-m29050 \-mbw \-mdw \-mkernel\-registers \-mlarge \-mnbw \-mnodw \-msmall \-mstack\-check \-muser\-registers .Sp .I M88K オプション .br \-m88000 \-m88100 \-m88110 \-mbig\-pic \-mcheck\-zero\-division \-mhandle\-large\-shift \-midentify\-revision \-mno\-check\-zero\-division \-mno\-ocs\-debug\-info \-mno\-ocs\-frame\-position \-mno\-optimize\-arg\-area \-mno\-serialize\-volatile \-mno\-underscores \-mocs\-debug\-info \-mocs\-frame\-position \-moptimize\-arg\-area \-mserialize\-volatile .RI \-mshort\-data\- num \-msvr3 \-msvr4 \-mtrap\-large\-shift \-muse\-div\-instruction \-mversion\-03.00 \-mwarn\-passed\-structs .Sp .I RS6000 オプション .br \-mfp\-in\-toc \-mno\-fop\-in\-toc .Sp .I RT オプション .br \-mcall\-lib\-mul \-mfp\-arg\-in\-fpregs \-mfp\-arg\-in\-gregs \-mfull\-fp\-blocks \-mhc\-struct\-return \-min\-line\-mul \-mminimum\-fp\-blocks \-mnohc\-struct\-return .Sp .I MIPS オプション .br \-mcpu=\fIcpu type\fP \-mips2 \-mips3 \-mint64 \-mlong64 \-mlonglong128 \-mmips\-as \-mgas \-mrnames \-mno\-rnames \-mgpopt \-mno\-gpopt \-mstats \-mno\-stats \-mmemcpy \-mno\-memcpy \-mno\-mips\-tfile \-mmips\-tfile \-msoft\-float \-mhard\-float \-mabicalls \-mno\-abicalls \-mhalf\-pic \-mno\-half\-pic \-G \fInum\fP \-nocpp .Sp .I i386 オプション .br \-m386 \-m486 \-mpentium \-mpentiumpro \-mno\-486 \-mcpu=\fIcpu type\fP \-march=\fIcpu type\fP \-msoft\-float \-mrtd \-mregparm \-msvr3\-shlib \-mno\-ieee\-fp \-mno\-fp\-ret\-in\-387 \-mfancy\-math\-387 \-mno\-wide\-multiply \-mdebug\-addr \-mno\-move \-mprofiler\-epilogue \-reg\-alloc=LIST .Sp .I HPPA オプション .br \-mpa\-risc\-1\-0 \-mpa\-risc\-1\-1 \-mkernel \-mshared\-libs \-mno\-shared\-libs \-mlong\-calls \-mdisable\-fpregs \-mdisable\-indexing \-mtrailing\-colon .Sp .I i960 オプション .br \-m\fIcpu-type\fP \-mnumerics \-msoft\-float \-mleaf\-procedures \-mno\-leaf\-procedures \-mtail\-call \-mno\-tail\-call \-mcomplex\-addr \-mno\-complex\-addr \-mcode\-align \-mno\-code\-align \-mic\-compat \-mic2.0\-compat \-mic3.0\-compat \-masm\-compat \-mintel\-asm \-mstrict\-align \-mno\-strict\-align \-mold\-align \-mno\-old\-align .Sp .I DEC Alpha オプション .br \-mfp\-regs \-mno\-fp\-regs \-mno\-soft\-float \-msoft\-float .Sp .I System V オプション .br \-G \-Qy \-Qn .RI \-YP, paths .RI \-Ym, dir .TP .B コード生成オプション .RI \-fcall\-saved\- reg .RI \-fcall\-used\- reg .RI \-ffixed\- reg \-finhibit\-size\-directive \-fnonnull\-objects \-fno\-common \-fno\-ident \-fno\-gnu\-linker \-fpcc\-struct\-return \-fpic \-fPIC \-freg\-struct\-return \-fshared\-data \-fshort\-enums \-fshort\-double \-fvolatile \-fvolatile\-global \-fverbose\-asm .ad b .hy 1 +.SH FreeBSD 固有のオプション +.TP +.BI "\-pthread" +スレッド化ユーザプロセスに libc の代りに libc_r をリンクします。 .SH 全体的なオプション .TP .BI "\-x " "language" このオプションに続く入力ファイルの言語を .I language\c \& であると明示的に指定します (拡張子に基づくデフォルトの選択よりも優先されます)。このオプションは、 次の `\|\c .B \-x\c \&\|' オプションが出てくるまで、後続する全ての入力ファイルに対して 適用されます。\c .I language\c \& としては、 `\|\c .B c\c \&\|', `\|\c .B objective\-c\c \&\|', `\|\c .B c\-header\c \&\|', `\|\c .B c++\c \&\|', `\|\c .B cpp\-output\c \&\|', `\|\c .B assembler\c \&\|', `\|\c .B assembler\-with\-cpp\c \&\|' を指定することが可能です。 .TP .B \-x none 言語の指定を解除します。このオプションのあとに続くファイルは、それらの拡張子に 基づいて (あたかも何の `\|\c .B \-x\c \&\|' オプションも使用されたことがないように) 処理されます。 .PP もし、4 つのステージ (プリプロセス、コンパイル、アセンブル、リンク) の うちの一部のみが必要な場合は、 `\|\c .B \-x\c \&\|' オプション (またはファイル名の拡張子) を使用して \c .B gcc\c \& に対してどのステージから開始するかを伝え、さらに `\|\c .B \-c\c \&\|', `\|\c .B \-S\c \&\|', `\|\c .B \-E\c \&\|' のオプションのうちのどれかを使用して .B gcc\c \& に対してどこで処理を停止させるかを指定します。ここで、 いくつかの組み合わせ (例えば `\|\c .B \-x cpp\-output \-E\c \&\|') は \c .B gcc\c \& に対して何の動作も行なわないように指定することになることに注意してください。 .TP .B \-c ソースファイルを、コンパイルまたはアセンブルまではしますが、リンクはしません。 コンパイラの出力は、それぞれのソースファイルに対応したオブジェクトファイル となります。 .Sp デフォルトでは、GCC はオブジェクトファイルのファイル名として、 ソースファイルの拡張子 `\|\c .B .c\c \&\|', `\|\c .B .i\c \&\|', `\|\c .B .s\c \&\|' 等を `\|\c .B .o\c \&\|' で置き換えたものを使用します。 .B \-o\c \& オプションを使用することによって、他の名前を指定することも可能です。 .Sp GCC は .B \-c オプションを使用した場合は、理解できない入力ファイル (コンパイルやアセンブル を必要としないファイル) を無視します。 .TP .B \-S コンパイルが終った所で処理を停止し、アセンブルは行いません。 アセンブラコードではない入力ファイルが指 定された場合は、出力はアセンブラコードのファイルになります。 .Sp デフォルトでは、GCC はアセンブラファイルのファイル名として、 ソースファイルの拡張子 `\|\c .B .c\c \&\|', `\|\c .B .i\c \&\|' 等を `\|\c .B .s\c \&\|' で置き換えたものを使用します。 .B \-o\c \& オプションを使用することによって、他の名前を指定することも可能です。 .Sp GCC はコンパイルを必要としない入力ファイルを全て無視します。 .TP .B \-E プリプロセス処理が終了したところで停止します。コンパイルはしません。 出力はプリプロセス済みのソースコードであり、標準出力へと送られます。 .Sp GCC はプリプロセスを必要としない入力ファイルを全て無視します。 .TP .BI "\-o " file 出力先を \c .I file\c \& に指定します。このオプションは GCC が実行可能ファイル、 オブジェクトファイル、アセンブラファイル、プリプロセス済み C コードなどの、 いかなる種類の出力を行なう場合にも適用可能です。 .Sp 出力ファイルは 1 つしか指定できないため、 `\|\c .B \-o\c \&\|' を複数の入力ファイルをコンパイルする際に使用することは、実行ファ イルを出力する時以外は無意味です。 .Sp `\|\c .B \-o\c \&\|'オプションを指定しなかった場合のデフォルトは、実行ファイルを作る場 合は `\|\c .B a.out\c \&\|' という名前であり、`\|\c .I source\c .B \&.\c .I suffix\c \&\c \&\|' の形式のファイル名を持ったソースファイルのオブジェクトファイルは `\|\c .I source\c .B \&.o\c \&\|' であり、アセンブラのファイルは `\|\c .I source\c .B \&.s\c \&\|' です。 プリプロセス済みの C 言語は、全て標準出力に送られます。 .TP .B \-v (標準エラー出力に対して) コンパイルの各ステージで実行されるコマンドを 表示します。コンパイラドライバ、プリプロセッサおよび本来のコンパイラの 各バージョン番号も表示します。 .TP .B -pipe コンパイル時のステージの間のデータの受け渡しに、テンポラリファイルではなく パイプを使用します。いくつかのシステムではアセンブラがパイプからの入力を受け 付けることができないために、このオプションを指定すると失敗します。 GNU アセンブラでは問題なく使用できます。 .PP .SH 言語オプション .TP 以下のオプションは、コンパイラが受け付ける C の方言に関する制御を行ないます: .TP .B \-ansi 全ての ANSI 標準の C プログラムをサポートします。 .Sp このオプションは、GNU C が持つ ANSI C との非互換な機能を全て排除します。 例えば、\c .B asm\c \&, \c .B inline\c \&, \c .B typeof などのキーワードや、\c .B unix\c \& や \c .B vax などの現在使用しているシステムを規定する定義済みマクロなどが抑制されます。 さらに、好ましくなくかつほとんど使用されない ANSI のトライグラフの機能を使 用可能とし、さらに `\|\c .B $\c \&\|' を識別子の一部として使用できないようにします。 .Sp 代替キーワードである\c .B _\|_asm_\|_\c \&, \c .B _\|_extension_\|_\c \&, .B _\|_inline_\|_\c \&, \c .B _\|_typeof_\|_\c \& は、 `\|\c .B \-ansi\c \&\|' が指定された場合でも使用することが可能です。もちろん、 これらを ANSI C プログラムで使用することが望ましくないのは当然ですが、`\|\c .B \-ansi\c \&\|' をつけてコンパイルされる場合でも、インクルードされるヘッダファイル中に これらが記述できるということは有用です。 \c .B _\|_unix_\|_\c \& や \c .B _\|_vax_\|_\c \& などの代替定義済みマクロは、 `\|\c .B \-ansi\c \&\|' を指定する場合でも指定しない場合でも、利用可能となっています。 .Sp `\|\c .B \-ansi\c \&\|' オプションは、ANSI 準拠でないプログラムを不必要に拒否することは ありません。もしこのような動作を行なわせたい場合には`\|\c .B \-ansi\c \&\|'に加えて\c .B \-pedantic\c \&\|' オプションを指定する必要があります。 .Sp プリプロセッサ定義済みマクロ \c .B _\|_STRICT_ANSI_\|_\c \& が `\|\c .B \-ansi\c \&\|' オプションを使用した際には定義されます。いくつかのヘッダファイルは、この マクロを識別して、ANSI 標準が望まない関数やマクロの定義を抑制します。 これは、 それらの関数やマクロと同じ名前を別の目的で使用するプログラム を混乱させないようにするためです。 .TP .B \-fno\-asm \c .B asm\c \&, \c .B inline\c \&, \c .B typeof\c \& をキーワードとして解釈しません。 これらの単語は識別子として解釈されるようになります。これらの代用として \c .B _\|_asm_\|_\c \&, \c .B _\|_inline_\|_\c \&, \c .B _\|_typeof_\|_\c \& が使用できます。 `\|\c .B \-ansi\c \&\|' を指定すると、暗黙のうちに `\|\c .B \-fno\-asm\c \&\|' を指定したものとみなされます。 .TP .B \-fno\-builtin ビルトイン関数のうち、2 つのアンダスコアで始まるもの以外を認識しなくなり ます。現在、この指定は\c .B _exit\c \&, .B abort\c \&, \c .B abs\c \&, \c .B alloca\c \&, \c .B cos\c \&, \c .B exit\c \&, .B fabs\c \&, \c .B labs\c \&, \c .B memcmp\c \&, \c .B memcpy\c \&, \c .B sin\c \&, .B sqrt\c \&, \c .B strcmp\c \&, \c .B strcpy\c \&, \c .B strlen\c \& の関数に影響を及ぼします。 .Sp `\|\c .B \-ansi\c \&\|' オプションを指定すると、\c .B alloca\c \& と \c .B _exit\c \& はビルトイン関数として扱われなくなります。 .TP .B \-fhosted ホスト実行環境 (hosted environment) 用にコンパイルを行います。 これにより、`\|\c .B \-fbuiltin\c \&\|' オプションが有効になり、また、不審な .B main\c \& 宣言に対して警告を発するようになります。 .TP .B \-ffreestanding フリースタンディング実行環境 (freestanding environment) 用に コンパイルを行います。 これにより、`\|\c .B \-fno-builtin\c \&\|' オプションが有効になり、また、 .B main\c \& に特別な条件は不要とみなします。 .TP .B \-fno\-strict\-prototype `\|\c .B int foo ();\c \&\|' のような、引数を指定しない関数宣言を、C 言語のように引数の数や 型について何の仮定もしないという扱いにします (C++ のみ)。通常はこのよう な宣言は、C++ では \c .B foo\c \& という関数が 1 つも引数をとらないことを意味します。 .TP .B \-trigraphs ANSI C のトライグラフを使用可能とします。`\|\c .B \-ansi\c \&\|' オプションを指定すると、暗黙のうちに `\|\c .B \-trigraphs\c \&\|' を指定したものとみなされます。 .TP .B \-traditional 伝統的な C コンパイラのいくつかの特徴をサポートします。詳しくは GNU C の マニュアルを参照してください。以前はここにそのリストの複製を載せていましたが、 それらが完全に時代遅れになった時に我々に文句が来ないように削除してしまいま した。 .Sp しかし、C++ のプログラムだけについて (C ではありません) 特記しておくこと が 1 つあります。 `\|\c .B \-traditional\c \&\|' オプションは C++ に対して 1 つだけ特別な効果を持ちます。それは、 .B this への代入を許可するというものです。これは `\|\c .B \-fthis\-is\-variable\c \&\|'オプションの指定が及ぼす効果と同一のものです。 .TP .B \-traditional\-cpp 伝統的な C プリプロセッサのいくつかの特徴をサポートします。これは上に挙 げた中で特にプリプロセッサに関係したものを含みますが、 `\|\c .B \-traditional\c \&\|' の指定によって引き起こされる以外の効果を及ぼすことはありません。 .TP .B \-fdollars\-in\-identifiers 識別子中の `\|\c .B $\c \&\|' の使用を許可します (C++ のみ)。 `\|\c .B \-fno\-dollars\-in\-identifiers\c \&\|' を使用することによって、明示的に `\|\c .B $\c \&\|'の使用を禁止することも可能です。(GNU C++ では、デフォルトで `\|\c .B $\c \&\|' を許可しているシステムと禁止しているシステムがあります)。 .TP .B \-fenum\-int\-equiv \c .B int\c \& から列挙型への暗黙の変換を許可します (C++ のみ)。通常は GNU C++ は \c .B enum\c \& から \c .B int\c \& への変換は許可していますが、 逆は許していません。 .TP .B \-fexternal\-templates テンプレート関数について、その関数が定義された場所にのみ単一のコピー を生成することによって、テンプレート宣言に対してより小さなコードを生成 します (C++ のみ)。このオプションを使用して正しいコードを得るためには、 テンプレートを使用する全てのファイルにおいて、`\|\c .B #pragma implementation\c \&\|' (定義) または `\|\c .B #pragma interface\c \&\|' (宣言) を記述しておく必要があります。 `\|\c .B \-fexternal\-templates\c \&\|' を指定してコンパイルを行なう場合には、全てのテンプレートの 実体は external となります。全ての使用される実体はインプリメンテーション ファイル中にまとめて記述しておかなければなりません。これはその必要とされ る実体に対応した \c .B typedef\c \& 宣言を行なうことによって実現できます。 逆に、デフォルトのオプション `\|\c .B \-fno\-external\-templates\c \&\|' でコンパイルした場合には全てのテンプレートの実体は internal と なります。 .TP .B \-fall\-virtual 可能な限り全てのメンバ関数を暗黙のうちに仮想関数として扱います。 全てのメンバ関数 (コンストラクタと .B new や .B delete メンバ演算子を除きます) は、出現した時点でそのクラスの仮想関数とし て扱われます。 .Sp これは、これらのメンバ関数への全ての呼び出しが仮想関数のための内部 テーブルを参照して間接的に決定されるということを意味しません。特定の状況 においては、コンパイラは与えられた仮想関数への呼び出しを直接決定できます。 このような場合にはその関数呼び出しは常に直接呼び出しとなります。 .TP .B \-fcond\-mismatch 条件演算子の第 2, 第 3 引数の型が異なる記述を許します。このような式の型は void となります。 .TP .B \-fthis\-is\-variable \c .B this\c \& への代入を許可します (C++ のみ)。ユーザ定義による記憶管理が可 能となった現在では、 `\|\c .B this\c \&\|' への代入は時代遅れのものとなりました。従ってデフォルトでは、クラスの メンバ関数からの \c .B this\c \& への代入は不当なものとして扱われています。しかし、後方互換性のために、 `\|\c .B \-fthis-is-variable\c \&\|' を指定することによってこの効果を得ることができます。 .TP .B \-funsigned\-char \c .B char\c \& 型を \c .B unsigned char\c \& のように符号無しとして扱います。 .Sp それぞれのマシンには \c .B char\c \& がどちらであるべきかというデフォルトがあります。 デフォルトで \c .B unsigned char\c \& であることもあれば、デフォルトで .B signed char\c \& であることもあります。 .Sp 理想的には、可搬性のあるプログラムは、オブジェクトの符号の有無に依 存する記述を行なう場合には常に \c .B signed char\c \&、もしくは .B unsigned char\c \& を使用すべきです。 しかし実際には多くのプログラムが単なる \c .B char\c \& を用いて記述されており、さらにそのプログラムを記述した 環境に依存して、符号付きである、あるいは符号無しであるという暗黙の仮定が 行なわれています。このオプション、あるいはこの逆のオプションは、デフォル トと逆の動作を行なわせることにより、これらのプログラムを正しく動作させ ることを可能にします。 .Sp \c .B char\c \& 型は常に .B signed char\c \& あるいは \c .B unsigned char\c \& とは区別された型として扱われます。常にそれらの振舞いがそのどち らかと全く同じであるということに関わらず、このような扱いを行います。 .TP .B \-fsigned\-char \c .B char\c \& 型を \c .B signed char\c \& 型のように符号付きとして扱います。 .Sp ただし、このオプションは `\|\c .B \-fno\-unsigned\-char\c \&\|' と等価です。これは `\|\c .B \-funsigned\-char\c \&\|'の否定形です。同様に `\|\c .B \-fno\-signed\-char\c \&\|' は `\|\c .B \-funsigned\-char\c \&\|' と等価です。 .TP .B \-fsigned\-bitfields .TP .B \-funsigned\-bitfields .TP .B \-fno\-signed\-bitfields .TP .B \-fno\-unsigned\-bitfields これらのオプションは、明示的に `\|\c .B signed\c \&\|' または `\|\c .B unsigned\c \&\|' の指定が行なわれていないビットフィールドに対して、符号つきであるかある いは符号なしであるかを制御します。デフォルトではこのようなビットフィール ドは符号つきとなっています。なぜなら、 .B int\c \& のような基本的な型は符号つきであるという点で、整合性がとれるからです。 .Sp ただし、`\|\c .B \-traditional\c \&\|' を指定した場合は、ビットフィールドは常に全て符号無しであるとされます。 .TP .B \-fwritable\-strings 文字列定数を書き込み可能なデータセグメントに配置し、同内容の文字列を 1 つの共有オブジェクトにする処理を行いません。これは、文字定数に書き込む ことができることを仮定した昔のプログラムとの互換性をとるために提供され ています。`\|\c .B \-traditional\c \&\|' オプションも同様の効果を含みます。 .Sp 文字定数に書き込むという考えは非常によくない考えです。\*(lq定数\*(rq はまさに定数であり、変化すべきではありません。 .PP .SH プリプロセッサオプション これらのオプションは C プリプロセッサを制御します。 各 C ソースファイルは、実際にコンパイルする前に、C プリプロセッサに かけられます。 .PP `\|\c .B \-E\c \&\|' オプションを使用すると、GCC はプリプロセス以外の処理を行いません。 以下に示すオプションのうちのいくつかは、`\|\c .B \-E\c \&\|' と同時に使用された時のみ意味をもちます。なぜならば、これらのオプション によって、実際のコンパイルには不適当なプリプロセッサ出力が生成されるためです。 .TP .BI "\-include " "file" \c .I file\c \& を、通常の入力ファイルが処理される前に処理します。結果的に \c .I file\c \& に含まれる内容は、一番最初にコンパイルされることになります。コマンドラ インに指定されたすべての `\|\c .B \-D\c \&\|' や `\|\c .B \-U\c \&\|' オプションは、その記述された順番に関わらず常に `\|\c .B \-include \c .I file\c \&\c \&\|' が処理される前に処理されます。全ての `\|\c .B \-include\c \&\|' や `\|\c .B \-imacros\c \&\|' オプションは、それらが記述された順番通りに処理されます。 .TP .BI "\-imacros " file 通常の入力ファイルを処理する前に\c .I file\c \& を入力として処理しますが、その結果の出力を捨てます。 .I file\c \& によって生成された出力は捨てられるため、`\|\c .B \-imacros \c .I file\c \&\c \&\|' の処理結果の影響は、\c .I file\c \& 中に記述されたマクロがメインの入力ファイル中で使用可能になることだけです。 プリプロセッサは、`\|\c .B \-imacros \c .I file\c \&\|' が記述された順番に関わらず、これを処理する前に、 コマンドラインから与えられた全ての `\|\c .B \-D\c \&\|' や `\|\c .B \-U\c \&\|' オプションを評価します。全ての `\|\c .B \-include\c \&\|' および `\|\c .B \-imacros\c \&\|' オプションは、それらが記述された順番通りに処理されます。 .TP .BI "\-idirafter " "dir" ディレクトリ \c .I dir\c \& を第 2 インクルードパスに加えます。第 2 インクルードパス中のディレクトリは、 メインインクルードパス (オプション `\|\c .B \-I\c \&\|' によって追加されます) 中にヘッダファイルを探した結果発見できな かった場合に検索されます。 .TP .BI "\-iprefix " "prefix" \c .I prefix\c \& を、その後に続く `\|\c .B \-iwithprefix\c \&\|' オプション用のプレフィックスとして使用します。 .TP .BI "\-iwithprefix " "dir" ディレクトリを第 2 インクルードパスに追加します。ディレクトリ名は \c .I prefix\c \& と \c .I dir\c \& を連結することによって得られます。ここで \c .I prefix は、`\|\c .B \-iprefix\c \&\|' オプションによって指定されたものです。 .TP .B \-nostdinc ヘッダファイルのための標準のシステムディレクトリを検索しません。`\|\c .B \-I\c \&\|' オプションによって指定したディレクトリ (またはカレントディレクト リ) のみを検索します。 .Sp `\|\c .B \-nostdinc\c \&\|' と `\|\c .B \-I\-\c \&\|'を使用することにより、インクルードファイルの検索パスを明示的に指 定したディレクトリのみに限定することが可能となります。 .TP .B \-nostdinc++ ヘッダファイルの検索に、C++\-固有の標準ディレクトリを用いません。ただ しそれ以外の標準ディレクトリは検索されます。 (このオプションは `\|\c .B libg++\c \&\|' の構築に使用されます。) .TP .B \-undef 標準でない定義済みマクロ(アーキテクチャフラグも含めて)を定義しません。 .TP .B \-E C プリプロセッサの処理のみを行います。指定された全ての C のソースファイル に対してプリプロセスを行ない、標準出力、または指定された出力ファイルに 対して出力を行います。 .TP .B \-C プリプロセッサに対してコメントの削除を行なわないように指示します。 `\|\c .B \-E\c \&\|' オプションとともに使用されます。 .TP .B \-P プリプロセッサに対して `\|\c .B #line\c \&\|' コマンドを生成しないように指示します。 `\|\c .B \-E\c \&\|' オプションとともに使用されます。 .TP .B \-M\ [ \-MG ] プリプロセッサに対して\c .B make で使用可能な、オブジェクト間の依存関係を記述した出力を生成するように指示 します。それぞれのソースファイルに対して、プリプロセッサは\c .B make\c \& のための規則を 1 つ出力します。この出力は、ターゲットとして そのソースファイルから生成されるオブジェクトファイルのファイル名をとり、 依存するファイルのリストとしては `\|\c .B #include\c \&\|' によってソースファイルに 読み込まれる全てのファイルの名前が並びます。この 規則は 1 行、あるいは長い場合には`\|\c .B \e\c \&\|' と改行を入れて複数行で出力されます。この規則のリストは、プリプロセス済 みの C プログラムのかわりに、標準出力へと出力されます。 .Sp `\|\c .B \-M\c \&\|' は暗黙のうちに `\|\c .B \-E\c \&\|' を含みます。 .Sp `\|\c .B \-MG\c \&\|' を指定すると、見つからないヘッダファイルは生成されたファイルであり、 それらはソースファイルと同じディレクトリに存在するとみなします。 これは `\|\c .B \-M\c \&\|' と同時に指定しなければなりません。 .TP .B \-MM\ [ \-MG ] `\|\c .B \-M\c \&\|' と似ていますが、`\|\c .B #include "\c .I file\c .B \&"\c \&\|'によってインクルードされるユーザ定義のヘッダファイルのみを対象に した出力ファイルを生成します。`\|\c .B #include <\c .I file\c .B \&>\c \&\|' によってインクルードされるシステムヘッダファイルは省略されます。 .TP .B \-MD `\|\c .B \-M\c \&\|' と似ていますが、依存情報は出力ファイル名の最後の `\|\c .B .o\c \&\|' を `\|\c .B .d\c \&\|' に置き換えたファイル名のファイルに対して出力されます。 \&`\|\c .B \-MD\c \&\|' を指定したファイルのコンパイルもこれに加えて行なわれ、 `\|\c .B \-M\c \&\|' のように通常のコンパイルを抑制することはありません。 .Sp Mach のユーティリティである`\|\c .B md\c \&\|' は、これらの複数の `\|\c .B .d\c \&\|' ファイルを `\|\c .B make\c \&\|' コマンドによって使用できる単一の依存記述ファイルへとマージするのに使用 することができます。 .TP .B \-MMD `\|\c .B \-MD\c \&\|' と似ていますが、ユーザヘッダファイルのみを対象とし、システムヘッダ ファイルを無視します。 .TP .B \-H 通常の動作に加えて、使用されたヘッダファイルの名前を表示します。 .TP .BI "\-A" "question" ( answer ) .I question\c に対するアサーション .I answer \& を定義します。これは `\|\c .BI "#if #" question ( answer )\c \&\|' のようなプリプロセッサ条件節によってテストされます。`\|\c .B \-A\-\c \&\|' は標準のアサーション(通常はターゲットマシンに関 する情報を表している)を禁止します。 .TP .BI \-D macro マクロ \c .I macro\c \& に対して文字列 `\|\c .B 1\c \&\|' を定義として与えます。 .TP .BI \-D macro = defn マクロ \c .I macro\c \& を \c .I defn\c \& として定義します。コマンドライン上の全ての `\|\c .B \-D\c \&\|' オプションは `\|\c .B \-U\c \&\|' オプションの処理を行なう前に処理されます。 .TP .BI \-U macro マクロ \c .I macro\c \& の定義を無効にします。`\|\c .B \-U\c \&\|' オプションは全ての `\|\c .B \-D\c \&\|' オプションの処理が終了した後、`\|\c .B \-include\c \&\|' と `\|\c .B \-imacros\c \&\|' オプションの処理の前に処理されます。 .TP .B \-dM プリプロセッサに対して、プリプロセス終了時に有効であったマクロの定義の みを出力するように指示します。`\|\c .B \-E\c \&\|' オプションとともに使用します。 .TP .B \-dD プリプロセッサに対して、全てのマクロ定義を適切な順番で出力中にそのまま 出力するように指示します。 .TP .B \-dN `\|\c .B \-dD\c \&\|' と似ていますが、マクロの引数と内容を削除します。 出力には`\|\c .B #define \c .I name\c \&\c \&\|' のみが含まれます。 .PP .SH アセンブラオプション .TP .BI "\-Wa," "option" \c .I option\c \& をアセンブラに対するオプションとして渡します。\c .I option がコンマを含む場合は、そのコンマで区切られた複数のオプションとして与え られます。 .PP .SH リンカオプション これらのオプションは、コンパイラがオブジェクトファイル群をリンクして 1 つ の実行可能ファイルを出力する際に使用されるものです。これらはコンパイラが リンクステップを行なわない場合には意味を持ちません。 .TP .I object-file-name 特別に認識される拡張子で終っていないファイル名は、オブジェクトファイル、 またはライブラリであると認識されます。(オブジェクトファイルとライブラリ はリンカがその内容を参照することで区別されます。) GCC がリンクステップを 行なう場合は、これらのファイルはリンカへの入力として使用されます。 .TP .BI \-l library 名前が .I library\c \& であるライブラリをリンク時に使用します。 .Sp リンカは、標準のライブラリ用ディレクトリのリスト中から、 実際のファイル名が `\|\c .B lib\c .I library\c \&.a\c \&\|' であるファイルを検索します。リンカはこのファイルを、ファイル 名で直接指定した場合と同様に使用します。 .Sp 検索するディレクトリには、いくつかの標準システムディレクトリと、`\|\c .B \-L\c \&\|' によって指定したディレクトリが含まれます。 .Sp 通常、この方法で発見されるファイルはライブラリファイル、つまりいくつかの オブジェクトファイルをメンバとして含むアーカイブファイルです。 リンカは、アーカイブファイルの中を検索して、 参照されているが定義されていないシンボルを定義しているメンバを 探し出します。 しかし、もしリンカがライブラリでなく通常のオブジェクトファイルを発見した 場合は、そのオブジェクトファイルを通常の方法でリンクします。`\|\c .B \-l\c \&\|' オプションを使用する場合とファイル名を直接指定する場合の違いは、`\|\c .B \-l\c \&\|' の場合が .I library を `\|\c .B lib\c \&\|' と `\|\c .B .a\c \&\|' で囲み、いくつものディレクトリを検索することだけです。 .TP .B \-lobjc Objective C のプログラムをリンクする場合は、この特別な .B \-l オプションを指定する必要があります。 .TP .B \-nostartfiles リンク時に、標準のシステムスタートアップファイルを使用しません。 標準ライブラリは通常通りに使用されます。 .TP .B \-nostdlib リンク時に、標準のシステムライブラリとスタートアップファイルを使用しません。 指定したファイルのみがリンカに渡されます。 .TP .B \-static ダイナミックリンクをサポートするシステムにおいて、このオプションは共有 ライブラリとのリンクを抑制します。それ以外のシステムではこのオプションは 意味を持ちません。 .TP .B \-shared 他のオブジェクトとリンクして実行可能プログラムを形成し得る共有オブジェクトを 生成します。ごく少数のシステムでのみ、このオプションはサポートされ ています。 .TP .B \-symbolic 共有オブジェクトを構築する際に、グローバルなシンボルへの参照をバインド します。全ての解決できなかった参照に対して警告を与えます (ただしリンクエディタオプション `\|\c .B \-Xlinker \-z \-Xlinker defs\c \&\|' によってこれを無効化した場合を除きます)。ごく少数のシステムでのみ、 このオプションはサポートされています。 .TP .BI "\-Xlinker " "option" オプション \c .I option をリンカに対して渡します。リンカに渡すシステム固有のオプションが、 GNU CC が理解できないものである場合に利用できます。 .Sp 引数を持ったオプションを渡したい場合は、 `\|\c .B \-Xlinker\c \&\|' を 2 度使用すれば可能です。1 度目でオプションを渡し、2 度目で引数を 渡します。例えば `\|\c .B \-assert definitions\c \&\|' を渡すには、 `\|\c .B \-Xlinker \-assert \-Xlinker definitions\c \&\|' のように記述すれば可能です。 `\|\c .B \-Xlinker "\-assert definitions"\c \&\|' のように指定した場合は正常に動作しません。なぜならこれは、文字列全 体を 1 つの引数として渡してしまい、リンカの期待する形式と異なってしま うからです。 .TP .BI "\-Wl," "option" オプション \c .I option\c \& をリンカに渡します。\c .I option\c \& がコンマを含む場合は、それらのコンマで複数のオプションとして分割されます。 .TP .BI "\-u " "symbol" シンボル .I symbol が未定義であるかのように振舞います。これは強制的にこのシンボルを定義してい るライブラリモジュールをリンクするために使用します。`\|\c .B \-u\c \&\|' は異なったシンボルに対して複数回使用することができます。これによっ て、さらに多くのライブラリモジュールを読み込ませることができます。 .SH ディレクトリオプション これらのオプションは、ヘッダファイル、ライブラリ、コンパイラの一部を検 索するディレクトリを指定するために使用されます。 .TP .BI "\-I" "dir" ディレクトリ \c .I dir\c \& を、インクルードファイルの検索するディレクトリのリスト中に追加します。 .TP .B \-I\- `\|\c .B \-I\-\c \&\|' オプション指定前に `\|\c .B \-I\c \&\|' オプションによって指定された全てのディレクトリは、`\|\c .B #include "\c .I file\c .B \&"\c \&\|' の形式によってのみ検索されます。 これらのディレクトリは `\|\c .B #include <\c .I file\c .B \&>\c \&\|' によっては検索されません。 .Sp \&\|` .B \-I\-\c \&\|' オプション指定後に `\|\c .B \-I\c \&\|' で指定したディレクトリは、全ての `\|\c .B #include\c \&\|' 命令によって検索されます。(通常は \c .I 全ての\c \& `\|\c .B \-I\c \&\|' で指定されたディレクトリは この方法で検索されます。) .Sp これに加えて `\|\c .B \-I\-\c \&\|' オプションは、カレントディレクトリ (現在の入力ファイルが存在する ディレクトリ) が `\|\c .B #include "\c .I file\c .B \&"\c \&\|' に対する最初の検索対象となることを抑制します。`\|\c .B \-I\-\c \&\|' によるこの効果を上書きする方法はありません。`\|\c .B \-I.\c \&\|' を指定することによって、コンパイラが起動されたディレクトリが検索 されることを指定することは可能です。これはプリプロセッサが行なう デフォルトの動作とは異なりますが、たいていはこれで十分です。 .Sp `\|\c .B \-I\-\c \&\|' は、ヘッダファイルの検索に標準のシステムディレクトリを使うことを抑制 するわけではありません。 従って、`\|\c .B \-I\-\c \&\|' と `\|\c .B \-nostdinc\c \&\|' は 独立です。 .TP .BI "\-L" "dir" ディレクトリ\c .I dir\c \& を `\|\c .B \-l\c \&\|' による検索が行なわれるディレクトリのリストに加えます。 .TP .BI "\-B" "prefix" このオプションはコンパイラ自身の実行形式、ライブラリ、データファイルの 検索場所を指定します。 .Sp コンパイラドライバはサブプログラム `\|\c .B cpp\c \&\|', `\|\c .B cc1\c \&\|' (または C++ においては `\|\c .B cc1plus\c \&\|'), `\|\c .B as\c \&\|', そして `\|\c .B ld\c \&\|' を 1 つ、あるいはそれ以上起動します。コンパイラドライバは、 起動するプログラムのプレフィックスとして .I prefix\c \& に `\|\c .I machine\c .B /\c .I version\c .B /\c \&\|' をつけたものとつけないものの双方を 使用します。 .Sp コンパイラドライバは各サブプログラムの起動時に、 `\|\c .B \-B\c \&\|' プレフィックスの指定がある場合は、それを最初に利用します。もしその 名前が見つからなければ、または `\|\c .B \-B\c \&\|' が指定されていなければ、ドライバは 2 つの標準プレフィックス `\|\c .B /usr/lib/gcc/\c \&\|' と `\|\c .B /usr/local/lib/gcc-lib/\c \&\|' を試します。このどちらにも見つからなければ、コンパイラドライバは、 環境変数 `\|\c .B PATH\c \&\|' のディレクトリリストを利用して、そのプログラム名を検索します。 .Sp ランタイムサポートファイル `\|\c .B libgcc.a\c \&\|' も、必要ならば `\|\c .B \-B\c \&\|' プレフィックスを用いて検索されます。もしそこに見つからなければ、 前記 2 つの標準プレフィックスが試みられますが、それで終りです。この場合は リンクの対象から外されます。ほとんどの場合、またほとんどのマシンでは、`\|\c .B libgcc.a\c \&\|' は実際には必要ではありません。 .Sp これと同じ効果を、環境変数 .B GCC_EXEC_PREFIX\c \& によっても得ることができます。もしこの環境変数が定義されていれば、こ の値がプレフィックスとして同様に使用されます。もし `\|\c .B \-B\c \&\|' オプションと .B GCC_EXEC_PREFIX\c \& 環境変数の双方が存在した場合は、`\|\c .B \-B\c \&\|' オプションが最初に使用され、環境変数は次に使用されます。 .SH 警告オプション 警告は、本質的に間違いであるわけではありませんが、危険な構造を報告したり、 エラーがあるかもしれないような部分を示唆する診断メッセージです。 .Sp 以下のオプションは、GNU CC が生成する警告の量と種類を制御します。 .TP .B \-fsyntax\-only コードの文法エラーをチェックしますが、一切出力は行いません。 .TP .B \-w 全ての警告メッセージを抑制します。 .TP .B \-Wno\-import .BR #import の利用による警告メッセージを抑制します。 .TP .B \-pedantic 厳密な ANSI 標準 C 言語で規定している全ての警告を表示し、許されていない拡張を 使用したプログラムを全て拒否します。 .Sp 正当な ANSI 標準 C プログラムは、このオプションの有無に関わらず コンパイルできるべきです (もっとも、ほんのわずかではありますが `\|\c .B \-ansi\c \&\|' を必要とするものはあります)。しかし、このオプションを使用しない場合、 GNU 拡張や伝統的な C の特徴も、これに加えてサポートされます。このオプション を使用すれば、それらは拒絶されます。このオプションを\c .I 使う\c \&理由はありませんが、こだわりのある人々を満足させるためにのみ 存在しています。 .Sp `\|\c .B \-pedantic\c \&\|' は、始まりと終りとが `\|\c .B _\|_\c \&\|' である代替キーワードの使用については、警告しません。 同様に .B _\|_extension_\|_\c \& に続く表現についても警告しません。しかし、システムヘッダファイルのみ がこの抜け道を使用すべきであり、アプリケーションプログラムはこれを避け るべきです。 .TP .B \-pedantic\-errors `\|\c .B \-pedantic\c \&\|' と似ていますが、警告のかわりにエラーを出します。 .TP .B \-W 以下のイベントに対して、特別な警告メッセージを表示します。 .TP \ \ \ \(bu volatile でない自動変数が .B longjmp\c \& の呼び出しによって変更され得る場合です。これらの警告は、最適化コンパイル の時のみ問題になり得ます。 .Sp コンパイラは .B setjmp\c \& の呼び出しのみを見ています。コンパイラは、どこで \c .B longjmp\c \& が呼び出されるかを知ることはできません。実際には、シグナルハンドラは コード中の任意の場所で .B longjmp\c \& を呼び出すことができます。従って、実際には \c .B longjmp\c \& への呼び出しが危険な部分からはおこなわれていないために問題のないプ ログラムであっても、警告が発せられることになります。 .TP \ \ \ \(bu 関数が、値を伴ってリターンする場合と、値を伴わずにリターンする場合の両方 が起こりうる場合です。 (関数の最後を抜けていくことは、値を伴わずに関数をリターンするとみなされます。) 例えば、次の関数がこの種類の警告を引き起こします。 .Sp .nf foo (a) { if (a > 0) return a; } .Sp .fi ある関数 (\c .B abort\c \& や\c .B longjmp\c \& を含む) が決してリターンしないということを GNU CC が理解できないために、にせの警告 が発生するかもしれません。 .TP \ \ \ \(bu 式文 (expression-statement) またはコンマ式の左部分が 一切の副作用を含まない場合です。 警告を抑制するには、使用しない式を void にキャストして下さい。 例えば `\|\c .B x[i,j]\c \&\|' といった式は警告されますが、`\|\c .B x[(void)i,j]\c \&\|' は警告されません。 .TP \ \ \ \(bu 符号無しの値が 0 と `\|\c .B >\c \&\|' または `\|\c .B <=\c \&\|' で比較される場合です。 .PP .TP .B \-Wimplicit-int 型を指定していない宣言に対して警告します。 .TP .B \-Wimplicit-function-declaration 宣言に先立って用いられた関数に対して警告します。 .TP .B \-Wimplicit -Wimplicit-int および -Wimplicit-function-declaration と同じです。 .TP .B \-Wmain .B main 関数が不審な型で宣言あるいは定義されている場合に警告します。 通常、main は外部リンケージを持ち、 .B int\c \& を返し、0 個または 2 個の引数をとる関数です。 .TP .B \-Wreturn\-type 関数の戻り値の型が、デフォルトである \c .B int\c \& に定義された時に常に警告します。また、戻り値の型が \c .B void\c でない関数内に、戻り値のない \c .B return\c \& 文がある場合にも常に警告します。 .TP .B \-Wunused ローカル変数が宣言されたにも関わらず使用されていない場合、静的に宣言さ れた関数の実体が定義されていない場合、計算結果が明らかに 利用されていない場合に常に警告します。 .TP .B \-Wswitch .B switch\c \& 文がインデックスとして列挙型をとっている時、その列挙型中のいくつ かの値に対する \c .B case\c \& が欠けている場合に常に警告します。(\c .B default\c \& ラベルが存在する場合、この警告は出ません。) このオプションを使用した場合 には、列挙型の範囲を越えた \c .B case\c \& ラベルも、常に警告されます。 .TP .B \-Wcomment コメントの開始文字列 `\|\c .B /\(**\c \&\|' がコメント中に現れた時に常に警告します。 .TP .B \-Wtrigraphs トライグラフの出現を常に警告します (トライグラフが使用可能であると仮定します)。 .TP .B \-Wformat .B printf\c \&, \c .B scanf\c \& などへの呼び出しに対して、与えられた引数が、フォーマット文字列の指 定を満足する型を持っているかを検査します。 .TP .B \-Wchar\-subscripts 配列の添字の型が .BR char であった場合に警告します。これはよくある間違いのもとです。 いくつかのマシンにおいてはこの型が符号付きであることを、 プログラマはしばしば忘れてしまいます。 .TP .B \-Wuninitialized 初期化されていない自動変数が使用されています。 .Sp これらの警告は、最適化コンパイルを行なう時のみ発生します。なぜなら、 コンパイラは最適化を行なう時にのみデータフロー情報を必要とするからです。 もし `\|\c .B \-O\c \&\|' を指定しなかった場合は、この警告を得ることはできません。 .Sp これらの警告は、レジスタ割り当ての対象となった変数についてのみ発生します。 従って、\c .B volatile\c \& であると宣言された変数や、アドレス上に割り当てられた変数、サイズが 1, 2, 4, 8 バイト以外の変数に関してはこれらの警告は発生しません。 さらに、構造体、共用体、配列については、たとえそれらがレジスタに 割り当てられたとしても、これらの警告は発生しません。 .Sp ある変数によって計算された値が結局使用されないような変数については、一切の 警告が生じないことに注意して下さい。このような計算は、警告が表示される前に データフロー解析によって削除されます。 .Sp これらの警告をオプションにした理由の一つは、GNU CC がまだあまり賢くなくて、 あるコードが一見間違いを含むかのように見えても それは実は正しいものかもしれない、 ということを GNU CC が理解できない、というものです。 ここにその 1 つの例を挙げます。 .Sp .nf { int x; switch (y) { case 1: x = 1; break; case 2: x = 4; break; case 3: x = 5; } foo (x); } .Sp .fi もし \c .B y\c \& の値が常に 1, 2 あるいは 3 である限りは \c .B x\c \& は常に 初期化されます。しかし GNU CC はこれを知ることはできません。もう 1 つの一般 的な例を挙げます。 .Sp .nf { int save_y; if (change_y) save_y = y, y = new_y; .\|.\|. if (change_y) y = save_y; } .Sp .fi これはバグを含みません。なぜなら \c .B save_y\c \& は、その値が設定された時のみ使用されるからです。 .Sp いくつかのにせの警告は、使用している決してリターンしない関数全てに対して .B volatile\c \& と宣言することによって防ぐことが可能です。 .TP .B \-Wparentheses ある特定の文脈中で括弧が省略されていた場合に警告します。 .TP .B \-Wtemplate\-debugging C++ プログラムにおいてテンプレートを使用している際に、デバッグが完全に 可能でない場合を警告します (C++ のみ)。 .TP .B \-Wall 全ての上に挙げた `\|\c .B \-W\c \&\|' オプションを結合したものです。これらのオプションは全て、 たとえマクロとの組み合わせ であっても、避けたほうがいいと我々が推奨する用法や、 簡単に避けることができると我々が信じている用法に関するものです。 .PP 残りの `\|\c .B \-W.\|.\|.\c \&\|' オプションは `\|\c .B \-Wall\c \&\|' によっては暗黙のうちに指定されません。なぜならこれらは、クリーンなプ ログラムにおいても、ある状況においては使用することが妥当であると我々が 考える構造についての警告を行なうオプションだからです。 .TP .B \-Wtraditional 伝統的な C と ANSI C において異なった振舞いをする特定の構造について警 告します。 .TP \ \ \ \(bu マクロ引数がマクロ本体内の文字列定数に現れるものです。これは、伝統的な C に おいてはその引数で置換しましたが、ANSI C においては定数の一部として扱わ れます。 .TP \ \ \ \(bu ブロック内で外部宣言であると宣言され、かつそのブロックの終端の後で 使用されている関数です。 .TP \ \ \ \(bu オペランドとして \c .B long\c \& 型をとる \c .B switch\c \& 文です。 .PP .TP .B \-Wshadow ローカル変数が他のローカル変数を隠している時に常に警告します。 .TP .BI "\-Wid\-clash\-" "len" 2 つの全く別の識別子の最初の \c .I len 文字が一致した時に警告します。これはある種の旧式な おばかさんコンパイラでコンパイルされ得るプログラムを作る場合に役に立ちます。 .TP .B \-Wpointer\-arith 関数型や \c .B void\c \& の \*(lqサイズ\*(rq に依存するものを全て警告します。GNU C はこれらに対して、 サイズ 1 を割り当てています。これは \c .B void \(**\c \& ポインタと関数へのポインタにおける計算を簡便にするためです。 .TP .B \-Wcast\-qual ポインタが、型修飾子が削除されるようにキャストされる全ての場合に警告します。 例えば \c .B const char \(**\c \& を 普通の \c .B char \(**\c \& にキャストした場合に警告がなされます。 .TP .B \-Wcast\-align ポインタのキャストにおいて、そのターゲットに要求される境界条件が 大きくなるようなキャストを全て警告します。例えば \c .B char \(**\c \& が \c .B int \(**\c \& へとキャストされると、整数が 2、あるいは 4 バイト境界でしかアクセスで きないマシンにおいては警告が発せられます。 .TP .B \-Wwrite\-strings 文字定数に対して、型 \c .B const char[\c .I length\c .B ]\c \& を与え、非-\c .B const\c \& の \c .B char \(** ポインタへのアドレスのコピーに対して警告するようにします。この警告は、 宣言とプロトタイプにおいて \c .B const\c \& の使用を非常に注意深くおこなっていさえすれば、 文字列定数に書き込みをしそうなコードをコンパイル時に発見することを助けますが、 そうでない場合は有害無益な指定です。これが、我々がこの警告を `\|\c .B \-Wall\c \&\|' のリクエストに含めなかった理由です。 .TP .B \-Wconversion 同じ引数が与えられた時に、プロトタイプが存在する場合とプロトタイプが 存在しない場合とで、異なった型変換を引き起こす場合について警告します。 これは固定小数点から浮動小数点への変換やその逆、デフォルトの動作と異なる固定 小数点引数の幅や符号の有無の変換が含まれます。 .TP .B \-Waggregate\-return 構造体や共用体を返す関数を定義した場合や、 それらを呼び出す全ての場合に警告します。 (配列を返すことができる言語においても、これは警告を引き起こします。) .TP .B \-Wstrict\-prototypes 引数の型を指定せずに関数を宣言、あるいは定義した場合に警告します。 (以前に引数の型を指定した宣言が存在する場合には、旧式の関数宣言に対しては 警告をしません。) .TP -.B \-Wmissing\-declarations +.B \-Wmissing\-prototypes グローバルな関数を、その前にプロトタイプ宣言をせずに定義した場合に 警告します。 この警告は、たとえその定義自身がプロトタイプを含んでいたとしても発生します。 この警告の目的は、ヘッダファイル中にグローバル関数の定義を忘れるこ とを防ぐことにあります。 .TP +.B \-Wmissing\-declarations +グローバルな関数を、その前に宣言をせずに定義した場合に警告します。 +たとえその定義自身がプロトタイプを含んでいたとしても警告します。 +このオプションは、ヘッダファイル中に定義されていないグローバル関数を +見つけるために使います。 +.TP .B \-Wredundant-decls 同一スコープ中で複数回、同一対象を宣言した場合に、たとえそれが正当で何も 変化させない場合であっても警告します。 .TP .B \-Wnested-externs 関数内で \c .B extern\c \& 宣言を行なった場合に警告します。 .TP .B \-Wenum\-clash 異なる列挙型の間で変換を行なった際に警告します (C++ のみ)。 .TP .B \-Wlong-long .B long long \c 型が使用されている場合に警告します。これはデフォルトです。 この警告メッセージを抑止するには `\|\c .B \-Wno\-long\-long\c \&\|' フラグを用いて下さい。フラグ `\|\c .B \-Wlong\-long\c \&\|' および `\|\c .B \-Wno\-long\-long\c \&\|' は、フラグ `\|\c .B \-pedantic\c \&\|' 使用時のみ考慮されます。 .TP .B \-Woverloaded\-virtual (C++ のみ。) 導出クラスにおいて、仮想関数の定義は基底クラスで定義された仮想関数の型 の記述と一致していなければなりません。このオプションを使用することによっ て、基底クラスにおける仮想関数と同一の名前を持ち、基底クラスのいかなる 仮想関数とも異なった型の記述を持つ関数に対して警告が行われます。これに よって、導出クラスが仮想関数を定義しようとして失敗する場合を警告するこ とができます。 .TP .B \-Winline 関数がインライン宣言されている、あるいは .B \-finline\-functions オプションが与えられている場合に、関数をインライン展開できなかった場合 に警告します。 .TP .B \-Werror 警告をエラーとして扱います。警告の後にコンパイルを中断します。 .SH デバッグオプション GNU CC は、ユーザのプログラムや GCC の双方をデバッグするために、 多くのオプションを備えています。 .TP .B \-g オペレーティングシステムのネイティブのフォーマット (stabs, COFF, XCOFF, DWARF) でデバッグ情報を生成します。GDB はこのデバッグ情報に基づい て動作することができます。 .Sp stabs フォーマットを使用するほとんどのシステムにおいては、`\|\c .B \-g\c \&\|' を指定すると、GDB だけが使用できる余分なデバッグ情報が使用可能に なります。 この特別の情報は GDB に対してはよりよいデバッグを行なうことを可能 としますが、おそらく他のデバッガに対してはクラッシュ、あるいはそのプログラムを 読めなくしてしまいます。この特別な情報の生成を制御するためには `\|\c .B \-gstabs+\c \&\|', `\|\c .B \-gstabs\c \&\|', `\|\c .B \-gxcoff+\c \&\|', `\|\c .B \-gxcoff\c \&\|', `\|\c .B \-gdwarf+\c \&\|', `\|\c .B \-gdwarf\c \&\|' を使用してください (下記参照)。 .Sp 他の多くの C コンパイラと異なり、GNU CC は `\|\c .B \-g\c \&\|' を `\|\c .B \-O\c \&\|' とともに使用することを許しています。最適化されたコードが通る近道は、 時には驚くべき結果を生み出すかもしれません。 定義したはずの変数が存在しなかったり、 制御の流れが予想もしなかった場所に移動したり、結果が定数とわかる計算や、 結果がすでに手元にある文は実行されなくなり、ある文がループの外に追い出されて 別の場所で実行されたりします。 .Sp それにも関わらず、このオプションは最適化された出力のデバッグを可能とし ています。これによって、バグを含むかもしれないプログラムに対して オプティマイザを使用することができるようになります。 .PP 以下のオプションは、GNU CC を 1 つ以上のデバッグフォーマットを扱 えるように作成してある場合に有益です。 .TP .B \-ggdb (もしサポートされていれば)ネイティブのフォーマットでデバッグ情報を生成 します。これは可能な限りの全ての GDB 拡張を含みます。 .TP .B \-gstabs (もしサポートされていれば) stabs フォーマットでデバッグ情報を生成します。 ただし GDB 拡張は含みません。このフォーマットはほとんどの BSD システム上 の DBX で利用できるフォーマットです。 .TP .B \-gstabs+ (もしサポートされていれば) stabs フォーマットでデバッグ情報を生成します。 ただし GNU デバッガ (GDB) でしか理解できない GNU 拡張を使用します。 この拡張を使用すると、他のデバッガでは、クラッシュや プログラムが読めなくなるなどの影響がおそらく出ます。 .TP .B \-gcoff (サポートされていれば) COFF フォーマットでデバッグ情報を生成します。 これは、System V Release 4 より前の ほとんどの System V 上の SDB で利用できるフォーマットです。 .TP .B \-gxcoff (サポートされていれば) XCOFF フォーマットでデバッグ情報を生成します。こ れは IBM RS/6000 システムにおいて DBX デバッガによって使用される フォーマットです。 .TP .B \-gxcoff+ (もしサポートされていれば) XCOFF フォーマットでデバッグ情報の生成を行 います。ただし、GNU デバッガ (GDB) によってのみ理解され得る GNU 拡張を使 用します。これらの拡張を使用すると、他のデバッガに対してはクラッシュやプ ログラムを読みとり不能にするなどの影響を及ぼし得ます。 .TP .B \-gdwarf (もしサポートされていれば) DWARF フォーマットでデバッグ情報の生成を行 います。これはほとんどの System V Release 4 システムにおいて SDB によっ て使用される形式です。 .TP .B \-gdwarf+ (もしサポートされていれば) DAWRF フォーマットでデバッグ情報の生成を行 います。ただし、GNU デバッガ (GDB) によってのみ理解され得る GNU 拡張を使 用します。これらの拡張を使用すると、他のデバッガに対してはクラッシュや プログラムを読みとり不能にするなどの影響を及ぼし得ます。 .PP .BI "\-g" "level" .br .BI "\-ggdb" "level" .br .BI "\-gstabs" "level" .br .BI "\-gcoff" "level" .BI "\-gxcoff" "level" .TP .BI "\-gdwarf" "level" デバッグ情報を要求しますが、同時に \c .I level\c \& によってどの程度の情報が必要かを指定します。デフォルトのレベルは 2 です。 .Sp レベル 1 は、デバッグを予定しないプログラムの部分に対してバックトレース を生成するに十分な最低限の情報を生成します。これは関数と外部変数の記述 を含みますが、ローカル変数や行番号に関する情報は含みません。 .Sp レベル 3 はプログラムに含まれる全てのマクロ定義などの特別な情報を含みます。 いくつかのデバッガは `\|\c .B \-g3\c \&\|' の使用によってマクロの展開をサポートします。 .TP .B \-p プログラム \c .B prof\c \& によって使用されるプロファイル情報を書き込む特別なコードを生成します。 .TP .B \-pg プログラム \c .B gprof\c \& によって使用されるプロファイル情報を書き込む特別なコードを生成します。 .TP .B \-a 基本ブロックのプロファイル情報を書き込む特別なコードを生成します。これは それぞれのブロックが何回実行されたかを記録します。このデータは \c .B tcov\c \& のようなプログラムによって解析されます。ただし、このデータフォーマットは \c .B tcov\c \& が期待するものとは異なっています。最終的には、GNU \c .B gprof\c \& が処理できるように拡張されるべきです。 .TP .B \-ax ファイル `bb.in' から基本ブロックプロファイルパラメータを読み出し、 ファイル `bb.out' にプロファイル結果を書き出すための、 特別なコードを生成します。 `bb.in' は関数のリストを保持しています。 このリストに含まれる関数に入ると、プロファイリングがオンになります。 最外側関数を抜けると、プロファイリングはオフになります。 関数名が `-' で始まっている場合、その関数はプロファイル対象外に なります。もし関数名が唯一に定まらない場合は、 `/path/filename.d:functionname' と記述することでこれらを区別できます。 `bb.out' には、いくつかの利用可能な関数がリストされます。 特別な意味をもつ関数が 4 つあります: `__bb_jumps__' はジャンプ頻度を `bb.out' に書き出します。 `__bb_trace__' は基本ブロック列を `gzip' にパイプし、 ファイル `bbtrace.gz' に書き出します。 `__bb_hidecall__' は call 命令をトレースから除外します。 `__bb_showret__' は return 命令をトレースに含めるようにします。 .TP .BI "\-d" "letters" コンパイル中の .I letters\c \& で指定されるタイミングに、デバッグ用のダンプを生成するように指示します。 これはコンパイラをデバッグするために使用されます。ほとんどのダンプのファイル 名はソースファイル名に 1 単語をつなげたものになります。(例えば、`\|\c .B foo.c.rtl\c \&\|' や `\|\c .B foo.c.jump\c \&\|' などです)。 .TP .B \-dM 全てのマクロ定義をダンプし、プリプロセス終了時に出力に書き出します。 その他には何も書き出しません。 .TP .B \-dN 全てのマクロ名をダンプし、プリプロセス終了時に出力に書き出します。 .TP .B \-dD 全てのマクロ定義をプリプロセス終了時に通常の出力に加えてダンプします。 .TP .B \-dy パース中にデバッグ情報を標準エラー出力にダンプします。 .TP .B \-dr RTL 生成後に `\|\c .I file\c .B \&.rtl\c \&\|' に対してダンプします。 .TP .B \-dx 関数をコンパイルするかわりに、RTL を生成するのみの処理を行います。通常は `\|\c .B r\c \&\|' とともに使用されます。 .TP .B \-dj 最初のジャンプ最適化の後に、`\|\c .I file\c .B \&.jump\c \&\|' に対してダンプします。 .TP .B \-ds 共通部分式削除 (しばしば共通部分式削除に続くジャンプ最適化も含みます) の終了 時に `\|\c .I file\c .B \&.cse\c \&\|' に対してダンプします。 .TP .B \-dL ループ最適化終了時に `\|\c .I file\c .B \&.loop\c \&\|' に対してダンプします。 .TP .B \-dt 第 2 共通部分式削除段階 (しばしば共通部分式削除に続くジャンプ最適化も 含みます) の終了時に、`\|\c .I file\c .B \&.cse2\c \&\|' に対してダンプします。 .TP .B \-df フロー解析終了後に、`\|\c .I file\c .B \&.flow\c \&\|' に対してダンプします。 .TP .B \-dc 命令コンビネーション終了時に `\|\c .I file\c .B \&.combine\c \&\|' に対してダンプします。 .TP .B \-dS 第 1 命令スケジューリング段階終了時に `\|\c .I file\c .B \&.sched\c \&\|' に対してダンプします。 .TP .B \-dl ローカルレジスタ割り当て終了時に `\|\c .I file\c .B \&.lreg\c \&\|' に対してダンプします。 .TP .B \-dg グローバルレジスタ割り当て終了時に `\|\c .I file\c .B \&.greg\c \&\|' に対してダンプします。 .TP .B \-dR 第 2 命令スケジューリング段階終了時に `\|\c .I file\c .B \&.sched2\c \&\|' に対してダンプします。 .TP .B \-dJ 最終ジャンプ最適化終了時に `\|\c .I file\c .B \&.jump2\c \&\|' に対してダンプします。 .TP .B \-dd 遅延分岐スケジューリング終了時に `\|\c .I file\c .B \&.dbr\c \&\|' に対してダンプします。 .TP .B \-dk レジスタからスタックへの転換終了時に `\|\c .I file\c .B \&.stack\c \&\|' に対してダンプします。 .TP .B \-da 以上の全てのダンプを生成します。 .TP .B \-dm 処理の終了時に、メモリ使用に関する統計情報を標準エラー出力に出力します。 .TP .B \-dp どのようなパターンや選択肢が使用されたかを示すコメントをアセンブラ出力 中のコメントで解説します。 .TP .B \-fpretend\-float クロスコンパイラで処理を行なう際に、ホストマシンと同じ浮動小数点フォーマット をターゲットマシンが持つかのように振舞わせます。これは浮動小数点定 数の誤った出力を引き起こしますが、実際の命令列はおそらく GNU CC を ターゲットマシンで起動した場合と同じものとなるでしょう。 .TP .B \-save\-temps 通常の \*(lq一時\*(rq 中間ファイルを消去せずに保存します。これらは カレントディレクトリに置かれ、ソースファイルに基づいた名前が付けられます。 従って、`\|\c .B foo.c\c \&\|' を `\|\c .B \-c \-save\-temps\c \&\|' を使用してコンパイルした場合は、 `\|\c .B foo.cpp\c \&\|', `\|\c .B foo.s\c \&\|' が、`\|\c .B foo.o\c \&\|' と同様に生成されます。 .TP -.BI "\-print\-libgcc\-file\-name=" "library" +.BI "\-print\-file\-name=" "library" ライブラリファイル `\|\c .nh .I library .hy \&\|' の完全な絶対名を表示します。このファイルはリンクの際のみに使用され、 それ以外の働きはありません。このオプションが指定された場合は、GNU CC は コンパイルやリンクを何も行なわず、ただファイル名を表示するのみです。 .TP .B \-print\-libgcc\-file\-name `\|\c .B \-print\-file\-name=libgcc.a\c \&\|' と同じです。 .TP .BI "\-print\-prog\-name=" "program" `\|\c .B \-print\-file\-name\c \&\|' と似ていますが、`\|\c cpp\c \&\|' のような program を検索します。 .SH 最適化オプション これらのオプションは様々な種類の最適化処理を制御します。 .TP .B \-O .TP .B \-O1 最適化を行います。最適化コンパイルは幾分長めの処理時間と、大きな関数に対 する非常に多くのメモリを必要とします。 .Sp `\|\c .B \-O\c \&\|' が指定されなかった場合は、コンパイラの目標はコンパイルのコストを 低減することや、目的の結果を得るためのデバッグを可能とすることに置かれ ます。それぞれの文は独立しています。つまり、ブレークポイントでプログラムを 停止させることによって、任意の変数に新し い値を代入したり、プログラムカウンタを他の文へと変更することを可能とし、 そのソースコードにプログラマが望む正しい結果を得ることを可能にします。 .Sp `\|\c .B \-O\c \&\|' を指定しなかった場合は、\c .B register\c \& と宣言した変数のみがレジスタへと割り当てられます。コンパイルの結果と して得られるコードは、PCC を `\|\c .B \-O\c \&\|' なしで使用した場合と比較して若干良くないものとなります。 .Sp `\|\c .B \-O\c \&\|' が指定されると、コンパイラはコードのサイズと実行時間を減少させる ことを試みます。 .Sp `\|\c .B \-O\c \&\|' を指定することによって、 `\|\c .B \-fthread\-jumps\c \&\|' と `\|\c .B \-fdefer\-pop\c \&\|' のフラグが指定されます。遅延スロットをもつマシンでは `\|\c .B \-fdelayed\-branch\c \&\|' が指定されます。フレームポインタを使わないデバッグをサポートしている マシンでは、`\|\c .B \-fomit\-frame\-pointer\c \&\|' も指定されます。マシンによってはさらにその他のフラグが 指定されることもあります。 .TP .B \-O2 さらに最適化を行います。サポートされている最適化手段のうち、 空間と速度のトレードオフを含まないものはほとんど全て使用されます。 例えばループのアンローリングや関数のインライン化は行われません。 .B \-O\c \& と比較して、このオプションはコンパイル時間と生成コードの性能の双方を増加 させます。 .TP .B \-O3 さらなる最適化を行います。これは .B \-O2 が行う全ての最適化手段に加えて .B \-finline\-functions も有効にします。 .TP .B \-Os サイズ優先で最適化します。 普通、コードを増大させることのない全ての .B \-O2 最適化が有効になります。 更に、コードサイズを減らすように設計された最適化も行います。 .TP .B \-O0 最適化を行いません。 .Sp 複数の .B \-O オプションを指定した場合は、レベル番号の有無に関わらず、最後に指定した ものが有効になります。 .PP `\|\c .B \-f\c .I flag\c \&\c \&\|' の形式を持ったオプションは、マシン独立のフラグです。ほとんどの フラグは有効形式と無効形式の双方を持っています。`\|\c .B \-ffoo\c \&\|' の無効形式は `\|\c .B \-fno\-foo\c \&\|' です。以下のリストでは、デフォルトではない方の形式のみを示します。 これに対して `\|\c .B no\-\c \&\|' を削除する、あるいは追加することによって双方の形式を生成すること が可能です。 .TP .B \-ffloat\-store 浮動小数点変数をレジスタに格納しません。このオプションは 68000 のように (68881 の) 浮動小数点レジスタが \c .B double\c \& よりも高い精度を持っていると思われるマシンにおいて、望まない超過精度を 抑制することを可能にします。 .Sp ほとんどのプログラムにおいては、超過精度は単に良い結果を生むだけですが、 いくつかのプログラムは正確な IEEE の浮動小数点フォーマット定義に依 存しています。 このようなプログラムに対して `\|\c .B \-ffloat\-store\c \&\|' を使用します。 .TP .B \-fmemoize\-lookups .TP .B \-fsave\-memoized コンパイルを高速に行なうために、ヒューリスティックスを使用します (C++ のみ)。これらのヒューリスティックスはデフォルトでは有効になってい ません。なぜなら、これはある種の入力ファイルにしか効果がなく、その他の ファイルではかえってコンパイルが低速になるからです。 .Sp 最初に、コンパイラはメンバ関数への呼び出し (あるいはデータメンバへの参 照) を構築します。これは (1) どのクラスでその名前のメンバ関数が実装さ れているかを決定し、(2) どのメンバ関数への呼び出しであるかという問題 (これはどの種類の型変換が必要となるかという決定も含みます) を解決し、(3) 呼び出し側に対するその関数の可視性を検査するという作業を行なう必要があります。 これらは全て、コンパイルをより低速にしてしまいます。通常は、そのメンバ 関数への 2 度目の呼び出しが起こった場合も、この長い処理がまた行なわれ ることになります。これは次のようなコード .Sp \& cout << "This " << p << " has " << n << " legs.\en"; .Sp は、これらの 3 つの手順を 6 回繰り返すということを意味します。これに対し て、ソフトウェアキャッシュを使用すると、そのキャッシュへの\*(lqヒット \*(rqは、コストを劇的に低減することが期待できます。不幸なことに、キャッシュ の導入によって異なったレイヤの機構を実装することが必要となり、それ 自身のオーバヘッドが生じてしまいます。`\|\c .B \-fmemoize\-lookups\c \&\|' はこのソフトウェアキャッシュを有効にします。 .Sp メンバとメンバ関数へのアクセス特権 (可視性) はある関数におけるコンテキスト と別の関数におけるものとでは異なるので、 .B g++ はキャッシュをフラッシュしなければなりません。`\|\c .B \-fmemoize\-lookups\c \&\|' フラグを使用すると、全ての関数をコンパイルするたびに毎回キャッシュを フラッシュします。`\|\c .B \-fsave\-memoized\c \&\|' フラグは同一のソフトウェアキャッシュについて、コンパイラが前回 コンパイルした関数のコンテキストが、次にコンパイルするコンテキストと同 一のアクセス特権を有しているとみなせる時には、キャッシュを保持します。 これは同一クラス中に多くのメンバ関数を定義している時に特に有効です。 他のクラスのフレンドになっているメンバ関数を除き、同一のクラスに属して いる全てのメンバ関数のアクセス特権は、全て同一です。このような場合は キャッシュをフラッシュする必要はありません。 .TP .B \-fno\-default\-inline クラススコープ中に定義されたメンバ関数をデフォルトでインライン関数とす る処理を行ないません (C++ のみ)。 .TP .B \-fno\-defer\-pop それぞれの関数呼び出しに対して、関数のリターン直後に常に引数をポップします。 関数呼出後に引数をポップしなければならないマシンにおいては、 コンパイラは通常、いくつかの関数の引数をスタックに積んで、 それらを同時にポップします。 .TP .B \-fforce\-mem メモリオペランドに対して、それらに対する演算が行なわれる前に、 レジスタにコピーします。これは全てのメモリ参照を、潜在的な共通部分式であると 定めることによって、より良いコードを生成します。もしそれが共通部分式でな かった場合は、命令コンビネーションによってレジスタへの読み込みは削 除されます。私はこれがどのような違いを生み出すかということに興味があります。 .TP .B \-fforce\-addr メモリアドレス定数について、それらに対する演算が行なわれる前にレジスタ にコピーします。これは `\|\c .B \-fforce\-mem\c \&\|' と同じ手法でより良いコードを生成します。私はこれがどのような違いを 生み出すかということに興味があります。 .TP .B \-fomit\-frame\-pointer フレームポインタをレジスタに格納する必要のない関数において、この処理を 行いません。これはフレームポインタの保存、設定、復帰にかかる命令を省略 し、さらに、多くの関数でレジスタ変数として使用できる余分なレジスタを 得ることを可能にします。\c .I ただし、このオプションはほとんどのマシンにおいてデバッグを不可能にします。 .Sp Vax などのいくつかのマシンでは、このフラグは効果を持ちません。なぜならこ れらのマシンでは標準の呼び出し手順が自動的にフレームポインタの設定を 行なってしまい、これが存在しないとしたところで何も節約ができないからです。 マシン記述マクロ \c .B FRAME_POINTER_REQUIRED\c \& が、ターゲットマシンがこのフラグをサポートするかどうかを制御しています。 .TP .B \-finline\-functions 全ての単純な関数を呼び出し側に組み込んでしまいます。コンパイラは ヒューリスティックスを用いて、 どの関数がこの方法で組み込むに足りるほど単純かを決定します。 .Sp もし、ある関数に対する全ての呼び出しを組み込むことができ、かつその関数が \c .B static\c \& と宣言されていた場合は、GCC はその関数を独立したアセンブラコードと しては出力をしません。 .TP .B \-fcaller\-saves 関数呼び出しにおいて破壊されるであろう値を、レジスタに保持することを可 能とします。これはこのような呼び出しの周囲にレジスタに対する保存、復帰の 特別なコードを出力することによって実現されます。このような割り当ては、そ れが通常よりも良いコードを出力するとみなされる場合にのみ行われます。 .Sp このオプションは特定のマシンではデフォルトで有効となっています。これらは 通常、このオプションの処理の代わりに使うことができる呼び出し時保存 レジスタが存在しないマシンです。 .TP .B \-fkeep\-inline\-functions ある関数への呼び出しが全て呼び出し側に組み込むことができて、かつその関数が \c .B static\c \& と宣言されていたとしても、実行時に呼び出し可能な関数も生成します。 .TP .B \-fno\-function\-cse 関数のアドレスをレジスタに置きません。つまり、定まった関数を呼び出すコードは、 それぞれ明示的な関数のアドレスを含むコードとなります。 .Sp このオプションは効率の低いコードを生成しますが、アセンブラ出力を書き換え るようなハックを行なう場合には、このオプションを使用しなければ 混乱させられることでしょう。 .TP .B \-fno\-peephole マシン固有のピープホール最適化を禁止します。 .TP .B \-ffast-math このオプションは生成コードのスピードのために、GCC に対して、いくつかの ANSI または IEEE の規則/規格を侵させます。例えば、このオプションは \c .B sqrt\c \& 関数の引数は非負の数であることを仮定します。 .Sp このオプションはどの `\|\c .B \-O\c \&\|' オプションによっても有効とされません。なぜなら、このオプションは数 学関数に関する IEEE または ANSI の規則/規格の厳密な実装に依存して書かれた プログラムに対して誤った出力を与えるからです。 .PP 以下のオプションは特殊な最適化に関する制御を行います。`\|\c .B \-O2\c \&\|' オプションは`\|\c .B \-funroll\-loops\c \&\|' と `\|\c .B \-funroll\-all\-loops\c \&\|' を除くこれらの全てのオプションを有効にします。 .PP `\|\c .B \-O\c \&\|' オプションは通常 `\|\c .B \-fthread\-jumps\c \&\|' と `\|\c .B \-fdelayed\-branch\c \&\|' を有効とします。ただし、特殊なマシンではデフォルトの最適化に対して 変更が加えられているかもしれません。 .PP 最適化に関する \*(lqきめ細かいチューニング\*(rq が必要な場合に、以下の フラグを使用することが可能です。 .TP .B \-fstrength\-reduce ループのストレングスリダクションと繰り返し変数の除去を行います。 .TP .B \-fthread\-jumps 分岐ジャンプによってある場所にジャンプした時に、最初の分岐に包括される 比較が存在した時に、最初の分岐のジャンプ先を後者の分岐先に変更します。 この変更先は、2 番目の分岐条件の真偽によって、2 番目の分岐のジャンプ先か、 あるいは2 番目の分岐の直後に定められます。 .TP .B \-funroll\-loops ループ展開の最適化を行います。これはループの繰り返し数がコンパイル時、 あるいはランタイムに決定できる時においてのみ、実行されます。 .TP .B \-funroll\-all\-loops ループ展開の最適化を行います。これは全てのループに対して行われます。この オプションは大抵、より遅く動作するプログラムを生成します。 .TP .B \-fcse\-follow\-jumps 共通部分式削除の処理において、ジャンプ命令の行先が 他の経路から到達できない場合は、そのジャンプ命令を越えてスキャンを行 ないます。例えば、共通部分式削除処理中に \c .B else \c \& 節を伴った .B if \c \& 文に出会った場合、条件が偽ならば分岐先に対しても共通部分式削除を続けます。 .TP .B \-fcse\-skip\-blocks これは `\|\c .B \-fcse\-follow\-jumps\c \&\|' に似ていますが、ブロックを跨ぐジャンプに対しても共通部分式削除を継 続します。共通部分式削除処理中に、else 節を持たない単純な \c .B if\c \& 文にであった時、 `\|\c .B \-fcse\-skip\-blocks\c \&\|' は \c .B if\c \& のボディを跨いだジャンプに対する共通部分式削除処理を継続します。 .TP .B \-frerun\-cse\-after\-loop ループ最適化が行なわれた後に、再度共通部分式削除の処理を行います。 .TP .B \-felide\-constructors コンストラクタへの呼び出しが省略できるように思われる場合に、その呼び出 しを省略します (C++ のみ)。このフラグを指 定した場合は、GNU C++ は以下のコードに対して、一時オブジェクトを経由せずに \c .B y\c \& を \c .B foo への呼び出しの結果から直接初期化します。 .Sp A foo (); A y = foo (); .Sp このオプションを使用しない場合は、GNU C++ は最初に \c .B y\c \& を\c .B A\c \& 型の適切なコンストラクタを呼び出すことによって初期化します。そして、 .B foo\c \& の結果を一時オブジェクトに格納し、最終的には `\|\c .B y\c \&\|' の値を一時オブジェクトの値に入れ換えます。 .Sp デフォルトの振舞い (`\|\c .B \-fno\-elide\-constructors\c \&\|') が、ANSI C++ 標準のドラフトには規定されています。コンストラクタ が副作用を含むプログラムに対して、`\|\c .B \-felide-constructors\c \&\|' を指定すると、そのプログラムは異なった動作をする可能性があります。な ぜなら、いくつかのコンストラクタの呼び出しが省略されるからです。 .TP .B \-fexpensive\-optimizations 比較的コストの高いいくつかの些細な最適化を行います。 .TP .B \-fdelayed\-branch ターゲットマシンにおいてこのフラグがサポートされている場合は、遅延分岐 命令後の命令スロットを命令の順番変更によって利用するように設定します。 .TP .B \-fschedule\-insns ターゲットマシンにおいてこのフラグがサポートされている場合は、必要な データを利用可能になるまで待つことによる実行の遅滞を防ぐために、命令 の順番の変更を行います。これは遅い浮動小数点命令やメモリ読み込み命令の実 行において、それらの結果を必要とする命令の前に他の命令を詰め込みます。 .TP .B \-fschedule\-insns2 `\|\c .B \-fschedule\-insns\c \&\|' と似ていますが、レジスタ割当て処理の後にもう一度命令スケジューリングの 段階を置きます。これは、比較的レジスタ数が少なく、メモリロード命令 が 1 サイクルよりも多くを要するマシンにおいて、特に効果的です。 .SH ターゲットオプション デフォルトでは、GNU CC コンパイラは、現在使用しているマシンと同じタイプの コードをコンパイルします。しかし、GNU CC はクロスコンパイラ としてもインストールすることが可能です。実際には、異なったターゲット マシンのための様々なコンフィギュレーションの GNU CC は、同時にいくつ もインストールすることが可能です。そこで、どの GNU CC を使用するかを 指定するために、`\|\c .B \-b\c \&\|' オプションを使用することができます。 .PP これに加えて、古い、あるいはより新しいバージョンの GNU CC も同時にいく つもインストールしていくことができます。これらのうち 1 つ (おそらくもっ とも新しいもの) がデフォルトとなります。しかし、ひょっとしたら別のものを使 いたくなるかもしれません。 .TP .BI "\-b " "machine" 引数 \c .I machine\c \& は、コンパイルのターゲットマシンを規定します。これは GNU CC をクロス コンパイラとしてインストールした時に有用です。 .Sp .I machine\c \& に指定する値は、GNU CC をクロスコンパイラとしてコンフィギュレーション した時に与えたマシンタイプと同じです。例えば、80386 上の System V で実行されるプログラムのために `\|\c .B configure i386v\c \&\|' というコンフィギュレーションを行なったクロスコンパイラを起動した い場合は、`\|\c .B \-b i386v\c \&\|' と指定します。 .Sp `\|\c .B \-b\c \&\|' の設定を省略した場合は、通常は使用しているマシンと同タイプのマシン のためのコンパイルが行われます。 .TP .BI "\-V " "version" 引数 \c .I version\c \& は、起動される GNU CC のバージョンを規定します。これは複数のバージョンが インストールされている場合に有用です。例えば、 .I version\c \& が `\|\c .B 2.0\c \&\|' ならば、GNU CC バージョン 2.0 を起動することを意味します。 .Sp `\|\c .B \-V\c \&\|' を指定しなかった場合のデフォルトのバージョンは、GNU CC をインストール する時に調整可能です。通常は、もっとも一般的な使用に勧めることができる バージョンがここに指定されます。 .SH マシン依存オプション それぞれのターゲットマシンタイプは、それぞれの特別なオプションを持つ ことが可能です。`\|\c .B \-m\c \&\|' で始まるオプション群は、様々なハードウェアモデルや コンフィギュレーション\(em\&例えば 68010 と 68020、 浮動小数点コプロセッサの有無\(em\& などを選択できます。このオプションを指定することによって、コンパイラは どれか 1 つのモデル、 あるいはコンフィギュレーションに対するコンパイルが可能です。 .PP いくつかのコンフィギュレーションは、通常はそのプラットフォーム上の 他のコンパイラとのコマンドラインに関するの互換性をとるため の特別なオプションを用意しています。 .PP 以下は 68000 シリーズのために定義された `\|\c .B \-m\c \&\|' オプションです。 .TP .B \-m68000 .TP .B \-mc68000 68000 のためのコードを生成します。これは 68000 ベースのシステムに対して コンフィギュレーションを行なったコンパイラのデフォルトです。 .TP .B \-m68020 .TP .B \-mc68020 (68000 ではなく) 68020 のためのコードを生成します。これは 68020 ベースの システムに対してコンフィギュレーションを行なったコンパイラのデフォルト です。 .TP .B \-m68881 浮動小数点演算のために 68881 命令を含んだ出力を行います。これはほとんどの 68020 ベースのシステムにおいて、コンパイラのコンフィギュレーション時に .B \-nfp を指定されなかった場合のデフォルトです。 .TP .B \-m68030 68030 のためのコードを生成します。これは 68030 ベースのシステムに対して コンフィギュレーションを行なったコンパイラのデフォルトです。 .TP .B \-m68040 68040 のためのコードを生成します。これは 68040 ベースのシステムに対して コンフィギュレーションを行なったコンパイラのデフォルトです。 .TP .B \-m68020\-40 68040 のためのコードを生成しますが、新しい命令を使用しません。この結果とし て得られるコードは、68020/68881, 68030, 68040 のいずれのシステムにおいても、 比較的高い性能を持ちます。 .TP .B \-mfpa 浮動小数点演算のために Sun FPA 命令を含んだ出力を行います。 .TP .B \-msoft\-float 浮動小数点演算のためにライブラリを呼び出す出力を行います。 .I 警告: この必須のライブラリは GNU CC の一部としては含まれません。通常はそのマシン の一般的な C コンパイラの提供するものを使用しますが、これは通常の方法 ではクロスコンパイルで直接使用することはできません。クロスコンパイルを行 ないたい場合は、自分自身で必要なライブラリ関数を用意する必要があります。 .TP .B \-mshort .B int\c \& 型を \c .B short int\c \& 型のように 16 ビット幅とみなします。 .TP .B \-mnobitfield ビットフィールド命令を使用しません。`\|\c .B \-m68000\c \&\|' は暗黙のうちに `\|\c .B \-mnobitfield\c \&\|' を含みます。 .TP .B \-mbitfield ビットフィールド命令を使用します。`\|\c .B \-m68020\c \&\|' は暗黙のうちに `\|\c .B \-mbitfield\c \&\|' を含みます。これは変更されていないソースの場合のデフォルトです。 .TP .B \-mrtd 固定個数の引数をとる関数に対して、異なった関数呼び出し規約を使用します。 これは、リターン時に引数をポップする \c .B rtd 命令を利用するものです。これは呼び出し側で引数をポップさせる必要がな いために、1 命令を省略することが可能となります。 .Sp この呼び出し規約は通常の Unix で使用されている方式とは互換性がありません。そ のため、Unix コンパイラでコンパイルされたライブラリを呼び出す必要があ る限りは、使用することはできません。 .Sp さらに、全ての可変引数をとり得る関数 ( .B printf\c を含みます) に対して、関数プロトタイプを用意する必要があります。さもないと、 これらの関数に対して誤ったコードが生成されます。 .Sp さらに、関数に対して多過ぎる引数をつけて呼び出すコードを書いた場合、こ れは深刻な誤ったコードを生成します。(通常は多過ぎる変数は害を及ぼすこと なく無視されます。) .Sp .B rtd\c \& 命令は 68010 と 68020 によってサポートされますが、 68000 では使用でき ません。 .PP 以下は Vax のために定義された `\|\c .B \-m\c \&\|' オプションです。 .TP .B \-munix 特定のいくつかのジャンプ命令 (\c .B aobleq\c \& 等) を出力しません。これらの命令で長いレンジを使用した場合、 Vax 用の Unix アセンブラはこれを処理できません。 .TP .B \-mgnu これらのジャンプ命令を出力します。アセンブルには GNU アセンブラの使用 を仮定します。 .TP .B \-mg 浮動小数点数について、d-フォーマットではなく、g-フォーマットのための コードを出力します。 .PP 以下は SPARC でサポートされている `\|\c .B \-m\c \&\|' スイッチです。 .PP .B \-mfpu .TP .B \-mhard\-float 浮動小数点命令を含む出力を行います。これはデフォルトです。 .PP .B \-mno\-fpu .TP .B \-msoft\-float 浮動小数点の処理のためにライブラリを呼び出す出力を行います。 .I 警告: SPARC 用の GNU 浮動小数点ライブラリは存在しません。 通常はそのマシンの一般的な C コンパイラの提供するものを使用しますが、 これは通常の方法ではクロスコンパイルで直接使用することはできません。 クロスコンパイルを行ないたい場合は、 自分自身で必要なライブラリ関数を用意する必要があります。 .Sp .B \-msoft\-float は呼び出し規約を変更します。したがって、 .I 全て のプログラムをこのオプションでコンパイルしない限り、 このオプションは意味をなしません。 .PP .B \-mno\-epilogue .TP .B \-mepilogue .B \-mepilogue を指定することによって (デフォルト)、コンパイラは関数を抜けるため のコードを常に関数の最後に出力します。関数の途中で関数を抜けるコードは全て、 関数の最後の終了コードへのジャンプとして生成されます。 .Sp .BR \-mno\-epilogue を設定することによって、コンパイラは関数から抜けるコードをインライン化 することを試みます。 .PP .B \-mno\-v8 .TP .B \-mv8 .TP .B \-msparclite これらの 3 つのオプションは SPARC アーキテクチャのバリエーションを選択 するために使用されます。 .Sp デフォルトでは、(Fujitsu SPARClite 用にコンフィギュレーションしない限 りは) GCC は SPARC アーキテクチャ v7 用のコードを生成します。 .Sp .B \-mv8 は、SPARC v8 用コードを生成します。v7 コードとの違いは、整数の乗算と整数 の除算が v7 では存在しないが v8 には存在するという点のみです。 .Sp .B \-msparclite は、SPARClite 用のコードを生成します。これは v7 には存在せず SPARClite に存在する、整数乗算、整数除算とスキャン (ffs) 命令を追加します。 .PP .B \-mcypress .TP .B \-msupersparc これら 2 つのオプションはコード最適化対象のプロセッサを選択するための ものです。 .Sp .B \-mcypress を用いると(これがデフォルト)、 コンパイラは Cypress CY7C602 チップ用にコードを最適化します。 このチップは SparcStation/SparcServer 3xx シリーズに用いられています。 このオプションは古い SparcStation 1, 2, IPX などにも適用できます。 .Sp .B \-msupersparc を用いると、コンパイラは SuperSparc CPU 用にコードを最適化します。 このチップは SparcStation 10, 1000, 2000 シリーズに用いられています。 このオプションを用いると、SPARC v8 の全命令セットを用いるようになります。 .PP 以下は Convex のために定義された `\|\c .B \-m\c \&\|' オプションです。 .TP .B \-mc1 C1 用の出力を行います。これはコンパイラが C1 用にコンフィギュレーション を行なわれた時のデフォルトです。 .TP .B \-mc2 C2 用の出力を行います。これはコンパイラが C2 用にコンフィギュレーション を行なわれた時のデフォルトです。 .TP .B \-margcount 引数列の前に、引数の数をワードに置くコードを生成します。いくつかの可搬性 のない Convex や Vax のプログラムはこのワードを必要とします。(デバッガは 不定長引数リストを持つ関数を除いて、このワードを必要としません。これらの 情報はシンボルテーブルに書かれます。) .TP .B \-mnoargcount 引数の数を示すワードを省略します。これは変更されていないソースを使用した 場合のデフォルトです。 .PP 以下は、AMD Am29000 のために定義された `\|\c .B \-m\c \&\|' オプションです。 .TP .B \-mdw DW ビットが立っていることを仮定したコードを出力します。これは、ハードウェア によってバイト操作やハーフワード操作がサポートされているということを 意味します。これはデフォルトです。 .TP .B \-mnodw DW ビットが立っていないことを仮定したコードを出力します。 .TP .B \-mbw システムがバイト操作やハーフワード書き込み操作をサポートしていることを仮定した コードを生成します。これはデフォルトです。 .TP .B \-mnbw システムがバイト操作やハーフワード書き込み操作をサポートしていないことを仮定し たコードを生成します。これは暗黙のうちに `\|\c .B \-mnodw\c \&\|' を含みます。 .TP .B \-msmall スモールメモリモデルを使用します。これは全ての関数のアドレスが単一の 256KB のセグメント内に入ることと、関数の絶対アドレスが 256K 以下にある ことを仮定します。このオプションは \c .B call\c \& 命令を \c .B const\c \&, \c .B consth\c \&, \c .B calli\c \& シーケンスの代わりに使用することを可能にします。 .TP .B \-mlarge .B call\c \& 命令が使用できることを仮定しません。これはデフォルトです。 .TP .B \-m29050 Am29050 用のコードを生成します。 .TP .B \-m29000 Am29000 用のコードを生成します。これはデフォルトです。 .TP .B \-mkernel\-registers .B gr96-gr127\c \& レジスタへの参照の代わりに .B gr64-gr95\c \& を参照するコードを生成します。このオプションは、ユーザのコードか ら使用できるグローバルレジスタから区別されたグローバルレジスタの集合 を利用するカーネルのコードをコンパイルする時に使用できます。 .Sp ただし、このオプションが使用されている時にも `\|\c .B \-f\c \&\|' フラグ中のレジスタ名は通常のユーザモードでの名前を使用します。 .TP .B \-muser\-registers 通常のグローバルレジスタの集合 \c .B gr96-gr127\c \& を使用します。これはデフォルトです。 .TP .B \-mstack\-check .B _\|_msp_check\c \& への呼び出しをそれぞれのスタック調整の後に挿入します。これはしばしば カーネルのコードにおいて用いられます。 .PP 以下は、Motorola 88K アーキテクチャのために定義された `\|\c .B \-m\c \&\|' オプションです。 .TP .B \-m88000 m88100 と m88110 の双方で比較的高性能で動作するコードを生成します。 .TP .B \-m88100 m88100 に最適なコードを生成します。ただし m88110 においても動作します。 .TP .B \-m88110 m88110 に最適なコードを生成します。 ただし m88100 においては動作しないかも知れません .TP .B \-midentify\-revision アセンブラ出力中に、ソースファイル名、コンパイラ名とバージョン、 タイムスタンプ、使用されたコンパイルフラグを記した \c .B ident\c \& ディレクティブを挿入します。 .TP .B \-mno\-underscores シンボル名の最初にアンダスコアキャラクタをつけないアセンブラ出力を生 成します。デフォルトでは個々の名前に対して、アンダスコアをプレフィック スとして使用します。 .TP .B \-mno\-check\-zero\-division .TP .B \-mcheck\-zero\-division 初期の 88K のモデルは 0 による除算の処理に問題を持っていました。特に、そ れらの多くにおいてトラップが生じなかったことは問題でした。これ らのオプションを使用することによって、0 除算を発見し、例外を知らせる コードを埋め込むことを禁止 (あるいは明示的に許可) することができます。全 ての 88K 用の GCC のコンフィギュレーションは `\|\c .B \-mcheck\-zero\-division\c \&\|' をデフォルトとして使用しています。 .TP .B \-mocs\-debug\-info .TP .B \-mno\-ocs\-debug\-info 88Open Object Compatibility Standard \*(lqOCS\*(rq で定義された (それぞれのスタックフレーム中で使用されるレジスタに関する) 付加的なデバッグ 情報を取り込みます (または省略します)。これらの付加的な情報は GDB によっ ては必要とされません。DG/UX, SVr4, Delta 88 SVr3.2 ではデフォルトでこの情 報を含めます。その他の 88K コンフィギュレーションではデフォルトで省略します。 .TP .B \-mocs\-frame\-position .TP .B \-mno\-ocs\-frame\-position OCS で規定されているように、レジスタの値に対して、スタックフレーム中の 特定の場所に保存されるという動作を強制します (あるいは要求しません)。 DG/UX, Delta88 SVr3.2, BCS のコンフィギュレーションでは `\|\c .B \-mocs\-frame\-position\c \&\|' をデフォルトとして、それ以外の 88k コンフィギュレーションでは `\|\c .B \-mno\-ocs\-frame\-position\c \&\|' をデフォルトとして使用しています。 .TP .B \-moptimize\-arg\-area .TP .B \-mno\-optimize\-arg\-area 関数の引数がどのような方法でスタックフレームに格納されるかを指定します。 `\|\c .B \-moptimize\-arg\-area\c \&\|' はスペースを節約しますが、いくつかのデバッガ (GDB は含まれない) を クラッシュさせます。`\|\c .B \-mno\-optimize\-arg\-area\c \&\|' はより標準に従っています。デフォルトでは GCC は引数エリアの最適化 を行いません。 .TP .BI "\-mshort\-data\-" "num" データ参照時に、それらの処理を \c .B r0\c \& からの相対参照で行なうことによって小さなコードにすることを可能とします。 これは値のロードを (その他の場合は 2 命令かかるところを) 1 命令で行な うことを可能にします。\c .I num\c \& をこのオプションとともに指定することによって、どのデータ参照が影響 を受けるかを指定することができます。例えば `\|\c .B \-mshort\-data\-512\c \&\|' を指定すると、512 バイト以内のディスプレースメントのデータ参照が 影響を受けることになります。 `\|\c .B \-mshort\-data\-\c .I num\c \&\c \&\|' は \c .I num\c \& が 64K よりも大きな時は効果を持ちません。 .PP .B \-mserialize-volatile .TP .B \-mno-serialize-volatile volatile なメモリへの参照について、シーケンシャルな整合性を持った コードを生成する、あるいは生成しません。 .Sp GNU CC はデフォルトではどのプロセッササブモデルを選んだ場合においても、 整合性を常に保証します。これがどのように実現されているかは、サブモデルに 依存しています。 .Sp m88100 プロセッサはメモリ参照の順番を入れ換えないので、常にシーケンシャルな 整合性は保たれます。もし `\|\c .B \-m88100\c \&\|' を使用した場合は、GNU CC はシーケンシャルな整合性を保つための特 別な命令を生成しません。 .Sp m88110 プロセッサにおけるメモリ参照の順番は、必ずしもそれらの要求を行 なった命令の順番とは一致しません。特に、読み込み命令は、先行する書き込み 命令よりも先に実行され得ます。このような順番の入れ換えは、マルチプロセッサ時に volatile なメモリの参照におけるシーケンシャルな整合性を崩してしまいます。 `\|\c .B \-m88000\c \&\|' または `\|\c .B \-m88110\c \&\|' を指定した場合には、GNU CC は、必要な場合は特別な命令を生成し、 命令の実行が正しい順番で行なわれることを強制します。 .Sp ここで生成される整合性を保証するための特別な命令はアプリケーションの性 能に対して影響を及ぼします。もしこの保証無しで問題がないということがわかっ ている場合は、`\|\c .B \-mno-serialize-volatile\c \&\|' を使用することができます。 .Sp `\|\c .B \-m88100\c \&\|' オプションを使用しているが、m88110 における実行時にシーケンシャルな 整合性が必要とされる場合は、`\|\c .B \-mserialize-volatile\c \&\|' を使用するべきです。 .PP .B \-msvr4 .TP .B \-msvr3 System V release 4 (SVr4) に関連したコンパイラの拡張を有効 (`\|\c .B \-msvr4\c \&\|') あるいは無効 (`\|\c .B \-msvr3\c \&\|') にします。これは以下の内容を制御します。 .TP \ \ \ \(bu 生成するアセンブラの文法の種類 (これは `\|\c .B \-mversion\-03.00\c \&\|' を使用することによって独立に制御できます)。 .TP \ \ \ \(bu `\|\c .B \-msvr4\c \&\|' は C プリプロセッサに対して `\|\c .B #pragma weak\c \&\|' を理解させます。 .TP \ \ \ \(bu `\|\c .B \-msvr4\c \&\|' は、GCC に SVr4 によって使用されている付加的な宣言ディレクティブ を生成させます。 .PP `\|\c .B \-msvr3\c \&\|' は、SVr4 を除く全ての m88K コンフィギュレーションにおけるデフォ ルトです。 .TP .B \-mtrap\-large\-shift .TP .B \-mhandle\-large\-shift 31 ビットより大きいビットシフトを検出するコードを埋め込みます。これらの オプションを指定することによって、それぞれトラップ、あるいは適切に処理す るコードが埋め込まれます。デフォルトでは GCC は大きなビットシフトには 特別な対策を行いません。 .TP .B \-muse\-div\-instruction 非常に初期の 88K アーキテクチャのモデルは除算命令を持っていません。従っ て、GCC はデフォルトでは除算命令を生成しません。このオプションは除算命令 が安全に使用できるということを指定します。 .TP .B \-mversion\-03.00 DG/UX コンフィギュレーションには、2 つの SVr4 の種類があります。このオプション は .B \-msvr4 オプションによって hybrid-COFF と real-ELF のどちらが使用されるかを選択します。 他のコンフィギュレーションはこのオプションを無視します。 .TP .B \-mwarn\-passed\-structs 関数に対して構造体を渡した場合と、関数が構造体を返した場合に警告します。 構造体を渡す規約は C 言語の発展の中で変化しており、移植性の問題をしば しば生じることになります。デフォルトでは GCC はこの警告を行いません。 .PP 以下のオプションは IBM RS6000 のために定義されたものです。 .PP .B \-mfp\-in\-toc .TP .B \-mno\-fp\-in\-toc 浮動小数点定数を Table of Contents (TOC) に入れるかどうかを指定します。 このテーブルは全てのグローバル変数と関数のアドレスを格納します。デフォルト では GCC は浮動小数点定数をここに格納します。もし TOC が算術あふれをおこす 場合は、`\|\c .B \-mno\-fp\-in\-toc\c \&\|' を使用することによって TOC のサイズを小さくすることが可能であり、 算術あふれを防ぐことができるでしょう。 .PP 以下は IBM RT PC 用に定義された `\|\c .B \-m\c \&\|' オプションです。 .TP .B \-min\-line\-mul 整数の乗算に対してインラインのコード列を生成します。これはデフォルトです。 .TP .B \-mcall\-lib\-mul 整数の乗算に対して \c .B lmul$$\c \& を呼び出します。 .TP .B \-mfull\-fp\-blocks フルサイズの浮動小数点データブロックを生成します。これは IBM によって推 奨されている最低限のスクラッチスペースの量を包含します。これはデフォルトです。 .TP .B \-mminimum\-fp\-blocks 浮動小数点データブロック内に特別なスクラッチスペースを含めません。これに よって、より小さなコードが生成されますが、実行は遅くなります。 なぜならスクラッチスペースが動的に確保されるからです。 .TP .B \-mfp\-arg\-in\-fpregs IBM の関数呼び出し規約とは互換性のない呼び出し手順を使用します。 この規約では浮動小数点引数を浮動小数点レジスタに入れて渡します。 このオプションを指定すると、\c .B varargs.h\c \& や \c .B stdarg.h\c \& で浮動小数点オペランドが使用できなくなることに注意して下さい。 .TP .B \-mfp\-arg\-in\-gregs 浮動小数点に対して通常の関数呼び出し規約を使用します。これはデフォルトです。 .TP .B \-mhc\-struct\-return 1 ワードより大きな構造体を返す時に、レジスタではなくメモリを使用して返します。 これは MetaWare HighC (hc) コンパイラとの互換性を提供します。`\|\c .B \-fpcc\-struct\-return\c \&\|' を使用することによって Portable C Compiler (pcc) との互換性を得 ることができます。 .TP .B \-mnohc\-struct\-return 1 ワードより大きな構造体を返す時に、レジスタによって返される場合があります。 これはその方が便利であると考えられる時に使用されます。これはデフォルトです。 IBM が提供するコンパイラとの互換性を得るためには、`\|\c .B \-fpcc\-struct\-return\c \&\|' と `\|\c .B \-mhc\-struct\-return\c \&\|' の双方を使用します。 .PP 以下は MIPS ファミリのために定義された `\|\c .B \-m\c \&\|' オプションです。 .TP .BI "\-mcpu=" "cpu-type" 命令スケジューリング時に、デフォルトのマシンタイプを .I cpu-type に仮定します。デフォルトの .I cpu-type は .BR default です。この選択はすべてのマシンに対する最長のサイクル数を元にコードを 生成します。これは、生成されるコードがどの MIPS cpu においても適当な速度 で処理されるようにするためです。これ以外の .I cpu-type の選択としては、 .BR r2000 , .BR r3000 , .BR r4000 , .BR r6000 があります。特定の .I cpu-type を選択した場合は、その特定のチップに適したスケジュールが行われます。 コンパイラは、 .B \-mips2 または .B \-mips3 スイッチが使用されていない場合は、MIPS ISA (instruction set architecture) のレベル 1 に合致しないコードを生成することはありません。 .TP .B \-mips2 MIPS ISA のレベル 2 (branch likely 命令, 平方根命令) による命令群 を出力します。 .B \-mcpu=r4000 と .B \-mcpu=r6000 スイッチは、 .BR \-mips2 と共に使用される必要があります。 .TP .B \-mips3 MIPS ISA のレベル 3 (64 ビット命令) を含む命令群を出力します。 .B \-mcpu=r4000 スイッチは、 .BR \-mips2 と同時に使用する必要があります。 .TP .B \-mint64 .TP .B \-mlong64 .TP .B \-mlonglong128 これらのオプションは現在動作しません。 .TP .B \-mmips\-as MIPS アセンブラのためのコードを生成し、 .B mips\-tfile を起動して通常のデバッグ情報を追加します。 これは OSF/1 リファレンスプラットフォーム 以外の全てのプラットフォームにおけるデフォルトです。 OSF/1 リファレンスプラットフォームは OSF/rose オブジェクトフォーマットを 使用します。スイッチ .BR \-ggdb , .BR \-gstabs , .B \-gstabs+ のうちのどれかが使用されている場合は、 .B mips\-tfile プログラムは、stabs を MIPS ECOFF 中にカプセル化します。 .TP .B \-mgas GNU アセンブラ用のコードを生成します。これは OSF/1 リファレンスプラットフォーム におけるデフォルトです。OSF/1 リファレンスプラットフォームは OSF/rose オブジェクトフォーマットを使用します。 .TP .B \-mrnames .TP .B \-mno\-rnames .B \-mrnames スイッチは出力コードにおいて、レジスタの名前として、ハードウェア名の代 わりに MIPS ソフトウェア名を使用することを指定します。(つまり、 .B a0 を .BR $4 の代わりに使用します)。 GNU アセンブラは .B \-mrnames スイッチをサポートしません。MIPS アセンブラはソースファイルに対して MIPS C プリプロセッサを起動するでしょう。 .B \-mno\-rnames スイッチがデフォルトです。 .TP .B \-mgpopt .TP .B \-mno\-gpopt .B \-mgpopt スイッチは、全てのデータ宣言をテキストセクション中の全命令の前に書き出 すことを指定します。これによって、全ての MIPS アセンブラは、 ショートグローバル、あるいは静的なデータアイテムに対して、2 ワードではなく、1 ワードのメモリ参照命令を生成します。 これは最適化が指定された場合のデフォルトです。 .TP .B \-mstats .TP .B \-mno\-stats .B \-mstats が指定された場合は、コンパイラによってインラインでない関数が処理される ごとに、標準エラー出力ファイルに対して、そのプログラムに対する統計情報 を示す 1 行のメッセージを出力します。このメッセージは、保存したレジスタ の数、スタックのサイズなどを示します。 .TP .B \-mmemcpy .TP .B \-mno\-memcpy .B \-mmemcpy スイッチは、全てのブロック転送に対して、インラインコードを生成する代わ りに、適切なストリング関数 .RB ( memcpy または .BR bcopy ) を呼び出すコードを生成します。 .TP .B \-mmips\-tfile .TP .B \-mno\-mips\-tfile .B \-mno\-mips\-tfile スイッチを指定すると、 MIPS アセンブラがデバッグサポートのために生成したオブジェクトファイルに対し、 .B mips\-tfile を使用した後処理を行いません。 .B mips\-tfile が実行されないと、デバッガからはローカル変数を扱うことができません。 さらに、 .B stage2 と .B stage3 のオブジェクトはアセンブラに渡される一時的なファイル名をオブジェクトファイル 中に埋め込まれて持っており、このためそれらを比較した場合に同一のも のとはみなされません。 .TP .B \-msoft\-float 浮動小数点演算のためにライブラリを呼び出す出力を行います。 .I 警告: この必須のライブラリは GNU CC の一部としては含まれません。通常はそのマシンの 一般的な C コンパイラの提供するものを使用しますが、これは通常の方法 ではクロスコンパイルで直接使用することはできません。クロスコンパイルを行 ないたい場合は、自分自身で必要なライブラリ関数を用意する必要があります。 .TP .B \-mhard\-float 浮動小数点命令を含んだ出力を生成します。これは変更されないソースを使用し た場合のデフォルトです。 .TP .B \-mfp64 ステータスワード中の .B FR ビットが立っていることを仮定します。これは 32 個の 32 ビット浮動小数点 レジスタの代わりに、32 個の 64 ビットの浮動小数点レジスタが存在するとい うことを示します。この場合は、同時に .B \-mcpu=r4000 と .B \-mips3 スイッチを指定する必要があります。 .TP .B \-mfp32 32 個の 32 ビット浮動小数点レジスタが存在するということを仮定します。こ れはデフォルトです。 .PP .B \-mabicalls .TP .B \-mno\-abicalls いくつかの System V.4 の移植が位置独立コードのために使用する疑似命令 .BR \&.abicalls , .BR \&.cpload , .B \&.cprestore を出力する、あるいは出力しません。 .TP .B \-mhalf\-pic .TP .B \-mno\-half\-pic .B \-mhalf\-pic スイッチは、テキストセクション中に参照を配置する代わりに、外部参照を行 なうポインタをデータセクションに配置し、それをロードする動作を指定します。 このオプションは現在まだ動作しません。 .B .BI \-G num は .I num バイト以下のグローバル、あるいは静的なアイテムを、通常のデータや bss セクションではなく、小さなデータ、または bss セクションに配置することを 指定します。 これによりアセンブラは、通常では 2 ワードの参照を行うところを、 グローバルポインタ .RB ( gp または .BR $28 ) を基準とした 1 ワードのメモリ参照命令を生成可能となります。 デフォルトでは MIPS アセンブラが使用される場合、 .I num は 8 です。また、GNU アセンブラが使用される場合のデフォルトは 0 です。 .BI \-G num スイッチはアセンブラ、リンカにも同様に渡されます。全てのモジュールは同一の .BI \-G num の値でコンパイルされなければなりません。 .TP .B \-nocpp MIPS アセンブラに、ユーザアセンブラファイル (`\|\c .B .s\c \&\|' 拡張子を持ちます) に対するアセンブル時のプリプロセッサの起動を抑制さ せます。 .PP 以下は、Intel 80386 ファミリ用に定義された `\|\c .B \-m\c \&\|' オプションです。 .TP .B \-m486 .TP .B \-mno\-486 386 ではなく 486 に最適化されたコードを出力する、あるいはその逆を行な う指定を行います。486 用に生成されたコードは 386 で実行可能であり、逆も また可能です。 .TP .B \-mpentium .B \-mcpu=pentium と同義です。 .TP .B \-mpentiumpro .B \-mcpu=pentiumpro と同義です。 .TP .B \-mcpu=\fIcpu type\fP 命令をスケジューリングする際のマシンタイプのデフォルトを設定します。 CPU TYPE の選択肢は .B i386, .B i486, .B i586 (pentium), .B pentium, .B i686 (pentiumpro), および .B pentiumpro です。 ある CPU TYPE を選ぶと、その特定チップに適するようにスケジューリングを 行いますが、 .B \-march=\fIcpu type\fP オプションを指定しない限り、コンパイラは i386 で実行できないような コードは生成しません。 .TP .B \-march=\fIcpu type\fP マシンタイプ CPU TYPE 用に命令を生成します。 CPU TYPE の選択肢は .B i386, .B i486, .B pentium, および .B pentiumpro です。 .B \-march=\fIcpu type\fP を指定すると .B \-mcpu=\fIcpu type\fP も指定されたものとみなします。 .TP .B \-msoft\-float 浮動小数点演算のためにライブラリを呼び出す出力を行います。 .I 警告: この必須のライブラリは GNU CC の一部としては含まれません。通常はそのマシンの 一般的な C コンパイラの提供するものを使用しますが、これは通常の方法 ではクロスコンパイルで直接使用することはできません。クロスコンパイルを行 ないたい場合は、自分自身で必要なライブラリ関数を用意する必要があります。 .Sp 関数が浮動小数点数を返す時に 80387 レジスタスタックを使用するマシンに おいては、`\|\c .B \-msoft-float\c \&\|' を使用した場合でも、いくつかの浮動小数点命令が生成されます。 .TP .B \-mno-fp-ret-in-387 関数からの返り値に FPU のレジスタを使用しません。 .Sp 通常の関数呼び出し規約は、たとえ FPU が存在しなくても .B float\c \& と \c .B double\c \& の結果を FPU レジスタに入れて返します。したがってこの場合、 オペレーティングシステムは FPU をエミュレートしなければなりません。 .Sp `\|\c .B \-mno-fp-ret-in-387\c \&\|' オプションを指定すると、浮動小数点数も通常の CPU レジスタに入れ て返されます。 .TP .B \-mprofiler-epilogue .TP .B \-mno-profiler-epilogue 関数から抜けるコードにてプロファイル情報を書き出す追加コードを生成します。 .PP 以下は HPPA ファミリ用に定義された `\|\c .B \-m\c \&\|' オプションです。 .TP .B \-mpa-risc-1-0 PA 1.0 プロセッサ用のコードを出力します。 .TP .B \-mpa-risc-1-1 PA 1.1 プロセッサ用のコードを出力します。 .TP .B \-mkernel カーネルに適したコードを生成します。特に、引数の 1 つとして DP レジスタを とる .B add\c \& 命令の使用を抑制し、その代わりに、\c .B addil\c \& 命令を生成します。これは HP-UX リンカの深刻なバグを避けるための措置です。 .TP .B \-mshared-libs HP-UX 共有ライブラリとリンクさせるコードを生成します。このオプションはま だ完全に動作しているわけではなく、どの PA ターゲットにおいてもデフォルト になっていません。このオプションを指定すると、コンパイラは誤ったコード を出力し得ます。 .TP .B \-mno-shared-libs 共有ライブラリとリンクしないコードを生成します。これは全ての PA ターゲット においてデフォルトのオプションです。 .TP .B \-mlong-calls 関数の呼び出し先と呼び出し元が同一ファイルに含まれた場合、呼び出し時の 距離が 256K を越える場合でも動作するようなコードを出力します。 このオプションは、リンカから \*(lqbranch out of range errors\*(rq で リンクを拒否された時以外には使用しないようにしてください。 .TP .B \-mdisable-fpregs いかなる形においても、浮動小数点レジスタの使用を禁止します。 これは浮動小数点レジスタに配慮しないコンテキストスイッチを行なう カーネルに対して有効です。 このオプションを使用して、浮動小数点処理を行なおうとすると、 コンパイラはアボートします。 .TP .B \-mdisable-indexing コンパイラに対して、indexing addressing mode を使用しないように指定します。 これによって MACH において MIG によって生成されたコードをコンパイルす る際の、あまり重要でないいくつかの問題を防ぐことができます。 .TP .B \-mtrailing-colon ラベル定義の後にコロンを加えます (ELF アセンブラ用)。 .PP 以下は、Intel 80960 ファミリ用に定義された `\|\c .B \-m\c \&\|' オプションです。 .TP .BI "\-m" "cpu-type" デフォルトのマシンタイプを .I cpu-type に仮定します。これは生成する命令とアドレッシングモード、そして境界条件に 関係します。 デフォルトの .I cpu-type は .BR kb です。その他の選択としては .BR ka , .BR mc , .BR ca , .BR cf , .BR sa , .BR sb があります。 .TP .B \-mnumerics .TP .B \-msoft\-float .B \-mnumerics オプションはプロセッサが浮動小数点命令をサポートすることを示します。 .B \-msoft\-float オプションは浮動小数点サポートを仮定しないことを示します。 .TP .B \-mleaf\-procedures .TP .B \-mno\-leaf\-procedures 葉に位置する手続きについて、 .IR call 命令と同様に .I bal 命令でも呼び出すことを可能とします (あるいは、しません)。これは .I bal 命令がアセンブラ、またはリンカによって置き換えられ得る場合には、直接呼 び出しに対して効率の良いコードを得ることができます。ただし、それ以外の場 合は効率の良くないコードを生成します。例えば、関数へのポインタ経由の呼び 出しや、この最適化をサポートしないリンカを使用した場合などがこれ に該当します。 .TP .B \-mtail\-call .TP .B \-mno\-tail\-call (マシン非依存の部分を越えて) 末尾再帰を分岐に変換する処理に関するさ らなる最適化を行います(または行いません)。 この手法の適用が正当でないということに関する判断 が完全ではないので、まだこのオプションを使用することは適当でないかも しれません。デフォルトは .BR \-mno\-tail\-call です。 .TP .B \-mcomplex\-addr .TP .B \-mno\-complex\-addr この i960 の実装では複雑なアドレッシングモードの使用が優位であると仮定 します (あるいは仮定しません)。複雑なアドレッシングモードは K-シリーズでは 使用する価値は無いかも知れませんが、 C-シリーズでは確かに使用する価値があります。 現在は .B \-mcomplex\-addr が、CB と CC を除く全てのプロセッサにおけるデフォルトです。 .TP .B \-mcode\-align .TP .B \-mno\-code\-align より高速なフェッチのためにコードを 8 バイトにアラインします (または何も しません)。現在では C シリーズの実装においてのみデフォルトで有効にしています。 .TP .B \-mic\-compat .TP .B \-mic2.0\-compat .TP .B \-mic3.0\-compat iC960 v2.0 または v3.0 との互換性を持たせます。 .TP .B \-masm\-compat .TP .B \-mintel\-asm iC960 アセンブラとの互換性を持たせます。 .TP .B \-mstrict\-align .TP .B \-mno\-strict\-align アラインされないアクセスを許可しません (あるいは許可します)。 .TP .B \-mold\-align Intel による gcc リリースバージョン 1.3 (gcc 1.37 ベース) との構造体の 境界条件に関する互換性を持たせます。現在は、 .B #pragma align 1 が同時に仮定されてしまい、無効化できないというバグを持っています。 .PP 以下は、DEC Alpha 用に定義された `\|\c .B \-m\c \&\|' オプションです。 .TP .B \-mno-soft-float .TP .B \-msoft-float 浮動小数点操作に対して、ハードウェアによる浮動小数点命令を使用します (し ません)。もし、\c .B \-msoft-float\c \& が指定された場合は、`\|\c .B libgcc1.c\c \&\|' 内の関数が浮動小数点演算に使用されます。ただし、これらのルーチンが 浮動小数点演算をエミュレートするルーチンによって置き換えられているか、 そのようなエミュレーションルーチンを呼び出すようにコンパイルされている のでない限り、これらのルーチンは浮動小数点演算を行なってしまいます。浮動小 数点演算のない Alpha のためのコンパイルを行なうためには、ライブラリも これらを呼び出さないようにコンパイルされていなければなりません。 .Sp 浮動小数点演算のない Alpha の実装は、浮動小数点レジスタを必要とすると いうことに注意して下さい。 .TP .B \-mfp-reg .TP .B \-mno-fp-regs 浮動小数点レジスタセットを使用する (使用しない)コードを生成します。 .B \-mno-fp-regs\c \& は暗黙のうちに \c .B \-msoft-float\c \& を含みます。浮動小数点レジスタセットが使用されない場合は、浮動小数点 オペランドは整数レジスタに入れられて渡され、浮動小数点数の結果は $f0 では なく $0 に入れて返されます。これは非標準の関数呼び出し手順であり、 浮動小数点数の引数や返り値を持つ関数で、\c .B \-mno-fp-regs\c \& をつけてコンパイルされたコードから呼び出される関数はすべてこのオプションを つけてコンパイルされている必要があります。 .Sp このオプションの典型的な用法は、浮動小数点レジスタを使用せず、したがっ て浮動小数点レジスタへのセーブもリストアも必要のないカーネルを構築する 時などがあるでしょう。 .PP ここに追加するオプションは System V Release 4 において、これらのシステム上の 他のコンパイラとの互換性のために提供されるものです。 .TP .B \-G SVr4 システムにおいて、\c .B gcc\c \& は `\|\c .B \-G\c \&\|' オプションを受け付けます (そして これをシステムリンカに渡します)。これは他のコンパイラとの互換性のためです。 しかし、リンカオプションを \c .B gcc のコマンドラインから渡すよりも、我々は `\|\c .B \-symbolic\c \&\|' または `\|\c .B \-shared\c \&\|' の使用が適当であると考えています。 .TP .B \-Qy コンパイラが使用したそれぞれのツールのバージョンを .B .ident\c \& アセンブラディレクティブを使用して、出力で明示します。 .TP .B \-Qn .B .ident\c \& ディレクティブを出力に加えることを抑制します (これは デフォルトです)。 .TP .BI "\-YP," "dirs" `\|\c .B \-l\c \&\|' で指定されたライブラリに対して、 .I dirs\c で規定されたディレクトリのみを検索し、他は検索しません。 .I dirs\c \& 中は、1 つのコロンで区切ることにより、 複数のディレクトリエントリを記述します。 .TP .BI "\-Ym," "dir" M4 プリプロセッサを \c .I dir\c \& に検索します。アセンブラがこのオプションを使用します。 .SH コード生成オプション これらのマシン独立オプションは、 コード生成にて使用されるインタフェース規約を制御します。 .PP これらのほとんどは `\|\c \-f\c \&\|' で始まります。これらのオプションは有効形式と無効形式の 2 つの形式を持っ ています。`\|\c .B \-ffoo\c \&\|' の無効形式は `\|\c .B \-fno\-foo\c \&\|' です。以下に挙げる表においては、このうち、デフォルトではない片 方のみが挙げられています。`\|\c .B no\-\c \&\|' を追加するか、削除するかによって双方の形式を得ることができます。 .TP .B \-fnonnull\-objects 参照型によって参照されるオブジェクトはヌルでないと仮定します (C++ のみ)。 .Sp 通常は GNU C++ は参照型によって参照されるオブジェクトに関しては保守的 な仮定を行います。例えば、コンパイラは \c .B a が以下のコードにおいてヌルでないことをチェックする必要があります。 .Sp obj &a = g (); a.f (2); .Sp この種の参照がヌルでないことのチェックは、特別なコードを必要とします。 しかし、これは多くのプログラムにとって無用なものです。 このヌルに対するチェックを必要のない場合 `\|\c .B \-fnonnull-objects\c \&\|' を使用することにより、省略することができます。 .TP .B \-fpcc\-struct\-return .B struct\c \& と \c .B union の値を返す場合に、普通の C コンパイラが行なうのと同じ規約を使用します。 この規約は小規模な構造体に対して非効率なものとなり、また多くのマシンでその 関数を再入不可能としてしまいます。しかしこれは、GCC でコンパイルされたコード と PCC でコンパイルされたコードを相互に呼び出すことを可能とするとい う利点を持ちます。 .TP .B \-freg\-struct\-return .B struct と .B union の値を返す場合に、可能な場合はレジスタを使用する規約を使用します。これは .BR \-fpcc\-struct\-return を使用した場合と比較して、小さな構造体を返す場合に高い性能を発揮します。 .Sp .B \-fpcc\-struct\-return と .BR \-freg\-struct\-return のどちらも使用しなかった場合には、GNU CC は各ターゲットに対して標準で あると考えられる規約をデフォルトとして使用します。 もし標準規約がなかった場合は、 .BR \-fpcc\-struct\-return をデフォルトとして使用します。 .TP .B \-fshort\-enums .B enum\c \& 型に対して、ちょうど取り得る値の範囲に応じたバイト数の型を与えます。 具体的には、\c .B enum\c \& 型は、その値域を格納するに十分な最小の整数型と等価になります。 .TP .B \-fshort\-double .B double を .B float \& と同サイズにします。 .TP .B \-fshared\-data データと非 \c .B const\c \& 変数を、プライベートなデータではなく、共有データとしてコンパイルします。 このオプションは、走行中の同じプログラム間は共有データが共有され、 プライベートデータがそれぞれのプロセスに 1 つずつ与えられるような一部 のオペレーティングシステムで意味を持ちます。 .TP .B \-fno\-common bss セクション中の初期化されていないグローバル変数に対してでも、共通ブロック に生成するのではなく、領域を割り当てます。このオプションは、(\c .B extern\c \& をつけずに) 同一の変数を宣言した 2 つのコンパイルに対して、リンク時 にエラーを発生するという効果があります。このオプションは、常にこのような動 作を行なうシステムにおいても、プログラムが正常に動作するかどうかを検査 する場合にのみ有用です。 .TP .B \-fno\-ident `\|\c .B #ident\c \&\|' ディレクティブを無視します。 .TP .B \-fno\-gnu\-linker (C++ のコンストラクタとデストラクタのような) グローバルな初期化のコードを (GNU リンカがこれらを扱う標準のシステムであるようなシステムにおいて) GNU リンカで使用される形式で出力しません。これは GNU リンカではない リンカを使用する場合に指定します。この場合、 .B collect2\c \& を使用して、確実にシステムリンカにコンストラクタとデストラクタを含 んだコードを出力させる必要があります。(\c .B collect2\c \& は GNU CC のディストリビューションに含まれます。) \c .B collect2 \c を\c .I 必ず使用しなければならない\c \& システムにおいては、 コンパイラドライバ \c .B gcc\c \& は自動的にそのようにコンフィギュレーションされます。 .TP .B \-finhibit-size-directive .B .size\c アセンブラディレクティブなど、関数が途中で分割され、メモリ上の異なった 位置にそれぞれの部分が配置されるような場合に不都合が生じるような要素を 出力しません。このオプションは `\|\c .B crtstuff.c\c \&\|' をコンパイルする時に使用されます。それ以外の場所ではこれを使用する 必要はありません。 .TP .B \-fverbose-asm 出力のアセンブラ中に特別なコメント情報を追加し、可読性を高めます。この オプションは一般的には、出力のアセンブラコードを本当に読みたい場合 (例え ばコンパイラ自身をデバッグしているような場合) にのみ効果があります。 .TP .B \-fvolatile ポインタによるメモリの参照を全て volatile として扱います。 .TP .B \-fvolatile\-global 外部変数やグローバルデータアイテムへのメモリ参照を全て volatile として 扱います。 .TP .B \-fpic このオプションがターゲットマシンでサポートされていれば、位置独立なコードを 出力します。このオプションは共有ライブラリでの使用に適します。 .TP .B \-fPIC このオプションがターゲットマシンでサポートされていれば、位置独立なコードを 出力します。このオプションはダイナミックリンクに適しており、分岐にお いて大きなディスプレースメントを要求する場合にも適応します。 .TP .BI "\-ffixed\-" "reg" 名前が \c .I reg\c \& のレジスタを固定レジスタとして扱います。生成されたコードはこのレジスタ を参照しません (ただし、スタックポインタ、フレームポインタ、その他固定用 途の場合を除きます)。 .Sp .I reg\c \& はレジスタ名でなければなりません。受け付けられるレジスタ名はマシン固 有であり、マシン記述マクロファイル内の \c .B REGISTER_NAMES マクロに記述されたものです。 .Sp このフラグは無効形式を持ちません。なぜなら、これは 3 通りの指定が可能で あるからです。 .TP .BI "\-fcall\-used\-" "reg" 名前が \c .I reg\c \& のレジスタを、関数呼び出しによって破壊される割り当て可能のレジスタ として取り扱います。これは、関数呼び出しを跨いで存在しない一時領域や変数 として割り当ることができます。この指定でコンパイルされた関数は、レジスタ \c .I reg\c \& の保存や復帰を行いません。 .Sp このフラグをマシンの実行モデルにおいて、ある固定的で特殊な役割を持って いるレジスタ、例えばスタックポインタやフレームポインタに対して適用する ことは、破滅的な結果を生みます。 .Sp このフラグは無効形式を持ちません。なぜなら、これは 3 通りの指定が可能で あるからです。 .TP .BI "\-fcall\-saved\-" "reg" 名前が \c .I reg\c \& のレジスタを、関数によって保存される割り当て可能なレジスタとして取 り扱います。これは、関数呼び出しを跨いで存在する一時領域や変数としても割り 当てることができます。この指定でコンパイルされた関数は、レジスタ \c .I reg\c \& を使用する場合、その保存と復帰を行います。 .Sp このフラグをマシンの実行モデルにおいて、ある固定的で特殊な役割を持って いるレジスタ、例えばスタックポインタやフレームポインタに対して適用する ことは、破滅的な結果を生みます。 .Sp また、このフラグを関数の返り値が格納されるレジスタに使用すると、これも 破滅的な結果を生みます。 .Sp このフラグは無効形式を持ちません。なぜなら、これは 3 通りの指定が可能で あるからです。 .SH プラグマ 2 つの `\|\c .B #pragma\c \&\|' ディレクティブ(指令)が GNU C++ によってサポートされています。これは、1 つのヘッダファイルを 2 つの目的、つまりあるオブジェクトクラスのための インタフェースの定義としての目的と、オブジェクトクラスに含まれる内容 の完全な定義としての目的の、両方の目的で使用するためのものです。 .TP .B #pragma interface (C++ のみ) このディレクティブを、オブジェクトクラスを定義しているヘッダファイル中 に使用することによって、それらのクラスを使用するほとんどのオブジェクト ファイルの大きさを減少させることができます。通常は、 特定の情報 (インラインメンバ関数のバックアップコピー、デバッグ情報、 仮想関数実現のための内部テーブル) の複製がそのクラス定義をインクルードした それぞれのオブジェクトファイル中に置かれます。 このプラグマを使用することによって、このような複製を防ぐことが 可能となります。`\|\c .B #pragma interface\c \&\|' を含んだヘッダファイルをインクルードした場合は、これらの追加情報 は生成されません (ただし、メインの入力ソースファイル自身が `\|\c .B #pragma implementation\c \&\|' を含んでいる場合を除きます)。そのかわり、オブジェクトファイルは リンク時に解決される参照を含むことになります。 .TP .B #pragma implementation .TP \fB#pragma implementation "\fP\fIobjects\fP\fB.h"\fP (C++ のみ) インクルードされたヘッダファイルによる完全な出力を生成させたい (またそ れをグローバルに可視化したい) 場合には、メインの入力ファイル中でこの プラグマを使用します。この場合、インクルードされるヘッダファイルは、`\|\c .B #pragma interface\c \&\|' を使用していなければなりません。インライン関数のバックアップ情報、 デバッグ情報、仮想関数実現用の内部テーブルは、全てインプリメンテーション ファイル中に生成されます。 .Sp `\|\c .B #pragma implementation\c \&\|' を、引数をつけずに使用した場合は、これはそのソースファイルと同じ ベースネーム(basename)を持つファイルに対して適用されます。例えば、`\|\c .B allclass.cc\c \&\|' 中の `\|\c .B #pragma implementation\c \&\|' は、`\|\c .B #pragma implementation \*(lqallclass.h\*(rq \c \&\|' と等価です。もし複数のヘッダファイルに対して、 1 つのインプリメンテーションファイルを対応させたい場合は、 文字列の引数を使用する必要があります。 .Sp 1 つのヘッダファイルに対して、複数のインプリメンテーションファイルを対 応させる方法はありません。 .SH 関連ファイル .nf .ta \w'LIBDIR/g++\-include 'u file.c C 言語ソースファイル file.h C 言語ヘッダ (プリプロセッサ) ファイル file.i プリプロセス済みの C 言語ソースファイル file.C C++ ソースファイル file.cc C++ ソースファイル file.cxx C++ ソースファイル file.m Objective-C ソースファイル file.s アセンブリ言語ファイル file.o オブジェクトファイル a.out リンクエディット済みの出力 \fITMPDIR\fR/cc\(** 一時ファイル群 \fILIBDIR\fR/cpp プリプロセッサ \fILIBDIR\fR/cc1 C 言語コンパイラ \fILIBDIR\fR/cc1plus C++ コンパイラ \fILIBDIR\fR/collect いくつかのマシンで必要となるリンカのフロントエンド \fILIBDIR\fR/libgcc.a GCC サブルーチンライブラリ /lib/crt[01n].o スタートアップルーチン \fILIBDIR\fR/ccrt0 C++ 用の付加的なスタートアップルーチン /lib/libc.a 標準ライブラリ、\c .IR intro (3) \c を参照 /usr/include \fB#include\fP ファイルのための標準ディレクトリ \fILIBDIR\fR/include \fB#include\fP ファイルのための GCC 標準ディレクトリ \fILIBDIR\fR/g++\-include \fB#include\fP ファイルのための付加的な g++ ディレクトリ .Sp .fi .I LIBDIR は通常 .B /usr/local/lib/\c .IR machine / version の形式を持ちます .br .I TMPDIR は環境変数 .B TMPDIR (もし使用可能ならば .B /usr/tmp を、そうでなければ .B /tmp\c \& を使用します) からとられます。 .SH "関連項目" as(1), cpp(1), gdb(1), ld(1) .br .B info \c 中の .RB "`\|" gcc "\|', `\|" cpp \|', .RB "`\|" as "\|', `\|" ld \|', .RB `\| gdb \|' \& エントリ .br .I Using and Porting GNU CC (for version 2.0)\c , Richard M. Stallman; .I The C Preprocessor\c , Richard M. Stallman; .I Debugging with GDB: the GNU Source-Level Debugger\c , Richard M. Stallman and Roland H. Pesch; .I Using as: the GNU Assembler\c , Dean Elsner, Jay Fenlason & friends; .I ld: the GNU linker\c , Steve Chamberlain and Roland Pesch. .SH バグ バグを報告する方法については、GCC マニュアルを参照してください。 .SH COPYING Copyright .if t \(co 1991, 1992, 1993 Free Software Foundation, Inc. .PP 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. .PP Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. .PP 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 included in translations approved by the Free Software Foundation instead of in the original English. .SH 作者 GNU CC に対して貢献した人々に関しては、GNU CC マニュアルを参照してください。 .SH 日本語訳 細川 達己(hosokawa@mt.cs.keio.ac.jp): NetBSD 用に翻訳 .br sakai@csl.cl.nec.co.jp, h-nokubi@nmit.mt.nec.co.jp, .br kumano@strl.nhk.or.jp, horikawa@isrd.hitachi.co.jp: FreeBSD 向けに修正, 査閲 diff --git a/ja_JP.eucJP/man/man1/indent.1 b/ja_JP.eucJP/man/man1/indent.1 index 314b7568c0..0433be3a76 100644 --- a/ja_JP.eucJP/man/man1/indent.1 +++ b/ja_JP.eucJP/man/man1/indent.1 @@ -1,520 +1,519 @@ .\" Copyright (c) 1980, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" Copyright (c) 1976 Board of Trustees of the University of Illinois. .\" All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)indent.1 8.1 (Berkeley) 7/1/93 .\" %FreeBSD: src/usr.bin/indent/indent.1,v 1.22 2004/07/03 00:24:41 ru Exp % .\" $FreeBSD$ .\" .Dd June 29, 2004 .Dt INDENT 1 .Os .Sh 名称 .Nm indent .Nd C 言語プログラムの字下げと整形 .Sh 書式 .Nm .Op Ar input-file Op Ar output-file .Op Fl bad | Fl nbad .Op Fl bap | Fl nbap .Bk -words -.Op Fl fbs | Fl nfbs .Op Fl bbb | Fl nbbb .Ek .Op Fl \&bc | Fl nbc .Op Fl \&bl .Op Fl \&br .Op Fl c Ns Ar n .Op Fl \&cd Ns Ar n .Bk -words .Op Fl cdb | Fl ncdb .Ek .Op Fl \&ce | Fl nce .Op Fl \&ci Ns Ar n .Op Fl cli Ns Ar n .Op Fl d Ns Ar n .Op Fl \&di Ns Ar n .Bk -words .Op Fl fbs | Fl nfbs .Op Fl fc1 | Fl nfc1 .Op Fl fcb | Fl nfcb .Ek .Op Fl i Ns Ar n .Op Fl \&ip | Fl nip .Op Fl l Ns Ar n .Op Fl \&lc Ns Ar n .Op Fl \&ldi Ns Ar n .Op Fl \&lp | Fl nlp .Op Fl npro .Op Fl pcs | Fl npcs .Op Fl psl | Fl npsl .Op Fl \&sc | Fl nsc .Bk -words .Op Fl sob | Fl nsob .Ek .Op Fl \&st .Op Fl troff .Op Fl ut | Fl nut .Op Fl v | Fl \&nv .Sh 解説 .Nm ユーティリティは .Em C 言語プログラムの整形を行います。 .Ar input-file 中の .Em C プログラムをオプションに従って整形し直します。 以下で説明するオプションはファイル名の前後で指定できます。 .Pp .Sy 注 : .Ar input-file のみを指定した場合、整形は「同じ場所に」行われます。 つまり、整形結果は .Ar input-file に書き戻され、カレントディレクトリに元の .Ar input-file のバックアップがコピーされます。 例えば .Ar input-file の名前が .Sq Pa /blah/blah/file だったとすると、バックアップファイルの名前は .Pa file.BAK となります。 .Pp .Nm は .Ar output-file が指定されると、念のため、それが .Ar input-file とは異なっていることをチェックします。 .Pp .Nm の整形スタイルは以下にあげるオプションで制御します。 .Bl -tag -width Op .It Fl bad , nbad .Fl bad を指定すると、宣言ブロックの後ごとに空行を 1 行入れます。 デフォルトは .Fl nbad です。 .It Fl bap , nbap .Fl bap を指定すると、関数本体の後ごとに空行を 1 行入れます。 デフォルトは .Fl nbap です。 .It Fl bbb , nbbb .Fl bbb を指定すると、コメントブロックの前に必ず空行を 1 行入れます。 デフォルトは .Fl nbbb です。 .It Fl \&bc , nbc .Fl \&bc を指定すると、宣言の中のコンマの後ごとに改行を入れます。 .Fl nbc はこれを抑止します。 デフォルトは .Fl \&nbc です。 .It Fl \&br , \&bl .Fl \&bl を指定すると、複合文は以下のように行分けされます。 .Bd -literal -offset indent if (...) { code } .Ed .Pp 一方、デフォルトは .Fl \&br ですが、以下のようになります。 .Bd -literal -offset indent if (...) { code } .Ed .Pp .It Fl c Ns Ar n プログラムコードの右側に書かれたコメントの開始位置を指定します。 デフォルトでは 33 桁目です。 .It Fl cd Ns Ar n 宣言の右側に書かれたコメントの開始位置を指定します。 デフォルトではプログラムコードの右側に書かれたコメントと同じ位置 になります。 .It Fl cdb , ncdb コメント区切りを独立の行とするかどうかを指定します。 このオプションを有効にすると、コメントは以下のようになります。 .Bd -literal -offset indent /* * this is a comment */ .Ed .Pp 一方、 .Fl ncdb では以下のようになります。 .Bd -literal -offset indent /* this is a comment */ .Ed .Pp このオプションはブロックコメントのみに影響し、コード右側のコメントには 影響しません。 デフォルトは .Fl cdb です。 .It Fl ce , nce .Fl \&ce は `else' を直前の `}' につけて ``} else'' のように出力します。 デフォルトは .Fl \&ce です。 .It Fl \&ci Ns Ar n 継続行の字下げを .Ar n で指定します。 継続行は、その文の最初の行の先頭から指定した字数だけ字下げされます。 .Fl \&lp が有効でなければ、または、 継続行の字下げがメインの字下げのちょうど半分でないならば、 かっこで括られた式は、 入れ子になっていることを示すために余分に字下げされます。 .Fl \&ci のデフォルトは .Fl i と同じ値です。 .It Fl cli Ns Ar n case ラベル字下げ位置を .Ic switch 文の字下げ位置から .Ar n 個目のタブストップにします。 .Fl cli0.5 なら、タブストップの半分になります。 デフォルトは .Fl cli0 です。 .It Fl d Ns Ar n プログラムコードの右側に書かれたものでない独立したコメントに関して、 その場所を制御します。 例えば .Fl \&d\&1 で、コードの字下げより 1 段左側にします。 デフォルトの .Fl \&d\&0 を指定すると、プログラムコードの字下げに合わせます。 下記「コメントの 字下げ」の節を参照して下さい。 .It Fl \&di Ns Ar n 大域変数名と全ての構造体 / 共用体のメンバ名の、 それらの型宣言の開始位置からの字下げを文字数で指定します。 デフォルトは .Fl di16 です。 .It Fl dj , ndj .Fl \&dj は宣言を左揃えにします。 .Fl ndj は、プログラムコードと同じ字下げを行います。 デフォルトは .Fl ndj です。 .It Fl \&ei , nei .Ic else-if に対し特別な処理をするよう指定します(しません)。 これを指定すると、 .Ic else に続く .Ic if は、最初の .Ic \&if 文と同じだけ字下げされます。 .Fl ei がデフォルトです。 .It Fl fbs , nfbs 関数宣言と開き中括弧を 2 行に分けるよう指定します(しません)。 デフォルトは、 .Fl fbs です。 .It Fl fc1 , nfc1 .Fl fc1 で、コメントが 1 桁目から始まっている場合も整形します(しません)。 プログラマが意図的にそうしている場合がありますから、 そのような場合に、 .Fl nfc1 を使うべきではありません。 デフォルトは .Fl fc1 です。 .It Fl fcb , nfcb ブロックコメント (`/*\\n' で開始するコメント) の整形を 有効とするかどうかを指定します。 プログラマは、 ブロックコメントをそれ程は注意深く手動整形していないことが多いですが、 再整形によって改行位置だけを変えるということは望ましくないことがあります。 このような場合には .Fl nfcb を使います。 ブロックコメントはボックスコメントのように扱われます。 デフォルトは .Fl fcb です。 .It Fl i Ns Ar n 1 段の字下げ量を指定します。デフォルトは 8 文字です。 .It Fl \&ip , nip パラメータ宣言を左マージンからさらに字下げします(しません)。 デフォルトは .Fl \&ip です。 .It Fl l Ns Ar n 出力行の最大幅を指定します。デフォルトは 78 文字です。 .It Fl \&ldi Ns Ar n 局所変数の、その型宣言の開始位置からの字下げを文字数で指定します。 局所変数名のデフォルトは、大域変数の値と同じだけの字下げです。 .It Fl \&lp , nlp 継続行において括弧内のプログラムコードの位置を揃えます。 左括弧がその行で閉じていない時、継続行を前の行の 左括弧の 1 文字後ろから始まるようにします。 例えば、 .Fl nlp が指定されると継続行は以下のようになります。 .Bd -literal -offset indent p1 = first_procedure(second_procedure(p2, p3), \ \ third_procedure(p4, p5)); .Ed .Pp 一方、 .Fl lp が指定されると、プログラムコードは以下のように幾分見やすくなります (デフォルトで指定されます)。 .Bd -literal -offset indent p1\ =\ first_procedure(second_procedure(p2,\ p3), \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ third_procedure(p4,\ p5)); .Ed .Pp 2行余分に改行された場合には、下のようになります。 .Bd -literal -offset indent p1\ =\ first_procedure(second_procedure(p2, \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ p3), \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ third_procedure(p4, \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ p5)); .Ed .It Fl npro 字下げのプロファイル .Sq Pa ./.indent.pro と .Sq Pa ~/.indent.pro を使わないようになります。 .It Fl pcs , npcs .Fl pcs が指定されると、全ての関数呼出しの関数名と括弧の間に空白を 1 つ入れます。 デフォルトは、 .Fl npcs です。 .It Fl psl , npsl .Fl psl が指定されると、関数定義における関数の名前を 1 桁目から始めます。 つまり、その関数の型名は前の行に置かれることになります。 デフォルトは、 .Fl psl です。 .It Fl \&sc , nsc 全てのコメントの左端に、アスタリスク(`*') を置きます(置きません)。 デフォルトは .Fl sc です。 .It Fl sob , nsob .Fl sob が指定されると、不要な空白行を取除きます。 宣言部の後ろの余分な空白行を取り除くのに便利です。 デフォルトは、 .Fl nsob です。 .It Fl \&st .Nm が標準入力に対して処理を行い、結果を標準出力に出力するようします。 .It Fl T Ns Ar typename .Ar typename を型名として扱うように追加します。 .Fl T は幾つ使ってもかまわないので、複数の型名を指定できます。 プログラム中で .Ic typedef によって定義された型名は必ず指定する必要があります。 \&\- 多少の指定を 忘れたところで実害は全くありませんが、プログラムは意図した程 きれいには整形されないでしょう。 全部の型名を指定しなければならないのは大変なように思えますが、 実際にはこれは C 言語のもつ問題が表面化したに過ぎません。 つまり、 .Ic typedef は、言語の構文解釈を変えてしまうので、 .Nm は .Ic typedef で定義された型名を全て見付けることができないわけです。 .It Fl troff .Xr troff 1 で処理できるフォーマットで出力します。 .Xr vgrind 1 と全く同じ考え方に基づいて、出力をきれいにしようとします。 出力ファイルが指定されていないと、出力先として入力ファイルではなく 標準出力が使われます。 .It Fl ut , nut 出力におけてタブ文字を使用するよう指定します(しません)。 タブは 8 で割り切れるカラムで整列されると想定します。 デフォルトは、 .Fl ut です。 .It Fl v , \&nv .Fl v で `verbose' モードになります。 .Fl \&nv は `verbose' モードを抑止します。 \&`verbose' モードでは、入力中の 1 行が複数行に分割された場合には、 その旨を表示し、終了時には出力サイズについての情報を 付け加えるようになります。 デフォルトは .Fl \&nv です。 .El .Pp ログインディレクトリかカレントディレクトリの一方、あるいはその両方に .Pa .indent.pro というプロファイルを作って、その中にオプションを書いておくことにより、 あなたの好みの設定を .Nm のデフォルトとすることができます。 プロファイルは、ログインディレクトリ、カレントディレクトリの順で 読み込まれるため、カレントディレクトリに `.indent.pro'があると、 そちらの指定の方が優先されます。 .Nm の起動時にプロファイルが存在していると、それを読み込んでデフォルトと して使用します。 ただし、コマンド行でオプションを指定すると、それは常に プロファイル中のオプションよりも優先されます。 プロファイルを書く際には、各オプションを空白かタブもしくは改行で 区切ってやらなくてはなりません。 .Pp .Ss コメント .Sq Em ボックス .Em コメント の処理について説明します。 .Nm ユーティリティは、 コメント開始の直後にマイナスやアスタリスクが続いている(つまり \&`/*\-' もしくは`/**' となっている)場合、そのコメントをアスタリスクで 周囲を囲まれたものとみなします。 このようなコメントに対しては、コメントの最初の行に施される 字下げ位置に、続く各行を揃える他は、処理を行いません。 .Pp つぎに、 .Em 連続したテキスト としての処理について説明します。 上にあげた以外のコメントは、連続したテキストとして扱います。 .Nm ユーティリティは、 1 行にできるだけ多くの単語(空白やタブもしくは改行で区切られた文字列) を詰め込もうとします。また、空白行により段落が分けられます。 .Pp .Ss コメントの字下げ プログラムコードの右側のコメントは、コマンド行のオプション .Fl c Ns Ns Ar n で指定された「コメント開始位置」から始まるようになります。 その他のコメントは、コマンド行のオプション .Fl d Ns Ns Ar n が指定されると、プログラムコードがおかれている位置よりも .Ar n 段少なく字下げされます。 1 行の内でプログラムコードが指定されたコメント開始位置を 超えて続いていた場合には、さらにその右へとコメントを続けますが、 極端に行が長かった場合には、自動的に右マージンが広くとられる ことがあります。 .Pp .Ss マクロ行 一般に .Nm はプリプロセッサのマクロ行をそのまま出力します。 唯一の例外はその行の右側にコメントが書かれている時で、 そのコメントを整形します。 ただし、 マクロの展開の結果プログラムに埋込まれるコメントは処理しません。 また、 .Nm は条件付きコンパイルのマクロ .Pq Ic #ifdef...#endif を認識し、それによってもたらされる構文上の異常を正しく補おうとします。 .Pp .Ss C 言語の構文 .Nm ユーティリティは、 C 言語の構文をかなり理解しますが、「手ぬるい」構文解析しか行いません。 不完全だったり正しくない構文も、ごく普通のものなら なんとか処理しようとします。 とくにあげると、以下のようなマクロも適当に処理されます。 .Pp .Dl #define forever for(;;) .Pp .Sh 環境変数 .Nm ユーティリティは環境変数として、 .Ev HOME を使用します。 .Sh 関連ファイル .Bl -tag -width "./.indent.pro" -compact .It Pa ./.indent.pro デフォルトの設定を記述したプロファイルです。 .It Pa ~/.indent.pro デフォルトの設定を記述したプロファイルです。 .El .Sh 歴史 .Nm コマンドは .Bx 4.2 で導入されました。 .Sh バグ .Nm ユーティリティは .Xr ls 1 以上に多くのオプションを持っています。 .Pp よくある悲惨な間違いは、ディレクトリにある全ての .Em C プログラムを整形しようとして .Pp .Dl indent *.c .Pp と入力してしまうことです。 おそらく、これはバグであって仕様と言うべきではないでしょう。 diff --git a/ja_JP.eucJP/man/man1/ipftest.1 b/ja_JP.eucJP/man/man1/ipftest.1 index 1d2d7d7369..18f75f757e 100644 --- a/ja_JP.eucJP/man/man1/ipftest.1 +++ b/ja_JP.eucJP/man/man1/ipftest.1 @@ -1,144 +1,156 @@ .\" %FreeBSD: src/contrib/ipfilter/man/ipftest.1,v 1.5 2003/02/15 06:32:48 darrenr Exp % .\" $FreeBSD$ .TH ipftest 1 +.SH 名称 ipftest \- 任意の入力に対してパケットフィルタルールをテストする .SH 書式 .B ipftest [ .B \-vbdPRSTEHX ] [ .B \-I interface ] .B \-r [ .B \-i ] [ .B \-s ] .SH 解説 .PP \fBipftest\fP は、 フィルタルール集合をあるべき場所に置かずにテストできるようにする ために提供されています。 これは動作して、フィルタルールの効果をテストします。 安全な IP 環境を提供するに際し、混乱を最小にできればよいということです。 .PP \fBipftest\fP は、\fBipf\fP の標準ルールセットを解釈し、 これを入力に対して適用し、結果として出力を返します。 しかし、フィルタを通過したパケットに対して \fBipftest\fP が返すのは、 次の 3 つの値のうちの 1 つです: pass, block, nomatch。 これは、 パケットがフィルタルールセットを通過するにあたって何が発生しているのかに関し、 オペレータの理解を助けることを意図しています。 .PP \fB\-S\fP, \fB\-T\fP, \fB\-E\fP のいずれのオプションも使用しない場合、 \fBipftest\fP は固有のテキスト入力フォーマットを使用し、 「擬似」IP パケットを生成します。 使用するフォーマットは次のとおりです: .nf "in"|"out" "on" if ["tcp"|"udp"|"icmp"] srchost[,srcport] dsthost[,destport] [FSRPAU] .fi .PP あるインタフェース (if) にて、 入る ("in") または出る ("out") パケットを生成できます。 オプションとして主要プロトコル 3 つの中から 1 つを選択できます。 TCP または UDP の場合、ポートパラメータの指定も必要です。 TCP が選択された場合、(オプションとして) 最後に TCP フラグを指定可能です。 以下に例を数個示します: .nf # le0 に到着する UDP パケット in on le0 udp 10.1.1.1,2210 10.2.1.5,23 # localhost から le0 に到着する IP パケット - うーむ :) in on le0 localhost 10.4.12.1 # SYN フラグを設定されて le0 から出て行く TCP パケット out on le0 tcp 10.4.12.1,2245 10.1.1.1,23 S .fi .SH オプション .TP .B \-v 冗長モード。 通過したまたはしなかった入力パケットに対して ルールのどの部分がマッチしたのかに関し、より詳しい情報を提供します。 .TP .B \-d フィルタルールデバッグをオンにします。 現在は、IP ヘッダチェックにおいて、ルールがマッチしなかった理由を表示 するだけです (アドレス/ネットマスクなど)。 .TP .B \-b パケットをフィルタに通した結果の出力を、短いまとめ (1 語)、 すなわち "pass", "block", "nomatch" のいずれかにします。 -後戻りして確認する際に使用します。 +リグレッションテストの際に使用します。 .TP .BR \-I \0 (ルールのマッチに使用される) インタフェース名を、指定された名前に設定します。 この方法無しにはパケットとインタフェースとを関連付けられない、 \fB\-P\fR, \fB\-S\fR, \fB\-T\fP, \fB\-E\fP の各オプションにおいて有用です。 通常の「テキストパケット」は、この設定に優先します。 .TP .B \-P \fB\-i\fP で指定される入力ファイルは、 libcap (すなわち tcpdump バージョン 3) が生成したバイナリファイルです。 このファイルから読まれたパケットは、(ルールに対する) 入力になります。 インタフェースは \fB\-I\fP で指定可能です。 .TP +.B \-R +ルールをロードするのではなく削除します。 +このオプションはトグルしませんので、 +一度設定したら -R をさらに使用しても解除できません。 +.TP .B \-S 入力ファイルは「スヌープ」フォーマット (RFC 1761 参照) です。 パケットはこのファイルから読み取られ、 任意のインタフェースからの入力として使用されます。 おそらく現在のところ、これが最も有用な入力タイプでしょう。 .TP .B \-T 入力ファイルは tcpdump のテキスト出力です。 現在サポートされているテキストフォーマットは、 次の tcpdump オプションの組み合わせの出力です: .PP .nf tcpdump -n tcpdump -nq tcpdump -nqt tcpdump -nqtt tcpdump -nqte .fi .LP .TP .B \-H -入力ファイルは16 進数であり、パケットのバイナリ構造を表現する必要があります。 +入力ファイルは 16 進数であり、パケットのバイナリ構造を表現する必要があります。 IP ヘッダの長さが正しくなくても、長さは補正されません。 +1 個のパケットが複数行の 16 進数とパケット終端を表す空行とに +分割されていてもかまいません。 +インタフェース名とパケットの (フィルタリングに対する) 方向とを、 +[direction,interface] という形式で指定することができます。 +le0 に到達するパケットを指定する場合は \fB[in,le0]\fP のように使います +(ここで、[] の文字は必要であり、入力の文法の一部です)。 .TP .B \-X 入力ファイルは IP パケットのテキスト記述からなります。 .TP .B \-E 入力ファイルは etherfind のテキスト出力です。 現在サポートされているテキストフォーマットは、 次の etherfind オプションの組み合わせの出力です: .PP .nf etherfind -n etherfind -n -t .fi .LP .TP .BR \-i \0 入力を得るファイル名を指定します。デフォルトは標準入力です。 .TP .BR \-r \0 フィルタルールを読み取るファイル名を指定します。 .TP .BR \-s \0 入力書式が \fBipftest\fP に対してパケットが内向きなのか外向きなのかを 指定できない場合において、このオプションをある IP アドレスに設定すると、 始点アドレスがこのアドレスにマッチする場合には方向が外向きになり、 終点アドレスがこのアドレスにマッチする場合には方向が内向きになります。 .SH 関連項目 ipf(5), ipf(8), snoop(1m), tcpdump(8), etherfind(8c) .SH バグ 入力形式によっては、テストに有用なことがらすべてをカバーできるほど 十分に多種多様なパケットを表現できません。 diff --git a/ja_JP.eucJP/man/man1/ln.1 b/ja_JP.eucJP/man/man1/ln.1 index c9be6d7b8f..e5bb9737e1 100644 --- a/ja_JP.eucJP/man/man1/ln.1 +++ b/ja_JP.eucJP/man/man1/ln.1 @@ -1,197 +1,197 @@ .\" Copyright (c) 1980, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" .\" 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. .\" 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. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)ln.1 8.2 (Berkeley) 12/30/93 .\" %FreeBSD: src/bin/ln/ln.1,v 1.28 2004/07/03 00:03:26 ru Exp % .\" $FreeBSD$ .\" .Dd December 30, 1993 .Dt LN 1 .Os .Sh 名称 .Nm ln , .Nm link .Nd リンクファイルの作成 .Sh 書式 .Nm .Op Fl fhinsv .Ar source_file .Op Ar target_file .Nm .Op Fl fhinsv .Ar source_file ... .Ar target_dir .Nm link .Ar source_file Ar target_file .Sh 解説 .Nm は新しいディレクトリエントリ (リンクファイル) を作成するユーティリティです。 リンクファイルのモードはオリジナルファイルと同じになります。 リンクファイルは .Dq ファイルの内容のコピー ではなく、 .Dq ファイルを指し示すポインタ であり、1 つのオリジナル ファイルを多くのディレクトリで取り扱えるようにするのに有効です。 リンクファイルには、ハードリンクとシンボリックリンクの 2 つの形式があり ます。違いは、リンクの方法です。 .Pp オプションとしては以下のものがあります。 .Bl -tag -width flag .It Fl f target_file が既に存在する場合、 リンクが成功するように、これをアンリンクします。 ( .Fl f オプションが指定されると、それ以前の .Fl i オプションは無視されます。) .It Fl h .Ar target_file または .Ar target_dir がシンボリックリンクの場合、これを辿りません。 これは、 .Fl f オプションと共に使用して、 ディレクトリを指すかもしれないシンボリックリンクを置き換える場合に 最も有用です。 .It Fl i すでに target_file が存在する場合、 .Nm に標準エラー出力を使用して確認を求めさせます。 標準入力から .Sq Li y または .Sq Li Y で始まる文字列が入力されると、target_file が既に存在する場合、 リンクが成功するように、これをアンリンクします。 ( .Fl i オプションが指定されると、それ以前の .Fl f オプションは無視されます。) .It Fl n .Fl h と同様ですが、他の .Nm の実装との互換性のためにあります。 .It Fl s シンボリックリンクを作成します。 .It Fl v .Nm を冗長にし、処理するファイルを表示します。 .El .Pp デフォルトでは、 .Nm は .Em ハードリンク を作成します。 ファイルへのハードリンクはオリジナルのディレクトリエントリと区別できません。 ファイルの参照に使われる名前にかかわらず、 そのファイルへのいかなる修正も同じように有効です。 通常、ハードリンクはディレクトリを指すことはできませんし、 ファイルシステムを拡張することもできません。 .Pp シンボリックリンクはリンク先ファイルの名前を保持します。 リンクに対して .Xr open 2 操作を行うと、その参照先ファイルが用いられます。 シンボリックリンクに対して .Xr stat 2 操作を行うと、参照先ファイルの情報を返します。 リンクそのものの情報を得るには .Xr lstat 2 を用いなければなりません。 .Xr readlink 2 呼び出しによってシンボリックリンクの内容を読むこともできます。 シンボリックリンクによってファイルシステムを拡張したり、 ディレクトリを参照したりすることが可能です。 .Pp 1 個あるいは 2 個の引数が与えられた場合、 .Nm は既存のファイル .Ar source_file に対するリンクを作成します。 .Ar target_file が指定された場合、リンクの名前はそれと同一になります。 .Ar target_file はリンクファイルを置くディレクトリであっても構いません。 それ以外の場合はリンクはカレントディレクトリに置かれます。 ディレクトリ名だけが指定された場合は、 .Ar source_file のパス名の最後のファイル名が指定されたものとみなします。 .Pp 2 個以上の引数が与えられた場合、 .Nm はディレクトリ .Ar target_file 内に指定された全てのファイルのリンクを作成します。作られるリンクの 名前は、リンクされるファイルの名前と同じになります。 .Pp 本ユーティリティを .Nm link として呼び出す場合、正確に 2 個の引数が必要であり、 どちらもディレクトリであってはなりません。 この単純モードでは、オプションは指定不可であり、渡された 2 個の引数を使用して .Xr link 2 の動作を行います。 .Sh 関連項目 .Xr link 2 , .Xr lstat 2 , .Xr readlink 2 , .Xr stat 2 , .Xr symlink 2 , .Xr symlink 7 .Sh 互換性 .Fl h , .Fl i , .Fl n , .Fl v は標準ではありませんし、スクリプト中での使用はお勧めしません。 他の .Nm 実装との互換性のためだけに提供されています。 -.Sh 標準 +.Sh 規格 .Nm ユーティリティは .St -p1003.2-92 に適合します。 単純化された .Nm link コマンドは .St -susv2 に適合します。 .Sh 歴史 .Nm コマンドは .At v1 から登場しました。 diff --git a/ja_JP.eucJP/man/man1/lock.1 b/ja_JP.eucJP/man/man1/lock.1 index ed9a56926d..5b339e3242 100644 --- a/ja_JP.eucJP/man/man1/lock.1 +++ b/ja_JP.eucJP/man/man1/lock.1 @@ -1,84 +1,84 @@ -.\" Copyright (c) 1987, 1990 The Regents of the University of California. -.\" All rights reserved. +.\" Copyright (c) 1987, 1990, 1993 +.\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" -.\" from: @(#)lock.1 6.9 (Berkeley) 7/27/91 +.\" @(#)lock.1 8.1 (Berkeley) 6/6/93 .\" %FreeBSD: src/usr.bin/lock/lock.1,v 1.11 2004/07/02 22:22:27 ru Exp % .\" $FreeBSD$ .\" -.Dd June 6, 1993 +.Dd July 10, 2002 .Dt LOCK 1 .Os .Sh 名称 .Nm lock .Nd 端末を予約する .Sh 書式 .Nm .Op Fl npv .Op Fl t Ar timeout .Sh 解説 .Nm ユーティリティは、 ユーザにパスワードを要求し、確認のためにもう一度パスワードを 聞きます。以降そのパスワードがもう一度入力されるまで、 このプログラムはその端末を占有して利用できない状態にします。 このプログラムを終了するには、その他に二つの方法があります: ひとつは決められた時間まで待ってタイムアウトさせる方法、 もうひとつは権限を持つユーザがそのプロセスを kill するという方法です。 .Pp オプションは以下のものがあります: .Bl -tag -width indent .It Fl n タイムアウト値を使用しません。端末を永遠にロックします。 .It Fl p 設定時にパスワードが要求されず、代りにユーザの現行のパスワードが使われます。 .It Fl t Ar timeout タイムリミットを .Ar timeout 分に変更します (デフォルトは 15 分)。 .It Fl v この端末がロックされている間、仮想端末間の切り替えを無効にします。 本オプションは .Xr vidcontrol 1 の .Fl S オプションと同様の方法で実装されており、同様の制限があります。 対象の端末が .Xr syscons 4 仮想端末である場合のみ使用可能です。 .El .Sh 関連項目 .Xr vidcontrol 1 , .Xr syscons 4 .Sh 歴史 .Nm コマンドは .Bx 3.0 から登場しました。 diff --git a/ja_JP.eucJP/man/man1/nohup.1 b/ja_JP.eucJP/man/man1/nohup.1 index 4c88364998..097bb68242 100644 --- a/ja_JP.eucJP/man/man1/nohup.1 +++ b/ja_JP.eucJP/man/man1/nohup.1 @@ -1,112 +1,117 @@ -.\" Copyright (c) 1989, 1990 The Regents of the University of California. -.\" All rights reserved. +.\" Copyright (c) 1989, 1990, 1993 +.\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" -.\" from: @(#)nohup.1 6.8 (Berkeley) 7/27/91 +.\" @(#)nohup.1 8.1 (Berkeley) 6/6/93 .\" %FreeBSD: src/usr.bin/nohup/nohup.1,v 1.12 2002/06/28 09:34:46 tjr Exp % .\" .\" $FreeBSD$ .\" .Dd July 19, 2001 .Dt NOHUP 1 .Os .Sh 名称 .Nm nohup .Nd 回線切断の影響を受けないようにしてユーティリティを実行する .Sh 書式 .Nm .Op Fl Fl .Ar utility .Op Ar arguments .Sh 解説 .Nm は .Dv SIGHUP シグナルを無視するように設定し、指定されたコマンドを指定された .Ar arguments 付で実行します。 標準出力が端末の時、コマンドの出力はカレントディレクトリのファイル .Pa nohup.out に追加書き込みされます。標準エラー出力が端末の時も、 標準出力と同様に処理されます。 .Pp シェルによっては、本ユーティリティと似たまたは同じ、組み込みの .Nm コマンドを提供しているものがあります。 .Xr builtin 1 マニュアルページを参照してください。 .Sh 環境変数 .Nm は以下の環境変数を参照します。 .Bl -tag -width flag .It Ev HOME カレントディレクトリにファイル .Pa nohup.out が作成できなかった場合、環境変数 .Ev HOME で示されたディレクトリに作成します。 .It Ev PATH 名前に .Ql / が 1 個も含まれない場合、指定された .Ar utility を見付けるために使用されます。 .El .Sh 診断 .Nm ユーティリティは次のいずれかの値で終了します: .Bl -tag -width Ds .It 126 .Ar utility は見付かりましたが、起動できませんでした。 .It 127 .Ar utility が見付からなかったか、 .Nm 内でエラーとなりました。 .El .Pp その他の場合、 .Nm の終了ステータスは .Ar utility の終了ステータスとなります。 .Sh 関連項目 .Xr builtin 1 , .Xr csh 1 , .Xr signal 3 .Sh 規格 .Nm は .St -p1003.2 互換であるはずです。 +.Sh バグ +2 個以上の +.Nm +のインスタンスが出力を同じファイルに追加書き込みすることができ、 +これにより混ぜ合わさった出力が作られます。 diff --git a/ja_JP.eucJP/man/man1/pkg_create.1 b/ja_JP.eucJP/man/man1/pkg_create.1 index 99654b7b3e..ddccea73bb 100644 --- a/ja_JP.eucJP/man/man1/pkg_create.1 +++ b/ja_JP.eucJP/man/man1/pkg_create.1 @@ -1,586 +1,587 @@ .\" .\" FreeBSD install - a package for the installation and maintainance .\" of non-core utilities. .\" .\" 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. .\" 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. .\" .\" Jordan K. Hubbard .\" .\" .\" @(#)pkg_create.1 .\" %FreeBSD: src/usr.sbin/pkg_install/create/pkg_create.1,v 1.61 2004/07/02 23:12:52 ru Exp % .\" .\" hacked up by John Kohl for NetBSD--fixed a few bugs, extended keywords, .\" added dependency tracking, etc. .\" .\" [jkh] Took John's changes back and made some additional extensions for .\" better integration with FreeBSD's new ports collection. .\" .\" $FreeBSD$ .Dd June 29, 2004 .Dt PKG_CREATE 1 .Os .Sh 名称 .Nm pkg_create .Nd ソフトウェア配布 package を作成するプログラム .Sh 書式 .Nm .Op Fl YNOhjvyz +.Op Fl C Ar conflicts .Op Fl P Ar pkgs .Op Fl p Ar prefix .Op Fl i Ar iscript .Op Fl I Ar piscript .Op Fl k Ar dscript .Op Fl K Ar pdscript .Op Fl r Ar rscript .Op Fl s Ar srcdir .Op Fl S Ar basedir .Op Fl t Ar template .Op Fl X Ar excludefile .Op Fl D Ar displayfile .Op Fl m Ar mtreefile .Op Fl o Ar originpath .Fl c Ar comment .Fl d Ar description .Fl f Ar packlist .Ar pkg-filename .Nm .Op Fl YNhvy .Fl b Ar pkg-name .Op Ar pkg-filename .Sh 解説 この .Nm コマンドは、package 展開/情報プログラムに渡される package (訳注: FreeBSD の package system におけるパッケージを指す場合にこう表記します) を作成します。 package 作成のために入力する説明とコマンドライン引数 は本来人間が生成することを意図していませんが、 そうすることも簡単にできます。 自力でどうにかすることも可能ですが、作成にはフロントエンドツールを 用いた方がいいでしょう。 とはいうものの、入力書式の概略はこの文書に含まれています。 .Sh オプション 以下のコマンドラインオプションが提供されています: .Bl -tag -width indent .It Fl f Ar packinglist ファイル .Ar packinglist から、もしくは .Ar packinglist が .Cm - (ダッシュ)であれば .Cm stdin から、package 用の .Dq packing list を取得します。 .It Fl c Xo .Oo Fl Oc Ns Ar desc .Xc ファイル .Ar desc から、もしくは先頭が .Cm - で始まっていれば引数自身から、package の .Dq 一行説明 を取得します。 この文字列は、package が提供するもののバージョンを知る 手がかりとなるべきです。 .It Fl d Xo .Oo Fl Oc Ns Ar desc .Xc ファイル .Ar desc から、もしくは先頭が .Cm - で始まっていれば引数自身から、package の長い説明を取得します。 .It Fl Y 質問に対してのデフォルトの回答を `Yes' とします。 .It Fl N 質問に対してのデフォルトの回答を `No' とします。 .It Fl O `packing list Only' モードに移行します。 これは .Fx .Em "Ports Collection" のための特別な修正であり、port がインストールされる時の `fake pkg_add' を行うために用いられます。 このような場合には、調整された最終的な packing list が どのようなものになるかを知る必要があるのです。 .It Fl v 饒舌な出力に切り替えます。 .It Fl h tar がシンボリックリンクをたどるようにします。 この結果、リンク自身ではなくリンク先のファイルが出力されます。 .It Fl i Ar iscript package のインストール前手続きとして .Ar iscript を用います。 これは実行可能なプログラム (もしくはシェルスクリプト) なら なんでも構いません。 これは package がインストールされる時に自動的に起動されます。 その際、package 名が第 1 引数として渡されます。 .Pp .Sy 注: .Fl I オプションが指定されない場合、 本スクリプトは当該 package の pre-install および post-install の両方のスクリプトとして動作します。 package 名の後にキーワード .Ar PRE-INSTALL および .Ar POST-INSTALL をそれぞれ渡すことにより、機能を切り替えることになります。 .It Fl I Ar piscript package のインストール後手続きとして .Ar piscript を用います。 これは実行可能なプログラム (もしくはシェルスクリプト) なら なんでも構いません。 これは package がインストールされる時に自動的に起動されます。 その際、package 名が第 1 引数として渡されます。 .It Fl C Ar conflicts 初期の package 衝突リストとして .Ar conflicts を用います。 これは、空白で区切った package 名のリストとみなされ、 packing list 中で複数の .Cm @conflicts ディレクティブを指定する手っ取り早い方法でもあります (後述の .Sx PACKING LIST 詳細 節を参照してください)。 .It Fl P Ar pkgs 初期の package 依存リストとして .Ar pkgs を用います。 これは空白で区切られた package の名前となります。 また、packing list (後述の .Sx "PACKING LIST 詳細" セクションを参照) 内の複数の .Cm @pkgdep ディレクティブを指定する手っ取り早い方法でもあります。 .Ar pkgs リストの各引数は .Ar pkgname Ns Op : Ns Ar pkgorigin という書式です。 省略可能な .Ar pkgorigin 要素は、リストからの各依存の起源を表し、 .Ar pkgname と共に .Cm @comment ディレクティブを使用して packing list 中に記録されます。 .It Fl p Ar prefix package のファイルを選択する際に .Dq 基準 となる初期ディレクトリとして .Ar prefix を用います。 .It Fl k Ar dscript package のアンインストール手続きとして .Ar dscript を用います。 これは実行可能なプログラム (もしくはシェルスクリプト) なら なんでも構いません。 これは package がアンインストールされる時に自動的に起動されます。 その際、package 名が第 1 引数として渡されます。 .Pp .Sy 注: .Fl K オプションが指定されない場合、 本スクリプトは当該 package の de-install および post-deinstall の両方のスクリプトとして動作します。 package 名とともにキーワード .Ar DEINSTALL および .Ar POST-DEINSTALL をそれぞれ渡すことにより、機能を切り替えることになります。 .It Fl K Ar pdscript package のアンインストール後手続きとして .Ar pdscript を用います。 これは実行可能なプログラム (もしくはシェルスクリプト) なら なんでも構いません。 これは package がアンインストールされる時に自動的に起動されます。 その際、package 名が第 1 引数として渡されます。 .It Fl r Ar rscript package の .Dq requirements 手続きとして .Ar rscript を用います。 これは実行可能なプログラム (もしくはシェルスクリプト) なら なんでも構いません。 これはインストール時、アンインストール時に自動的に起動され、 インストール、アンインストールを継続するべきかどうかを決定するのに 用いられます。 インストールとアンインストールを区別するために、キーワード .Ar INSTALL と .Ar DEINSTALL がそれぞれ、package 名と共に渡されます。 .It Fl s Ar srcdir package 作成中に .Ar srcdir は、 .Cm @cwd の値に優先します。 .It Fl S Ar basedir package 作成の間、 .Ar basedir がすべての .Cm @cwd の前に付けられます。 .It Fl t Ar template .Xr mktemp 3 への入力として .Ar template を用います。 これはデフォルトでは .Pa /tmp/instmp.XXXXXX という文字列ですが、 .Pa /tmp ディレクトリの容量が制限されているような状況では 変更する必要があるかもしれません。 .Xr mktemp 3 が一意の ID を用いるために必要な `X' の文字をいくつか残しておく ことを忘れないでください。 .It Fl X Ar excludefile 最終的に package を作成する際に、 .Ar excludefile を .Cm tar に .Fl exclude-from 引数として渡します。 このオプションを使うにあたっての詳しい情報は、 .Cm tar のマニュアルページ (もしくは .Fl -help 引数を付けて .Cm tar を実行) を参照してください。 .It Fl D Ar displayfile package をインストールした後にファイルを (連結して標準出力へ) 表示します。 「ほとんど free なソフトウェア」などにおいて、 法的な通知のようなものなどに便利でしょう。 .It Fl m Ar mtreefile package がインストールされる前に、mtreefile を入力として .Xr mtree 8 を実行します。mtree は .Cm mtree .Fl u .Fl f .Ar mtreefile .Fl d .Fl e .Fl p .Pa prefix として起動されます (ただし .Pa prefix は .Cm @cwd ディレクティブにより名付けられた最初のディレクトリの名前)。 .It Fl o Ar originpath .Ar originpath を、 .Em "FreeBSD Ports Collection" 中で package が作成された場所として記録します。 この書式は、 .Pa MASTERCATEGORY/PORTDIR であるべきです。 .It Fl j package の tarball を圧縮するために、 .Xr bzip2 1 ユーティリティを .Xr gzip 1 の代りに使用します。 最終的なアーカイブの書式が、認識可能なサフィックスによって .Ar pkg-filename で明示的に指定されている場合、本オプションは無効であることに注意してください。 現在 .Nm は、次のサフィックスを認識します: .Pa .tbz , .tgz , .tar 。 .It Fl y 互換性のための、 .Fl j の同義語です。 .It Fl z package の tarball を圧縮するために、 .Xr gzip 1 ユーティリティを使用します。 .It Fl b Ar pkg-name .Ar pkg-name という名前でローカルにインストールされた package から、 package ファイルを作成します。 .Ar pkg-filename が指定されない場合、最終的なアーカイブはカレントディレクトリに作成され、 .Ar pkg-name に対して伸長用の適切なサフィックスが付いた名前となります。 .El .Sh PACKING LIST 詳細 .Dq packing list の書式 ( .Fl f を参照) は単純で、package に含めるファイル名を一行につきひとつずつ 並べたものにすぎません。 どこにインストールされるかわからない package に対して絶対パスを 用いるのは一般的に悪い方法なので、 どこにインストールされることを想定しているのか、 そしてどんな ownership と mode を伴ってインストールされるべきなのか (こちらはオプション) を指定する方法が用意されています。 これは packing list 内に一連の特殊コマンドを 埋め込むことで実現されています。以下に簡単に示します: .Bl -tag -width indent -compact .It Cm @cwd Ar directory 内部のディレクトリポインタが .Ar directory を指すようにします。以降のファイル名はこのディレクトリへの相対パス であるとみなされます。 注: .Cm @cd はこのコマンドの別名です。 .It Cm @srcdir Ar directory 「作成時のみ」の内部ディレクトリポインタを .Ar directory に設定します。 package 作成時に .Cm @cwd に優先すると言えますが、展開時にはこれはあてはまりません。 .It Cm @exec Ar command 展開処理の一環として .Ar command を実行します。 .Ar command が以下の文字列を含んでいた場合、その場で置換されます。 以下の例では .Cm @cwd が .Pa /usr/local と設定されていて、最後に展開されたファイルが .Pa bin/emacs だったとしています。 .Bl -tag -width indent -compact .It Cm "%F" 最後に展開されたファイル名に置換されます。この例では .Pa bin/emacs となります。 .It Cm "\&%D" .Cm @cwd で設定されたカレントディレクトリプレフィックスに置換されます。 この例では .Pa /usr/local になります。 .It Cm "\&%B" 完全な (フルパスの) ファイル名の .Dq basename へ置換されます。 これはカレントディレクトリプレフィックスに最後の filespec を 加え、末尾のファイル名部分を除いたものです。 この例では、 .Pa /usr/local/bin になります。 .It Cm "%f" 完全な (フルパスを含む) ファイル名の .Dq filename 部分へ置換されます。 .Cm \&%B と対応していて、この例では .Pa emacs となります。 .El .It Cm @unexec Ar command アンインストール処理の一環として .Ar command を実行します。特別な .Cm % 文字列の置換は .Cm @exec と同様です。 このコマンドは .Cm @exec のように package を加える際に実行されるのではなく、package が 削除されるときに実行されます。 これは、package を加えるときに作られたリンクや他の 付随ファイル (package の内容一覧に記されているファイルは自動的に 削除されるので除く) を削除するのに便利です。 アンインストールスクリプトよりも .Cm @unexec を用いる方が有利な点は、どこにインストールされているかわからない ( .Fl p を参照) ファイルの場所を得るのに .Dq 特殊文字列置換 を用いることが 可能なことです。 .It Cm @mode Ar mode この後で展開されるすべてのファイルのデフォルトの許可属性を .Ar mode に設定します。 書式は .Cm chmod コマンドで用いられているものと同じです (というよりも、そのまま 渡されています)。 引数無しで用いると、デフォルトの (展開) 許可属性に戻します。 .It Cm @option Ar option 内部用 package オプションを設定します。 現在二つのオプションのみがサポートされています。 ひとつは .Ar extract-in-place で、これは pkg_add コマンドに package の tarball を staging area に展開せずに、目的の階層に直接展開するよう指示します (これは主に配布物や他の特殊な package などに用いられます)。 もうひとつは .Ar preserve で、存在するファイルを別の所に保存しておくよう pkg_add に指示します (これらは pkg_delete の時に復活しますが、自分の責任で行ってください)。 .It Cm @owner Ar user この後で展開されるすべてのファイルのデフォルトの ownership を .Ar user に設定します。 引数無しで用いると、デフォルトの (展開) ownership に戻します。 .It Cm @group Ar group この後で展開されるすべてのファイルのデフォルトの group ownership を .Ar group に設定します。 引数無しで用いると、デフォルトの (展開) group ownership に戻します。 .It Cm @comment Ar string packing list 内にコメントを埋め込みます。 誰かが後で間違えてしまうかもしれない特に厄介な部分を説明しようとする 場合に便利です。 .It Cm @ignore 特殊な目的に使われるファイルなどのため、展開時に次のファイルを 無視する (どこにもコピーしない) ように、内部で用いられます。 .It Cm @ignore_inst .Cm @ignore と同様ですが、次のファイルを無視するのは一評価サイクルだけ 遅らせられます。 このおかげでこのディレクティブを .Ar packinglist ファイル内で用いることが可能になるので、インストーラが 無視するような、インストールスクリプトなどのための特殊な データファイルを、配布物内に入れることができるようになります。 .It Cm @name Ar name package の名前を設定します。 これは必須項目であり、通常先頭に置かれます。 この名前は package が提供するファイルの名前とは異なる可能性があり、 後でアンインストールする時のために package の記録を残しておくのに使われます。 名前が指定されなかった場合には、 .Nm は package 名から推定し、自動的に設定することに注意してください。 .It Cm @dirrm Ar name ディレクトリ .Pa name がアンインストール時に削除されるよう宣言します。デフォルトでは、 package のインストール時に作成されたディレクトリは アンインストール時には削除されませんが、このディレクティブは明示的な ディレクトリ削除方法を提供します。 このディレクティブは package リストの最後で用いるようにしてください。 一つ以上の .Cm @dirrm ディレクティブが指定された場合、指定された順番に削除されます。 .Pa name は空きディレクトリでなければ削除されません。 .It Cm @mtree Ar name .Pa name を、インストール時に用いられる .Xr mtree 8 への入力ファイルとして宣言します (上述の .Fl m を参照)。最初にひとつだけ .Cm @mtree ディレクティブを指定することが推奨されます。 .It Cm @display Ar name .Pa name を、インストール時に表示されるファイルとして宣言します (上述の .Fl D を参照)。 .It Cm @pkgdep Ar pkgname package .Ar pkgname に依存することを宣言します。 package .Ar pkgname はこの package がインストールされる前にインストールされていなければ ならず、またこの package は package .Ar pkgname がアンインストールされる前にアンインストールされなければなりません。 package が複数の package に依存する場合には、複数の .Cm @pkgdep ディレクティブが用いられます。 .It Cm @conflicts Ar pkgcflname .Ar pkgcflname package との衝突を宣言します。 これは、ふたつの package が同じファイルへの参照を持ち、 同一システムに共存できないことが理由です。 .El .Sh 環境変数 環境変数 .Ev PKG_TMPDIR で、 .Nm が作業用ファイルの生成を試みるディレクトリの名前を指定します。 .Ev PKG_TMPDIR が設定されていない場合、 .Ev TMPDIR で指定されたディレクトリが使用されます。 .Ev PKG_TMPDIR 、 .Ev TMPDIR ともに設定されていない場合は、組み込みのデフォルトディレクトリが 使用されます。 .Sh 関連ファイル .Bl -tag -width /usr/tmp -compact .It Pa /var/tmp 環境変数 .Ev PKG_TMPDIR 、 .Ev TMPDIR がともに設定されていない場合の作業用ディレクトリ。 .It Pa /tmp .Pa /var/tmp が存在しない場合の、その次の選択肢。 .It Pa /usr/tmp .Pa /tmp が適切でない場合の、最後の選択肢。 .El .Sh 関連項目 .Xr pkg_add 1 , .Xr pkg_delete 1 , .Xr pkg_info 1 , .Xr pkg_version 1 , .Xr sysconf 3 .Sh 歴史 .Nm コマンドは .Fx で最初に登場しました。 .Sh 作者 .An Jordan Hubbard .Sh 協力者 .An John Kohl Aq jtk@rational.com , .An Oliver Eikemeier Aq eik@FreeBSD.org .Sh バグ package が展開される際にハードリンクを保存しておくために、 配布物のファイル間でのハードリンクは .Cm @cwd ディレクティブで括られていなければなりません。 その上、実行時の引数の長さの制限 (これは .Fn sysconf _SC_ARG_MAX により返される値に依存します) のために、それらのハードリンクは単一の .Cm tar 実行内で行われなければなりません。 .Pp バグは他にもあるはずです。 diff --git a/ja_JP.eucJP/man/man1/printenv.1 b/ja_JP.eucJP/man/man1/printenv.1 index 635f7f1d6e..2b8888ef02 100644 --- a/ja_JP.eucJP/man/man1/printenv.1 +++ b/ja_JP.eucJP/man/man1/printenv.1 @@ -1,85 +1,85 @@ .\" Copyright (c) 1980, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)printenv.1 8.1 (Berkeley) 6/6/93 .\" %FreeBSD: src/usr.bin/printenv/printenv.1,v 1.18 2003/06/01 06:29:47 tjr Exp % .\" .\" $FreeBSD$ .\" -.Dd June 6, 1993 +.Dd May 12, 2003 .Dt PRINTENV 1 .Os .Sh 名称 .Nm printenv .Nd 環境変数を表示する .Sh 書式 .Nm .Op Ar name .Sh 解説 .Nm ユーティリティは、 環境変数の名前と値を、1 行あたりに 1 組の名前と値の形式で表示します。 .Ar name が指定されている場合は、その環境変数の値を表示します。 .Pp シェルによっては、本ユーティリティに似ているまたは同等の、組み込み .Nm コマンドを提供しています。 .Xr builtin 1 マニュアルページを参照してください。 .Sh 診断 .Ex -std printenv .Sh 関連項目 .Xr csh 1 , .Xr env 1 , .Xr sh 1 , .Xr environ 7 .Sh 規格 .Nm ユーティリティは、以前の .Bx および .Fx リリースとの互換性のために提供されているもので、 規格で指定されたものではありません。 .Nm の機能は .Xr echo 1 および .Xr env 1 のユーティリティと重複しています。 .Sh 歴史 .Nm コマンドは .Bx 3.0 から登場しました。 diff --git a/ja_JP.eucJP/man/man1/rlogin.1 b/ja_JP.eucJP/man/man1/rlogin.1 index 5d9f7f6bf2..58c2f81b65 100644 --- a/ja_JP.eucJP/man/man1/rlogin.1 +++ b/ja_JP.eucJP/man/man1/rlogin.1 @@ -1,199 +1,198 @@ .\" Copyright (c) 1983, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)rlogin.1 8.1 (Berkeley) 6/6/93 .\" %FreeBSD: src/usr.bin/rlogin/rlogin.1,v 1.25 2004/07/03 00:24:43 ru Exp % .\" $FreeBSD$ .\" .Dd September 26, 2003 .Dt RLOGIN 1 .Os .Sh 名称 .Nm rlogin .Nd リモートログイン .Sh 書式 .Nm .Op Fl 468DEd .Op Fl e Ar char .Op Fl i Ar localname -.Op Fl k Ar realm .Op Fl l Ar username .Ar host .Sh 解説 .Nm ユーティリティは、リモートホスト .Ar host 上で端末セッションを開始します。 .Pp .Nm ユーティリティはまず最初に、 以下に述べる Kerberos 認証メカニズムの使用を試みます。 もしリモートホストが Kerberos をサポートしていなければ、 標準的な Berkeley .Pa rhosts 認証メカニズムが用いられます。 .Pp オプションは以下の通りです: .Bl -tag -width flag .It Fl 4 IPv4 アドレスのみを使用します。 .It Fl 6 IPv6 アドレスのみを使用します。 .It Fl 8 常に 8 ビットの入力データパスを有効にします。 .Fl 8 オプションを指定しなければ、 リモート側のストップ/スタートキャラクタが ^S/^Q の場合を除き、 パリティビットが取り除かれます。 .It Fl D ソケットオプション TCP_NODELAY を有効にします。 ネットワーク負荷を高めますが、対話の応答性が向上します。 .It Fl E いかなるキャラクタもエスケープキャラクタとして認識されないようにします。 .Fl 8 オプションと組み合わせて用いると、 完全に透過的なコネクションとなります。 .It Fl d リモートホストとの通信に用いる TCP ソケットの ソケットデバッグ機能 ( .Xr setsockopt 2 参照)を有効にします。 .It Fl e エスケープキャラクタを指定します。デフォルトは .Dq ~ です。 指定はリテラルキャラクタあるいは \ennn 形式の 8 進数で行います。 .It Fl i 認証に使用する別のローカル名を、呼び出し元が指定可能です。 本オプションは、UID 0 のプロセスのみに制限されます。 .It Fl l リモートログインに別の .Ar username を指定します。 このオプションを指定しないと、ローカルなユーザ名を使用します。 .El .Pp .Dq Ao escape char Ac Ns \&. という形式の行を入力すると、 リモートホストから切断します。 同様に .Dq Ao escape char Ac Ns ^Z という行を入力すると .Nm セッションを中断し、 .Dq Ao escape\ char Ac Ao delayed-suspend\ char Ac を入力すると .Nm の送信部分のみ中断し、リモートシステムからの出力は有効に保ちます。 デフォルトでは はチルダ .Pq Dq ~ であり、 は普通 control-Y .Pq Dq ^Y です。 .Pp エコーは全てリモートサイト側で行われ、(遅延を除き) .Nm は透過的です。 ^S/^Q によるフロー制御や割り込み発生時の入出力のフラッシュは 正しく処理されます。 .Sh KERBEROS 認証 各ユーザはホームディレクトリの .Pa .klogin ファイル中に各個人の認証リストを持つことができます。 このファイルの各行は .Ar principal.instance@realm という形式で Kerberos の principal 名を持っています。 もし最初のユーザが .Pa .klogin 中のある principal 名に認証されれば、 そのアカウントでのアクセスが許可されます。 もし .Pa .klogin ファイルが存在しなければ、次の principal .Ar accountname.@localrealm でのアクセスが許可されます。 これ以外の場合、 .Xr login 1 の場合と同様、リモートマシンにおいてログインとパスワードのプロンプトが 表示されます。 いくつかのセキュリティ問題を回避するため、 .Pa .klogin ファイルはリモートユーザの所有としなければなりません。 .Pp Kerberos 認証に失敗すると、警告メッセージが表示され、 標準的な Berkeley .Nm 方式が用いられます。 .Sh 環境変数 .Nm では以下の環境変数が用いられます: .Bl -tag -width TERM .It Ev TERM ユーザの端末タイプを決定します。 .El .Sh 関連項目 .Xr login 1 , .Xr rsh 1 , .Xr telnet 1 , .Xr setsockopt 2 , .Xr kerberos 3 , .Xr krb_realmofhost 3 , .Xr krb_sendauth 3 , .Xr ruserok 3 , .Xr tty 4 , .Xr auth.conf 5 , .Xr hosts 5 , .Xr hosts.equiv 5 , .Xr rlogind 8 , .Xr rshd 8 .Sh 関連ファイル .Bl -tag -width /etc/hosts -compact .It Pa /etc/hosts .It Pa /etc/hosts.equiv .It Pa /etc/auth.conf .It Ev $HOME Ns Pa /.rhosts .It Ev $HOME Ns Pa /.klogin .El .Sh 歴史 .Nm コマンドは .Bx 4.2 から登場しました。 .Pp IPv6 サポートを WIDE/KAME プロジェクトが追加しました。 .Sh バグ .Nm ユーティリティは近い将来 .Xr telnet 1 に置き換えられるでしょう。 .Pp より多くの環境が引き継がれるべきです。 diff --git a/ja_JP.eucJP/man/man1/ruptime.1 b/ja_JP.eucJP/man/man1/ruptime.1 index c4157d05af..3719c9224f 100644 --- a/ja_JP.eucJP/man/man1/ruptime.1 +++ b/ja_JP.eucJP/man/man1/ruptime.1 @@ -1,95 +1,95 @@ -.\" Copyright (c) 1983, 1990 The Regents of the University of California. -.\" All rights reserved. +.\" Copyright (c) 1983, 1990, 1993, 1994 +.\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)ruptime.1 8.2 (Berkeley) 4/5/94 .\" %FreeBSD: src/usr.bin/ruptime/ruptime.1,v 1.16 2004/07/02 22:22:30 ru Exp % .\" .\" $FreeBSD$ .\" -.Dd April 5, 1994 +.Dd March 1, 2003 .Dt RUPTIME 1 .Os .Sh 名称 .Nm ruptime .Nd ローカルネットワーク上の各マシンについて uptime と同様のステータスを表示する .Sh 書式 .Nm .Op Fl alrtu .Op Ar host ... .Sh 解説 .Nm ユーティリティは、ローカルネットワーク上に接続された全マシンについて、 .Xr uptime 1 と同様の表示を行ないます。この表示は、ネットワーク上の各ホストから 3 分ごとに ブロードキャストされるパケットをもとに作成されます。 .Pp オペランドが与えられない場合、 .Nm は全マシンの uptime ステータスを表示します。 そうでない場合、コマンド行に指定されたホストのみが表示されます。 コマンド行にホストが指定された場合、表示されるホストの順番は、 コマンド行にホストが指定された順番と同じです。 .Pp 状態レポートのブロードキャストが 11 分以上途切れているホストについては、 システムダウンしているものとみなします。 4 日以上状態レポートを受け取らないホストについては、まったく表示しません。 .Pp 以下のオプションが使用可能です。 .Bl -tag -width Ds .It Fl a すべてのユーザを含めます。 デフォルトでは、ユーザが 1 時間以上システムへ入力しなかった場合、 そのユーザは出力から省略されます。 .It Fl l ロードアベレージ順にソートします。 .It Fl r ソート順を逆にします。 .It Fl t uptime 順にソートします。 .It Fl u ユーザ数の順にソートします。 .El .Pp デフォルトではリストをホスト名でソートします。 .Sh 関連ファイル .Bl -tag -width /var/rwho/whod.* -compact .It Pa /var/rwho/whod.* データファイル .El .Sh 関連項目 .Xr rwho 1 , .Xr uptime 1 , .Xr rwhod 8 .Sh 歴史 .Nm ユーティリティは .Bx 4.2 から登場しました。 diff --git a/ja_JP.eucJP/man/man1/shar.1 b/ja_JP.eucJP/man/man1/shar.1 index 69be934b0d..187ad06bf9 100644 --- a/ja_JP.eucJP/man/man1/shar.1 +++ b/ja_JP.eucJP/man/man1/shar.1 @@ -1,113 +1,113 @@ .\" %NetBSD: shar.1,v 1.3 1994/12/21 08:42:03 jtc Exp % .\" .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)shar.1 8.1 (Berkeley) 6/6/93 .\" %FreeBSD: src/usr.bin/shar/shar.1,v 1.10 2004/07/03 00:24:44 ru Exp % .\" $FreeBSD$ .\" .Dd June 6, 1993 .Dt SHAR 1 .Os .Sh 名称 .Nm shar .Nd ファイルのシェルアーカイブを作成する .Sh 書式 .Nm .Ar .Sh 解説 .Nm コマンドは、コマンドラインで指定したファイル階層を再生成するための .Xr sh 1 のスクリプトファイルを生成するものです (ちなみに、 .Nm 自身、シェルスクリプトです)。 .Nm で生成されるスクリプトファイルでディレクトリ を再生成する場合、コマンドライン上での指定は、その中に作成されるファイルより も先にディレクトリを指定しなくてはなりません ( .Xr find 1 の出力はこの順番で出るので、正しく動作します)。 .Pp .Nm コマンドは、通常は少数のファイルを .Xr ftp 1 や .Xr mail 1 を用いて配布する場合に用いられます。 -.Sh 関連ファイル +.Sh 関連項目 .Xr compress 1 , .Xr mail 1 , .Xr tar 1 , .Xr uuencode 1 .Sh バグ .Nm は、特殊な形式のファイルや、特定の文字をサポートするようには出来ていません。 .Nm コマンドは最後の文字として改行 ('\\n') を含まないファイルを扱えません。 .Pp .Nm ファイルにトロイの木馬 (ウイルスの一種) をもぐり込ませることは 簡単に出来ます。 すべてのシェルアーカイブファイルは、 .Xr sh 1 を用いて走行させる前に、十分に点検を行なうことを強くおすすめします。 このインプリメントの .Nm を用いて作成されたアーカイブならは、以下の コマンドで簡単に点検ができます。 .Bd -literal -offset indent egrep -v '^[X#]' shar.file .Ed .Sh 使用例 プログラム .Xr ls 1 のシェルアーカイブを作成して Rick にメールするには以下のようにします: .Bd -literal -offset indent cd ls shar `find . -print` \&| mail -s "ls source" rick .Ed .Pp このプログラムを再作成するには以下のようにします: .Bd -literal -offset indent mkdir ls cd ls \&... <メールのヘッダを削除してアーカイブの検査をします> \&... sh archive .Ed .Sh 歴史 .Nm コマンドは .Bx 4.4 から登場しました。 diff --git a/ja_JP.eucJP/man/man1/tty.1 b/ja_JP.eucJP/man/man1/tty.1 index 121a5f2bb2..43f4ea5cf4 100644 --- a/ja_JP.eucJP/man/man1/tty.1 +++ b/ja_JP.eucJP/man/man1/tty.1 @@ -1,79 +1,79 @@ .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)tty.1 8.1 (Berkeley) 6/6/93 .\" %FreeBSD: src/usr.bin/tty/tty.1,v 1.7 2002/04/20 12:17:36 charnier Exp % .\" $FreeBSD$ .\" .Dd June 6, 1993 .Dt TTY 1 .Os .Sh 名称 .Nm tty .Nd 端末名を返す .Sh 書式 .Nm .Op Fl s .Sh 解説 .Nm ユーティリティは、標準入力になっている端末の名前を標準出力へ出力します。 この名前は、 .Xr ttyname 3 で得られる文字列です。標準入力が端末でない場合は、 ``not a tty'' と出力します。 オプションとしては以下のものがあります。 .Bl -tag -width Ds .It Fl s 端末名を表示しません。結果は終了コードだけに反映されます。ただし、この オプションを使うよりは .Dq Li "test -t 0" コマンドを使ったほうがよりよいでしょう。 .El .Pp .Nm ユーティリティは、標準入力が端末だった場合は 0 を、端末でなかった場合 は 1 を、エラーが起きた場合は 2 以上の値を返します。 .Sh 関連項目 .Xr test 1 , .Xr ttyname 3 .Sh 規格 .Nm ユーティリティは -.St -p1003.2-92 +.St -p1003.2 準拠であると考えられています。 .Sh 歴史 .Nm コマンドは .At v1 から登場しました。 diff --git a/ja_JP.eucJP/man/man1/which.1 b/ja_JP.eucJP/man/man1/which.1 index c388663807..5acd7452b4 100644 --- a/ja_JP.eucJP/man/man1/which.1 +++ b/ja_JP.eucJP/man/man1/which.1 @@ -1,83 +1,83 @@ .\" Manpage Copyright (c) 1995, Jordan Hubbard .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the FreeBSD Project .\" its contributors. .\" 4. Neither the name of the FreeBSD Project nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE CONTRIBUTOR ``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 CONTRIBUTOR 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/which/which.1,v 1.23 2002/06/21 06:43:48 ru Exp % .\" $FreeBSD$ .\" .Dd June 21, 2002 .Dt WHICH 1 .Os .Sh 名称 .Nm which .Nd "ユーザパスからプログラムを見つける" .Sh 書式 .Nm .Op Fl as .Op Ar command .Ar ... .Sh 解説 .Nm ユーティリティは、コマンド名のリストを受け取り、 実際に起動したならば実行できる実行形式ファイルを探します。 .Pp オプションには以下のものがあります: .Bl -tag -width indent .It Fl a (最初に見つけたものだけでなく) みつけたすべての実行形式を表示します。 .It Fl s 実行形式が見つかれば 0 を返し、見つからなければ 1 を返します。 表示はしません。 .El .Pp シェルによっては、本ユーティリティと似たまたは同じ、組み込みの .Nm コマンドを提供しているものがあります。 .Xr builtin 1 マニュアルページを参照してください。 .Sh 歴史 .Nm コマンドは .Fx 2.1 から登場しました。 -.Sh 関連ファイル +.Sh 関連項目 .Xr builtin 1 , .Xr csh 1 , .Xr find 1 , .Xr locate 1 , .Xr whereis 1 .Sh 作者 .Nm ユーティリティは元々 .An Wolfram Schneider Aq wosch@FreeBSD.org が Perl で書き、提供しました。 現在のバージョンの .Nm は .An Daniel Papasian Aq dpapasia@andrew.cmu.edu が C で書き直したものです。 diff --git a/ja_JP.eucJP/man/man2/extattr_get_file.2 b/ja_JP.eucJP/man/man2/extattr_get_file.2 index 3bd23a8c12..36c6c76471 100644 --- a/ja_JP.eucJP/man/man2/extattr_get_file.2 +++ b/ja_JP.eucJP/man/man2/extattr_get_file.2 @@ -1,257 +1,257 @@ .\" .\" Copyright (c) 2001 Dima Dorfman .\" Copyright (c) 2003 Robert Watson .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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/lib/libc/sys/extattr_get_file.2,v 1.14 2004/07/05 17:12:52 ru Exp % .\" .\" $FreeBSD$ .Dd March 28, 2001 .Dt EXTATTR 2 .Os .Sh 名称 .Nm extattr_get_fd , .Nm extattr_set_fd , .Nm extattr_delete_fd , .Nm extattr_list_fd , .Nm extattr_get_file , .Nm extattr_set_file , .Nm extattr_delete_file , .Nm extattr_list_file , .Nm extattr_get_link , .Nm extattr_set_link , .Nm extattr_delete_link , .Nm extattr_list_link .Nd VFS 拡張属性を操作するためのシステムコール .Sh ライブラリ .Lb libc .Sh 書式 .In sys/types.h .In sys/extattr.h .In sys/uio.h .Ft ssize_t .Fn extattr_get_fd "int fd" "int attrnamespace" "const char *attrname" "void *data" "size_t nbytes" .Ft int .Fn extattr_set_fd "int fd" "int attrnamespace" "const char *attrname" "const void *data" "size_t nbytes" .Ft int .Fn extattr_delete_fd "int fd" "int attrnamespace" "const char *attrname" .Ft ssize_t .Fn extattr_list_fd "int fd" "int attrnamespace" "void *data" "size_t nbytes" .Ft ssize_t .Fn extattr_get_file "const char *path" "int attrnamespace" "const char *attrname" "void *data" "size_t nbytes" .Ft int .Fn extattr_set_file "const char *path" "int attrnamespace" "const char *attrname" "const void *data" "size_t nbytes" .Ft int .Fn extattr_delete_file "const char *path" "int attrnamespace" "const char *attrname" .Ft ssize_t .Fn extattr_list_file "const char *path" "int attrnamespace" "void *data" "size_t nbytes" .Ft ssize_t .Fn extattr_get_link "const char *path" "int attrnamespace" "const char *attrname" "void *data" "size_t nbytes" .Ft int .Fn extattr_set_link "const char *path" "int attrnamespace" "const char *attrname" "const void *data" "size_t nbytes" .Ft int .Fn extattr_delete_link "const char *path" "int attrnamespace" "const char *attrname" .Ft ssize_t .Fn extattr_list_link "const char *path" "int attrnamespace" "void *data" "size_t nbytes" .Sh 解説 名前付き拡張属性は、ファイルまたはディレクトリを表現する vnode に 関連付けられたメタデータです。 これらは名前空間の集合の中に .Qq Li name=value .Qq ( 名前=値 ) のペアとして存在します。 .Pp .Fn extattr_get_file システムコールは、指定された拡張属性の値を大きさが .Fa nbytes の .Fa data によって指されるバッファに取り出します。 .Fn extattr_set_file システムコールは、指定された拡張属性の値を .Fa data に記述されたデータに設定します。 .Fn extattr_delete_file システムコールは、指定された拡張属性を削除します。 .Fn extattr_list_file は ASCII 0 (nul) 文字によって分離された、要求された名前空間の中に存在する 属性のリストを返します。 .Fn extattr_get_file および .Fn extattr_list_file 呼び出しは .Xr read 2 の形式で使用します。 .Fn extattr_get_file はこれらの引数を .Xr write 2 の形式で使用します。 .Pp .Fn extattr_get_file の呼び出しの中で .Fa data が .Dv NULL の場合には、読み込んだ量を返すのではなく、 定義された拡張属性データの大きさを返します。 これにより、 アプリケーションが読み込みを実行せずにデータの大きさを テストすることを可能にします。 .Fn extattr_delete_link , .Fn extattr_get_link , .Fn extattr_set_link システムコールは、シンボリックリンクを辿らないことを除いて、名前が .Qq Li _file のものと同じ動作をします。 .Pp .Fn extattr_get_fd , .Fn extattr_set_fd , .Fn extattr_delete_fd 呼び出しは、最初の引数を除いて、名前が .Qq Li _file のものと同じ動作をします。 .Qq Li _fd 関数がファイル記述子を取るのに対し、 .Qq Li _file 関数はパス名を取ります。 両方の引数は操作されるべき拡張属性に関連付けられたファイルを、記述します。 .Pp 以下に、全てのシステムコールに共通な引数を記述します: .Bl -tag -width attrnamespace .It Fa attrnamespace 拡張属性が属する名前空間です。 .Xr extattr 9 を参照してください。 .It Fa attrname 拡張属性の名前です。 .El .Pp 名前付き拡張属性のセマンティクスは、 この呼び出しを実装するファイルシステムに依存し、一様ではありません。 特定の属性に対しては、全ての操作がサポートされないかもしれません。 加えて、 .Fa data に入るデータのフォーマットは、属性に特有です。 .Pp 名前付き拡張属性についてのより多くの情報については、 .Xr extattr 9 を参照してください。 .Sh 警告 このインタフェースは活発に開発中ですので、 アプリケーションがこのインタフェースを使うようになるのに従って、 変わるでしょう。 開発者がこれの安定を当てにすることは推奨されません。 .Sh 戻り値 成功の場合には、 .Fn extattr_get_file および .Fn extattr_set_file の呼び出しは、各々 .Fa data から読込んだまたは書込んだバイト数を返します。 また、 .Fa data が .Dv NULL の場合には、 .Fn extattr_get_file は読込みに利用可能なバイト数を返します。 なにか呼び出しが失敗した場合には、値 \-1 が返され、グローバル変数 .Va errno がそのエラーを示すために設定されます。 .Pp .Rv -std extattr_delete_file .Sh エラー システムコール自身によって、以下のエラーが返されることがあります。 加えて、呼び出しを実装しているファイルシステムは、希望するその他の エラーを返すことがあります。 .Bl -tag -width Er .It Bq Er EFAULT .Fa attrnamespace および .Fa attrname 引数、または .Fa data および .Fa nbytes によって定義されるメモリ範囲が、 プロセスに割り当てられたアドレス空間の外を指しています。 .It Bq Er ENAMETOOLONG 属性の名前が .Dv EXTATTR_MAXNAMELEN より長くなっていました。 .El .Pp .Fn extattr_get_fd , .Fn extattr_set_fd , .Fn extattr_delete_fd システムコールは、次の場合に失敗することがあります: .Bl -tag -width Er .It Bq Er EBADF .Fa fd によって参照されるファイル記述子が無効です。 .El .Pp 加えて、 .Fn extattr_get_file , .Fn extattr_set_file , .Fn extattr_delete_file の呼び出しは以下のエラーのため、失敗することがあります: .Bl -tag -width Er .It Bq Er ENOTDIR パス名のプレフィックスの構成要素がディレクトリではありません。 .It Bq Er ENAMETOOLONG パス名の構成要素が 255 文字を超えている、 またはパス名全体が 1023 文字を超えています。 .It Bq Er ENOENT 存在していなければならないパス名の構成要素が、存在していません。 .It Bq Er EACCES パス名のプレフィックスの構成要素の検索パーミッションがありません。 .\" XXX 何か抜けてる? .El .Sh 関連項目 .Xr extattr 3 , .Xr getextattr 8 , .Xr setextattr 8 , .Xr extattr 9 , .Xr VOP_GETEXTATTR 9 , .Xr VOP_SETEXTATTR 9 .Sh 歴史 拡張属性サポートは .Tn TrustedBSD プロジェクトの一部として開発され、 .Fx 5.0 で導入されました。 個々のファイルまたはディレクトリに関連付けられるための追加のラベルを 要求するセキュリティ拡張をサポートするために開発されました。 -.Sh BUGS +.Sh バグ この API の初期のバージョンでは、属性名として空の文字列を .Fn extattr_get_fd , .Fn extattr_get_file または .Fn extattr_get_link に渡すことによって、目的のオブジェクトのために定義された属性のリストを 返しました。 明示的な list API を使用すべきなので、 このインタフェースは非推奨であり、使用されるべきではありません。 diff --git a/ja_JP.eucJP/man/man2/mmap.2 b/ja_JP.eucJP/man/man2/mmap.2 index 6444dd92aa..26df8e243e 100644 --- a/ja_JP.eucJP/man/man2/mmap.2 +++ b/ja_JP.eucJP/man/man2/mmap.2 @@ -1,355 +1,355 @@ .\" Copyright (c) 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)mmap.2 8.4 (Berkeley) 5/11/95 .\" %FreeBSD: src/lib/libc/sys/mmap.2,v 1.50 2004/07/02 23:52:13 ru Exp % .\" .\" $FreeBSD$ -.Dd May 11, 1995 +.Dd November 17, 2001 .Dt MMAP 2 .Os .Sh 名称 .Nm mmap .Nd メモリの割り当て、またはファイルまたはデバイスのメモリへのマップ .Sh ライブラリ .Lb libc .Sh 書式 .In sys/mman.h .Ft void * .Fn mmap "void *addr" "size_t len" "int prot" "int flags" "int fd" "off_t offset" .Sh 解説 .Fn mmap システムコールは、 .Fa addr を始点として最大で .Fa len バイトの連続するページに、 .Fa fd によって記述されるオブジェクトのバイトオフセット .Fa offset の位置から始まる部分をマップされるようにします。 .Fa len がページサイズの倍数でない場合、 マップされた領域は指定の範囲を越えて拡張されるかもしれません。 このような拡張によってマップされたオブジェクトの末端を越えた部分は 0 で埋められます。 .Pp .Fa addr が 0 でない場合、これはシステムへのヒントとして使用されます (システムの便宜のために、領域の実際のアドレスは 指定されたアドレスとは違う可能性があります)。 .Fa addr が 0 の場合、アドレスはシステムによって選択されます。 領域の実際の開始アドレスが返されます。 .Fa mmap が処理に成功すると、確保されたアドレス範囲の以前のマッピングは 削除されます。 .Pp 保護 (領域へのアクセス許可) は .Fa prot 引数で、以下の値の論理和 .\".Em or Ns 'ing .Em ( or ) を取った値で指定します: .Pp .Bl -tag -width PROT_WRITE -compact .It Dv PROT_NONE ページはアクセスできません。 .It Dv PROT_READ ページは読取りできます。 .It Dv PROT_WRITE ページは書込みできます。 .It Dv PROT_EXEC ページは実行可能です。 .El .Pp .Fa flags 引数は、マップされたオブジェクトのタイプ、マッピングオプション、 およびマップされたページのコピーに対して行われた修正が、プロセスに 固有であるかまたは他からの参照と共有されるかを指定します。 共有、マッピングタイプ、およびオプションは、以下の値の論理和 .\".Em or Ns 'ing .Em ( or ) を取った値で .Fa flags 引数に指定します: .Bl -tag -width MAP_HASSEMAPHORE .It Dv MAP_ANON どの特定のファイルとも対応していない匿名メモリをマップします。 .Dv MAP_ANON を作成するのに使用されるファイル記述子は \-1 である必要があります。 .Fa offset 引数は無視されます。 .\".It Dv MAP_FILE .\"Mapped from a regular file or character-special device memory. .It Dv MAP_FIXED システムが、指定されたアドレスと異なるアドレスを選択することを許容しません。 指定されたアドレスが使用できない場合、 .Fn mmap は処理に失敗します。 .Dv MAP_FIXED が指定されている場合、 .Fa addr はページサイズの倍数である必要があります。 このオプションの使用はお勧めできません。 .It Dv MAP_HASSEMAPHORE 領域にセマフォが含まれている可能性があること、特殊な処理が必要な可能性が あることをカーネルに通知します。 .It Dv MAP_INHERIT このフラグは正式に公表されたものとして扱われたことはなく、 もはやサポートされていません。 さらなる情報は .Xr minherit 2 を参照してください。 .It Dv MAP_NOCORE 領域はコアファイルに含まれません。 .It Dv MAP_NOSYNC はこの VM マップを経由して汚されたデータを、無闇にではなく (通常はページャによって) 必要な時のみ物理的なメディアに フラッシュするようにします。 普通、このオプションにより、更新デーモンはこのマップで 汚されたページをフラッシュしないようになります。 これにより、ファイルバックアップされた共有メモリのマッピングを使用して 無関係なプロセスの間でメモリアクセスを効率的に共有することが できるようになります。 このオプションがないと、汚された VM ページは頻繁 (通常 30-60 秒毎) に ディスクにフラッシュされるかも知れず、そのような動作を必要としない場合 (例えば IPC のためにファイルを用いた共有 mmap 領域を用いている場合) パフォーマンスに問題が出ることがあります。 .Dv MAP_NOSYNC を使っているかにかかわらず、 VM/ ファイルシステムの一貫性は保たれることに注意してください。 このオプションは .Ux プラットフォーム間で (まだ) 移植性はありませんが、 いくつかのプラットフォームではデフォルトで同じ動作をするように 実装されているかも知れません。 .Pp .Em 警告 ! .Xr ftruncate 2 を使いファイルを拡張してから、つまりファイルに大きな穴を空けてから、 その穴を共有 .Fn mmap を修正して埋める場合、深刻なファイル断片化が生じる可能性があります。 この断片化を避けるために、 .Fn mmap でその領域を修正する前に、新規に拡張した領域に 0 を .Fn write して、ファイルのバッキングストアを事前に割り当てておく必要があります。 ディスクへのフラッシュが全くランダムに生じるため、 断片化問題に特に敏感なのは、 .Dv MAP_NOSYNC ページです。 .Pp 同じことが、 .Dv MAP_NOSYNC を使いファイルベースの共有メモリストアを実装する場合にも言えます。 .Fn ftruncate してバッキングストアを作るのではなく、0 を .Fn write してバッキングストアを作ることを推奨します。 たとえば、 .Dq Li dd if=filename of=/dev/null bs=32k を使うなどして巨大なファイルをシーケンシャルに読み取りながら、 .Dq Li iostat 1 を呼び出すことで得られる KB/t (転送 1 回あたりのキロバイト数) を 観察することでファイル断片化のテストが可能です。 .Pp .Xr fsync 2 システムコールはすべての汚染されたデータとファイルに関連づけられたメタデータ (NOSYNC の汚れた VM データを含む) を物理的媒体にフラッシュします。 .Xr sync 8 コマンドと .Xr sync 2 システムコールは、汚染された NOSYNC VM のデータを通常フラッシュしません。 .Xr msync 2 システムコールは .Bx で整合性のあるファイルシステムのバッファキャッシュが実装されたので 廃止されました。 しかしながら、汚れた VM ページとファイルシステムを結びつけ、 物理的媒体にすぐに (後程ではなく) フラッシュさせる用途に 使われることもあります。 .It Dv MAP_PRIVATE 修正はプロセス固有に行われます。 .It Dv MAP_SHARED 修正は共有されます。 .It Dv MAP_STACK .Dv MAP_STACK は .Dv MAP_ANON および 0 の .Fa offset 指定を含みます。 .Fa fd 引数は -1 でなければならず、 .Fa prot には少なくとも .Dv PROT_READ と .Dv PROT_WRITE が入っている必要があります。 このオプションは、スタックの先頭を開始点とし下方に伸びる、サイズが最大で .Fa len バイトまで伸びるメモリ領域を作成します。 スタックの先頭は、呼び出しから返された開始アドレスに .Fa len バイトを加えたものになります。 最も伸びた場合のスタックの下端は、 呼び出しによって返される開始アドレスになります。 .El .Pp .Xr close 2 システムコールはページをアンマップしません。 詳細については .Xr munmap 2 を参照してください。 .Pp 現在の設計ではプロセスはスワップ空間の位置を指定できません。 将来は、追加のマッピングタイプ .Dv MAP_SWAP を定義するかもしれません。 この場合、ファイル記述子引数には スワップを行うべきファイルまたはデバイスを指定します。 .Sh 戻り値 正常に完了すると、 .Fn mmap は、マップされた領域を指すポインタを返します。 そうでない場合は 値 .Dv MAP_FAILED が返され、エラーを示すために .Va errno が設定されます。 .Sh エラー .Fn mmap システムコールは次の場合に失敗します: .Bl -tag -width Er .It Bq Er EACCES フラグ .Dv PROT_READ が .Fa prot 引数の一部として指定されましたが、 .Fa fd が読取り用に開かれていませんでした。 フラグ .Dv MAP_SHARED と .Dv PROT_WRITE が .Fa flags と .Fa prot 引数の一部として指定されましたが、 .Fa fd は書込み用に開かれていませんでした。 .It Bq Er EBADF .Fa fd 引数が有効な開かれたファイルの記述子ではありません。 .It Bq Er EINVAL .Dv MAP_FIXED が指定されて .Fa addr 引数がページ境界に整列されていないか、または指定の アドレスの一部がユーザプロセスの有効なアドレス空間の外になります。 .It Bq Er EINVAL .Fa len 引数が負でした。 .It Bq Er EINVAL .Dv MAP_ANON が指定されて .Fa fd 引数が -1 ではありませんでした。 .It Bq Er EINVAL .Dv MAP_ANON が指定されておらず、 .Fa fd が通常のファイルまたはキャラクタ型特殊ファイルを参照していませんでした。 .It Bq Er EINVAL .Fa offset 引数がページ境界に整列していませんでした (後述する「 .Sx バグ の章」を参照)。 .It Bq Er ENOMEM .Dv MAP_FIXED が指定されていますが、 .Fa addr 引数が与えられていません。 .Dv MAP_ANON が指定されて利用できるメモリが不充分でした。 sysctl 値 .Va vm.nax_proc_mmap で指定されたプロセス毎の mmap 限界に達しました。 .El .Sh 関連項目 .Xr madvise 2 , .Xr mincore 2 , .Xr minherit 2 , .Xr mlock 2 , .Xr mprotect 2 , .Xr msync 2 , .Xr munlock 2 , .Xr munmap 2 , .Xr getpagesize 3 , .Xr make.conf 5 .Sh バグ .Fa len 引数は 2GB に限定されます。 2GB をわずかに上回るマッピングは機能しませんが、 2GB, 4GB, 6GB および 8GB よりわずかに少ないファイルサイズについて (ファイルサイズ % 2GB) のサイズのウィンドウをマップできます。 .Pp 制約は多彩な理由から生じています。 そのほとんどは、パフォーマンス上の著しいペナルティのため、 .Fx では VM システム内で 64 ビットのオフセットを使用したくないことと 関係しています。 したがって .Fx は 32 ビットのページインデックスを使用しており、これによって .Fx では最高で 8TB までのファイルサイズを利用できます。 実際にはさらに制約が課されて使用可能サイズは 1TB までですが、 これは、ファイルシステムコード内のバグによるものです (ブロック番号計算を行っているときの桁落ち)。 .Pp 2GB 制限のもうひとつの理由は、ファイルシステムメタデータが負のオフセットに 存在できるということです。 .Pp 0 バイトを .Fn mmap しようとしても何の効果もなく、単に成功します。 一方、0 バイトを .Fn munmap しようとすると .Bq Er EINVAL が返されることに注意してください。 diff --git a/ja_JP.eucJP/man/man2/semctl.2 b/ja_JP.eucJP/man/man2/semctl.2 index d7c8ad6b44..347d0afc8a 100644 --- a/ja_JP.eucJP/man/man2/semctl.2 +++ b/ja_JP.eucJP/man/man2/semctl.2 @@ -1,206 +1,206 @@ .\" .\" Copyright (c) 1995 David Hovemeyer .\" .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``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 DEVELOPERS 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/lib/libc/sys/semctl.2,v 1.19 2004/07/02 23:52:13 ru Exp % .\" .\" $FreeBSD$ .Dd September 12, 1995 .Dt SEMCTL 2 .Os .Sh 名称 .Nm semctl .Nd セマフォ集合に対する操作を制御する .Sh ライブラリ .Lb libc .Sh 書式 .In sys/types.h .In sys/ipc.h .In sys/sem.h .Ft int .Fn semctl "int semid" "int semnum" "int cmd" ... .Sh 解説 .Fn semctl システムコールは、 .Fa cmd が示す操作を .Fa semid で示されるセマフォ集合に対して実行します。 ある値の .Fa cmd に対しては、4 番目の引数 .Fa "union semun arg" が必要です。 .Fa arg 引数を使用するコマンドの場合、 .Fa "union semun" は次のように定義されます: .Bd -literal .\" .\" From : .\" union semun { int val; /* SETVAL 用の値 */ struct semid_ds *buf; /* IPC_STAT および IPC_SET 用のバッファ */ u_short *array; /* GETALL および SETALL 用の配列 */ }; .Ed .Pp コマンドは次のように実行されます: .\" .\" This section based on Stevens, _Advanced Programming in the UNIX .\" Environment_. .\" .Bl -tag -width IPC_RMIDXXX .It Dv IPC_STAT セマフォ集合の .Fa "struct semid_ds" を取得し、 .Fa arg.buf が指すメモリに保存します。 .It Dv IPC_SET セマフォ集合の .Fa "struct semid_ds" のメンバ .Fa sem_perm.uid , .Fa sem_perm.gid および .Fa sem_perm.mode を、 .Fa arg.buf が指す構造体のメンバと一致するように変更します。 呼び出し元プロセスの実効ユーザ ID は、 .Fa sem_perm.uid または .Fa sem_perm.cuid のどちらかと一致する必要があるか、 またはスーパユーザ特権を持っている必要があります。 .It IPC_RMID セマフォ集合をただちにシステムから削除します。 呼び出し元プロセスの実効ユーザ ID がセマフォ集合の .Fa sem_perm.uid または .Fa sem_perm.cuid と等しいか、またはプロセスがスーパユーザ特権を持っている必要があります。 .It Dv GETVAL セマフォ番号 .Fa semnum の値を返します。 .It Dv SETVAL セマフォ番号 .Fa semnum の値を .Fa arg.val に設定します。 あらゆるプロセス中の、このセマフォに対する未適用の終了時調整値は、 消されます。 .It Dv GETPID セマフォ番号 .Fa semnum について操作を実行した最後のプロセスのプロセス ID を返します。 .It Dv GETNCNT セマフォ番号 .Fa semnum の値が現在の値より大きくなるのを待っているプロセスの数を返します。 .It Dv GETZCNT セマフォ番号 .Fa semnum の値が 0 になるのを待っているプロセスの数を返します。 .It Dv GETALL 集合内のすべてのセマフォの値を .Fa arg.array が指す配列内へ取得します。 .It Dv SETALL 集合内のすべてのセマフォの値を .Fa arg.array が指す配列内の値に設定します。 あらゆるプロセス中の、この集合に属するすべてのセマフォに対する未適用の 終了時調整値は、消されます。 .El .Pp .Vt "struct semid_ds" は次のように定義されます: .Bd -literal .\" .\" Taken straight from . .\" struct semid_ds { struct ipc_perm sem_perm; /* 操作パーミッション構造体 */ struct sem *sem_base; /* 集合内の最初のセマフォへのポインタ */ u_short sem_nsems; /* 集合内のセマフォの数 */ time_t sem_otime; /* 最後の操作時刻 */ long sem_pad1; /* SVABI/386 によるとこれが必要 */ time_t sem_ctime; /* 最後の変更時刻 * 1970/01/01 00:00:00 GMT * からの秒単位の経過時間 */ long sem_pad2; /* SVABI/386 によるとこれが必要 */ long sem_pad3[4]; /* SVABI/386 によるとこれが必要 */ }; .Ed .Sh 戻り値 処理が正常に完了すると、 .Fa cmd が .Dv GETVAL , .Dv GETPID , .Dv GETNCNT , .Dv GETZCNT のどれかであるとき、 .Fn semctl は対応する値を返します。 そうでない場合は 0 を返します。 処理に失敗した場合は、-1 を返し、エラーを示すために .Va errno を設定します。 .Sh エラー .Fn semctl システムコールは次の場合に処理に失敗します: .Bl -tag -width Er .It Bq Er EINVAL .Fa semid に対応するセマフォ集合がありません。 .It Bq Er EINVAL .Fa semnum 引数が、指定のセマフォ集合に対して有効なセマフォの範囲内にありません。 .It Bq Er EPERM 呼び出し元プロセスの実効ユーザ ID が、 セマフォ集合の所有者または作成者のユーザ ID と一致しません。 .It Bq Er EACCES 操作とセマフォ集合のモードの間に不一致があったために パーミッションが拒否されました。 .It Bq Er ERANGE .Dv SETVAL または .Dv SETALL が、セマフォを .Bq 0 .. Dv SEMVMX の許容範囲外に設定しようとしました。 .El .Sh 関連項目 .Xr semget 2 , .Xr semop 2 -.Sh BUGS +.Sh バグ .Dv SETALL は、エラーを返す前にいくつかのセマフォ要素を更新することがあります。 diff --git a/ja_JP.eucJP/man/man3/floor.3 b/ja_JP.eucJP/man/man3/floor.3 index f10bb1f66e..1699e32bba 100644 --- a/ja_JP.eucJP/man/man3/floor.3 +++ b/ja_JP.eucJP/man/man3/floor.3 @@ -1,70 +1,70 @@ .\" Copyright (c) 1985, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" from: @(#)floor.3 6.5 (Berkeley) 4/19/91 .\" %FreeBSD: src/lib/msun/man/floor.3,v 1.7.2.3 2001/12/17 10:08:36 ru Exp % .\" .\" $FreeBSD$ .Dd March 10, 1994 .Dt FLOOR 3 .Os .Sh 名称 .Nm floor , .Nm floorf .Nd x 以下の最も大きな整数値への切捨て -.Sh LIBRARY +.Sh ライブラリ .Lb libm .Sh 書式 .In math.h .Ft double .Fn floor "double x" .Ft float .Fn floorf "float x" .Sh 解説 .Fn floor および .Fn floorf 関数は、 浮動小数点として表現される .Fa x 以下の最も大きな整数値を返します。 .Sh 関連項目 .Xr abs 3 , .Xr ceil 3 , .Xr fabs 3 , .Xr ieee 3 , .Xr math 3 , .Xr rint 3 .Sh 規格 .Fn floor 関数は、 .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/intro.3 b/ja_JP.eucJP/man/man3/intro.3 index 7e7cc15bee..20d22b587a 100644 --- a/ja_JP.eucJP/man/man3/intro.3 +++ b/ja_JP.eucJP/man/man3/intro.3 @@ -1,162 +1,162 @@ .\" Copyright (c) 1980, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)intro.3 8.1 (Berkeley) 6/5/93 .\" %FreeBSD: src/share/man/man3/intro.3,v 1.9.2.4 2001/08/17 13:08:36 ru Exp % .\" $FreeBSD$ .\" .Dd June 5, 1993 .Dt INTRO 3 .Os BSD 4 .Sh 名称 .Nm intro .Nd C ライブラリの手引 .Sh 解説 本節では C ライブラリ関数とエラー時の返却値、他の共通定義、そして設計 概念について概説します。これらの関数のほとんどが C ライブラリである .Em libc から利用可能です。 .\" (see .\" .Xr libc 3 ) . その他のライブラリ、例えば数学ライブラリである .Em libm 等を利用する場合には、コンパイル時にコンパイラの .Fl l オプションを付加して、その利用を指示する必要があります。 .\" .Pp .\" A subset of the .\" .Xr libc functions .\" are available from Fortran; .\" they are described separately in .\" .Xr intro 3f . .Pp 各種ライブラリ一覧 (括弧内はローダフラグ): .Bl -tag -width "libc (-lc)" .It Xr libc Pq Fl l Ns Ar c 標準 C ライブラリ関数。 .\" (See .\" .Xr libc 3 . ) C コンパイラ .Xr cc 1 を使うときは、ローダフラグ .Fl l Ns Ar c を指定する必要はありません。 .Xr libc の内部にはいくつかの `ライブラリ' または関数グループが含まれます。これらは、 .Tn 標準 I/O ルーチン、データベース・ルーチン、ビット・オペレータ、ストリング・ オペレータ、キャラクタ試験とキャラクタ・オペレータ、des 暗号ルーチン、 記憶割当、時間関数、信号処理他です。 .It Xr libcurses Pq Fl l Ns Ar curses Fl l Ns Ar termcap 2 次元非ビットマップ・ディスプレィ端末用の端末独立 スクリーン管理ルーチン ( .Xr ncurses 3 を参照)。 .It Xr libcompat Pq Fl l Ns Ar compat 廃止されているが、 .Bx 4.3 との互換性の生成に使える関数。特に、ソース・コード の互換性確保のために、 .Bx の旧リリースで提供された各種のシステム・ コール・インタフェースが含まれています。これらのルーチンの使用は、 できるだけ避けるべきです。マニュアル・ページの互換性ルーチンの見出し項目に 使用すべき適切なインタフェースが表示されています。 .It Xr libkvm Pq Fl l Ns Ar kvm カーネル・メモリへのアクセスに使われる関数はこのライブラリにあります。 実行中のシステムとクラッシュ・ダンプの両方に使用できます ( .Xr kvm 3 を参照)。 .It Xr libl Pq Fl l Ns Ar l .Xr lex 1 用ライブラリ .\" .It Xr libln .It Xr libm Pq Fl l Ns Ar m 数学ライブラリ、 .Em libm。 数学ライブラリは Pascal コンパイラ .\" .Xr pc 1 が必要なときにロードされますが、 .Fl l Ns Ar m フラッグを要求する C コンパイラからは ロードされません ( .Xr math 3 を参照)。 .It Xr libmp Pq Fl l Ns Ar mp .\" .It Xr libom .\" Old math library. .\" .It Xr libplot Pq Fl l Ns Ar plot .\" Device independent plotting functions. .\" (See .\" .Xr plot 3 . ) .\" .It Xr libplotf77 Pq Fl l Ns Ar plotf77 .\" The device independent plotting functions for fortran. .\" (See .\" .Xr plot 3 . ) .\" .It Xr libresolv Pq Fl l Ns Ar resolv .\" Routines for network address resolution. .It Xr libtermcap Pq Fl l Ns Ar termcap 端末独立操作ライブラリ・パッケージ ( .Xr termcap 3 を参照 )。 .\" .It libvt0.a .It Xr liby Pq Fl l Ns Ar y .Xr yacc 1 用ライブラリ .El -.Sh FILES +.Sh 関連ファイル .Bl -tag -width /usr/lib/libm_p.a -compact .It Pa /usr/lib/libc.a C ライブラリ .It Pa /usr/lib/libc_p.a プロファイリングにコンパイルされた C ライブラリ .It Pa /usr/lib/libm.a 数学ライブラリ .It Pa /usr/lib/libm_p.a プロファイリングにコンパイルされた数学ライブラリ .El .Sh 関連項目 .\" .Xr libc 3 , .Xr cc 1 , .Xr ld 1 , .Xr nm 1 , .Xr intro 2 , .Xr math 3 , .Xr stdio 3 .\" .Sh LIST OF FUNCTIONS .\" .Bl -column "strncasecmpxxx" "system" .\" .Sy Name Description .\" .El .Sh 歴史 .Nm マニュアルは .At v7 で取り入れられました。 diff --git a/ja_JP.eucJP/man/man3/login_times.3 b/ja_JP.eucJP/man/man3/login_times.3 index 0bc811c5de..35d809eaab 100644 --- a/ja_JP.eucJP/man/man3/login_times.3 +++ b/ja_JP.eucJP/man/man3/login_times.3 @@ -1,157 +1,157 @@ .\" Copyright (c) 1995 David Nugent .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, is permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice immediately at the beginning of the file, without modification, .\" this list of conditions, and the following disclaimer. .\" 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. This work was done expressly for inclusion into FreeBSD. Other use .\" is permitted provided this notation is included. .\" 4. Absolutely no warranty of function or purpose is made by the author .\" David Nugent. .\" 5. Modifications may be freely made to this file providing the above .\" conditions are met. .\" .\" %FreeBSD: src/lib/libutil/login_times.3,v 1.8.2.5 2001/12/17 10:08:32 ru Exp % .\" $FreeBSD$ .\" .Dd January 2, 1997 .Os .Dt LOGIN_TIMES 3 .Sh 名称 .Nm parse_lt , .Nm in_ltm , .Nm in_ltms .Nd ログイン時間帯のチェックおよび解析を行う関数 .Sh ライブラリ .Lb libutil .Sh 書式 .In sys/types.h .In time.h .In login_cap.h .Ft login_time_t .Fn parse_lt "const char *str" .Ft int .Fn in_ltm "const login_time_t *lt" "struct tm *t" "time_t *ends" .Ft int .Fn in_ltms "const login_time_t *lt" "struct tm *t" "time_t *ends" .Sh 解説 この関数セットは、 .Xr login.conf 5 で使用されている、ログイン許可時間に関する定義済みリストと 対照させてログインおよびセッション時間のチェックと解析を行います。 .Pp ログインクラスの .Ar times.allow と .Ar times.deny 権限フィールドで定義された許可、非許可セッション時間の形式は、 1 桁または 2, 3 桁以上の文字の日付コードを定義する接頭語で構成されます。 ハイフンで分離される 24 時形式の開始、終了時間がそれに続きます。 日付コードは、特定の日付を選択するために接合されるか、または "Any" や "All" (任意の曜日またはすべての曜日) や、 曜日指定 (土曜日と日曜日を含む) のための "Wk"、 週末を表す "Wd" などの、特殊な表記記号も使用することができます。 .Pp 時間帯はたとえば次のとおりです。 .Dl MoThFrSa1400-2200 これは、月曜日、木曜日、金曜日、土曜日の午後 2 時から 10 時の間と解釈されます。 .Dl Wd0600-1800 これは、土曜日と日曜日の午前 6 時から午後 6 時までの意味です。 .Dl Any0400-1600 これは、任意の曜日の午前 4 時から午後 4 時の意味です。 .Pp 注意事項:時間帯の表示はすべてシステムのローカル時間です。 .Pp 関数 .Fn parse_lt は、ASCII 表示の時間帯を .Ft login_time_t タイプの構造に変換します。 定義は次のとおりです。 .Bd -literal typedef struct login_time { u_short lt_start; /* 開始時刻 */ u_short lt_end; /* 終了時刻 */ u_char lt_dow; /* 曜日 */ } login_time_t; .Ed .Pp .Ar lt_start および .Ar lt_end フィールドには、定義された時間の開始と終了時間が、 夜中から経過した分数を収録しています。 .Ar lt_dow フィールドはビットフィールドで、 各曜日の 1 ビットと未使用の 1 ビットを持っています。 .Em LTM_* 系列のマクロは、ビットの個別のまたは組み合わせの検査に使用されます。 このフィールドにビットが設定されていない場合、すなわち、値 .Em LTM_NONE が入っているとき、時間帯はすべて間違っているとみなされます。 これは、値 .Ar login_time_t の配列の終端を示す慣習として使用されます。 .Fn parse_lt が .Em LTM_NONE と同等の .Ar lt_dow が設定された .Ar login_time_t を返した場合、構文解析エラーがあります。 .Pp 残りの関数により、指定された time_t または特別な時間帯または時間帯の配列に対する構造体 tm をテストできます。 .Fn in_ltm により、第 2 パラメータとして渡された構造体 tm で指定された時間が 第 1 パラメータで定義された時間内にあるかどうか決定します。 指定の時間が時間帯内にあるかどうかをバイナリ型の戻り値で返します。 時間が所定の時間帯になく、関数の第 3 パラメータが NULL でなければ、 渡された時間に関係する時間帯の終了時間が返されます。 .Pp .Fn in_ltms は、 .Fn in_ltm と類似していますが、第 1 パラメータが .Ar login_time_t オブジェクトの配列のポインタでなければならないという点は 異なります。なお配列は、要素数が LC_MAXTIMES (64) で上限が規定されており、 .Em LTM_NONE が設定された .Ar lt_dow フィールドにより終端が規定されています。 .Sh 戻り値 .Fn parse_lt は解析された時間帯を含む login_time_t 型の構造体を 返します。構文解析エラーがある場合、 .Ar lt_dow フィールドに .Em LTM_NONE (すなわち 0) が設定されます。 .Pp .Fn in_ltm は、指定された時間が第 1 パラメータとして渡された login_time_t で定義した時間帯内にあれば、0 以外の値を返します。 .Pp .Fn in_ltms は、指定された時間が適合する最初の時間帯のインデックスを 返し、ない場合は -1 を返します。 -.Sh 関連事項 +.Sh 関連項目 .Xr getcap 3 , .Xr login_cap 3 , .Xr login_class 3 , .Xr login.conf 5 , .Xr termcap 5 diff --git a/ja_JP.eucJP/man/man3/pthread_rwlockattr_getpshared.3 b/ja_JP.eucJP/man/man3/pthread_rwlockattr_getpshared.3 index c8466de719..db83f5fcde 100644 --- a/ja_JP.eucJP/man/man3/pthread_rwlockattr_getpshared.3 +++ b/ja_JP.eucJP/man/man3/pthread_rwlockattr_getpshared.3 @@ -1,82 +1,82 @@ .\" Copyright (c) 1998 Alex Nash .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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/lib/libc_r/man/pthread_rwlockattr_getpshared.3,v 1.4.2.4 2001/12/17 10:08:26 ru Exp % .\" .\" $FreeBSD$ .Dd March 22, 1999 .Dt PTHREAD_RWLOCKATTR_GETPSHARED 3 .Os .Sh 名称 .Nm pthread_rwlockattr_getpshared .Nd プロセス共有属性の取得 .Sh ライブラリ .Lb libc_r .Sh 書式 .In pthread.h .Ft int .Fn pthread_rwlockattr_getpshared "const pthread_rwlockattr_t *attr" "int *pshared" .Sh 解説 .Fn pthread_rwlockattr_getpshared 関数は、読取り / 書込みロックの属性オブジェクトのプロセス共有設定を 取得するために使用されます。 その設定は .Fa pshared を通して返され、以下の 2 つの内の 1 つになります。 .Bl -tag -width PTHREAD_PROCESS_PRIVATE .It Dv PTHREAD_PROCESS_SHARED 読取り / 書込みロックが属するメモリにアクセスする全てのプロセスの 全てのスレッドは、ロックを操作できます。 .It Dv PTHREAD_PROCESS_PRIVATE 読取り / 書込みロックを初期化したスレッドと同じプロセスの中で作成された スレッドのみが、ロックを操作できます。 これがデフォルト値です。 .El .Sh 戻り値 問題がない場合は、 .Fn pthread_rwlockattr_getpshared 関数は 0 を返します。 問題がある場合は、そのエラーを示すためにエラー番号が返されます。 .Sh 関連項目 .Xr pthread_rwlock_init 3 , .Xr pthread_rwlockattr_init 3 , .Xr pthread_rwlockattr_setpshared 3 .Sh 規格 .Fn pthread_rwlockattr_getpshared 関数は、 .St -susv2 に適合しているはずです。 .Sh エラー .Fn pthread_rwlockattr_getpshared は以下の場合に失敗します。 .Bl -tag -width Er .It Bq Er EINVAL .Fa attr によって指定された値が無効です。 .El -.Sh HISTORY +.Sh 歴史 .Fn pthread_rwlockattr_getpshared 関数は、 .Fx 3.0 ではじめて登場しました。 diff --git a/ja_JP.eucJP/man/man3/strcasecmp.3 b/ja_JP.eucJP/man/man3/strcasecmp.3 index c9f2225e14..b7dba44dde 100644 --- a/ja_JP.eucJP/man/man3/strcasecmp.3 +++ b/ja_JP.eucJP/man/man3/strcasecmp.3 @@ -1,96 +1,96 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek. .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strcasecmp.3 8.1 (Berkeley) 6/9/93 .\" %FreeBSD: src/lib/libc/string/strcasecmp.3,v 1.6.2.3 2001/12/14 18:33:59 ru Exp % .\" $FreeBSD$ .\" .Dd June 9, 1993 .Dt STRCASECMP 3 .Os .Sh 名称 .Nm strcasecmp , .Nm strncasecmp .Nd 大文字小文字を無視した文字列の比較 .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft int .Fn strcasecmp "const char *s1" "const char *s2" .Ft int .Fn strncasecmp "const char *s1" "const char *s2" "size_t len" .Sh 解説 .Fn strcasecmp および .Fn strncasecmp 関数は、ヌル文字で終了する文字列 .Fa s1 および .Fa s2 を比較します。 .Pp .Fn strncasecmp は、最大で .Fa len 個の文字を比較します。 .Sh 戻り値 .Fn strcasecmp および .Fn strncasecmp は、それぞれの文字を小文字に変換した後に .Fa s1 が .Fa s2 よりも辞書式順序で大きいか、等しいか、あるいは小さいかに応じて、 それぞれ、0 より大きい、0 に等しい、 あるいは 0 より小さい整数を返します。 文字列自体は修正されません。比較は、 .Sq Li \e200 が .Ql \e0 よりも大きくなるように、unsigned char を使って行います。 -.Sh 参照 +.Sh 関連項目 .Xr bcmp 3 , .Xr memcmp 3 , .Xr strcmp 3 , .Xr strcoll 3 , .Xr strxfrm 3 , .Xr tolower 3 .Sh 歴史 .Fn strcasecmp および .Fn strncasecmp 関数は、 .Bx 4.4 ではじめて登場しました。 diff --git a/ja_JP.eucJP/man/man3/strcat.3 b/ja_JP.eucJP/man/man3/strcat.3 index d5ad23ab1a..0a74cd9817 100644 --- a/ja_JP.eucJP/man/man3/strcat.3 +++ b/ja_JP.eucJP/man/man3/strcat.3 @@ -1,98 +1,98 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strcat.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/string/strcat.3,v 1.5.2.3 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .\" .Dd June 4, 1993 .Dt STRCAT 3 .Os .Sh 名称 .Nm strcat .Nd 文字列の連結 .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft char * .Fn strcat "char *s" "const char *append" .Ft char * .Fn strncat "char *s" "const char *append" "size_t count" .Sh 解説 .Fn strcat および .Fn strncat 関数は、ヌル文字で終了する文字列 .Fa append をヌル文字で終了する文字列 .Fa s の終わりに追加し、次に終端の .Ql \e0 を追加します。文字列 .Fa s は、結果を保持するのに十分なスペースを持っていなければなりません。 .Pp .Fn strncat 関数は、 .Fa append から .Fa count を超えない数の文字を追加し、次に終端の .Ql \e0 を追加します。 .Sh 戻り値 .Fn strcat および .Fn strncat 関数は、ポインタ .Fa s を返します。 -.Sh 参照 +.Sh 関連項目 .Xr bcopy 3 , .Xr memccpy 3 , .Xr memcpy 3 , .Xr memmove 3 , .Xr strcpy 3 , .Xr strlcat 3 , .Xr strlcpy 3 .Sh 規格 .Fn strcat および .Fn strncat 関数は、 .St -isoC 適合しています。 diff --git a/ja_JP.eucJP/man/man3/strchr.3 b/ja_JP.eucJP/man/man3/strchr.3 index fd479e871c..73c4632a39 100644 --- a/ja_JP.eucJP/man/man3/strchr.3 +++ b/ja_JP.eucJP/man/man3/strchr.3 @@ -1,86 +1,86 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strchr.3 8.2 (Berkeley) 4/19/94 .\" %FreeBSD: src/lib/libc/string/strchr.3,v 1.4.2.4 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .\" .Dd April 19, 1994 .Dt STRCHR 3 .Os .Sh 名称 .Nm strchr .Nd 文字列中の文字を検索 .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft char * .Fn strchr "const char *s" "int c" .Sh 解説 .Fn strchr 関数は、 .Ar s によって指される文字列の中で最初に出会う文字 .Ar c を見つけます。終端のヌル文字は、文字列の一部とみなします。 .Fa c が .Ql \e0 である場合は、 .Fn strchr は終端の .Ql \e0 を見つけます。 .Sh 戻り値 関数 .Fn strchr は、見つけた文字へのポインタか、 または文字が文字列中に見つからない場合は NULL を返します。 -.Sh 参照 +.Sh 関連項目 .Xr memchr 3 , .Xr strcspn 3 , .Xr strpbrk 3 , .Xr strrchr 3 , .Xr strsep 3 , .Xr strspn 3 , .Xr strstr 3 , .Xr strtok 3 .Sh 規格 .Fn strchr 関数は、 .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/strcmp.3 b/ja_JP.eucJP/man/man3/strcmp.3 index 96989c384a..13f3f1bdd2 100644 --- a/ja_JP.eucJP/man/man3/strcmp.3 +++ b/ja_JP.eucJP/man/man3/strcmp.3 @@ -1,102 +1,102 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strcmp.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/string/strcmp.3,v 1.6.2.3 2001/10/15 16:45:38 mike Exp % .\" .\" $FreeBSD$ .\" .Dd October 11, 2001 .Dt STRCMP 3 .Os .Sh 名称 .Nm strcmp , .Nm strncmp , .Nd 文字列の比較 .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft int .Fn strcmp "const char *s1" "const char *s2" .Ft int .Fn strncmp "const char *s1" "const char *s2" "size_t len" .Sh 解説 .Fn strcmp および .Fn strncmp 関数は、ヌル文字で終了する文字列 .Fa s1 および .Fa s2 を辞書式順序で比較します。 .Pp .Fn strncmp 関数は、 .Fa len 文字分の比較をします。 .Fn strncmp は、バイナリデータより 文字列の比較のために設計されているので、 .Ql \e0 文字の後に現れる文字列は比較されません。 .Sh 戻り値 .Fn strcmp および .Fn strncmp は、 .Fa s1 が .Fa s2 よりも大きいか、等しいか、あるいは小さいかに応じて、 それぞれ 0 よりも大きい、0 に等しい、 あるいは 0 よりも小さい整数を返します。比較は、 .Ql \e200 が .Ql \e0 よりも大きくなるように、unsigned char を使って行います。 -.Sh 参照 +.Sh 関連項目 .Xr bcmp 3 , .Xr memcmp 3 , .Xr strcasecmp 3 , .Xr strcoll 3 , .Xr strxfrm 3 .Sh 規格 .Fn strcmp および .Fn strncmp 関数は、 .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/strcoll.3 b/ja_JP.eucJP/man/man3/strcoll.3 index f3af80fd6f..be043316f2 100644 --- a/ja_JP.eucJP/man/man3/strcoll.3 +++ b/ja_JP.eucJP/man/man3/strcoll.3 @@ -1,76 +1,76 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strcoll.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/string/strcoll.3,v 1.8.2.3 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .\" .Dd June 4, 1993 .Dt STRCOLL 3 .Os .Sh 名称 .Nm strcoll .Nd 現在の照合に従って文字列を比較 .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft int .Fn strcoll "const char *s1" "const char *s2" .Sh 解説 .Fn strcoll 関数は、ヌル文字で終了する文字列 .Fa s1 と .Fa s2 を現在ロケールにおいて照合とするものがあれば、 それに従って辞書式順序で比較し、ない場合には .Fa strcmp を呼び出して、 .Fa s1 が .Fa s2 よりも大きいか、等しいか、小さいかによってそれぞれ、 0 よりも大きい、または等しい、または小さい整数を返します。 -.Sh 参照 +.Sh 関連項目 .Xr setlocale 3 , .Xr strcmp 3 , .Xr strxfrm 3 .Sh 規格 .Fn strcoll 関数は、 .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/strcpy.3 b/ja_JP.eucJP/man/man3/strcpy.3 index ea32d83688..ce2bd8dd84 100644 --- a/ja_JP.eucJP/man/man3/strcpy.3 +++ b/ja_JP.eucJP/man/man3/strcpy.3 @@ -1,164 +1,164 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strcpy.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/string/strcpy.3,v 1.4.2.5 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .\" .Dd August 9, 2001 .Dt STRCPY 3 .Os .Sh 名称 .Nm strcpy , strncpy .Nd 文字列のコピー .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft char * .Fn strcpy "char *dst" "const char *src" .Ft char * .Fn strncpy "char *dst" "const char *src" "size_t len" .Sh 解説 .Fn strcpy 関数は、文字列 .Fa src を .Fa dst にコピーします (終端の .Ql \e0 文字を含めて)。 .Pp .Fn strncpy 関数は、 .Fa len 個以上の文字は .Fa dst にコピーせず、 .Fa src の長さが .Fa len 文字以下の場合には .Ql \e0 文字を追加します。また、 .Fa src の長さが .Fa len 文字以上である場合は、 .Fa dst .Em を終了させません。 .Sh 戻り値 .Fn strcpy および .Fn strncpy 関数は、 .Fa dst を返します。 .Sh 例 次の行は、 .Va chararray を .Dq Li abc\e0\e0\e0 に設定します : .Bd -literal -offset indent char chararray[6]; (void)strncpy(chararray, "abc", sizeof(chararray)); .Ed .Pp 次の行は、 .Va chararray を .Dq Li abcdef に設定します : .Bd -literal -offset indent char chararray[6]; (void)strncpy(chararray, "abcdefgh", sizeof(chararray)); .Ed .Pp パラメータの長さが、ソースの長さと同じか それ以上であるため .Va chararray は .Tn NUL .Em で終了しない ことに注意してください。 .Pp 次の行は、 .Va input から .Va buf へ文字を適切にコピーし、 その結果を .Tn NUL で終了させます。 .Fn strncpy の文字列自体が .Tn NUL で終了することを 保証しないためで、 これは明確にしなければなりません。 .Bd -literal -offset indent char buf[1024]; (void)strncpy(buf, input, sizeof(buf) - 1); buf[sizeof(buf) - 1] = '\e0'; .Ed .Pp 次の例のように .Xr strlcpy 3 を使用すると、より良く実行できるかもしれません。 .Pp .Dl "(void)strlcpy(buf, input, sizeof(buf));" .Pp .Xr strlcpy 3 は標準的には定義されていないので、 移植に無関係なときだけ 利用するように注意してください。 -.Sh 参照 +.Sh 関連項目 .Xr bcopy 3 , .Xr memccpy 3 , .Xr memcpy 3 , .Xr memmove 3 , .Xr strlcpy 3 .Sh 規格 .Fn strcpy および .Fn strncpy 関数は、 .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/strcspn.3 b/ja_JP.eucJP/man/man3/strcspn.3 index 5d97f84d03..a00b7ff396 100644 --- a/ja_JP.eucJP/man/man3/strcspn.3 +++ b/ja_JP.eucJP/man/man3/strcspn.3 @@ -1,82 +1,82 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strcspn.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/string/strcspn.3,v 1.3.2.4 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .\" .Dd June 4, 1993 .Dt STRCSPN 3 .Os .Sh 名称 .Nm strcspn .Nd 文字列の補集合の長さを測る .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft size_t .Fn strcspn "const char *s" "const char *charset" .Sh 解説 .Fn strcspn 関数は、ヌル文字で終了する文字列 .Fa s から文字列 .Fa charset にない文字列の長さだけ .Fa s の最初の部分の長さを測ります .Fa ( charset の .Em 補集合 の長さを測ります)。 .Sh 戻り値 .Fn strcspn 関数は測られた文字の数を返します。 -.Sh 参照 +.Sh 関連項目 .Xr memchr 3 , .Xr strchr 3 , .Xr strpbrk 3 , .Xr strrchr 3 , .Xr strsep 3 , .Xr strspn 3 , .Xr strstr 3 , .Xr strtok 3 .Sh 規格 .Fn strcspn 関数は .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/strdup.3 b/ja_JP.eucJP/man/man3/strdup.3 index e975f4242c..ab18170044 100644 --- a/ja_JP.eucJP/man/man3/strdup.3 +++ b/ja_JP.eucJP/man/man3/strdup.3 @@ -1,65 +1,65 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strdup.3 8.1 (Berkeley) 6/9/93 .\" %FreeBSD: src/lib/libc/string/strdup.3,v 1.7.2.2 2001/12/14 18:33:59 ru Exp % .\" $FreeBSD$ .\" .Dd June 9, 1993 .Dt STRDUP 3 .Os .Sh 名称 .Nm strdup .Nd 文字列のコピーを保存 .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft char * .Fn strdup "const char *str" .Sh 解説 .Fn strdup 関数は、文字列 .Fa str のコピーのために十分なメモリを割り当て、コピーを行い、 コピーへのポインタを返します。ポインタは後で関数 .Xr free 3 の引数として使ってください。 .Pp 利用可能なメモリが十分ではない場合、NULL を返します。 -.Sh 参照 +.Sh 関連項目 .Xr free 3 , .Xr malloc 3 .Sh 歴史 .Fn strdup 関数は、 .Bx 4.4 ではじめて登場しました。 diff --git a/ja_JP.eucJP/man/man3/strerror.3 b/ja_JP.eucJP/man/man3/strerror.3 index 41baba0ac1..55251c28fb 100644 --- a/ja_JP.eucJP/man/man3/strerror.3 +++ b/ja_JP.eucJP/man/man3/strerror.3 @@ -1,179 +1,179 @@ .\" Copyright (c) 1980, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the American National Standards Committee X3, on Information .\" Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strerror.3 8.1 (Berkeley) 6/9/93 .\" %FreeBSD: src/lib/libc/string/strerror.3,v 1.7.2.6 2001/12/20 06:31:26 wes Exp % .\" .\" $FreeBSD$ .\" .Dd Nov 26, 2001 .Dt STRERROR 3 .Os .Sh 名称 .Nm perror , .Nm strerror , .Nm strerror_r , .Nm sys_errlist , .Nm sys_nerr .Nd システムのエラーメッセージ .Sh ライブラリ .Lb libc .Sh 書式 .In stdio.h .Ft void .Fn perror "const char *string" .Vt extern const char * const sys_errlist[] ; .Vt extern const int sys_nerr ; .In string.h .Ft char * .Fn strerror "int errnum" .Ft int .Fn strerror_r "int errnum" "char * strerrbuf" "size_t buflen" .Sh 解説 .Fn strerror , .Fn strerror_r および .Fn perror 関数は、エラー番号に対応するエラーメッセージ文字列を探し出します。 .Pp .Fn strerror 関数は、エラー番号の引数 .Fa errnum を受け取って、それに対応するメッセージ文字列へのポインタを返します。 .Pp .Fn strerror_r 関数は、 同じ結果を 最大 .Fa buflen 文字数の .Fa strerrbuf に直し、 成功した場合は 0 を返します。 .Pp .Fn perror 関数は、大域変数 .Va errno .Pq Xr intro 2 の現在の値に対応するエラーメッセージを探して、 それに改行をつけて標準エラーファイル記述子に書込みます。引数 .Fa string が .Dv ヌル 以外であり、ヌル文字を指さない場合は、 この文字列はメッセージ文字列の前にコロンとスペース .Pq Ql \&:\ \& ; で区切って追加されます。 それ以外の場合は、エラーメッセージ文字列のみが印字されます。 .Pp .Fa errnum がエラー番号として認識できない場合は、 .Fn strerror は、 .Dq Li "Unknown error:\ " のエラーメッセージ文字列の後に、 10 進数のエラー番号を返し、 .Va errno に .Er EINVAL をセットします。 .Fn strerror_r は、 .Fa strerrbuf を変更せずに .Er EINVAL を返します。 エラー番号が 0 <= .Fa errnum < .Fa sys_nerr 内の実装では、認識できません。 .Pp エラー文字列を含む ( .Fa buflen で指定されているより) .Fa strerrbuf が不十分な領域の場合、 .Fn strerror_r は .Er ERANGE を返し、 .Fa strerrbuf には、 .Fa buflen で指定された ヌル文字で終了する長さの 切り捨てたエラーメッセージが入ります。 .Pp メッセージ文字列には、外部配列 .Va sys_errlist を使って直接アクセスすることができます。外部値 .Va sys_nerr には .Va sys_errlist の中にあるメッセージのカウントが入っています。 これらの変数を使用することには賛成できません。代わりに、 .Fn strerror または .Fn strerror_r を使った方がよいでしょう。 -.Sh 参照 +.Sh 関連項目 .Xr intro 2 , .Xr psignal 3 .Sh 歴史 .Fn strerror および .Fn perror 関数は、 .Bx 4.4 ではじめて登場しました。 .Fn strerror_r 関数は、 .An Wes Peters .Aq wes@freebsd.org . によって .Fx 4.4 で実装されました。 .Sh バグ 認識できないエラー番号に対しては、 .Fn strerror 関数はその結果を静的バッファに返し、 それは以降の呼び出しによって上書きされる可能性があります。 .Pp .Va sys_errlist 変数を使用している好ましくないプログラムは、 その変数を一貫性なく宣言するために失敗することがしばしばあります。 diff --git a/ja_JP.eucJP/man/man3/strftime.3 b/ja_JP.eucJP/man/man3/strftime.3 index c138332afe..fc6a3d966f 100644 --- a/ja_JP.eucJP/man/man3/strftime.3 +++ b/ja_JP.eucJP/man/man3/strftime.3 @@ -1,254 +1,254 @@ .\" Copyright (c) 1989, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the American National Standards Committee X3, on Information .\" Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strftime.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/stdtime/strftime.3,v 1.18.2.7 2001/12/14 18:33:59 ru Exp % .\" $FreeBSD$ .\" .Dd October 4, 1997 .Dt STRFTIME 3 .Os .Sh 名称 .Nm strftime .Nd 日付と時間をフォーマット .Sh ライブラリ .Lb libc .Sh 書式 .In time.h .Ft size_t .Fn strftime "char *buf" "size_t maxsize" "const char *format" "const struct tm *timeptr" .Sh 解説 .Fn strftime 関数は、 .Fa timeptr からの情報を .Fa format によって指される文字列に従ってバッファ .Fa buf にフォーマットします。 .Pp .Fa format 文字列は、0 以上の変換指定および通常の文字から構成されます。 すべての通常文字は、直接バッファにコピーされます。 変換指定は、パーセント記号 .Dq Ql % ともう 1 つの文字から構成されます。 .Pp 配列には .Fa maxsize 個を超えない文字が置かれます。 結果として生じる文字の総数が終端のヌル文字を含めて .Fa maxsize を超えない場合は、 .Fn strftime は終端のヌルを数えないで配列中の文字数を返します。 それ以外の場合は 0 を返し、バッファの内容は不定になります。 .Pp 変換指定は、以下に示すような形で展開した後バッファにコピーされます : .Bl -tag -width "xxxx" .It Cm \&%A 各国の表現で完全な曜日名で置き換えられます。 .It Cm %a 各国の表現で省略した曜日名で置き換えられます。 ここで、略称は最初の 3 文字です。 .It Cm \&%B 各国の表現で完全な月名で置き換えられます。 .It Cm %b 各国の表現で省略した月名で置き換えられます。 ここで、略称は最初の 3 文字です。 .It Cm \&%C (西暦年 / 100) の 10 進数で置き換えられます。 1 桁の数字の前には 0 が付きます。 .It Cm %c 各国の表現で時刻と日付で置き換えられます。 書式は .Xr ctime 3 が生成するものと同様であり、"%a %Ef %T %Y" と等価です。 これはまた、"3+1+6+1+8+1+4" の出力フォーマットを意味します。 .It Cm \&%D .Dq Li %m/%d/%y と同等です。 .It Cm %d 日を示す 10 進数 (01-31) で置き換えられます。 .It Cm \&%E* Cm \&%O* POSIX の地域拡張です。 %Ec %EC %Ex %EX %Ey %EY %Od %Oe %OH %OI %Om %OM %OS %Ou %OU %OV %Ow %OW %Oy というシーケンスは、代替的な表現を与えるものと見なされます。 .Pp 更に、%Ef は短縮形の月の名前と日を示し、 また %EF は長い形式の月と日を示し、 また %OB は別の形式の月の名前を示します (単独で使用し日付は指定しません)。 .It Cm %e 日を示す 10 進数 (1-31) で置き換えられます。 1 桁の数字の前には空白が付きます。 .It Cm \&%G 百年紀付きの年の 10 進数で置き換えられます。 この年は、週の大部分を含んだものとなります (月曜日を週の最初の日として)。 .It Cm %g .Dq Li %G と同じ年ですが、百年紀なしの 10 進数 (00-99) で置き換えられます。 .It Cm \&%H (24 時間時計で) 時間を示す 10 進数 (00-23) で置き換えられます。 .It Cm %h %b と同じです。 .It Cm \&%I (12 時間時計で) 時間を示す 10 進数 (01-12) で置き換えられます。 .It Cm %j 1 年の日を示す 10 進数 (001-366) で置き換えられます。 .It Cm %k (24 時間時計で) 時間を示す 10 進数 (0-23) で置き換えられます。 1 桁の数字の前には空白が付きます。 .It Cm %l (12 時間時計で) 時間を示す 10 進数 (1-12) で置き換えられます。 1 桁の数字の前には空白が付きます。 .It Cm \&%M 分を示す 10 進数 (00-59) で置き換えられます。 .It Cm %m 月を示す 10 進数 (01-12) で置き換えられます。 .It Cm %n 改行で置き換えられます。 .It Cm \&%O* %E* と同じです。 .It Cm %p 各国の表現で "午前" または "午後" の いずれか該当する表示で置き換えられます。 .It Cm \&%R .Dq Li %H:%M と同等です。 .It Cm %r .Dq Li %I:%M:%S %p と同等です。 .It Cm \&%S 秒を示す 10 進数 (00-60) で置き換えられます。 .It Cm %s 世界標準時基準時点からの秒数で置き換えられます .Xr (mktime 3 参照)。 .It Cm \&%T .Dq Li %H:%M:%S と同等です。 .It Cm %t タブで置き換えられます。 .It Cm \&%U 1 年のうちの週数 (日曜日を週の最初の日として) を示す 10 進数 (00-53) で置き換えられます。 .It Cm %u 1 週のうちの日 (月曜日を週の最初の日として) を示す 10 進数 (1-7) で置き換えられます。 .It Cm \&%V 1 年のうちの週数 (月曜日を週の最初の日として) を示す 10 進数 (01-53) で置き換えられます。 新年の 1 月 1 日を含む週に 4 日以上の日がある場合は、 その週が第 1 週となります。 それ以外の場合は、その週は前年の最後の週となり、 その次の週が第 1 週となります。 .It Cm %v .Dq Li %e-%b-%Y と同等です。 .It Cm \&%W 1 年のうちの週数 (月曜日を週の最初の日として) を示す 10 進数 (00-53) で置き換えられます。 .It Cm %w 1 週のうちの日 (日曜日を週の最初の日として) を示す 10 進数 (0-6) で置き換えられます。 .It Cm \&%X 各国の表現で時刻で置き換えられます。 .It Cm %x 各国の表現で日付で置き換えられます。 .It Cm \&%Y 百年紀付きの年を示す 10 進数で置き換えられます。 .It Cm %y 百年紀なしの年を示す 10 進数 (00-99) で置き換えられます。 .It Cm \&%Z 時間帯名で置き換えられます。 .It Cm \&%z は UTC からの時間帯の差で置き変えられます。 先頭のプラス記号は UTC から東を意味し、 マイナス記号は UTC から西を意味します。 続く時間と分は、それぞれ 2 桁であり、間に区切り文字はありません (RFC 822 時刻ヘッダに共通です)。 .It Cm %+ 各国の表現で日付と時刻を示すもので置き換えられます (フォーマットは .Xr date 1 によって作成されるものと同じです)。 .It Cm %% .Ql % で置き換えられます。 .El -.Sh 参照 +.Sh 関連項目 .Xr date 1 , .Xr printf 1 , .Xr ctime 3 , .Xr printf 3 , .Xr strptime 3 .Sh 規格 .Fn strftime 関数は、 .Ql %C , .Ql \&%D , .Ql %E* , .Ql %e , .Ql %G , .Ql %g , .Ql %h , .Ql %k , .Ql %l , .Ql %n , .Ql %O* , .Ql \&%R , .Ql %r , .Ql %s , .Ql \&%T , .Ql %t , .Ql %u , .Ql \&%V , .Ql %z , .Ql %+ などを含む多くの拡張を含めて、 .St -isoC に適合しています。 .Pp .Ql %G , .Ql %g , および .Ql \&%V の置き換えにおける特殊な週数および年数は、 ISO 8601: 1988 に定義されています。 .Sh バグ 月の象に関する変換指定は備えていません。 diff --git a/ja_JP.eucJP/man/man3/string.3 b/ja_JP.eucJP/man/man3/string.3 index ae8178077c..2ffdc29f10 100644 --- a/ja_JP.eucJP/man/man3/string.3 +++ b/ja_JP.eucJP/man/man3/string.3 @@ -1,157 +1,157 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek. .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)string.3 8.2 (Berkeley) 12/11/93 .\" %FreeBSD: src/lib/libc/string/string.3,v 1.6.2.4 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .\" .Dd December 11, 1993 .Dt STRING 3 .Os .Sh 名称 .Nm strcat , .Nm strncat , .Nm strchr , .Nm strrchr , .Nm strcmp , .Nm strncmp , .Nm strcasecmp, .Nm strncasecmp , .Nm strcpy , .Nm strncpy , .Nm strerror , .Nm strlen , .Nm strpbrk , .Nm strsep, .Nm strspn , .Nm strcspn , .Nm strstr , .Nm strtok , .Nm index , .Nm rindex .Nd 文字列に特有の関数 .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft char * .Fn strcat "char *s" "const char * append" .Ft char * .Fn strncat "char *s" "const char *append" "size_t count" .Ft char * .Fn strchr "const char *s" "int c" .Ft char * .Fn strrchr "const char *s" "int c" .Ft int .Fn strcmp "const char *s1" "const char *s2" .Ft int .Fn strncmp "const char *s1" "const char *s2" "size_t count" .Ft int .Fn strcasecmp "const char *s1" "const char *s2" .Ft int .Fn strncasecmp "const char *s1" "const char *s2" "size_t count" .Ft char * .Fn strcpy "char *dst" "const char *src" .Ft char * .Fn strncpy "char *dst" "const char *src" "size_t count" .Ft char * .Fn strerror "int errno" .Ft size_t .Fn strlen "const char *s" .Ft char * .Fn strpbrk "const char *s" "const char *charset" .Ft char * .Fn strsep "char **stringp" "const char *delim" .Ft size_t .Fn strspn "const char *s" "const char *charset" .Ft size_t .Fn strcspn "const char *s" "const char *charset" .Ft char * .Fn strstr "const char *big" "const char *little" .Ft char * .Fn strtok "char *s" "const char *delim" .Ft char * .Fn index "const char *s" "int c" .Ft char * .Fn rindex "const char *s" "int c" .Sh 解説 これらの文字列関数は、ヌルバイトで終了する文字列を操作します。 .Pp 詳しくは、個々の関数についてのマニュアルページを参照してください。 可変長の汎用オブジェクトを (ヌルバイトのチェックなしの) バイト列 として操作することについては、 .Xr bstring 3 を参照してください。 .Pp 個々のマニュアルページに記されたものを除いては、 文字列関数はサイズの制限についての検査は行いません。 -.Sh 参照 +.Sh 関連項目 .Xr bstring 3 , .Xr index 3 , .Xr rindex 3 , .Xr strcasecmp 3 , .Xr strcat 3 , .Xr strchr 3 , .Xr strcmp 3 , .Xr strcpy 3 , .Xr strcspn 3 , .Xr strerror 3 , .Xr strlen 3 , .Xr strpbrk 3 , .Xr strrchr 3 , .Xr strsep 3 , .Xr strspn 3 , .Xr strstr 3 , .Xr strtok 3 .Sh 規格 .Fn strcat , .Fn strncat , .Fn strchr , .Fn strrchr , .Fn strcmp , .Fn strncmp , .Fn strcpy , .Fn strncpy , .Fn strerror , .Fn strlen , .Fn strpbrk , .Fn strsep , .Fn strspn , .Fn strcspn , .Fn strstr , および .Fn strtok 関数は、 .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/stringlist.3 b/ja_JP.eucJP/man/man3/stringlist.3 index 349db233cd..602fe32117 100644 --- a/ja_JP.eucJP/man/man3/stringlist.3 +++ b/ja_JP.eucJP/man/man3/stringlist.3 @@ -1,122 +1,122 @@ .\" $NetBSD: stringlist.3,v 1.2 1997/04/09 08:59:25 kleink Exp $ .\" .\" Copyright (c) 1997 The NetBSD Foundation, Inc. .\" All rights reserved. .\" .\" This file was contributed to The NetBSD Foundation by Luke Mewburn. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the NetBSD .\" Foundation, Inc. and its contributors. .\" 4. Neither the name of The NetBSD Foundation nor the names of its .\" contributors may be used to endorse or promote products derived .\" from this software without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS .\" ``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 REGENTS OR CONTRIBUTORS 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/lib/libc/gen/stringlist.3,v 1.3.2.4 2001/12/14 18:33:51 ru Exp % .\" .\" $FreeBSD$ .\" .Dd February 24, 1997 .Os .Dt STRINGLIST 3 .Sh 名称 .Nm stringlist , .Nm sl_init , .Nm sl_add , .Nm sl_free , .Nm sl_find .Nd 文字列リスト操作関数 .Sh ライブラリ .Lb libc .Sh 書式 .In stringlist.h .Ft StringList * .Fn sl_init .Ft void .Fn sl_add "StringList *sl" "char *item" .Ft void .Fn sl_free "StringList *sl" "int freeall" .Ft char * .Fn sl_find "StringList *sl" "char *item" .Sh 解説 .Nm 関数は、必要に応じて自動的に展開する文字列の一覧である 文字列リストを操作します。 .Pp .Ar StringList 構造は、次のような定義を持ちます : .Bd -literal -offset indent typedef struct _stringlist { char **sl_str; size_t sl_max; size_t sl_cur; } StringList; .Ed .Pp .Bl -tag -width "sl_str" -offset indent .It Ar sl_str 一覧が入っている配列の基底ポインタです。 .It Ar sl_max .Ar sl_str のサイズ。 .It Ar sl_cur 現在の要素の .Ar sl_str におけるオフセット。 .El .Pp 以下のような文字列リスト操作関数が使用できます : .Bl -tag -width "sl_init()" .It Fn sl_init 文字列リストを作成します。 .Ar StringList へのポインタを 返します。 .It Fn sl_free .Ar sl および .Ar sl->sl_str 配列が占有するメモリを解放します。 .Ar freeall が非 0 の場合は、 .Ar sl->sl_str の中の項目も解放されます。 .It Fn sl_add .Ar sl->sl_str のサイズを拡張して、 .Ar item を .Ar sl->sl_str の .Ar sl->sl_cur の位置に追加します。 .It Fn sl_find .Ar sl の中の .Ar item を探し、見つからない場合は NULL を返します。 .El -.Sh 参照 +.Sh 関連項目 .Xr free 3 , .Xr malloc 3 diff --git a/ja_JP.eucJP/man/man3/strlen.3 b/ja_JP.eucJP/man/man3/strlen.3 index 8fc3d794eb..91f6e4e3b8 100644 --- a/ja_JP.eucJP/man/man3/strlen.3 +++ b/ja_JP.eucJP/man/man3/strlen.3 @@ -1,69 +1,69 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strlen.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/string/strlen.3,v 1.3.2.3 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .\" .Dd June 4, 1993 .Dt STRLEN 3 .Os .Sh 名称 .Nm strlen .Nd 文字列の長さを測定 .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft size_t .Fn strlen "const char *s" .Sh 解説 .Fn strlen 関数は、文字列 .Fa s の長さを計算します。 .Sh 戻り値 .Fn strlen 関数は、終端の .Dv ヌル 文字を含まない文字数を返します。 -.Sh 参照 +.Sh 関連項目 .Xr string 3 .Sh 規格 .Fn strlen 関数は、 .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/strmode.3 b/ja_JP.eucJP/man/man3/strmode.3 index 3d996eccc2..5e97ed0bb3 100644 --- a/ja_JP.eucJP/man/man3/strmode.3 +++ b/ja_JP.eucJP/man/man3/strmode.3 @@ -1,165 +1,165 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strmode.3 8.3 (Berkeley) 7/28/94 .\" %FreeBSD: src/lib/libc/string/strmode.3,v 1.6.2.2 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .\" .Dd July 28, 1994 .Dt STRMODE 3 .Os .Sh 名称 .Nm strmode .Nd inode ステータス情報をシンボル文字列に変換 .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft void .Fn strmode "mode_t mode" "char *bp" .Sh 解説 .Fn strmode 関数は、ファイル .Fa mode (inode に結合されるタイプとパーミッションの情報については、 .Xr stat 2 を参照) をシンボル文字列に変換し、それを .Fa bp で参照される場所に保存します。 保存されるこの文字列は、長さが 11 文字で最後にヌル文字が付きます。 .Pp 最初の文字は inode タイプで、次のいずれかになります : .Pp .Bl -tag -width flag -offset indent -compact .It \- 通常ファイル .It b ブロック型特殊ファイル .It c 文字型特殊ファイル .It d ディレクトリ .It l シンボリックリンク .It p fifo .It s ソケット .It w whiteout .It ? 未知の inode タイプ .El .Pp 次に続く 9 つの文字は、3 文字毎に 3 つのパーミッションセットをコード化します。 最初の 3 つの文字はファイル所有者のためのパーミッションで、 2 番目の 3 文字はファイルが所属するグループのためのもの、 そして 3 番目の 3 文字は ``他者'' またはデフォルトのユーザセット用です。 .Pp パーミッションチェックは、できる限り明確に限定して行われます。 最初のパーミッションセットでファイルの所有者に対して 読み取り許可が拒否された場合は、 ファイルの所有者はそのファイルを読み取ることができません。 このことは、その所有者がファイルのグループに入っており、 そのグループパーミッションによって読み取り許可が与えられている場合、 または読み取りを許可する ``他者'' のパーミッションが 与えられている場合でも当てはまります。 .Pp 3 文字セットの最初の文字が ``r'' である場合は、 そのファイルはそのユーザセットに対して読み取り可能です。 文字がダッシュ ``\-'' 場合は、読み取りできません。 .Pp 3 文字セットの 2 番目の文字が ``w'' である場合は、 そのファイルはそのユーザセットに対して書き込み可能です。 文字がダッシュ ``\-'' である場合は、書き込みできません。 .Pp 3 番目の文字は、次の該当する文字です : .Bl -tag -width xxxx .It S 文字が所有者パーミッションの一部であり、 ファイルが実行可能ではないか、 またはディレクトリが所有者によって検索可能ではなく、 set-user-id ビットが設定されている場合。 .It S 文字がグループパーミッションの一部であり、 ファイルが実行可能ではないか、 またはディレクトリがグループによって検索可能ではなく、 set-group-id ビットが設定されている場合。 .It T 文字が他者のパーミッションの一部であり、 ファイルが実行可能ではないか、 またはディレクトリが他者のものによって検索可能ではなく、 ``sticky'' .Pq Dv S_ISVTX ビットが設定されている場合。 .It s 文字が所有者パーミッションの一部であり、 ファイルが実行可能であるか、 またはディレクトリが所有者によって検索可能であり、 set-user-id ビットが設定されている場合。 .It s 文字がグループパーミッションの一部であり、 ファイルが実行可能であるか、 またはディレクトリがグループによって検索可能であり、 set-group-id ビットが設定されている場合。 .It t 文字が他者のパーミッションの一部であり、 ファイルが実行可能であるか、 またはディレクトリが他者のものによって検索可能であり、 ``sticky'' .Pq Dv S_ISVTX ビットが設定されている場合。 .It x ファイルが実行可能であるか、またはディレクトリが検索可能。 .It \- 上のいずれにも該当しない。 .El .Pp 最後の文字は inode に結合された別のアクセス制御方法が何かある場合は、 プラス記号 ``+'' です。 それ以外の場合は、文字はスペースになります。 .Sh 戻り値 .Fn strmode 関数は、常に 0 を返します。 -.Sh 参照 +.Sh 関連項目 .Xr chmod 1 , .Xr find 1 , .Xr stat 2 , .Xr getmode 3 , .Xr setmode 3 .Sh 歴史 .Fn strmode 関数は .Bx 4.4 で初めて登場しました。 diff --git a/ja_JP.eucJP/man/man3/strpbrk.3 b/ja_JP.eucJP/man/man3/strpbrk.3 index 42396a22c5..4c227796d1 100644 --- a/ja_JP.eucJP/man/man3/strpbrk.3 +++ b/ja_JP.eucJP/man/man3/strpbrk.3 @@ -1,80 +1,80 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strpbrk.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/string/strpbrk.3,v 1.3.2.4 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt STRPBRK 3 .Os .Sh 名称 .Nm strpbrk .Nd 複数の文字について文字列の中の位置を探す .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft char * .Fn strpbrk "const char *s" "const char *charset" .Sh 解説 .Fn strpbrk 関数は、文字列 .Fa charset のうちのいずれかの文字が、 ヌル文字で終了する文字列 .Fa s の中に最初に出現する位置を探し、 その文字へのポインタを返します。 .Fa s の中に .Fa charset のどの文字も出現しない場合は、 .Fn strpbrk は NULL を返します。 -.Sh 参照 +.Sh 関連項目 .Xr memchr 3 , .Xr strchr 3 , .Xr strcspn 3 , .Xr strrchr 3 , .Xr strsep 3 , .Xr strspn 3 , .Xr strstr 3 , .Xr strtok 3 .Sh 規格 .Fn strpbrk 関数は、 .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/strptime.3 b/ja_JP.eucJP/man/man3/strptime.3 index 1689b2a15d..a756b073b0 100644 --- a/ja_JP.eucJP/man/man3/strptime.3 +++ b/ja_JP.eucJP/man/man3/strptime.3 @@ -1,194 +1,194 @@ .\" .\" Copyright (c) 1997 Joerg Wunsch .\" .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``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 DEVELOPERS 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/lib/libc/stdtime/strptime.3,v 1.9.2.7 2001/12/14 18:33:59 ru Exp % .\" " .\" $FreeBSD$ .Dd May 8, 1997 .Dt STRPTIME 3 .Os .Sh 名称 .Nm strptime .Nd 日付および時刻を表す文字列を解釈する .Sh ライブラリ .Lb libc .Sh 書式 .In time.h .Ft char * .Fn strptime "const char *buf" "const char *format" "struct tm *timeptr" .Sh 解説 .Fn strptime 関数は、バッファ .Fa buf 中の文字列を .Fa format で示される文字列に従って解釈し、 .Fa timeptr が指す構造体の要素に入れます。 .\" The resulting values will be relative to the local time zone. この結果は地域時間に適切に合わされます。 したがって、これは .Xr strftime 3 の逆方向の操作と考えることができます。 .Pp .Fa format 文字列は、0 以上の変換則と通常文字からなります。 すべての通常文字は、バッファと厳密にマッチされます。 そして、フォーマット文字列の空白文字は バッファ中の任意の数の空白文字とマッチします。 すべての変換則は、 .Xr strftime 3 に記述したものと同じです。 .\".Pp .\"Two-digit year values, including formats .\".Fa %y .\"and .\".Fa \&%D , .\"are now interpreted as beginning at 1969 per POSIX requirements. .\"Years 69-00 are interpreted in the 20th century (1969-2000), years .\"01-68 in the 21st century (2001-2068). .Pp 形式に含まれる .Fa %y で示される 2 桁の年の値、および .Fa \&%D は、 POSIX 要求仕様によって 1969 年から始まるように解釈されます。 年が 69-00 の場合は 20 世紀 (1969-2000) と、 年が 01-68 の場合は 21 世紀 (2001-2068) と解釈されます。 .Sh 戻り値 成功して終了した場合、 .Fn strptime は .Fa format 中の変換指定を満たすためには必要とされなかった .Fa buf 中の最初の文字へのポインタを返します。 変換が一つでも失敗した場合は .Dv NULL を返します。 -.Sh 参照 +.Sh 関連項目 .Xr date 1 , .Xr scanf 3 , .Xr strftime 3 .Sh 作者 .Fn strptime 関数は、 Powerdog Industries によって寄贈されました。 .Pp このマニュアルページは、 .An J\(:org Wunsch . によって書かれました。 .Sh 歴史 .Fn strptime 関数は .Fx 3.0 で登場しました。 .\".Sh BUGS .\"Both the .\".Fa %e .\"and .\".Fa %l .\"format specifiers may incorrectly scan one too many digits .\"if the intended values comprise only a single digit .\"and that digit is followed immediately by another digit. .\"Both specifiers accept zero-padded values, .\"even though they are both defined as taking unpadded values. .Sh バグ 変換形式 .Fa %e と .Fa %l の両方は もし意図された値が一桁の数値だけで成り、 かつその数値にすぐに続けて他の整数が続く場合、 一桁を越えて不正確なスキャンを行います。 これらの変換形式には、たとえ詰めていない値を取得する場合でも 0 詰めした値を渡してください。 .\".Pp .\"The .\".Fa %p .\"format specifier has no effect unless it is parsed .\".Em after .\"hour-related specifiers. .\"Specifying .\".Fa %l .\"without .\".Fa %p .\"will produce undefined results. .\"Note that 12AM .\".Pq ante meridiem .\"is taken as midnight .\"and 12PM .\".Pq post meridiem .\"is taken as noon. .Pp 変換形式 .Fa %p は時間を示す変換形式が解析された .Em 後 でないと意味を持ちません。 変換形式 .Fa %l は .Fa %p が無いと未定義の結果を作り出します。 注 12AM (午前) は深夜を指し、12PM (午後) は正午を指します。 .\".Pp .\"The .\".Fa %U .\"and .\".Fa %W .\"format specifiers accept any value within the range 00 to 53 .\"without validating against other values supplied (like month .\"or day of the year, for example). .Pp 変換仕様 .Fa %U と .Fa %W は他の値 (例えば年の中の月や日など) を取得する場合とは対照に、 正当性の検査なしに 00 から 53 の範囲の中での値を受け付けます。 .\".Pp .\"The .\".Fa %Z .\"format specifier only accepts time zone abbreviations of the local time zone, .\"or the value "GMT". .\"This limitation is because of ambiguity due to of the over loading of time .\"zone abbreviations. One such example is .\".Fa EST .\"which is both Eastern Standard Time and Eastern Australia Summer Time. .Pp 変換仕様 .Fa %Z は時間帯として省略された地域時間か "GMT" のみを受け付けます。 この制限は多義的な時間帯の省略がオーバロードされる場合に影響します。 たとえば一つの例として .Fa EST は東部標準時と東部オーストラリア夏時間が挙げられます。 diff --git a/ja_JP.eucJP/man/man3/strrchr.3 b/ja_JP.eucJP/man/man3/strrchr.3 index f34b7ce67b..599befd577 100644 --- a/ja_JP.eucJP/man/man3/strrchr.3 +++ b/ja_JP.eucJP/man/man3/strrchr.3 @@ -1,88 +1,88 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strrchr.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/string/strrchr.3,v 1.5.2.4 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt STRRCHR 3 .Os .Sh 名称 .Nm strrchr .Nd 文字列中での文字の位置を探す .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft char * .Fn strrchr "const char *s" "int c" .Sh 解説 .Fn strrchr 関数は、文字列 .Fa s 中の (char に変換された) .Fa c が最後に出現する位置を探します。 .Fa c が .Ql \e0 のときは .Fn strrchr は終端の .Ql \e0 の位置を示します。 .Sh 戻り値 .Fn strrchr 関数は該当する文字へのポインタを返します。 また、 .Fa s 中のどこにも .Fa c が出現しない場合は NULL ポインタを返します。 -.Sh 参照 +.Sh 関連項目 .Xr memchr 3 , .Xr strchr 3 , .Xr strcspn 3 , .Xr strpbrk 3 , .Xr strsep 3 , .Xr strspn 3 , .Xr strstr 3 , .Xr strtok 3 .Sh 規格 .Fn strrchr 関数は、 .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/strsep.3 b/ja_JP.eucJP/man/man3/strsep.3 index c42b7c9247..09bffe0696 100644 --- a/ja_JP.eucJP/man/man3/strsep.3 +++ b/ja_JP.eucJP/man/man3/strsep.3 @@ -1,123 +1,123 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strsep.3 8.1 (Berkeley) 6/9/93 .\" %FreeBSD: src/lib/libc/string/strsep.3,v 1.6.2.5 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .Dd June 9, 1993 .Dt STRSEP 3 .Os .Sh 名称 .Nm strsep .Nd 文字列の分割 .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft char * .Fn strsep "char **stringp" "const char *delim" .Sh 解説 .Fn strsep 関数は、 .Fa *stringp により参照される文字列の中で、文字列 .Fa delim 中のいずれかの文字 (または終端の .Ql \e0 ) のうちで最初に出現する文字の位置を探し、その箇所を .Ql \e0 で置き換えます。 区切り文字 (または文字列の末尾に達した場合は .Dv NULL ) の次の文字の位置は、 .Fa *stringp に格納されます。 .Fa *stringp の元の値は戻り値となります。 .Pp 「空」のフィールド、すなわち、 2 つの隣接する区切り文字によって生じたフィールドは、 .Fa *stringp の中に返されたポインタが参照する位置を .Ql \e0 と比較することで検出可能です。 .Pp .Fa *stringp が最初から .Dv NULL である場合は、 .Fn strsep は .Dv NULL を返します。 .Sh 例 以下では、 空白文字によって区切られたトークンで構成されている文字列を、 引数ベクタへと解釈するために .Fn strsep を使っています。 .Bd -literal -offset indent char **ap, *argv[10], *inputstring; for (ap = argv; (*ap = strsep(&inputstring, " \et")) != NULL;) if (**ap != '\e0') if (++ap >= &argv[10]) break; .Ed -.Sh 参照 +.Sh 関連項目 .Xr memchr 3 , .Xr strchr 3 , .Xr strcspn 3 , .Xr strpbrk 3 , .Xr strrchr 3 , .Xr strspn 3 , .Xr strstr 3 , .Xr strtok 3 .Sh 歴史 .Fn strsep 関数は、 .Fn strtok 関数を置き換えるものとして考えられています。 .Fn strtok 関数は移植性の点では好ましいのですが ( .St -isoC に適合しています) 、 空のフィールドを扱う、すなわち、 2 つの隣接する区切り文字によって区切られたフィールドを検出するとか、 一回で複数の文字列に対して使用する、といったことができません。 .Fn strsep 関数は、 .Bx 4.4 で初めて登場しました。 diff --git a/ja_JP.eucJP/man/man3/strspn.3 b/ja_JP.eucJP/man/man3/strspn.3 index c38e03f6b8..07ad722944 100644 --- a/ja_JP.eucJP/man/man3/strspn.3 +++ b/ja_JP.eucJP/man/man3/strspn.3 @@ -1,78 +1,78 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strspn.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/string/strspn.3,v 1.4.2.4 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt STRSPN 3 .Os .Sh 名称 .Nm strspn .Nd 文字列を測る .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft size_t .Fn strspn "const char *s" "const char *charset" .Sh 解説 .Fn strspn 関数は、ヌル文字で終了する文字列 .Fa s について、 .Fa s から取り出した文字が .Fa charset 中に存在する 最初の区間の長さを測ります。 .Sh 戻り値 .Fn strspn 関数は、測られた文字数を返します。 -.Sh 参照 +.Sh 関連項目 .Xr memchr 3 , .Xr strchr 3 , .Xr strcspn 3 , .Xr strpbrk 3 , .Xr strrchr 3 , .Xr strsep 3 , .Xr strstr 3 , .Xr strtok 3 .Sh 規格 .Fn strspn 関数は、 .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/strstr.3 b/ja_JP.eucJP/man/man3/strstr.3 index 5a37c52100..0d6d0fbe01 100644 --- a/ja_JP.eucJP/man/man3/strstr.3 +++ b/ja_JP.eucJP/man/man3/strstr.3 @@ -1,144 +1,144 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strstr.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/string/strstr.3,v 1.3.2.5 2001/12/25 00:36:53 ache Exp % .\" .\" $FreeBSD$ .Dd October 11, 2001 .Dt STRSTR 3 .Os .Sh 名称 .Nm strstr , strcasestr , strnstr .Nd 文字列中の部分文字列の位置を探す .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft char * .Fn strstr "const char *big" "const char *little" .Ft char * .Fn strcasestr "const char *big" "const char *little" .Ft char * .Fn strnstr "const char *big" "const char *little" "size_t len" .Sh 解説 .Fn strstr 関数は、ヌル文字で終了する文字列 .Fa big 中で、 ヌル文字で終了する文字列 .Fa little が最初に出現する位置を探します。 .Pp .Fn strcasestr 関数は、 .Fn strstr と同様ですが、 両方の文字列を 無視します。 .Pp .Fn strnstr 関数は、検索された .Fa len 文字より少ない文字列 .Fa big の中で、 ヌル文字で終了する文字列 .Fa little が最初に出現する位置を探します。 .Ql \e0 の後に現れる文字は、検索されません。 .Fn strnstr 関数は、 .Fx の特定の API なので、 移植に無関係なときだけ利用するようにしてください。 .Sh 戻り値 .Fa little が空の文字列のとき、 .Fa big を返し、 .Fa little に .Fa big がない場合は、NULL を返します。 それ以外のときは、 最初に出現した .Fa little の最初の文字へのポインタを返します。 .Sh 例 次の例は、 .Va largestring の .Qq Li Bar Baz 部分がポインタ .Va ptr にセットされます。 .Bd -literal -offset indent const char *largestring = "Foo Bar Baz"; const char *smallstring = "Bar"; char *ptr; ptr = strstr(largestring, smallstring); .Ed .Pp 次の例は、ポインタ .Va ptr に .Dv NULL がセットされます。これは .Va largestring の最初の 4 文字だけを検索するためです。 .Bd -literal -offset indent const char *largestring = "Foo Bar Baz"; const char *smallstring = "Bar"; char *ptr; ptr = strnstr(largestring, smallstring, 4); .Ed -.Sh 参照 +.Sh 関連項目 .Xr memchr 3 , .Xr strchr 3 , .Xr strcspn 3 , .Xr strpbrk 3 , .Xr strrchr 3 , .Xr strsep 3 , .Xr strspn 3 , .Xr strtok 3 .Sh 規格 .Fn strstr 関数は、 .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/strtod.3 b/ja_JP.eucJP/man/man3/strtod.3 index f15b92c2bc..76ba87c91d 100644 --- a/ja_JP.eucJP/man/man3/strtod.3 +++ b/ja_JP.eucJP/man/man3/strtod.3 @@ -1,141 +1,141 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the American National Standards Committee X3, on Information .\" Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strtod.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/stdlib/strtod.3,v 1.4.2.7 2001/12/14 18:33:58 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt STRTOD 3 .Os .Sh 名称 .Nm strtod .Nd .Tn ASCII 文字列を double に変換 .Sh ライブラリ .Lb libc .Sh 書式 .In stdlib.h .Ft double .Fn strtod "const char *nptr" "char **endptr" .Sh 解説 .Fn strtod 関数は、 .Fa nptr が指す文字列の最初の部分を .Em double による表現に変換します。 .Pp 文字列に想定される形は、 オプションのプラス (``+'') またはマイナス (``\-'') 記号、 続いて数字の並び (これはオプションで小数点文字を含みます)、 オプションで指数が続くというものです。 指数は、 ``E'' または ``e'' に オプションでプラスまたはマイナス記号が続いて、 さらに数字の並びが続くという形です。 .Pp 文字列の先頭の空白文字 .Xr (isspace 3 関数により定義されるような) はスキップします。 .Sh 戻り値 .Fn strtod 関数は、どんなときでも変換された値を返します。 .Pp .Fa endptr が .Dv NULL でない場合は、変換に使われた最後の文字の次の文字へのポインタが、 .Fa endptr により参照される場所に格納されます。 .Pp 変換が行われなかった場合は 0 が返され、 .Fa nptr の値は .Fa endptr によって参照される場所に格納されます。 .Pp 正しい値がオーバフローとなると思われるときは、 (その値の符号にしたがって) プラスまたはマイナスの .Dv HUGE_VAL が返され、 .Er ERANGE が .Va errno に保存されます。 正しい値がアンダフローとなると思われるときは、 0 が返され、 .Er ERANGE が .Va errno に保存されます。 .Sh エラー .Bl -tag -width Er .It Bq Er ERANGE オーバフローまたはアンダフローが起きました。 .El -.Sh 参照 +.Sh 関連項目 .Xr atof 3 , .Xr atoi 3 , .Xr atol 3 , .Xr strtol 3 , .Xr strtoul 3 .Sh 規格 .Fn strtod 関数は、 .St -isoC に適合しています。 .Sh 作者 このソフトウェアの作者は .An David M. Gay です。 .Pp Copyright (c) 1991 by AT&T. .Pp 本ソフトウェアのコピーや修正版、またはそれらを含むソフトウェア のすべてのコピー、およびそのようなソフトウェアのサポートドキュメント のすべてのコピーにこの注意書き全体が含まれていることを条件として、この ソフトウェアを無料であらゆる目的に使用し、コピーし、修正し、 配布することをここに許諾します。 .Pp 本ソフトウェアは、いかなる明示的または暗黙的な保証なしに、 「そのままの形」で提供されています。 特に、作者あるいは AT&T は、 本ソフトウェアの商品性または特定の目的に対する適合性に関する 説明または保証を一切行いません。 .Pp .Fn strtod およびそれに付随する関数のソースコードの無料 コピー入手については、ベンダに連絡してください。 diff --git a/ja_JP.eucJP/man/man3/strtok.3 b/ja_JP.eucJP/man/man3/strtok.3 index 3c377535cc..853b57e46c 100644 --- a/ja_JP.eucJP/man/man3/strtok.3 +++ b/ja_JP.eucJP/man/man3/strtok.3 @@ -1,182 +1,182 @@ .\" Copyright (c) 1998 Softweyr LLC. All rights reserved. .\" .\" strtok_r, from Berkeley strtok .\" Oct 13, 1998 by Wes Peters .\" .\" Copyright (c) 1988, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the American National Standards Committee X3, on Information .\" Processing Systems. .\" .\" 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 .\" notices, this list of conditions and the following disclaimer. .\" .\" 2. Redistributions in binary form must reproduce the above .\" copyright notices, this list of conditions and the following .\" disclaimer in the documentation and/or other materials provided .\" with the distribution. .\" .\" 3. All advertising materials mentioning features or use of this .\" software must display the following acknowledgement: .\" .\" This product includes software developed by Softweyr LLC, the .\" University of California, Berkeley, and its contributors. .\" .\" 4. Neither the name of Softweyr LLC, the University nor the names .\" of its contributors may be used to endorse or promote products .\" derived from this software without specific prior written .\" permission. .\" .\" THIS SOFTWARE IS PROVIDED BY SOFTWEYR LLC, THE REGENTS AND .\" CONTRIBUTORS ``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 SOFTWEYR LLC, THE REGENTS, OR .\" CONTRIBUTORS 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. .\" .\" @(#)strtok.3 8.2 (Berkeley) 2/3/94 .\" %FreeBSD: src/lib/libc/string/strtok.3,v 1.10.2.8 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .Dd November 27, 1998 .Dt STRTOK 3 .Os .Sh 名称 .Nm strtok , strtok_r .Nd 文字列のトークン .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Ft char * .Fn strtok "char *str" "const char *sep" .Ft char * .Fn strtok_r "char *str" "const char *sep" "char **last" .Sh 解説 .Bf -symbolic このインタフェースは .Xr strsep 3 によって置き換えられました。 .Ef .Pp .Fn strtok 関数は、ヌルで終端された文字列 .Fa str の中の連続するトークンを分割するために用いられます。 これらのトークンは、その文字列内で .Fa sep の中の文字の少なくとも 1 つによって区分されています。 最初に .Fn strtok を呼び出すときには、 .Fa str を指定する必要があります。 同じ文字列からさらにトークンを取得するために 続いて呼び出すときには、 代わりに空ポインタを渡す必要があります。 セパレータ文字列 .Fa sep は毎回与えなければなりませんが、 呼び出しのたびに変更しても構いません。 .\".Pp .\"The implementation will behave as if no library function calls .\".Fn strtok . .Pp ライブラリは、実装上、他のライブラリ関数が .Fn strtok を呼び出したりしないかのように動作します。 .Pp .Fn strtok_r 関数は .Fn strtok の再入可能なバージョンです。 コンテキストポインタ .Fa last は、呼び出し毎に与えなければなりません。 .Fn strtok_r は、別々のコンテキストポインタが使われている限りでは、 お互いの内部で 2 つのパースループを入れ子にするためにも使えます。 .Pp .Fn strtok および .Fn strtok_r 関数は、そのトークン自体を .Dv NUL 文字で置き換えた後、 文字列の次のトークンの先頭へのポインタを返します。 トークンがなくなると、NULL ポインタを返します。 .Sh 例 次の例では、別々のコンテキストを使って 2 つの文字列を パースするために .Fn strtok_r を使っています: .Bd -literal char test[80], blah[80]; char *sep = "\e\e/:;=-"; char *word, *phrase, *brkt, *brkb; strcpy(test, "This;is.a:test:of=the/string\e\etokenizer-function."); for (word = strtok_r(test, sep, &brkt); word; word = strtok_r(NULL, sep, &brkt)) { strcpy(blah, "blah:blat:blab:blag"); for (phrase = strtok_r(blah, sep, &brkb); phrase; phrase = strtok_r(NULL, sep, &brkb)) { printf("So far we're at %s:%s\en", word, phrase); } } .Ed -.Sh 参照 +.Sh 関連項目 .Xr memchr 3 , .Xr strchr 3 , .Xr strcspn 3 , .Xr strpbrk 3 , .Xr strrchr 3 , .Xr strsep 3 , .Xr strspn 3 , .Xr strstr 3 .Sh 規格 .Fn strtok 関数は、 .St -isoC に適合しています。 .Sh バグ System V の .Fn strtok は、区切り文字のみからなる文字列を渡された場合は、 次の開始点を変更しません。 異なる (または空の) 区切り文字列を使った .Fn strtok の呼び出しで、 .Dv NULL .\" .Pf non- Dv NULL (オリジナル記述) 以外の値を返せるようにするためです。 この実装では常に次の開始点を変更するので、 そのような呼び出しが続く時は常に .Dv NULL を返すことになります。 .Sh 作者 .An Wes Peters , Softweyr LLC: .Aq wes@softweyr.com .Pp .Fx 3.0 での実装に基づきます。 diff --git a/ja_JP.eucJP/man/man3/strtol.3 b/ja_JP.eucJP/man/man3/strtol.3 index be6b86d425..9127ead26e 100644 --- a/ja_JP.eucJP/man/man3/strtol.3 +++ b/ja_JP.eucJP/man/man3/strtol.3 @@ -1,200 +1,200 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strtol.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/stdlib/strtol.3,v 1.4.2.5 2001/12/14 18:33:58 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt STRTOL 3 .Os .Sh 名称 .Nm strtol, strtoq .Nd 文字列の数値を long 値、long long 値または quad_t 値に変換 .Sh ライブラリ .Lb libc .Sh 書式 .In stdlib.h .In limits.h .Ft long .Fn strtol "const char *nptr" "char **endptr" "int base" .Ft long long .Fn strtoll "const char *nptr" "char **endptr" "int base" .In sys/types.h .In stdlib.h .In limits.h .Ft quad_t .Fn strtoq "const char *nptr" "char **endptr" "int base" .Sh 解説 .Fn strtol 関数は、 .Fa nptr にある文字列を .Em long 値に変換します。 .Fn strtoll 関数は、 .Fa nptr にある文字列を .Em long long 値に変換します。 .Fn strtoq 関数は、 .Fa nptr にある文字列を .Em quad_t 値に変換します。 変換は与えられた .Fa base に従って行われます。 この .Fa base の値は 2 から 36 の間か、 または特別な値である 0 でなければなりません。 .Pp 文字列は、任意の数の空白文字 .Xr (isspace 3 により決められるような) で始まり、 オプションで一つの .Ql + または .Ql - 記号がそれに続きます。 .Fa base が 0 か 16 のときは、文字列は接頭辞 .Ql 0x を含むことができ、数字は基数を 16 として読み取られます。 そうでないときの、0 の .Fa base では、その次の文字が .Ql 0 でなければ 10 (10 進数) と見なされ、 .Ql 0 であれば 8 (8 進数) と見なされます。 .Pp 文字列の残りは、 与えられた基数では有効な数字ではない最初の文字のところで中止するという わかりやすいやり方で .Em long 値に変換されます。 (10 以上の基数では、大文字または小文字の .Ql A は 10 を、 .Ql B は 11 を表し、 .Ql Z は 35 を表します。) .Pp .Fa endptr が空ポインタではない場合は、 .Fn strtol は最初の無効な文字のアドレスを .Fa *endptr に格納します。 数字が全くなかった場合は、 .Fn strtol は .Fa nptr の元の値を .Fa *endptr に格納します。 (従って、戻ったときに .Fa *nptr が .Ql \e0 ではなく、 .Fa **endptr が .Ql \e0 である場合は、文字列全体が 有効だったことになります。) .Sh 戻り値 .Fn strtol 関数は、値がアンダフローやオーバフローを起こさない限り、 変換の結果を返します。 アンダフローが起こった場合は、 .Fn strtol は .Dv LONG_MIN を返します。オーバフローが起こった場合は、 .Fn strtol は .Dv LONG_MAX を返します。 .Fn strtoll 関数は、値がアンダフローやオーバフローを起こさない限り、 変換の結果を返します。 アンダフローが起こった場合は、 .Fn strtoll は .Dv LLONG_MIN を返します。オーバフローが起こった場合は、 .Fn strtoll は .Dv LLONG_MAX を返します。 全ての場合、 .Va errno は .Er ERANGE に設定されます。 .Sh エラー .Bl -tag -width Er .It Bq Er ERANGE 与えられた文字列が値域を超えました。 変換された値は固定されています。 .El -.Sh 参照 +.Sh 関連項目 .Xr atof 3 , .Xr atoi 3 , .Xr atol 3 , .Xr strtod 3 , .Xr strtoul 3 .Sh 規格 .Fn strtol 関数は、 .St -isoC に適合しています。 .Fn strtoll 関数は、 .St -isoC-99 に適合しています。 .Bx .Fn strtoq 関数は推奨されません。 .Sh バグ 現在のロケールを無視します。 diff --git a/ja_JP.eucJP/man/man3/strtoul.3 b/ja_JP.eucJP/man/man3/strtoul.3 index 06fdc802f0..237539a33b 100644 --- a/ja_JP.eucJP/man/man3/strtoul.3 +++ b/ja_JP.eucJP/man/man3/strtoul.3 @@ -1,196 +1,196 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strtoul.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/stdlib/strtoul.3,v 1.3.2.7 2002/01/21 12:30:34 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt STRTOUL 3 .Os .Sh 名称 .Nm strtoul , strtoull , strtouq .Nd 文字列を .Vt unsigned long 値、unsigned long long 値 または .Vt uquad_t 値 に変換 .Sh ライブラリ .Lb libc .Sh 書式 .In stdlib.h .In limits.h .Ft "unsigned long" .Fn strtoul "const char *nptr" "char **endptr" "int base" .Ft "unsigned long long" .Fn strtoull "const char *nptr" "char **endptr" "int base" .In sys/types.h .In stdlib.h .In limits.h .Ft u_quad_t .Fn strtouq "const char *nptr" "char **endptr" "int base" .Sh 解説 .Fn strtoul 関数は、 .Fa nptr にある文字列を .Vt "unsigned long" 値に変換します。 .Fn strtoull 関数は、 .Fa nptr にある文字列を .Vt "unsigned long long" 値に変換します。 .Fn strtouq 関数は、 .Fa nptr にある文字列を .Vt u_quad_t 値に変換します。 変換は与えられた .Fa base に従って行われます。 この .Fa base の値は 2 から 36 の間か、 または特別な値である 0 でなければなりません。 .Pp 文字列は、任意の数の空白文字 .Xr (isspace 3 により決められるような) で始まり、 オプションで一つの .Ql + または .Ql - 記号が続きます。 .Fa base が 0 か 16 のとき、文字列は接頭辞 .Dq Li 0x を含むことができ、数字は基数を 16 として読み取られます。 そうでないときの、0 の .Fa base では、その次の文字が .Ql 0 でなければ 10 (10 進数) と見なされ、 .Ql 0 であれば 8 (8 進数) と見なされます。 .Pp 文字列の残りは、 与えられた基数では有効な数字ではない最初の文字のところで中止するという わかりやすいやり方で .Vt "unsigned long" 値に変換されます。 (10 以上の基数では、大文字または小文字の .Ql A は 10 を、 .Ql B は 11 を表し、 .Ql Z は 35 を表します。) .Pp .Fa endptr が .Dv NULL ではない場合は、 .Fn strtoul は最初の無効な文字のアドレスを .Fa *endptr に格納します。 数字が全くなかった場合は、 .Fn strtoul は .Fa nptr の元の値を .Fa *endptr に格納します。 (従って、戻ったときに .Fa *nptr が .Ql \e0 ではなく、 .Fa **endptr が .Ql \e0 である場合は、文字列全体が 有効だったことになります。) .Sh 戻り値 .Fn strtoul 関数は、 元の (否定されていない) 値がオーバフローを起こしそうにない限り、 変換の結果、もしくは先頭にマイナス記号がある場合には変換結果の否定を返します。 オーバフローを起こす場合、 .Fn strtoul は .Dv ULONG_MAX を返します。 .Fn strtoull 関数は、 元の (否定されていない) 値がオーバフローを起こしそうにない限り、 変換の結果、もしくは先頭にマイナス記号がある場合には変換結果の否定を返します。 オーバフローを起こす場合、 .Fn strtoull は .Dv ULLONG_MAX を返します。 全ての場合で、 .Va errno に .Er ERANGE を設定します。 .Sh エラー .Bl -tag -width Er .It Bq Er ERANGE 与えられた文字列が値域を超えました。 変換された値は固定されています。 .El -.Sh 参照 +.Sh 関連項目 .Xr strtol 3 .Sh 規格 .Fn strtoul 関数は、 .St -isoC に適合しています。 .Fn strtoll 関数は、 .St -isoC-99 に適合しています。 .Bx .Fn strtouq 関数は推奨されません。 .Sh バグ 現在のロケールを無視します。 diff --git a/ja_JP.eucJP/man/man3/strxfrm.3 b/ja_JP.eucJP/man/man3/strxfrm.3 index 1ed1981e43..83d4e586dd 100644 --- a/ja_JP.eucJP/man/man3/strxfrm.3 +++ b/ja_JP.eucJP/man/man3/strxfrm.3 @@ -1,119 +1,119 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)strxfrm.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/string/strxfrm.3,v 1.11.2.3 2001/12/14 18:33:59 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt STRXFRM 3 .Os .Sh 名称 .Nm strxfrm .Nd 文字列をロケールにしたがって変換する .Sh ライブラリ .Lb libc .Sh 書式 .In string.h .Fn strxfrm "char *dst" "const char *src" "size_t n" .Sh 解説 .Fn strxfrm 関数は、 .Fa src により示されたヌル文字で終了する文字列を、 現在のロケール照合 (locale collation) がある場合には、 それに従って変換し、 .\"then copies the transformed string .\"into .\".Fa dst . 変換した文字列を .Fa dst にコピーします。 .\"Not more than .\".Fa n .\"characters are copied into .\".Fa dst , .\"including the terminating null character added. .Fa n を越えない文字数が .Fa dst にヌル文字を付加してコピーされます。 .\"If .\".Fa n .\"is set to 0 .\"(it helps to determine an actual size needed .\"for transformation), .\".Fa dst .\"is permitted to be a NULL pointer. もし .Fa n に 0 がセットされた場合 (この場合変換に必要となる実サイズを決定するのを助けます)、 .Fa dst には NULL ポインタにする事が許されます。 .Pp .Fn strxfrm の後で .Fn strcmp を使って 2 つの文字列を比較することは、 元の 2 つの文字列を .Fn strcoll を使って比較することと同じになります。 .Sh 戻り値 .\"Upon successful completion, .\".Fn strxfrm .\"returns the length of the transformed string not including .\"the terminating null character. .\"If this value is .\".Fa n .\"or more, the contents of .\".Fa dst .\"are indeterminate. 完全に成功した場合、 .Fn strxfrm は終端のヌル文字を含まない変換された文字列の長さを返します。 もしこの値が .Fa n と同じかそれより大きい場合、 .Fa dst の内容は不定です。 -.Sh 参照 +.Sh 関連項目 .Xr setlocale 3 , .Xr strcmp 3 , .Xr strcoll 3 .Sh 規格 .Fn strxfrm 関数は、 .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/stty.3 b/ja_JP.eucJP/man/man3/stty.3 index 1b6f6c39a5..54a6a89a9f 100644 --- a/ja_JP.eucJP/man/man3/stty.3 +++ b/ja_JP.eucJP/man/man3/stty.3 @@ -1,95 +1,95 @@ .\" Copyright (c) 1983, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)stty.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libcompat/4.1/stty.3,v 1.4.2.4 2001/12/17 10:08:28 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt STTY 3 .Os BSD 4.2 .Sh 名称 .Nm stty , .Nm gtty .Nd 端末状態の設定および取得 (現存しません) .Sh ライブラリ .Lb libcompat .Sh 書式 .In sgtty.h .Ft int .Fn stty "int fd" "struct sgttyb *buf" .Ft int .Fn gtty "int fd" "struct sgttyb *buf" .Sh 解説 .Bf -symbolic これらのインタフェースは、 .Xr ioctl 2 によって置き換えられました。 .Ef .Pp .Fn stty 関数は、 .Fa fd に割り当てられた端末の状態を設定します。 .Fn gtty 関数は、 .Fa fd に割り当てられた端末の状態を取得します。 端末の状態を設定するには、 その呼び出しは書込み許可を持っていなければなりません。 .Pp .Fn stty の呼び出しは、実際は .Ql ioctl(fd, TIOCSETP, buf) であり、 .Fn gtty 呼び出しは .Ql ioctl(fd, TIOCGETP, buf) です。この説明については、 .Xr ioctl 2 および .Xr tty 4 を参照してください。 .Sh 診断 呼び出しが成功した場合は 0 が返され、 そうでない場合は \-1 が返され、グローバル変数 .Va errno に失敗の原因が入ります。 -.Sh 参照 +.Sh 関連項目 .Xr ioctl 2 , .Xr tty 4 .Sh 歴史 .Fn stty および .Fn gtty 関数は、 .Bx 4.2 に現れました。 diff --git a/ja_JP.eucJP/man/man3/sysconf.3 b/ja_JP.eucJP/man/man3/sysconf.3 index e0239b30c9..b2301a89ec 100644 --- a/ja_JP.eucJP/man/man3/sysconf.3 +++ b/ja_JP.eucJP/man/man3/sysconf.3 @@ -1,201 +1,201 @@ .\" Copyright (c) 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)sysconf.3 8.3 (Berkeley) 4/19/94 .\" %FreeBSD: src/lib/libc/gen/sysconf.3,v 1.8.2.6 2001/12/14 18:33:51 ru Exp % .\" .\" $FreeBSD$ .Dd April 19, 1994 .Dt SYSCONF 3 .Os .Sh 名称 .Nm sysconf .Nd コンフィギュレーション可能なシステム変数を取得 .Sh ライブラリ .Lb libc .Sh 書式 .In unistd.h .Ft long .Fn sysconf "int name" .Sh 解説 このインタフェースは、 .St -p1003.1-88 により定義されたものです。 .Xr sysctl 3 を使えば、さらに一層完全なインタフェースを使用することができます。 .Pp .Fn sysconf 関数は、 コンフィギュレーション可能なシステムの制限 (system limit) またはオプション変数の現在の値を、 アプリケーションが調べるための方法を提供します。 引数 .Fa name は、照会するシステム変数を指定します。 それぞれの名前の値に対応するシンボリック定数は、 インクルードファイル .Aq Pa unistd.h の中にあります。 .Pp 使用できる値は次の通りです: .Pp .Bl -tag -width 6n .Pp .It Li _SC_ARG_MAX .Xr execve 2 の引数の最大バイト数。 .It Li _SC_CHILD_MAX 1 ユーザ ID あたりの同時プロセスの最大数。 .It Li _SC_CLK_TCK 1 秒あたりの tick 数で表した統計クロック (statistics clock) の頻度。 .It Li _SC_NGROUPS_Max 追加可能なグループの最大数。 .It Li _SC_OPEN_MAX 1 ユーザ ID 当たりのオープン可能なファイルの最大数。 .It Li _SC_STREAM_MAX 1 つのプロセスが一度にオープンできるストリームの最大数の最小値。 .It Li _SC_TZNAME_MAX 時間帯 (timezone) の名前としてサポートされるタイプの最大数の最小値。 .It Li _SC_JOB_CONTROL このシステムでジョブ制御が利用できるなら 1 を返し、 利用できない場合は \-1 を返します。 .It Li _SC_SAVED_IDS 保存された set-group および保存された set-user ID が 利用できる場合は 1 を返し、そうでない場合は \-1 を返します。 .It Li _SC_VERSION システムが準拠しようと試みる .St -p1003.1 のバージョン。 .It Li _SC_BC_BASE_MAX .Xr bc 1 ユーティリティにおける ibase/obase の最大値。 .It Li _SC_BC_DIM_MAX .Xr bc 1 ユーティリティにおける最大配列サイズ。 .It Li _SC_BC_SCALE_MAX .Xr bc 1 ユーティリティにおける最大スケール値。 .It Li _SC_BC_STRING_MAX .Xr bc 1 ユーティリティにおける最大ストリング長。 .It Li _SC_COLL_WEIGHTS_MAX ロケール定義ファイルにおける LC_COLLATE 順序キーボードのエントリに 割り当てることができる重みの最大数。 .It Li _SC_EXPR_NEST_MAX .Xr expr 1 ユーティリティでの括弧でネストできる式の最大数。 .It Li _SC_LINE_MAX テキスト処理ユーティリティの入力ラインのバイトで表した最大長さ。 .It Li _SC_RE_DUP_MAX インターバル表記を使うときに許される正規表現の繰り返し発生回数の最大数。 .It Li _SC_2_VERSION システムが準拠することを試みる .St -p1003.2 のバージョン。 .It Li _SC_2_C_BIND システムの C 言語開発ファシリティで C 言語構築オプション (C-Language Bindings Option) が サポートされていれば 1 を返し、 サポートされていなければ \-1 を返します。 .It Li _SC_2_C_DEV C 言語開発ユーティリティオプション (C-Language Development Utilities Option) が サポートされていれば 1 を返し、 サポートされていなければ\-1 を返します。 .It Li _SC_2_CHAR_TERM .St -p1003.2 に記述されている全操作が可能な端末タイプが、 最低 1 つサポートされていれば 1 を返し、 そうでなければ \-1 を返します。 .It Li _SC_2_FORT_DEV FORTRAN 開発ユーティリティオプション (FORTRAN Development Utilities Option) が サポートされていれば 1 を返し、 サポートされていなければ \-1 を返します。 .It Li _SC_2_FORT_RUN FORTRAN ランタイムユーティリティオプション (FORTRAN Runtime Utilities Option) が サポートされていれば 1 を返し、 サポートされていなければ \-1 を返します。 .It Li _SC_2_LOCALEDEF ロケールの作成がサポートしていれば 1 を返し、 サポートされていなければ \-1 を返します。 .It Li _SC_2_SW_DEV ソフトウェア開発ユーティリティオプション (Software Development Utilities Option) が サポートされていれば 1 を返し、 サポートされていなければ \-1 を返します。 .It Li _SC_2_UPE ユーザポータビリティユーティリティオプション (User Portability Utilities Option) が サポートされていれば 1 を返し、 サポートされていなければ \-1 を返します。 .El .Sh 戻り値 .Fn sysconf の呼び出しが成功しなかったときは \-1 が返され、 .Va errno が適切な値に設定されます。 そうでないときは、 変数がサポートされていない機能に関連づけられていると \-1 が返され、 .Va errno は修正されません。 それ以外の場合は、現在の変数値が返されます。 .Sh エラー .Fn sysconf 関数が失敗して、ライブラリ関数 .Xr sysctl 3 について記されているエラーのいずれかに対応した .Va errno が設定されることがあります。 さらに、次のようなエラーが報告されることがあります。 .Bl -tag -width Er .It Bq Er EINVAL .Fa name 引数の値が無効です。 .El -.Sh 参照 +.Sh 関連項目 .Xr sysctl 3 .Sh バグ _SC_STREAM_MAX の値は最大値の最小値であり、 ANSI C の FOPEN_MAX と同じであることが要求されているので、 戻り値は極めて小さい誤解を招くような値になります。 .Sh 規格 .Fn sysconf の返す値が、呼び出したプロセスが生存している間に変化する 可能性があることを除いては、この関数は .St -p1003.1-88 に準拠しています。 .Sh 歴史 .Fn sysconf 関数は、最初 .Bx 4.4 に現れました。 diff --git a/ja_JP.eucJP/man/man3/sysexits.3 b/ja_JP.eucJP/man/man3/sysexits.3 index f383dcb08b..a81ddb68de 100644 --- a/ja_JP.eucJP/man/man3/sysexits.3 +++ b/ja_JP.eucJP/man/man3/sysexits.3 @@ -1,151 +1,151 @@ .\" .\" Copyright (c) 1996 Joerg Wunsch .\" .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``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 DEVELOPERS 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/share/man/man3/sysexits.3,v 1.5.2.3 2001/12/17 11:30:11 ru Exp % .\" $FreeBSD$ .\" .\" " .Dd March 31, 1996 .Os .Dt SYSEXITS 3 .Sh 名称 .Nm sysexits .Nd プログラムの望ましい終了コード .Sh 書式 .In sysexits.h .Sh 解説 .Xr style 9 によれば、プログラムを終了するときに失敗の状態を示すために 任意の値を使って .Xr exit 3 を呼び出すのは、よいやり方ではありません。代りに、 .Nm sysexits からの事前に定義された終了コードを使うべきであり、そうすれば プロセスの呼び出し者はソースコードを調べなくても失敗クラスをおおよそ 推定することができます。 .Pp 無事に終了したことは、常にステータス 0 または .Sy EX_OK によって 示されます。任意のプログラムが常に返す可能性のあるその他の終了ステータスと 衝突する可能性を減らすために、エラー番号は .Sy EX__BASE から始まります。コード の意味は、おおよそ次に示す通りです: .Bl -tag -width "EX_UNAVAILABLEXX(XX)" .It Sy EX_USAGE Pq 64 コマンドが不正に使用されました。例えば、引数の 数の誤り、誤ったフラグ、パラメータの誤った構文など。 .It Sy EX_DATAERR Pq 65 入力データがどこかで不正です。これは、 ユーザデータのみに使用する必要があり、システムファイルには 使用すべきではありません。 .It Sy EX_NOINPUT Pq 66 入力ファイル (システムファイルではなく) が 存在しないか、または読み取り可能ではありません。これには、メーラに 対する .Dq \&No message のようなエラーも含まれます (このようなエラーまで 捕えようとする場合)。 .It Sy EX_NOUSER Pq 67 ユーザが指定したものは存在しません。これは、 メールアドレスやリモートログインに使用することができます。 .It Sy EX_NOHOST Pq 68 ホストが指定したものは存在しません。これは、 メールアドレスやネットワークリクエストに使用することができます。 .It Sy EX_UNAVAILABLE Pq 69 そのサービスは利用できません。これは、 サポートプログラムやファイルが存在しない場合に起きます。これは、 何かやりたいことができないで、その理由が分からないときの キャッチコールメッセージとして使うこともできます。 .It Sy EX_SOFTWARE Pq 70 内部ソフトウェアエラーが検出されました。これは、 できるだけオペレーティングシステム関連ではないエラーに限る必要があります。 .It Sy EX_OSERR Pq 71 オペレーティングシステムエラーが検出されました。 これは、 .Dq 分岐できない、 .Dq パイプを作成できない などのようなエラーに 使うよう意図されています。これには、 passwd ファイルに存在しないユーザに 対して getuid を返すようなものも含まれます。 .It Sy EX_OSFILE Pq 72 システムファイルのどれか (例えば、 .Pa /etc/passwd 、 .Pa /var/run/utmp など) が存在しないか、開けないか、または何らかの エラー (例えば、構文エラー) があります。 .It Sy EX_CANTCREAT Pq 73 (ユーザ指定の) 出力ファイルが作成できません。 .It Sy EX_IOERR Pq 74 いずれかのファイルに対して I/O 操作中にエラーが起きました。 .It Sy EX_TEMPFAIL Pq 75 一時的な失敗で、本当のエラーではないことを 示します。 sendmail では、これはメーラが (例えば) 接続を確立できず、 リクエストは後で再試行する必要があることを意味します。 .It Sy EX_PROTOCOL Pq 76 リモートシステムがプロトコル交換の 間に「可能でない」何かを返しました。 .It Sy EX_NOPERM Pq 77 その操作を実行するために十分な許可を 持っていません。これは、ファイルシステムの問題のためではなく、より高い レベルの許可のために意図されています。ファイルシステムに対しては、 .Sy EX_NOINPUT または .Sy EX_CANTCREAT を使用すべきです。 .It Sy EX_CONFIG Pq 78 何かがコンフィギュレーションされていない、または コンフィギュレーションが間違っている状態にあります。 .El .Pp シンボリックな表現のエラーに対応する数値が、参照を容易にするために 括弧内に示してあります。 -.Sh 参照 +.Sh 関連項目 .Xr exit 3 , .Xr style 9 .Sh 歴史 .Nm ファイルは、 .Bx 4.3 以降のどこかで登場しました。 .Sh 作者 このマニュアルページは、 .Pa の中のコメント以後に .An J\(:org Wunsch によって書かれました。 .Sh バグ 適切な終了値の選択が、しばしばあいまいになります。 diff --git a/ja_JP.eucJP/man/man3/syslog.3 b/ja_JP.eucJP/man/man3/syslog.3 index 99fae16ebb..7d86a10bf8 100644 --- a/ja_JP.eucJP/man/man3/syslog.3 +++ b/ja_JP.eucJP/man/man3/syslog.3 @@ -1,292 +1,292 @@ .\" Copyright (c) 1985, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)syslog.3 8.1 (Berkeley) 6/4/93 .\" $FreeBSD$ .\" %FreeBSD: src/lib/libc/gen/syslog.3,v 1.9.2.9 2001/12/14 18:33:51 ru Exp % .\" .Dd June 4, 1993 .Dt SYSLOG 3 .Os .Sh 名称 .Nm syslog , .Nm vsyslog , .Nm openlog , .Nm closelog , .Nm setlogmask .Nd システムログの制御 .Sh ライブラリ .Lb libc .Sh 書式 .In syslog.h .In varargs.h .Ft void .Fn syslog "int priority" "const char *message" "..." .Ft void .Fn vsyslog "int priority" "const char *message" "va_list args" .Ft void .Fn openlog "const char *ident" "int logopt" "int facility" .Ft void .Fn closelog void .Ft int .Fn setlogmask "int maskpri" .Sh 解説 .Fn syslog 関数は、システムのメッセージロガーにメッセージを書込みます。 そのメッセージは、次に状況に応じてシステムコンソール、ログファイル、 ログインしたユーザなどに書込まれたり、他のマシンに転送されます ( .Xr syslogd 8 参照) 。 .Pp メッセージは、 .Ql %m が現在のエラーメッセージにより置き換えられることを除けば、 .Xr printf 3 フォーマットストリングと同じものになります (グローバル変数 errno によって示されるものと同じ。 .Xr strerror 3 参照) 。 何もない場合は、末尾に改行が追加されます。 .Pp .Fn vsyslog 関数は、 .Xr stdarg 3 の可変長引数機能を使ってすでに引数が キャプチャされている場合の代替形式です。 .Pp メッセージには優先順位 ( .Fa priority ) のタグが付けられます。優先順位は、 .Fa facility と .Em level にコード化されます。 .Fa facility は、メッセージを作成する システムの一部を記述します。 .Em level は、順番になった (高い方から低い方へ) 次のような一覧から選択します: .Bl -tag -width LOG_AUTHPRIV .It Dv LOG_EMERG パニック状態。これは、通常は全ユーザに送信されます。 .It Dv LOG_ALERT 壊れたシステムデータベースのような、直ちに是正すべき状態。 .It Dv LOG_CRIT 危険な状態、例えばハードデバイスエラーなど。 .It Dv LOG_ERR エラー。 .It Dv LOG_WARNING 警告メッセージ。 .It Dv LOG_NOTICE エラー状態ではないが、特別に処理する必要性が考えられる状態。 .It Dv LOG_INFO インフォメーションメッセージ。 .It Dv LOG_DEBUG 通常はプログラムのデバッグの際にのみ使う情報が入った メッセージ。 .El .Pp .Fn openlog 関数は、 .Fn syslog および .Fn vsyslog により送られたメッセージに 対して、より特殊な処理を施すためのものです。パラメータ .Fa ident は、すべての メッセージの前に付加されるストリングです。 .Fa logopt 引数は、ログ作成オプション を指定するビットフィールドで、次に示す値の 1 つ以上を .Tn OR 操作することによって作成されます: .Bl -tag -width LOG_AUTHPRIV .It Dv LOG_CONS .Fn syslog がメッセージを .Xr syslogd 8 へ渡せない場合、 コンソール .Pq Dq Pa /dev/console にメッセージを書き込むことを試みます。 .It Dv LOG_NDELAY .Xr syslogd 8 への接続を直ちに開きます。通常は、最初の メッセージがログに書込まれるまでは開く操作を遅らせます。これは、 ファイル記述子を割り振る順番を管理する必要があるプログラムでは役に 立ちます。 .It Dv LOG_PERROR メッセージを、システムログと同時に標準エラー出力にも書込みます。 .It Dv LOG_PID 各メッセージとともにプロセス ID をログします。デーモンのインスタンス化を識別するために役に立ちます。 .El .Pp .Fa facility パラメータは、明示的なファシリティが コード化されていないすべてのメッセージに割り当てるデフォルトファシリティを コード化します: .Bl -tag -width LOG_AUTHPRIV .It Dv LOG_AUTH 権限付与システム: .Xr login 1 、 .Xr su 1 、 .Xr getty 8 、など。 .It Dv LOG_AUTHPRIV .Dv LOG_AUTH と同じですが、限定された個人だけが読める ファイルにログします。 .It Dv LOG_CONSOLE カーネルコンソール出力ドライバが、メッセージを .Pa /dev/console に書き込みます。 .It Dv LOG_CRON cron デーモン: .Xr cron 8 。 .It Dv LOG_DAEMON .Xr routed 8 のような、他のファシリティでは明示的に 用意されていないシステムデーモン。 .It Dv LOG_FTP ファイル転送プロトコルデーモン: .Xr ftpd 8 、 .Xr tftpd 8 。 .It Dv LOG_KERN カーネルにより生成されるメッセージ。これらは、どんな ユーザプロセスによっても生成できません。 .It Dv LOG_LPR ラインプリンターのスプーリングシステム: .Xr lpr 1 、 .Xr lpc 8 、 .Xr lpd 8 、など。 .It Dv LOG_MAIL メールシステム。 .It Dv LOG_NEWS ネットワークニュースシステム。 .It Dv LOG_SECURITY セキュリティサブシステムです。 例えば .Xr ipfw 4 です。 .It Dv LOG_SYSLOG .Xr syslogd 8 により内部的に生成されたメッセージ。 .It Dv LOG_USER 任意のユーザプロセスにより生成されたメッセージ。何も 指定されていない場合は、これはデフォルトのファシリティ識別子になります。 .It Dv LOG_UUCP uucp システム。 .It Dv LOG_LOCAL0 ローカルの使用のために予約。 .Dv LOG_LOCAL1 から .Dv LOG_LOCAL7 までについても同じ。 .El .Pp .Fn closelog 関数は、ログファイルを閉じるために使うことができます。 .Pp .Fn setlogmask 関数は、ログ優先順位マスクを .Fa maskpri に設定し、以前のマスクを返します。 .Fa maskpri に設定されていない優先順位を持った .Fn syslog への呼び出しは拒絶されます。個別の優先順位 .Fa pri のためのマスクは、マクロ .Fn LOG_MASK pri によって計算されます。 .Fa toppri 自体を含む toppri までのすべての優先順位についてのマスクは、マクロ .Fn LOG_UPTO toppri によって与えられます。 デフォルトでは、すべての優先順位をログすることを許可します。 .Sh 戻り値 ルーチン .Fn closelog 、 .Fn openlog 、 .Fn syslog 、および .Fn vsyslog は、値を返しません。 .Pp ルーチン .Fn setlogmask は、常に前のログマスクレベルを返します。 .Sh 例 .Bd -literal -offset indent syslog(LOG_ALERT, "who: internal error 23"); openlog("ftpd", LOG_PID | LOG_NDELAY, LOG_FTP); setlogmask(LOG_UPTO(LOG_ERR)); syslog(LOG_INFO, "Connection from host %d", CallingHost); syslog(LOG_INFO|LOG_LOCAL2, "foobar error: %m"); .Ed -.Sh 参照 +.Sh 関連項目 .Xr logger 1 , .Xr syslogd 8 .Sh 歴史 これらの関数は .Bx 4.2 に現れました。 diff --git a/ja_JP.eucJP/man/man3/system.3 b/ja_JP.eucJP/man/man3/system.3 index 8b84734325..04813b43b7 100644 --- a/ja_JP.eucJP/man/man3/system.3 +++ b/ja_JP.eucJP/man/man3/system.3 @@ -1,103 +1,103 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the American National Standards Committee X3, on Information .\" Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)system.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/stdlib/system.3,v 1.6.2.4 2001/12/14 18:33:58 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt SYSTEM 3 .Os .Sh 名称 .Nm system .Nd コマンドをシェルに渡す .Sh ライブラリ .Lb libc .Sh 書式 .In stdlib.h .Ft int .Fn system "const char *string" .Sh 解説 .Fn system 関数は、引数 .Fa string をコマンドインタプリタ .Xr sh 1 に渡します。 呼び出し元プロセスは、シェルがそのコマンドの実行を 完了するまで待ち、 .Dv SIGINT および .Dv SIGQUIT を無視し、 .Dv SIGCHLD をブロックします。 .Pp .Fa string が .Dv NULL ポインタの場合、 .Fn system はコマンドインタプリタ .Xr sh 1 が利用できる場合は 0 以外の値を返し、 利用できない場合は 0 を返します。 .Pp .Xr fork 2 もしくは .Xr waitpid 2 を呼び出したときにエラーが発生した場合、 .Fn system 関数は、 .Xr waitpid 2 で返されるシェルの終了状態、 あるいは \-1 を返します。 戻り値 127 は、シェルの実行が 失敗したことを意味します。 -.Sh 参照 +.Sh 関連項目 .Xr sh 1 , .Xr execve 2 , .Xr wait 2 , .Xr fork 2 , .Xr waitpid 2 , .Xr popen 3 .Sh 規格 .Fn system 関数は、 .St -isoC に適合しており、 .St -p1003.2 と互換性があると思われます。 diff --git a/ja_JP.eucJP/man/man3/tcgetpgrp.3 b/ja_JP.eucJP/man/man3/tcgetpgrp.3 index 9999c6492c..63d772ac6f 100644 --- a/ja_JP.eucJP/man/man3/tcgetpgrp.3 +++ b/ja_JP.eucJP/man/man3/tcgetpgrp.3 @@ -1,83 +1,83 @@ .\" Copyright (c) 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)tcgetpgrp.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/gen/tcgetpgrp.3,v 1.6.2.2 2001/12/14 18:33:51 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt TCGETPGRP 3 .Os .Sh 名称 .Nm tcgetpgrp .Nd フォアグラウンドの処理グループIDを取得 .Sh 書式 .In sys/types.h .In unistd.h .Ft pid_t .Fn tcgetpgrp "int fd" .Sh 解説 .Fn tcgetpgrp 関数は、端末デバイスで行っているフォアグラウンドの処理 グループの処理グループ ID を返します。フォアグラウンドの処理グループがない場合、 .Fn tcgetpgrp は無効なプロセス ID を返します。 .Sh エラー エラーが起きた場合、 .Fn tcgetpgrp は -1 を返し、エラーを示すために 次のようにグローバル変数 .Va errno が設定されます: .Bl -tag -width Er .It Bq Er EBADF 引数 .Fa fd が有効なファイル記述子ではありません。 .It Bq Er ENOTTY 呼び出し側処理が制御端末を持っていないか、または .Fa fd で表わされている端末デバイスが制御端末ではありません。 .El -.Sh 参照 +.Sh 関連項目 .Xr setpgid 2 , .Xr setsid 2 , .Xr tcsetpgrp 3 .Sh 規格 .Fn tcgetpgrp 関数は、 .St -p1003.1-88 規格に適合しているものと考えられます。 diff --git a/ja_JP.eucJP/man/man3/tcsendbreak.3 b/ja_JP.eucJP/man/man3/tcsendbreak.3 index 83ae616cae..017318d384 100644 --- a/ja_JP.eucJP/man/man3/tcsendbreak.3 +++ b/ja_JP.eucJP/man/man3/tcsendbreak.3 @@ -1,171 +1,171 @@ .\" Copyright (c) 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)tcsendbreak.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/gen/tcsendbreak.3,v 1.5.2.3 2001/12/14 18:33:51 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt TCSENDBREAK 3 .Os .Sh 名称 .Nm tcsendbreak , .Nm tcdrain , .Nm tcflush , .Nm tcflow .Nd ライン制御関数 .Sh ライブラリ .Lb libc .Sh 書式 .In termios.h .Ft int .Fn tcdrain "int fd" .Ft int .Fn tcflow "int fd" "int action" .Ft int .Fn tcflush "int fd" "int action" .Ft int .Fn tcsendbreak "int fd" "int len" .Sh 解説 .Fn tcdrain 関数は、 .Fa fd で参照される端末へ書込まれるすべての出力が端末に 転送されるまで待ちます。 .Pp .Fn tcflow 関数は、 .Fa action の値に応じて、 .Fa fd で参照される端末へのデータの 送信またはその端末からのデータの受信を一時停止します。 .Fa action の値は、 次のいずれかでなければなりません: .Bl -tag -width "TCIOFF" .It Fa TCOOFF 出力を一時停止します。 .It Fa TCOON 一時停止した出力を再開します。 .It Fa TCIOFF 端末がシステムへのデータ送信を停止するように、 STOP キャラクタを送信します ( .Xr termios 4 の .Ql Input Modes セクションの IXOFF の解説を 参照して下さい )。 .It Fa TCION 端末がシステムへのデータ送信を開始するように、 START キャラクタ を送信します ( .Xr termios 4 の .Ql Input Modes セクションの IXOFF の解説を 参照してください )。 .El .Pp .Fn tcflush 関数は、 .Fa fd で参照される端末へ書込まれるべきデータ であるがまだ端末に送信されていないすべてのデータ、またはその端末から 受信したデータであるがまだ読み込んでいないすべてのデータを、 .Fa action の値に 応じて廃棄します。 .Fa action の値は、次のいずれかでなければなりません: .Bl -tag -width "TCIOFLUSH" .It Fa TCIFLUSH 受信したが読み込んでいないデータを捨てます。 .It Fa TCOFLUSH 書込んだが送信していないデータを捨てます。 .It Fa TCIOFLUSH 受信したが読み込んでいないデータ、および書込んだが 送信していないデータの両方を捨てます。 .El .Pp .Fn tcsendbreak 関数は、0 値ビットの連続ストリームを 0.4 秒間の間 .Fa fd で参照される端末へ送信します。 .Fa len パラメータは、このシステムでは無視されます。 .Sh 戻り値 処理が成功すると、上記のすべての関数は値 0 を返します。 .Sh エラー エラーが起きた場合は -1 の値が返され、エラーを示すグローバル変数 .Va errno が次のように設定されます: .Bl -tag -width Er .It Bq Er EBADF 引数 .Fa fd が有効なファイル記述子ではありません。 .It Bq Er EINVAL 引数 .Fa action の値が適当ではありません。 .It Bq Er ENOTTY .Fa fd に結びつけられるファイルが端末ではありません。 .It Bq Er EINTR .Fn tcdrain 関数はシグナルにより中断されました。 .El -.Sh 参照 +.Sh 関連項目 .Xr tcsetattr 3 , .Xr termios 4 .Sh 規格 関数 .Fn tcsendbreak , .Fn tcdrain , .Fn tcflush , .Fn tcflow は、 .St -p1003.1-88 規格に適合していると考えられます。 diff --git a/ja_JP.eucJP/man/man3/tcsetattr.3 b/ja_JP.eucJP/man/man3/tcsetattr.3 index 14261690e9..6f247faee8 100644 --- a/ja_JP.eucJP/man/man3/tcsetattr.3 +++ b/ja_JP.eucJP/man/man3/tcsetattr.3 @@ -1,319 +1,319 @@ .\" Copyright (c) 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)tcsetattr.3 8.3 (Berkeley) 1/2/94 .\" %FreeBSD: src/lib/libc/gen/tcsetattr.3,v 1.6.2.3 2001/12/14 18:33:51 ru Exp % .\" .\" $FreeBSD$ .Dd January 2, 1994 .Dt TCSETATTR 3 .Os .Sh 名称 .Nm cfgetispeed , .Nm cfsetispeed , .Nm cfgetospeed , .Nm cfsetospeed , .Nm cfsetspeed , .Nm cfmakeraw , .Nm tcgetattr , .Nm tcsetattr .Nd termios 構造の操作 .Sh ライブラリ .Lb libc .Sh 書式 .In termios.h .Ft speed_t .Fn cfgetispeed "const struct termios *t" .Ft int .Fn cfsetispeed "struct termios *t" "speed_t speed" .Ft speed_t .Fn cfgetospeed "const struct termios *t" .Ft int .Fn cfsetospeed "struct termios *t" "speed_t speed" .Ft int .Fn cfsetspeed "struct termios *t" "speed_t speed" .Ft void .Fn cfmakeraw "struct termios *t" .Ft int .Fn tcgetattr "int fd" "struct termios *t" .Ft int .Fn tcsetattr "int fd" "int action" "const struct termios *t" .Sh 解説 .Fn cfmakeraw , .Fn tcgetattr および .Fn tcsetattr 関数は、termios 構造の取得および設定を行うためのものです。 .Pp .Fn cfgetispeed , .Fn cfsetispeed , .Fn cfgetospeed , .Fn cfsetospeed および .Fn cfsetspeed 関数は、termios 構造におけるボーレートの取得および設定を 行うためのものです。以下に述べる端末に対する関数の効果は、 .Fn tcsetattr 関数が呼び出されるまでは有効にはならず、すべてエラーが検出されます。 .Fn tcsetattr 関数に渡されるボーレートの特定の値は、termios 構造に設定され、 特別な意味を持ちます。これについては、 .Fn tcsetattr 関数を説明しているマニュアルページに述べます。 .Sh ボーレートの取得と設定 入力および出力のボーレートは、termios 構造に入っています。符号なしの整数 .Li speed_t は、インクルードファイル .Aq Pa termios.h の中で typedef されています。しかし、この整数の値は、それが示すボーレートに 直接対応しており、次のような記号で値が定義されています。 .Bd -literal #define B0 0 #define B50 50 #define B75 75 #define B110 110 #define B134 134 #define B150 150 #define B200 200 #define B300 300 #define B600 600 #define B1200 1200 #define B1800 1800 #define B2400 2400 #define B4800 4800 #define B9600 9600 #define B19200 19200 #define B38400 38400 #ifndef _POSIX_SOURCE #define EXTA 19200 #define EXTB 38400 #endif /*_POSIX_SOURCE */ .Ed .Pp .Fn cfgetispeed 関数は、 .Fa tp で参照される termios 構造における入力ボーレートを返します。 .Pp .Fn cfsetispeed 関数は、 .Fa tp で参照される termios 構造における入力ボーレートを .Fa speed の値に設定します。 .Pp .Fn cfgetospeed 関数は、 .Fa tp で参照される termios 構造における出力ボーレートを返します。 .Pp .Fn cfsetospeed 関数は、 .Fa tp で参照される termios 構造における出力ボーレートを .Fa speed の値に設定します。 .Pp .Fn cfsetspeed 関数は、 .Fa tp で参照される termios 構造における入力および出力ボーレートの両方を .Fa speed の値に設定します。 .Pp 処理が成功すると、 .Fn cfsetispeed , .Fn cfsetospeed および .Fn cfsetspeed は値 0 を返します。それ以外の場合は -1 という値が返され、エラーを示す グローバル変数 .Va errno が設定されます。 .Sh termios状態の取得と設定 このセクションでは、一般端末インタフェースを制御するために用いる 関数について説明します。特定のコマンドについて特に断り書きがない限り、 これらの関数はバックグラウンド処理による使用に対しては制限があります。 このような操作を行なおうとすると、その処理グループには SIGTTOU シグナルが 送られます。呼び出し側処理が SIGTTOU シグナルをブロックまたは無視した場合は、 その処理は操作を実行することを許され、 SIGTTOU シグナルは送信されません。 .Pp .Fa fd は開くファイルの記述子ですが、すべての関数においては、関数はそれが 示す特定のファイル記述子に関して開いたファイルの内容だけでなく、潜在的に 関連する端末ファイルにも影響を及ぼします。 .Pp .Fn cfmakeraw 関数は、termios 構造に保存されたフラグをすべての入力および 出力処理を無効にする状態に設定し、 .Dq 生の I/O パス を与えます。この効果を 逆転させる関数は存在しないことに注意してください。これは、有効に 戻すことができる処理オプションは沢山あり、正しい方法は .Fn tcgetattr 関数を使い、まず .Fn cfmakeraw 関数で次に .Fn tcsetattr 関数によって生モードを設定し、次にもう一度 .Fn tcsetattr 関数を保存状態で使って元の端末状態に戻して 現在の端末状態のスナップショットを適用するやり方だからです。 .Pp .Fn tcgetattr 関数は、 .Fa tp で参照される termios 構造に入っている .Fa fd によって参照される端末に付随するパラメータをコピーします。この関数は、 バックグラウンド処理から使うことが許されていますが、端末アトリビュート はその後にフォアグラウンド処理によって変更される場合があります。 .Pp .Fn tcsetattr 関数は、 .Fa tp によって参照される termios 構造の端末に付随するパラメータを設定します。 .Fa action フィールドは、インクルードファイル .Aq Pa termios.h の中で指定された通りに、以下の値を .Em or 操作することによって 作成されます。 .Bl -tag -width "TCSADRAIN" .It Fa TCSANOW 変更は直ちに行われます。 .It Fa TCSADRAIN 変更は、 .Fa fd に書込まれたすべての出力が端末に送信された後で 行われます。出力に影響を与えるパラメータを変更する場合には、この .Fa action 値を使わなければなりません。 .It Fa TCSAFLUSH 変更は、 .Fa fd に書込まれたすべての出力が端末に送信された後で 行われます。その上、受信されたがまだ読み取られていないすべての入力は 廃棄されます。 .It Fa TCSASOFT この値が .Fa action 値に .Em 又は 操作された場合は、 .Em c_cflag , .Em c_ispeed および .Em c_ospeed フィールドの値は無視されます。 .El .Pp ボーレート値 0 は、接続を終了するために使います。 .Fn tcsetattr 関数に出力速度 0 を指定すると、端末に対してモデム制御を主張せずに、 端末の接続を切ります。 .Pp 関数 .Fn tcsetattr に入力速度 0 を指定した場合は、入力ボーレートは出力 ボーレートに指定されたものと同じ値に設定されます。 .Pp 関数 .Fn tcsetattr が要求した変更のいずれをも行うことができない場合は、値 -1 を返して .Va errno を設定します。それ以外の場合は、要求された変更すべてを 可能な限り行います。指定した入力および出力のボーレートが異なり、その 組合せがサポートされていない場合には、どちらのボーレートも変更されません。 .Pp 処理が成功して完了すると、関数 .Fn tcgetattr および .Fn tcsetattr は値 0 を返します。それ以外の場合は、値 -1 を返してエラーを示すグローバル変数 .Va errno が次のように設定されます: .Bl -tag -width Er .It Bq Er EBADF 関数 .Fn tcgetattr または .Fn tcsetattr に対する引数 .Fa fd が有効なファイル記述子ではありません。 .It Bq Er EINTR 関数 .Fn tcsetattr がシグナルによって中断されました。 .It Bq Er EINVAL 関数 .Fn tcsetattr の引数 .Fa action が有効でないか、または termios 構造の中のアトリビュートを サポートされていない値に変更しようとしています。 .It Bq Er ENOTTY 関数 .Fn tcgetattr または .Fn tcsetattr の引数 .Fa fd に結びついたファイルが、端末ではありません。 .El -.Sh 参照 +.Sh 関連項目 .Xr tcsendbreak 3 , .Xr termios 4 .Sh 規格 関数 .XX cfgetispeed , .XX cfsetispeed , .XX cfgetospeed , .XX cfsetospeed , .Fn tcgetattr , .Fn tcsetattr は、 .St -p1003.1-88 規格に適合していると考えられます。関数 .Fn cfmakeraw および .Fn cfsetspeed は、 .Fn tcsetattr 関数の .Li TCSASOFT オプションと同様に .St -p1003.1-88 規格の拡張です。 diff --git a/ja_JP.eucJP/man/man3/tcsetpgrp.3 b/ja_JP.eucJP/man/man3/tcsetpgrp.3 index e9d1938221..c15c67e049 100644 --- a/ja_JP.eucJP/man/man3/tcsetpgrp.3 +++ b/ja_JP.eucJP/man/man3/tcsetpgrp.3 @@ -1,101 +1,96 @@ .\" Copyright (c) 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)tcsetpgrp.3 8.1 (Berkeley) 6/4/93 -.\" %FreeBSD: src/lib/libc/gen/tcgetpgrp.3,v 1.6.2.2 2001/12/14 18:33:51 ru Exp % +.\" %FreeBSD: src/lib/libc/gen/tcsetpgrp.3,v 1.6.2.3 2001/12/14 18:33:51 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt TCSETPGRP 3 .Os .Sh 名称 .Nm tcsetpgrp .Nd フォアグラウンド処理グループ ID の設定 .Sh ライブラリ .Lb libc .Sh 書式 .In sys/types.h .In unistd.h .Ft int .Fn tcsetpgrp "int fd" "pid_t pgrp_id" .Sh 解説 処理が制御する端末を持つ場合は、 -.Nm tcsetpgrp +.Fn tcsetpgrp 関数はその端末デバイスと連携したフォアグラウンド処理グループ ID を .Fa pgrp_id に設定します。 .Fa fd に連携した端末デバイスは、呼び出し処理の制御端末でなければならず、またその 制御端末はその呼び出し側処理のセッションに 現在連携していなければなりません。 .Fa pgrp_id の値は、同じセッションにおける処理の呼び出し側処理の処理グループ ID と 同じでなければなりません。 -.Pp -処理が成功して完了すると、 -.Nm tcsetpgrp -は値 0 を返します。 +.Sh 戻り値 +.Rv -std tcsetpgrp .Sh エラー -エラーが起きた場合は、 -.Nm tcsetpgrp -は値 -1 を返してエラーを示すグローバル変数 -.Va errno -を次のように設定します: +.Fn tcsetpgrp +は次の場合に失敗します。 .Bl -tag -width Er .It Bq Er EBADF 引数 .Fa fd が有効なファイル記述子ではありません。 .It Bq Er EINVAL 無効な .Fa pgrp_id の値が指定されました。 .It Bq Er ENOTTY 呼び出し処理が制御端末を持っていないか、または .Fa fd で 表わされるファイルが制御端末ではないか、または制御端末がもはや呼び出し 処理のセッションに結合されていません。 .It Bq Er EPERM 引数 .Fa pgrp_id が、同じセッションにおける処理の呼び出し側処理の 処理グループ ID と一致しません。 .El -.Sh 参照 +.Sh 関連項目 .Xr setpgid 2 , .Xr setsid 2 , .Xr tcgetpgrp 3 .Sh 規格 -.Nm tcsetpgprp +.Fn tcsetpgprp 関数は、 .St -p1003.1-88 規格に適合しているものと考えられます。 diff --git a/ja_JP.eucJP/man/man3/times.3 b/ja_JP.eucJP/man/man3/times.3 index 94c1e739e0..53d047e9b8 100644 --- a/ja_JP.eucJP/man/man3/times.3 +++ b/ja_JP.eucJP/man/man3/times.3 @@ -1,139 +1,139 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)times.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/gen/times.3,v 1.4.2.4 2001/12/14 18:33:51 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt TIMES 3 .Os .Sh 名称 .Nm times .Sh ライブラリ .Lb libc .Nd 時間の処理 .Sh 書式 .In sys/times.h .Ft clock_t .Fn times "struct tms *tp" .Sh 解説 .Bf -symbolic このインタフェースは、関数 .Xr getrusage 2 および .Xr gettimeofday 3 に置き換えられています。 .Ef .Pp .Fn times 関数は、1970 年 1 月 1 日 0 時 0 分 0 秒で調整された世界時から測った .Dv CLK_TCK の時間値を秒で返します。 .Pp この関数は、 .Fa tp により指示された構造に時間計測情報を書込みます。 .Pp .Vt tms 構造は、次のように定義されます: .Bd -literal -offset indent struct tms { clock_t tms_utime; clock_t tms_stime; clock_t tms_cutime; clock_t tms_cstime; }; .Ed .Pp この構造の要素は、次のように定義されます: .Bl -tag -width ".Va tms_cutime" .It Va tms_utime ユーザインストラクションの実行に対して請求される .Tn CPU タイム。 .It Va tms_stime その処理のためのシステムによる実行に対して請求される .Tn CPU タイム。 .It Va tms_cutime 子プロセスの .Va tms_utime s および .Va tms_cutime s の和。 .It Va tms_cstime 子プロセスの .Va tms_stime Ns s および .Va tms_cstime Ns s の和。 .El .Pp すべての時間は、 .Dv CLK_TCK 秒で表されます。 .Pp 終了した子プロセスの時間は、 .Xr wait 2 関数の 1 つが終了した子のプロセス ID をその親に返したときに、その親の .Va tms_cutime および .Va tms_cstime の要素にインクルードされます。エラーが起きた場合は、 .Fn times 関数は値 .Pq Po Vt clock_t Pc Ns \-1 を返し、エラーを示す .Va errno を設定します。 .Sh エラー .Fn times 関数が失敗すると、ライブラリルーチン .Xr getrusage 2 および .Xr gettimeofday 2 に指定されたすべてのエラーに対して、グローバル変数 .Va errno を設定する場合があります。 -.Sh 参照 +.Sh 関連項目 .Xr time 1 , .Xr getrusage 2 , .Xr gettimeofday 2 , .Xr wait 2 , .Xr clocks 7 .Pp .Sh 規格 .Fn times 関数は、 .St -p1003.1-88 に準拠しています。 diff --git a/ja_JP.eucJP/man/man3/timezone.3 b/ja_JP.eucJP/man/man3/timezone.3 index d93185abba..3a29450564 100644 --- a/ja_JP.eucJP/man/man3/timezone.3 +++ b/ja_JP.eucJP/man/man3/timezone.3 @@ -1,71 +1,71 @@ .\" Copyright (c) 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)timezone.3 8.2 (Berkeley) 4/19/94 .\" %FreeBSD: src/lib/libc/gen/timezone.3,v 1.4.2.3 2000/12/08 13:49:24 ru Exp % .\" .\" $FreeBSD$ .Dd April 19, 1994 .Dt TIMEZONE 3 .Os .Sh 名称 .Nm timezone .Nd タイムゾーンの略称を返す .Sh ライブラリ .Lb libc .Sh 書式 .Ft char * .Fn timezone "int zone" "int dst" .Sh 解説 .Bf Sy このインタフェースは、互換性を保つためだけのものです。タイムゾーンの 引数をタイムゾーン略称に正確にマップすることは不可能です。 .Xr ctime 3 を参照してください。 .Ef .Pp .Fn timezone 関数は、指定された .Ar zone および .Ar dst 値に対してタイムゾーン略称へのポインタを返します。 .Ar zone は GMT から西に数えた分の数で、 .Ar dst は夏時間が使われている場合はゼロではありません。 -.Sh 参照 +.Sh 関連項目 .Xr ctime 3 .Sh 歴史 .Fn timezone 関数は、 .At v7 に現れました。 diff --git a/ja_JP.eucJP/man/man3/tmpnam.3 b/ja_JP.eucJP/man/man3/tmpnam.3 index 6fc19b81ef..cb640eb848 100644 --- a/ja_JP.eucJP/man/man3/tmpnam.3 +++ b/ja_JP.eucJP/man/man3/tmpnam.3 @@ -1,215 +1,215 @@ .\" Copyright (c) 1988, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the American National Standards Committee X3, on Information .\" Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)tmpnam.3 8.2 (Berkeley) 11/17/93 .\" %FreeBSD: src/lib/libc/stdio/tmpnam.3,v 1.5.2.5 2001/12/14 18:33:57 ru Exp % .\" .\" $FreeBSD$ .Dd November 17, 1993 .Dt TMPFILE 3 .Os .Sh 名称 .Nm tempnam , .Nm tmpfile , .Nm tmpnam .Nd 一時ファイルルーチン .Sh ライブラリ .Lb libc .Sh 書式 .In stdio.h .Ft FILE * .Fn tmpfile void .Ft char * .Fn tmpnam "char *str" .Ft char * .Fn tempnam "const char *tmpdir" "const char *prefix" .Sh 解説 .Fn tmpfile 関数は、 .Xr mkstemp 3 ルーチンによって返されたファイル記述子に 結合されたストリームへのポインタを返します。 作成されたファイルは .Fn tmpfile 関数から返る前にリンクが削除されます。 そのため、そのファイルへの最後の参照が閉じられた時に、 ファイルは自動的に削除されます。 そのファイルは、アクセス値 .Ql w+ によって開かれます。 .Ev TMPDIR が設定されている場合、ファイルは、この環境変数によって決定される ディレクトリに作成されます。 .Ev TMPDIR が設定されていない場合のデフォルト値は .Pa /tmp です。 .Pp .Fn tmpnam 関数は、過去のある不特定の時点で .Dv P_tmpdir ディレクトリに存在していたファイルを参照していたものではない ファイル名へのポインタを返します。 .Dv P_tmpdir は、インクルードファイル .Aq Pa stdio.h の中で定義されています。 引数 .Fa str が .Dv NULL でない場合は、ファイル名はそれが参照するバッファにコピーされます。 それ以外の場合は、ファイル名は静的バッファにコピーされます。 どちらの場合でも、 .Fn tmpnam 関数はそのファイル名へのポインタを返します。 .Pp .Fa str により参照されるバッファの長さは、少なくとも .Dv L_tmpnam バイトなければなりません。 .Dv L_tmpnam は、インクルードファイル .Aq Pa stdio.h の中で定義されています。 .Pp .Fn tempnam 関数は、 .Fn tmpnam 関数と同じようなものですが、一時ファイルを収容するディレクトリと ファイル名プレフィックスを指定する機能を持っています。 .Pp 一時ファイルを保存するディレクトリとしては、環境変数 .Ev TMPDIR (これが設定されている場合)、引数 .Fa tmpdir (これが .Dv NULL でない場合)、ディレクトリ .Dv P_tmpdir , ディレクトリ .Pa /tmp が、この順番で試されます。 .Pp ファイル名プレフィックスを指定するためには、値が .Dv NULL でない場合は引数 .Fa prefix が使われ、これが作成されるファイル名の最初の部分になります。 .Fn tempnam 関数は、ファイル名を保存するメモリを割り当てます。 返されたポインタは、 .Xr free 3 への次に続く引数として使うことができます。 .Sh 戻り値 .Fn tmpfile 関数は、成功した場合には開いたファイルストリームへのポインタを、 エラーの場合には .Dv NULL ポインタを返します。 .Pp .Fn tmpnam および .Fn tempfile 関数は、成功した場合にはファイル名へのポインタを、 エラーの場合には .Dv NULL ポインタを返します。 .Sh エラー .Fn tmpfile 関数が失敗した場合、ライブラリ関数 .Xr fdopen 3 または .Xr mkstemp 3 で規定されるエラーのいずれかが、グローバル変数 .Va errno に設定される場合があります。 .Pp .Fn tmpnam 関数が失敗した場合、ライブラリ関数 .Xr mktemp 3 で規定されるエラーのいずれかが .Va errno が設定される場合があります。 .Pp .Fn tempnam 関数が失敗した場合、ライブラリ関数 .Xr malloc 3 または .Xr mktemp 3 で規定されるエラーのいずれかが .Va errno が設定される場合があります。 -.Sh 参照 +.Sh 関連項目 .Xr mkstemp 3 , .Xr mktemp 3 .Sh 規格 .Fn tmpfile および .Fn tmpnam 関数は、 .St -isoC に適合しています。 .Sh バグ これらのインタフェースは、System V および .Tn ANSI との互換性のみのために提供されています。 .Xr mkstemp 3 インタフェースの使用を強く推奨します。 .Pp これらのインタフェースには (古い .Xr mktemp 3 インタフェースと同様に)、4 つの重大な問題があります。 まず第一に、ファイル名選択とファイル作成および削除の間には 明らかな競合があります。 第二に、ほとんどの古いシステムでは、ファイル名がリサイクルされるまでには、 限られた数 (通常は 26) の一時ファイル名しか使えないことです。 第三に、これらの関数 (および .Xr mktemp 3 ) の System V における実装は、一時ファイル作成の可否を決めるために .Xr access 2 関数を用いていることです。 これは、setuid および setgid プログラムに対して 明らかな問題を派生させ、このようなプログラムにこれらの インタフェースを移植して使うことを複雑にします。 最後に、一時ファイルを作成する許可に関する指定がありません。 .Pp この実装にはこれらの欠陥はありませんが、移植可能な ソフトウェアはそれを頼りにすることはできません。 特に、 .Fn tmpfile インタフェースは、ユーザが一時ファイルを公開して読み書き可能にすることを 望まない可能性がある場合は、他のシステム上で使用されることが予想される ソフトウェアの中では使うべきではありません。 diff --git a/ja_JP.eucJP/man/man3/ttyname.3 b/ja_JP.eucJP/man/man3/ttyname.3 index 95c44e6a14..8e1012ea1a 100644 --- a/ja_JP.eucJP/man/man3/ttyname.3 +++ b/ja_JP.eucJP/man/man3/ttyname.3 @@ -1,116 +1,116 @@ .\" Copyright (c) 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)ttyname.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/gen/ttyname.3,v 1.5.2.3 2001/12/14 18:33:51 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt TTYNAME 3 .Os .Sh 名称 .Nm ttyname , .Nm isatty , .Nm ttyslot .Nd ファイル記述子からそれに結合されている端末 ( tty ) の名前を取得 .Sh ライブラリ .Lb libc .Sh 書式 .In unistd.h .Ft char * .Fn ttyname "int fd" .Ft int .Fn isatty "int fd" .Ft int .Fn ttyslot void .Sh 解説 これらの関数は、端末タイプデバイスに関するシステムファイル記述子を 操作します。これらの記述子は標準の .Tn I/O .Dv FILE typedef とは関係を持っておらず、 .Pa /dev ディレクトリ中にあって .Pa /dev/tty Ns Em xx という名前を持ち、 それについては初期設定ファイル .Pa /etc/ttys の中にエントリが存在するような特別デバイスファイルを参照します( .Xr ttys 5 参照 )。 .Pp .Fn isatty 関数は、ファイル記述子 .Fa fd が有効な端末タイプデバイスを参照しているかどうかを判断します。 .Pp .Fn ttyname 関数は、 .Fn isatty が真であるファイル記述子に関連するデバイス名を取得します。 .Pp .Fn ttyslot 関数は、 .Xr ttys 5 ファイルエントリから現在のプロセスの制御端末番号を取ってきます。 .Sh 戻り値 .Fn ttyname 関数は、デバイスが見つかって .Fn isatty が真である場合は、null で終端された名前を返します。それ以外の場合は、 .Dv NULL ポインタを返します。 .Pp .Fn ttyslot 関数は、デバイスファイルが見つかればそのユニット番号を 返します。見つからない場合は、値ゼロを返します。 .Sh ファイル .Bl -tag -width /etc/ttys -compact .It Pa /dev/\(** .It Pa /etc/ttys .El -.Sh 参照 +.Sh 関連項目 .Xr ioctl 2 , .Xr ttys 5 .Sh 歴史 .Fn isatty , .Fn ttyname , および .Fn ttyslot 関数は、 .At v7 に現れました。 .Sh バグ .Fn ttyname 関数は、その結果を内部静的オブジェクトの中に残し、その オブジェクトへのポインタを返します。それ以後に .Fn ttyname を呼び出すと、その同じオブジェクトは修正されます。 diff --git a/ja_JP.eucJP/man/man3/tzset.3 b/ja_JP.eucJP/man/man3/tzset.3 index 3973a45470..206c2179b1 100644 --- a/ja_JP.eucJP/man/man3/tzset.3 +++ b/ja_JP.eucJP/man/man3/tzset.3 @@ -1,320 +1,320 @@ .\" Copyright (c) 1989, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Arthur Olson. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)tzset.3 8.2 (Berkeley) 11/17/93 .\" %FreeBSD: src/lib/libc/gen/tzset.3,v 1.6.2.5 2001/12/14 18:33:51 ru Exp % .\" .\" $FreeBSD$ .Dd November 17, 1993 .Dt TZSET 3 .Os .Sh 名称 .Nm tzset , .Nm tzsetwall .Nd 時間変換情報の初期化 .Sh ライブラリ .Lb libc .Sh 書式 .In time.h .Ft void .Fn tzset void .Ft void .Fn tzsetwall void .Sh 解説 .Fn tzset 関数は、ライブラリルーチン .Xr localtime 3 により使用される 時間変換情報を初期化します。環境変数 .Ev TZ は、この変換をどのように行うかを指定します。 .Pp 環境に .Ev TZ が現れていない場合は、 .Xr tzfile 5 形式のファイル .Pa /etc/localtime により指定されたローカル壁時計時間に最も近い近似値が用いられます。 .Pp 環境に .Ev TZ が現れているがその値が null ストリングである場合には、 世界標準時刻 .Pq Tn UTC が用いられます ( うるう秒補正なしで )。 .Pp 環境に .Ev TZ が現れ、その値がコロン .Pq Ql \&: で始まる場合は、それ以降の値が .Xr tzfile 5 形式ファイルのパス名として用いられ、そこから時間変換情報が読み 込まれます。パス名の最初のキャラクタがスラッシュ .Pq Ql / である場合は、それは 絶対パス名として用いられます。それ以外の場合は、そのパス名はシステムの 時間変換情報ディレクトリに対する相対パス名として用いられます。 .Pp その値がコロンで始まらない場合は、それはまず ( 上に 説明したように ) 時間変換情報の読み取り用ファイルのパス名として 用いられます。そのファイルが読めない場合は、その値は時間変換情報の 直接的仕様 ( 形式は下に説明 ) であると解釈されます。 .Pp 環境変数 .Ev TZ が .Xr tzfile 5 形式ファイルを指定しておらず、直接的仕様と解釈できない場合は、 .Tn UTC が用いられます。 .Pp .Fn tzsetwall 関数は、ローカル壁時計時間に最も近い近似値を返すように調整を行います。 .Pp 仕様形式 .Ev TZ を時間変換情報の仕様として直接使う場合は、次のようなシンタックスを 持つ必要があります ( 空白は読みやすくするために入れてあります ): .Bd -ragged -offset indent .Em std offset .Bo .Em dst .Bq Em offset .Bq , Em rule .Bc .Ed .Pp ここで: .Bl -tag -width std_and_dst -offset indent .It Em std と Em dst 標準時間帯 ( .Em std ) または夏時間帯 ( .Em dst ) の指示子である 3 以上のバイト。必要なのは .Em std のみです。 .Em dst がない場合は、この地域では 夏時間が適用されません。大文字と小文字の区別は明示的に許可されます。先頭の コロン .Pq Ql \&: , 小数点、コンマ .Pq Ql \&, , マイナス .Pq Ql \- , プラス .Pq Ql + , および .Tn ASCII .Dv NUL 以外のキャラクタであれば使えます。 .Pp .It Em offset 世界標準時を計算するためにローカル時間に加えるべき値を示します。 .Em offset は、次のような形式を持ちます: .Bd -ragged -offset indent .Sm off .Em hh Bo .Em : mm .Bq Em : ss .Bc .Sm on .Ed .Pp 分 .Pq Em mm および秒 .Pq Em ss を付けるのは任意です。時 .PQ Em hh は必要で、 1 桁の数字でも構いません。 .Em std に続く .Em offset は必要です。 .Em dst の後に .Em offset がない場合は、夏時間は標準時間よりも 1 時間進むものとみなします。 1 桁 以上の数字が使えます。値は常に十進数であると解釈されます。 時は 0 から 24 までの間、 また分 ( および秒 ) を指定する場合は 0 から 59 までの間でなければなりません。 先頭に .Pq Ql \- が付いている場合は、時間帯は本初子午線の東となります。それ以外の 場合は、西となります ( 任意で先頭に .Pq Ql + を付けて指定しても構いません ) 。 .Pp .It Em rule いつ夏時間に変更するか、またいつ夏時間から元に戻すかを示します。 .Em rule は次のような形式を持ちます: .Bd -ragged -offset indent .Em date/time,date/time .Ed .Pp ここで、最初の .Em date は標準時間から夏時間への変更がいつ起きるかを表し、 2 番目の .Em date はいつ元に戻すかを表します。それぞれの .Em time フィールドは、 現在のローカル時間からもう一方の時間への変更をいつ行うかを表します。 .Pp .Em date の形式は、次のいずれかです: .Bl -tag -width "M.m.n.d" .It Sy J Em n ユリウス日 .Em n (1 \*(Le .Em n \*(Le 365)。 うるう日は数えません。 すなわち、 うるう年を含めたすべての年で 2 月 28 日は 59 日目、 3 月 1 日は 60 日目になります。ときどきやってくる 2 月 29 日を明示的に 参照することはできません。 .It Em n 0 を基準にしたユリウス日 (0 \*(Le .Em n \*(Le 365 )。 うるう日は数えられ、 2 月 29 日を参照することは可能です。 .It Sy M Em m.n.d ある年の .Em m 番目の月の第 .Em n 週の .Em d (0 \*(Le .Em d \*(Le 6) 番目の曜日 (1 \*(Le .Em n \*(Le 5), (1 \*(Le .Em m \*(Le 12)。 ここで、第 5 週とは 第 4 週目または第 5 週目に起きる .Do 第 .Em m 月の最後の .Em d 番目の日 .Dc を意味します。第 1 週は、 .Em d 番目の日が起きる最初の週です。第 0 日は日曜日です。 .Pp .Em time は、先頭の符号 .Pq Ql \- または .Pq Ql + が許されないこと以外は、 .Em offset と同じ形式を持ちます。 .Em time を与えない場合は、 .Sy 02:00:00 がデフォルト値となります。 .El .Pp .Ev TZ 仕様に .Em rule がない場合は、システム時間変換情報ディレクトリの中の .Xr tzfile 5 形式ファイル .Em posixrules により指定された規則が用いられ、標準時間および夏時間の .Tn UTC からのオフセットは .Ev TZ の .Em offset 値で指定された値により置き換えられます。 .El .Pp System V Release 3.1 との互換性を持たせるため、 .Em rule を残りの仕様から区別するためにセミコロン .Pq Ql \&; を使うこともできます。 .Sh ファイル .Bl -tag -width /usr/share/zoneinfo/posixrules -compact .It Pa /etc/localtime ローカル時間帯ファイル .It Pa /usr/share/zoneinfo 時間帯ディレクトリ .It Pa /usr/share/zoneinfo/posixrules .Tn POSIX スタイルの .Tn TZ に関する規則 .It Pa /usr/share/zoneinfo/GMT .Tn UTC うるう秒 .El .Pp .Pa /usr/share/zoneinfo/GMT ファイルが存在しない場合は、 .Tn UTC うるう秒は .Pa /usr/share/zoneinfo/posixrules からロードされます。 -.Sh 参照 +.Sh 関連項目 .Xr date 1 , .Xr gettimeofday 2 , .Xr ctime 3 , .Xr getenv 3 , .Xr time 3 , .Xr tzfile 5 .Sh 歴史 .Fn tzset および .Fn tzsetwall 関数は、最初に .Bx 4.4 に現れました。 diff --git a/ja_JP.eucJP/man/man3/ualarm.3 b/ja_JP.eucJP/man/man3/ualarm.3 index 56c84a8076..1409d5db44 100644 --- a/ja_JP.eucJP/man/man3/ualarm.3 +++ b/ja_JP.eucJP/man/man3/ualarm.3 @@ -1,101 +1,101 @@ .\" Copyright (c) 1986, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" From: @(#)ualarm.3 8.2 (Berkeley) 4/19/94 .\" %FreeBSD: src/lib/libc/gen/ualarm.3,v 1.9.2.5 2001/12/14 18:33:51 ru Exp % .\" .\" $FreeBSD$ .Dd April 19, 1994 .Dt UALARM 3 .Os .Sh 名称 .Nm ualarm .Nd 指定された時間後に信号発信を予定 .Sh ライブラリ .Lb libc .Sh 書式 .In unistd.h .Ft u_int .Fn ualarm "u_int microseconds" "u_int interval" .Sh 解説 .Bf -symbolic これは .Xr setitimer 2 への簡易化されたインタフェースです。 .Ef .Pp .Fn ualarm 関数は、 .Ar microseconds のカウントだけ待ってから終了信号 .Dv SIGALRM を出します。システム動作またはその呼び出し処理に使った 時間によって、わずかな遅れが起きる場合があります。 .Pp 引数 .Ar interval が非ゼロである場合は、タイマが切れた後 ( すなわち、 .Fa value マイクロ秒が過ぎた後 ) の .Ar interval マイクロ秒毎に .Dv SIGALRM 信号がプロセスに 対して送られます。 .Pp .Xr setitimer 2 の制限によって、 .Ar microseconds および .Ar interval の最大数は 100000000000000 に制限されます ( この値が符号なし整数の範囲内に収まる 場合 ) 。 .Sh 戻り値 信号がうまく受け取られた場合は、 .Fn ualarm 関数はクロックに残された時間数を返します。 .Sh 注 1 マイクロ秒は、0.000001 秒です。 -.Sh 参照 +.Sh 関連項目 .Xr getitimer 2 , .Xr setitimer 2 , .Xr sigpause 2 , .Xr sigvec 2 , .Xr alarm 3 , .Xr signal 3 , .Xr sleep 3 , .Xr usleep 3 .Sh 歴史 .Fn ualarm 関数は、 .Bx 4.3 に現れました。 diff --git a/ja_JP.eucJP/man/man3/ungetc.3 b/ja_JP.eucJP/man/man3/ungetc.3 index de96d139c1..e540b9fec1 100644 --- a/ja_JP.eucJP/man/man3/ungetc.3 +++ b/ja_JP.eucJP/man/man3/ungetc.3 @@ -1,100 +1,100 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Chris Torek and the American National Standards Committee X3, .\" on Information Processing Systems. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)ungetc.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/stdio/ungetc.3,v 1.4.2.5 2001/12/14 18:33:57 ru Exp % .\" $FreeBSD$ .\" .Dd June 4, 1993 .Dt UNGETC 3 .Os .Sh 名称 .Nm ungetc .Nd 入力ストリームから文字を戻す .Sh ライブラリ .Lb libc .Sh 書式 .In stdio.h .Ft int .Fn ungetc "int c" "FILE *stream" .Sh 解説 .Fn ungetc 関数は、 (符号なし char に変換されている) 文字 .Fa c を .Fa stream が指す入力ストリームに戻します。 プッシュバックされた文字は、 次にそのストリームを読んだときには (逆の順序で) 返されます。 プッシュバックした文字は、 そのストリームから読み出す前に、 ファイル位置検索関数 .Xr ( fseek 3 , .Xr fsetpos 3 , または .Xr rewind 3 ) のいずれかへの割り込み呼び出しが 成功すると廃棄されます。 .Pp 1 文字分のプッシュバックは保証されていますが、十分なメモリ がある限り、実質的には限度なしのプッシュバックが可能です。 .Pp 文字のプッシュバックに成功すると、 そのストリームのファイル終了表示子を クリアします。 .Sh 戻り値 .Fn ungetc 関数は、変換後にプッシュバックされたキャラクタを返すか、 またはその操作に失敗した場合は .Dv EOF を返します。引数 .Fa c の文字値が .Dv EOF に等しい場合は、 その操作は失敗してストリームは変更されません。 -.Sh 参照 +.Sh 関連項目 .Xr fseek 3 , .Xr getc 3 , .Xr setvbuf 3 .Sh 規格 .Fn ungetc 関数は、 .St -isoC に適合しています。 diff --git a/ja_JP.eucJP/man/man3/utime.3 b/ja_JP.eucJP/man/man3/utime.3 index fc217889f8..bcb5aed397 100644 --- a/ja_JP.eucJP/man/man3/utime.3 +++ b/ja_JP.eucJP/man/man3/utime.3 @@ -1,95 +1,95 @@ .\" Copyright (c) 1980, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)utime.3 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/gen/utime.3,v 1.5.2.4 2001/12/14 18:33:51 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt UTIME 3 .Os .Sh 名称 .Nm utime .Nd ファイルの時間を設定 .Sh ライブラリ .Lb libc .Sh 書式 .In sys/types.h .In utime.h .Ft int .Fn utime "const char *file" "const struct utimbuf *timep" .Sh 解説 .Bf -symbolic このインタフェースは .Xr utimes 2 によって置き換えられました。 .Ef .Pp .Fn utime 関数は、引数配列 .Fa timep の中の構造体から名前で指定されたファイルのアクセスおよび 修正の時間を設定します。 .Pp 時刻が指定された場合 ( 引数 .Fa timep が .Dv NULL でない場合 ) は、呼び出し元はそのファイルの所有者であるか、 またはスーパユーザでなければなりません。 .Pp 時刻が指定されていない場合 ( 引数 .Fa timep が .Dv NULL の場合 ) は、呼び出し元はそのファイルの所有者であるか、 そのファイルに書込みを許されているか、 またはスーパユーザでなければなりません。 .Sh エラー .Fn utime 関数が失敗すると、ライブラリ関数 .Xr utimes 2 について指定されたエラーに対する .Va errno が設定されます。 -.Sh 参照 +.Sh 関連項目 .Xr stat 2 , .Xr utimes 2 .Sh 歴史 .Fn utime 関数は .At v7 で登場しました。 .Sh 規格 .Fn utime 関数は、 .St -p1003.1-88 に適合しています。 diff --git a/ja_JP.eucJP/man/man3/uucplock.3 b/ja_JP.eucJP/man/man3/uucplock.3 index ef43d5d88e..329f357294 100644 --- a/ja_JP.eucJP/man/man3/uucplock.3 +++ b/ja_JP.eucJP/man/man3/uucplock.3 @@ -1,183 +1,183 @@ .\" .\" Copyright (c) 1996 Brian Somers .\" .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``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 DEVELOPERS 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/lib/libutil/uucplock.3,v 1.13.2.4 2001/12/17 10:08:32 ru Exp % .\" $FreeBSD$ .\" " .Dd March 30, 1997 .Os .Dt UUCPLOCK 3 .Sh 名称 .Nm uu_lock , .Nm uu_unlock , .Nm uu_lockerr .Nd シリアルデバイスの制御権の取得および放棄 .Sh ライブラリ .Lb libutil .Sh 書式 .In sys/types.h .In libutil.h .Ft int .Fn uu_lock "const char *ttyname" .Ft int .Fn uu_lock_txfr "const char *ttyname" "pid_t pid" .Ft int .Fn uu_unlock "const char *ttyname" .Ft const char * .Fn uu_lockerr "int uu_lockresult" .Sh 解説 .Fn uu_lock 関数は、渡された .Fa ttyname により与えられる接尾辞を持つ .Pa /var/spool/lock/LCK.. という名前のロックファイルを作成しようと試みます。 そのファイルがすでに存在する場合は、ロックするプログラムのプロセス ID が そのファイルに入っているものと見なします。 .Pp そのファイルがまだ存在していないか、またはロックファイルの中にあった プロセス ID により与えられる所有側プロセスがもはや動いていない場合は、 .Fn uu_lock 関数はファイルに自身のプロセス ID を書込んで成功を返します。 .Pp .Fn uu_lock_txfr 関数は、ロック所有権をもう一つのプロセスに移転します。 .Fn uu_lock 関数がその前に成功している必要があります。 .Pp .Fn uu_unlock 関数は、与えられた .Fa ttyname について .Fn uu_lock によって作成されたロックファイルを削除します。 .Fn uu_unlock を呼び出す前には、 .Fn uu_lock が成功していなければならないことに注意してください。 .Pp .Fn uu_lockerr 関数は、 .Fn uu_lock から返されるものと同様に、エラー .Fa uu_lockresult を表現するエラーストリングを返します。 .Sh 戻り値 .Fn uu_unlock 関数は、成功すると 0、失敗すると -1 を返します。 .Pp .Fn uu_lock 関数は、次のいずれかの値を返します: .Pp .Dv UU_LOCK_INUSE : ロックは別のプロセスによって使われています。 .Pp .Dv UU_LOCK_OK : ロックの作成に成功しました。 .Pp .Dv UU_LOCK_OPEN_ERR : .Xr open 2 はロックファイルを開くことができません。 .Pp .Dv UU_LOCK_READ_ERR : .Xr read 2 は、ロックファイルを読み取ることができません。 .Pp .Dv UU_LOCK_CREAT_ERR : .Xr creat 2 は、一時ロックファイルを 作成することができません。 .Pp .Dv UU_LOCK_WRITE_ERR : .Xr write 2 の呼び出しによって、現在のプロセス ID を ロックファイルに書込むことができません。 .Pp .Dv UU_LOCK_LINK_ERR : .Xr link 2 は、一時ロックファイルをリンクすることができません。 .Pp .Dv UU_LOCK_TRY_ERR : ロックする試みは、5 回の試行の後に失敗しました。 .Pp .Dv UU_LOCK_OK の値が .Fn uu_lockerr に渡された場合は、空のストリングが 返されます。それ以外の場合は、失敗した理由を示すストリングが返されます。 .Fn uu_lockerr は、現在の .Va errno の値を使って正確なエラーを判断します。 .Fn uu_lock を呼び出してから .Fn uu_lockerr を呼び出すまでの間に .Va errno が変化してしまわないように注意してください。 .Pp .Fn uu_lock_txfr 関数は、次のいずれかの値を返します: .Pp .Dv UU_LOCK_OK : 転送は成功しました。指定したプロセスが現在デバイスロックを 持っています。 .Pp .Dv UU_LOCK_OWNER_ERR : 現在のプロセスは、指定されたデバイスについての ロックをすでに持ってはいません。 .Pp .DV UU_LOCK_WRITE_ERR : .Xr write 2 の呼び出しによっては、新しいプロセス ID を ロックファイルに書込むことができません。 .Sh エラー .Fn uu_lock 関数が上のエラー値のいずれかを返した場合は、グローバル値 .Va errno を使ってその理由を判断することができます。詳しくは、該当する マニュアルページを参照してください。 .Pp .Fn uu_unlock 関数は、ロックファイルが削除できなかった理由を示す グローバル変数 .Va errno を設定します。詳しくは、 .Xr unlink 2 についての解説を参照してください。 -.Sh 参照 +.Sh 関連項目 .Xr lseek 2 , .Xr open 2 , .Xr read 2 , .Xr write 2 .Sh バグ 失効ロックを残したプログラムと同じプロセス ID が新しいプロセスに割り 当てられた場合は、失効したロックが失効を認識されない可能性があります。 .Pp 呼び出しプロセスは、 .Pa /var/spool/lock ディレクトリに対する書込み許可を 持っていなければなりません。このディレクトリの許可がロックされる シリアルデバイスの許可と同じであることを保証する仕組みは備えていません。 diff --git a/ja_JP.eucJP/man/man3/vis.3 b/ja_JP.eucJP/man/man3/vis.3 index c3286bdffd..b2118e7565 100644 --- a/ja_JP.eucJP/man/man3/vis.3 +++ b/ja_JP.eucJP/man/man3/vis.3 @@ -1,265 +1,265 @@ .\" Copyright (c) 1989, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" From: @(#)vis.3 8.1 (Berkeley) 6/9/93 .\" %FreeBSD: src/lib/libc/gen/vis.3,v 1.8.2.6 2001/12/14 18:33:51 ru Exp % .\" $FreeBSD$ .\" .Dd July 25, 1996 .Dt VIS 3 .Os .Sh 名称 .Nm vis .Nd キャラクタを視覚的にコード化 -.Sh LIBRARY +.Sh ライブラリ .Lb libc .Sh 書式 .In vis.h .Ft char * .Fn vis "char *dst" "int c" "int flag" "int nextc" .Ft int .Fn strvis "char *dst" "const char *src" "int flag" .Ft int .Fn strvisx "char *dst" "const char *src" "size_t len" "int flag" .Sh 解説 .Fn vis 関数は、キャラクタ .Fa c を表す文字列を .Fa dst にコピーします。 .Fa c がコード化を必要としない場合は、何も変更せずにコピーします。 文字列は null で終端され、文字列の最後へのポインタが返されます。 コード化の長さの最大値は 4 キャラクタです (最後の .Dv NUL は含まない)。従って、キャラクタのセットを バッファにコード化するときは、バッファのサイズはコード化される キャラクタ数の 4 倍と、最後に付ける .Dv NUL の分の 1 が必要です。コード化する キャラクタのデフォルト範囲を変更するため、また視覚的な表現を 変更するためにはフラグパラメータを使います。追加のキャラクタ、 .Fa nextc は、コード化形式 .Dv VIS_CSTYLE を選択したときにのみ使います (以下に説明します)。 .Pp .Fn strvis および .Fn strvisx 関数は、文字列 .Fa src の視覚的表現を .Fa dst にコピーします。 .Fn strvis 関数は、 .Fa src から最初の .Dv NUL までのキャラクタをコード化します。 .Fn strvisx 関数は、 .Fa src から正確に .Fa len 個のキャラクタをコード化します (これは、複数の .Dv NUL を含む可能性のあるデータのブロックを コード化する場合に役に立ちます)。どちらの形式でも .Fa dst を .Dv NUL で終端します。 .Fa dst のサイズは、 .Fa src からコード化されるキャラクタ数の 4 倍でなければなりません (プラス .Dv NUL のための 1)。どちらの形式でも、キャラクタ数を .Fa dst に返します (最後の .Dv NUL は含まずに)。 .Pp コード化は、すべてグラフィックキャラクタで構成されたユニークで 逆変換可能な表現です。すなわち、 .Xr unvis 3 または .Xr strunvis 3 関数を使えば元の形に戻すことができます。 .Pp 制御できるパラメータは 2 つあります:コード化するキャラクタの範囲、 および使用する表現のタイプです。デフォルトでは、スペース、タブ、改行を 除くすべての非グラフィックキャラクタがコード化されます。( .Xr isgraph 3 参照) これは、以下のフラグによって変更されます: .Bl -tag -width VIS_WHITEX .It Dv VIS_SP スペースもコード化します。 .It Dv VIS_TAB タブもコード化します。 .It Dv VIS_NL 改行もコード化します。 .It VIS_WHITE .Dv VIS_SP \&| .Dv VIS_TAB \&| .Dv VIS_NL と同義。 .It Dv VIS_SAFE "unsafe" キャラクタのみをコード化します。"unsafe"キャラクタとは、 普通の端末に予期しない機能を引き起こすような制御キャラクタ のことです。現在のところ、この形式ではすべてのグラフィックキャラクタに 加えて、スペース、タブ、改行、バックスペース、ベル、リターンを コード化しないでおきます。 .El .Pp コード化には 4 つの形式があります。すべての形式は、 バックスラッシュキャラクタ .Ql \e を使って特殊シーケンスを導入します。本当のバックスラッシュを表すには、 2 つのバックスラッシュを使います。次のような視覚的形式があります: .Bl -tag -width VIS_HTTPSTYLE .It (default) .Ql M を使ってメタキャラクタ (8 番目のビットがセットされた キャラクタ) を表し、カラット .Ql ^ を使って制御キャラクタを表します ( .Xr iscntrl 3 参照)。 次のような形式を使います: .Bl -tag -width xxxxx .It Dv \e^C 制御キャラクタ .Ql C を表します。 .Ql \e000 から .Ql \e037 まで、および .Ql \e177 のキャラクタを 含みます ( .QL \e^? のように)。 .It Dv \eM-C 8 番目のビットがセットされたキャラクタ .Ql C を表します。 .Ql \e241 から .Ql \e377 までのキャラクタを含みます。 .It Dv \eM^C 8 番目のビットがセットされた制御キャラクタ .Ql C を表します。 .Ql \e200 から .Ql \e237 まで、および .QL \e377 のキャラクタを含みます ( .Ql \eM^? のように)。 .It Dv \e040 .Tn ASCII のスペースを表します。 .It Dv \e240 メタスペースを表します。 .El .Pp .It Dv VIS_CSTYLE C スタイルのバックスラッシュシーケンスを使って、標準非印刷 キャラクタを表します。次に示すシーケンスを使って、指定されているキャラクタ を表します: .Bd -unfilled -offset indent .Li \ea Tn - BEL No (007) .Li \eb Tn - BS No (010) .Li \ef Tn - NP No (014) .Li \en Tn - NL No (012) .Li \er Tn - CR No (015) .Li \et Tn - HT No (011) .Li \ev Tn - VT No (013) .Li \e0 Tn - NUL No (000) .Ed .Pp この形式を使う場合は、nextc パラメータを見て .Dv NUL キャラクタを .Ql \e000 ではなく .Ql \e0 とコード化するかどうかを判断します。 .Fa nextc が 8 進数字である場合は、あいまいさを避けるために .Ql \e000 の表現を使います。 .It Dv VIS_HTTPSTYLE RFC 1808 に記述された URI エンコードを使用します。 形式は .Ql %dd であり、 .Em d は、16 進数の桁を表現します。 .It Dv VIS_OCTAL 3 桁の 8 進法シーケンスを使います。 .Em d が 8 進数字を表す場合は、形式は .Ql \eddd となります。 .El .Pp もう一つのフラグ、 .Dv VIS_NOSLASH は、バックスラッシュの重複およびデフォルト形式 (すなわち、 制御キャラクタを .Ql ^C で、メタキャラクタを .Ql M-C で表す形式) の前のバックスラッシュを抑制します。このフラグがセット してあると、コード化はあいまいとなり逆変換不能となります。 .Sh 関連項目 .Xr unvis 1 , .Xr unvis 3 .Rs .%A R. Fielding .%T Relative Uniform Resource Locators .%O RFC1808 .Re .Sh 歴史 これらの関数は .Bx 4.4 ではじめて登場しました。 diff --git a/ja_JP.eucJP/man/man5/exports.5 b/ja_JP.eucJP/man/man5/exports.5 index 33de88e0b5..7586e277ce 100644 --- a/ja_JP.eucJP/man/man5/exports.5 +++ b/ja_JP.eucJP/man/man5/exports.5 @@ -1,360 +1,355 @@ .\" Copyright (c) 1989, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)exports.5 8.3 (Berkeley) 3/29/95 .\" %FreeBSD: src/usr.sbin/mountd/exports.5,v 1.27 2004/08/07 04:27:51 imp Exp % .\" .\" $FreeBSD$ .\" .Dd March 29, 1995 .Dt EXPORTS 5 .Os .Sh 名称 .Nm exports .Nd .Tn NFS マウント要求に対するリモートマウントポイントを定義する .Sh 書式 .Nm .Sh 解説 .Nm ファイルは .Tn NFS サーバの指定 1 つについて .Tn NFS マウントプロトコルに対するリモートマウントポイントを指定します。 .%T "Network File System Protocol Specification" , RFC1094, Appendix A および .%T "NFS: Network File System Version 3 Specification" , Appendix I を参照してください。 .Pp .Nm ファイルの各行 (# で始まる注釈行以外) は、1 つ以上のホスト向けに、 1 つのローカルサーバファイルシステム内の マウントポイント (複数) とエクスポートフラグを指定します。 長い行は一番最後の行以外の行をバックスラッシュ .Pq Ql \e で終らせると複数の行に分割することができます。 あるホストは、 サーバの各ローカルファイルシステムに関して唯 1 度だけ指定可能です。 また他の全てのホストに適用されるデフォルトエントリは、 各サーバファイルシステムに関して唯 1 つだけ指定できます。 後者は ``世界'' に対しそのファイルシステムを公開することになるので、 そのファイルシステムが公の情報を含むときにのみ用いるべきです。 .Pp マウントエントリ内の最初の欄 (複数) には、 対応するクライアント (複数) がマウント可能である サーバファイルシステム内ディレクトリパス (複数) を指定します。 この指定には 2 つの形式があります。 最初の指定形式は、 全マウントポイントのリストであり、 絶対ディレクトリパスを空白で区切ったものです。 次の指定形式は、そのファイルシステムのルートパス名に続いて .Fl alldirs フラグを指定するものです。この形式は、そのファイルシステム内の任意の点を ホスト (複数) がマウントすることを可能にします。 .Xr mountd 8 で .Fl r オプションを用いれば、任意の点には通常ファイルを含むことができます。 パス名中には、シンボリックリンクを含んではなりませんし、また "." または ".." を含んではなりません。 1 つのファイルシステムに対するマウントポイントを複数指定することが可能であり、 それぞれ異ったホストとエクスポートオプションの組を指定することができます。 .Pp 行の 2 番目の部分には、そのファイルシステムがホストの組にどのように エクスポートされているかを指定します。 オプションフラグは、 そのファイルシステムを読み取り専用でエクスポートしているのか それとも読み書き可でエクスポートしているのかを指定したり、 クライアントの UID がサーバ上のユーザ資格にどのように マップされているのかを指定します。 .Pp エクスポートオプションは以下のとおりです。 .Pp .Sm off .Fl maproot No = Sy user .Sm on 指定されたユーザの資格を、root によるリモートアクセスに対して使用します。 その資格には、ローカルマシン上でユーザが属する全てのグループを含みます ( .Xr id 1 参照)。ユーザは名前または数字です。 .Pp .Sm off .Fl maproot No = Sy user:group1:group2:... .Sm on コロンによって区切られたリストは、 root によるリモートアクセスに対して使用する正確な資格を指定するために 使用します。 リストの要素は名前または数字です。 グループを含まない資格をユーザに関する完全な資格と区別するためには、 user: を使用すべきであることに注意してください。 .Pp .Sm off .Fl mapall No = Sy user .Sm on または .Sm off .Fl mapall No = Sy user:group1:group2:... .Sm on .Fl maproot と同じ指定方法で、 (root を含む) 全てのクライアントの UID に対するマッピングを指定します。 .Pp .Fl r オプションは .Fl maproot と同じ意味です。 これは古い export ファイル形式と互換性を保つために用意されました。 .Pp .Fl maproot および .Fl mapall オプションのない場合には、 root によるリモートアクセスは -2:-2 という資格を用いることになります。 その他の全てのユーザはそれぞれのリモート資格にマップされます。 .Fl maproot オプションを指定すると、root によるリモートアクセスは -2:-2 の代りに 指定した資格にマップされます。 .Fl mapall オプションを指定すると、root を含む全てのユーザはそれら自身の資格の代りに 指定した資格にマップされます。 .Pp .Fl ro オプションは、ファイルシステムが読み取り専用としてエクスポートされることを 指定します (デフォルトは読み書き可)。 .Fl o オプションは .Fl ro と同じ意味です。 これは古い export ファイル形式と互換性を保つために用意されました。 .Pp 仕様 (RFC 2054 と RFC 2055) に厳密に従う .Tn WebNFS エクスポートは .Fl public フラグにて実現されます。 しかしながら、このフラグ自身は、ファイルシステム中の全ファイルに対して 読み書きアクセスを与えますが、予約ポートを必要としませんし、 uid のマッピングも行いません。 これは仕様を満すためだけに提供されており、通常は使用すべきではありません。 .Tn WebNFS エクスポートのためには、 .Fl webnfs フラグを使用します。これは .Fl public , .Sm off .Fl mapall No = Sy nobody , .Sm on .Fl ro を意味します。 サーバ上では 1 つのファイルシステムしか .Tn WebNFS エクスポートできないことに注意してください。 .Pp .Sm off .Fl index No = Sy file .Sm on オプションを使用して、パブリックファイルハンドル .Pq Tn WebNFS を使用してディレクトリが検索された時にハンドルが返される ファイルを指定できます。 これは URL の動作のまねをします。 .Fl index オプションが指定されないと、通常通りディレクトリファイルハンドルが返されます。 .Fl index オプションは .Fl public または .Fl webnfs フラグと組み合わせたときのみ意味があります。 .Pp .Fl quiet オプションを指定すると、 .Pa /etc/exports 中の変な行に関する syslog への診断出力の一部を抑制します。 既知のあり得る問題による五月蝿いエラーメッセージを避けるのに有用です (後述の .Sx 使用例 参照)。 .Pp 行の 3 番目の部分には、その行が適用されるホストの組を指定します。 この組は 3 つの方法で指定できます。 最初の方法はホスト名 (複数) を空白で区切って並べる方法です。 (名前の代りに、標準的なインターネット ``ドット'' アドレスを用いることも できます)。2 番目の方法はネットグループファイル ( .Xr netgroup 5 参照) の中で定義した ``netgroup'' を指定する方法です。 3 番目の方法は、 1 つのネットワークとネットワークマスクを用いることにより、 1 つのインターネットサブネットワークを指定する方法です。 これは、 そのサブネットワーク内のアドレスを持つ全てのホストの組として定義されます。 この最後の方法はカーネルのオーバヘッドを低く押えられるため、 1 つの管理サブネット内の多くのクライアントを エクスポートの行が参照する場合に推奨されます。 .Pp 最初の 2 つの指定方法では、単に空白で区切られた名前 (複数) を並べて指定します。 全ての名前は、まずそれらが ``netgroup'' 名であるかチェックされ、 そうでなければホスト名であると仮定されます。 ホスト名に完全ドメイン指定をすれば、 ネットグループと同じ名前を持つホストの問題を通常避けることができます。 3 番目の指定方法は、 .Sm off .Fl network No = Sy netname .Sm on フラグとオプションの .Sm off .Fl mask No = Sy netmask .Sm on フラグによって指定します。マスクが指定されないと、そのネットワーククラス (A, B, C のどれかです。 .Xr inet 4 を参照してください) に対するマスクとなります。 後述の .Sx 使用例 参照。 .Pp .Xr mountd 8 ユーティリティに .Nm ファイルを再度読み取らせるためには、 ハングアップシグナルを次のように送ります: .Bd -literal -offset indent kill -s HUP `cat /var/run/mountd.pid` .Ed .Pp .Dv SIGHUP の送信後に .Xr syslogd 8 出力を確認して、 .Nm ファイル中の解析エラーを .Xr mountd 8 が記録したかどうか見てください。 .Sh 関連ファイル .Bl -tag -width /etc/exports -compact .It Pa /etc/exports デフォルトのリモートマウントポイントファイル .El .Sh 使用例 .Bd -literal -offset indent /usr /usr/local -maproot=0:10 friends /usr -maproot=daemon grumpy.cis.uoguelph.ca 131.104.48.16 /usr -ro -mapall=nobody /u -maproot=bin: -network 131.104.48 -mask 255.255.255.0 /u2 -maproot=root friends /u2 -alldirs -network cis-net -mask cis-mask /cdrom -alldirs,quiet,ro -network 192.168.33.0 -mask 255.255.255.0 .Ed .Pp .Sy /usr , .Sy /u , .Sy /u2 がローカルファイルシステムマウントポイントとすると、上の例は以下を指定します: .Pp .Sy /usr はネットグループファイルで指定されるホスト群 .Em friends にエクスポートされ、 この際ユーザはそれぞれのリモート資格にマップされ、 root は UID 0 およびグループ 10 にマップされます。 このファイルシステムは読み書き可でエクスポートされ、 ``friends'' 内のホストは /usr と /usr/local のどちらもマウントできます。 このファイルシステムは .Em 131.104.48.16 および .Em grumpy.cis.uoguelph.ca にエクスポートされ、 この際ユーザはそれぞれのリモート資格にマップされ、 root は ``daemon'' に結び付けられたユーザおよびグループにマップされます。 このファイルシステムは残りの世界へ読み出しのみでエクスポートされ、 この際全てのユーザは ``nobody'' に結び付けられたユーザおよびグループに マップされます。 .Pp .Sy /u はサブネットワーク .Em 131.104.48 上の全てのホストにエクスポートされ、 この際 root は ``bin'' の UID にマップされてグループアクセスを持ちません。 .Pp .Sy /u2 は ``friends'' 中のホストにエクスポートされ、 その際 root は ``root'' に結び付けられた UID とグループにマップされます。 このファイルシステムは ``cis-net'' ネットワーク上の全てのホストへ エクスポートされ、 この際 /u2 内のどんなディレクトリへもマウントを許します。 .Pp サブディレクトリを含む .Sy /cdrom を根とするファイルシステムが、 ネットワーク 192.168.33.0/24 へ読み取り専用でエクスポートされます。 .Sy /cdrom は CD-ROM デバイスの慣習的なマウントポイントですので、 現在 CD-ROM メディアがマウントされていないとこのエクスポートは失敗します。 何故なら、この行には .Fl alldirs があるため、ルートファイルシステムのサブディレクトリがエクスポート されようとするのですが、これは許可されていないからです。 .Fl quiet オプションは、通常は syslog に記録されてしまう この条件のエラーメッセージを抑制します。 CD-ROM がマウントされると、 .Xr mount 8 は .Xr mountd 8 にこの状況を通知し、 .Sy /cdrom ファイルシステムが意図通りにエクスポートされます。 .Fl alldirs オプションを使用しないと、エクスポートは常に成功することに注意してください。 この場合、 .Sy /cdrom 下に CD-ROM メディアがマウントされていなくても、 ルートファイルシステム中の (通常は空の) ディレクトリ .Sy /cdrom をエクスポートします。 -.Sh 関連ファイル -.Bl -tag -width /etc/exports -compact -.It Pa /etc/exports -デフォルトリモートマウントポイントファイル -.El .Sh 関連項目 .Xr netgroup 5 , .Xr mountd 8 , .Xr nfsd 8 , .Xr showmount 8 .Sh バグ エクスポートオプションは、 カーネル内ではローカルマウントポイントに結び付けられます。 ローカルサーバマウントポイントのサブディレクトリでエクスポートされたものに、 エクスポートオプションの矛盾があってはいけません。 同じファイルシステム内の全てのエクスポートされたディレクトリは、 木を下る順に隣り合った行で指定されることが推奨されます。 ネットグループ名と同じ名前のホスト名は指定できません。 完全ドメイン指定でホスト名を指定すれば通常は問題ありません。 diff --git a/ja_JP.eucJP/man/man5/ftpchroot.5 b/ja_JP.eucJP/man/man5/ftpchroot.5 index d294aeea1c..da2c2ce14f 100644 --- a/ja_JP.eucJP/man/man5/ftpchroot.5 +++ b/ja_JP.eucJP/man/man5/ftpchroot.5 @@ -1,117 +1,117 @@ .\" Copyright (c) 2003 FreeBSD Project .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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/libexec/ftpd/ftpchroot.5,v 1.3 2003/06/01 19:52:36 ru Exp % .\" .\" $FreeBSD$ .Dd January 26, 2003 .Dt FTPCHROOT 5 .Os .Sh 名称 .Nm ftpchroot .Nd "FTP アクセス制限を受けるユーザとグループの一覧" .Sh 解説 ファイル .Nm は、FTP セッション開始時にそのユーザの認証後、 .Xr ftpd 8 によって読み込まれます。 .Nm の各行はユーザまたはグループに対応します。 もし .Nm のある行が現在のユーザ、あるいはそのユーザが所属するグループにマッチした場合、 このセッションではこの行に記された、またはこのユーザのログインディレクトリに、 .Xr chroot 2 によってルートディレクトリが変更されるアクセス制限が適用されます。 .Pp .Nm におけるレコードの順番は重要です。何故なら最初にマッチしたものが 使用されるからです。各行のフィールドはタブか空白で区切られます。 .Pp 最初のフィールドはユーザまたはグループ名です。もし .Dq at 記号、つまり .Ql @ で始まっている場合はグループ名とされ、このグループに属する メンバのユーザにマッチします。 特別なケースとして、このフィールドにおける単一の .Ql @ は、全てのユーザにマッチします。 これら以外ではユーザ名とされます。 .Pp 2 番目のフィールドはオプションで、ユーザまたはグループに属するメンバを、 .Xr chroot 2 を使って閉じ込めるディレクトリを記述します。 省略された場合、そのユーザのログインディレクトリが使われます。 絶対パス名ではない場合、そのユーザのログインディレクトリからの 相対パスとされます。 パス名に .Pa /./ セパレータが含まれる場合、 .Xr ftpd 8 は左側を .Xr chroot 2 先のディレクトリ名、右側を以降のカレントディレクトリとして扱います。 .Sh 関連ファイル .Bl -tag -width ".Pa /etc/ftpchroot" -compact .It Pa /etc/ftpchroot .El -.Sh 設定例 +.Sh 使用例 .Nm における次の行は、ユーザ .Dq Li webuser と、グループ .Dq Li hostee に属するメンバを、各自のログインディレクトリに閉じ込めます。 .Bd -literal -offset indent webuser @hostee .Ed .Pp 次の行では、ユーザ .Dq Li joe を .Pa /var/spool/ftp に閉じ込め、そしてカレントディレクトリを、このセッションにおける 新しいルートからの相対パスになる .Pa /joe に変更するように、 .Xr ftpd 8 に教えます。 .Pp .Dl "joe /var/spool/ftp/./joe" .Pp 最後に以下の行では、FTP を通じて接続してくるあらゆるユーザを、 各自の .Pa ~/public_html に閉じ込めます。これによって、FTP が本質的にもっている危険性が、 システムに影響を与える可能性が下がります。 .Pp .Dl "@ public_html" .Sh 関連項目 .Xr chroot 2 , .Xr group 5 , .Xr passwd 5 , .Xr ftpd 8 diff --git a/ja_JP.eucJP/man/man5/tacplus.conf.5 b/ja_JP.eucJP/man/man5/tacplus.conf.5 index 7281d54c90..f87977b7f4 100644 --- a/ja_JP.eucJP/man/man5/tacplus.conf.5 +++ b/ja_JP.eucJP/man/man5/tacplus.conf.5 @@ -1,129 +1,129 @@ .\" Copyright 1998 Juniper Networks, Inc. .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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/lib/libtacplus/tacplus.conf.5,v 1.7 2004/07/02 23:52:19 ru Exp % .\" .\" $FreeBSD$ .\" WORD: sensitive (情報を)極めて慎重に扱うべき[radius.5 tacplus.conf.5] .Dd July 29, 1998 .Dt TACPLUS.CONF 5 .Os .Sh 名称 .Nm tacplus.conf .Nd TACACS+ クライアントの設定ファイル .Sh 書式 .Pa /etc/tacplus.conf .Sh 解説 .Nm は、TACACS+ クライアントライブラリの設定に必要な情報を含みます。 本ファイルは .Fn tac_config が解釈します ( .Xr libtacplus 3 参照)。 本ファイルは 1 行以上のテキスト行を含み、 各行は、ライブラリが使用する単一の TACACS+ サーバについて記述します。 行先頭の空白は、空行および、コメントのみの行と同様、無視されます。 .Pp 1 つの TACACS+ サーバは、2 から 4 フィールドからなる 1 行により表現されます。 フィールドは空白によって区切られます。 フィールドの先頭にある .Ql # 文字はコメントを開始し、行末まで続きます。 フィールドはダブルクォートで括ることができ、 この場合空白を含んだり、 .Ql # 文字で開始することができます。 クォートされた文字列中では、ダブルクォート文字は .Ql \e\&" で表現可能であり、バックスラッシュは .Ql \e\e で表現可能です。 他のエスケープシーケンスはサポートされません。 .Pp 最初のフィールドはサーバホストを指定します。 完全な形でのドメイン名でもかまいませんし、 ドット付き 4 つ組の IP アドレスでもかまいません。 ホストの後には .Ql \&: と数値によるポート番号を続けることができます。間に空白を狭んではなりません。 ポートを指定しない場合、 標準の TACACS+ ポート 49 になります。 .Pp 第 2 フィールドには共有鍵が置かれます。 これは、クライアントとサーバホスト以外には知られてはなりません。 共有鍵は任意の文字列ですが、 空白を含む場合や空の場合はダブルクォートで括る必要があります。 共有鍵を空にすると、通常の暗号化機構が無効化され、 ネットワークを行き来する全データはクリアテキストになります。 .Pp 第 3 フィールドは、 サーバとの通信時のタイムアウト秒数であり、 10 進数で指定します。 タイムアウトは、接続・書き込み・読み込みの各操作に別々に適用されます。 このフィールドを省略すると、デフォルトの 3 秒になります。 .Pp 省略可能な第 4 フィールドは、文字列 .Ql single-connection を含んでかまいません。 これを指定されると、ライブラリはサーバと交渉して、 複数のセッション用に TCP 接続をオープンしたままにしようとします。 古い TACACS+ サーバには、本オプションを指定すると混乱するものがあります。 .Pp 10 個の TACACS+ サーバまで指定可能です。 サーバは指定した順序で試され、有効な返答が返されるか、 リストが終わるまで続けられます。 .Pp このファイルの標準的な置き場所は .Pa /etc/tacplus.conf です。しかし、 .Fn tac_config ( .Xr libtacplus 3 参照) を呼び出すときに別のパス名を指定できます。 共有鍵という形で極めて慎重に扱うべき情報を格納するファイルですから、 root 以外には読めないようにすべきです。 .Sh 関連ファイル .Pa /etc/tacplus.conf .Sh 使用例 .Bd -literal # 全部デフォルトである単純なエントリ: tacserver.domain.com OurLittleSecret # サーバは標準ではないポートを使用しており、 # タイムアウトを増加し、"single-connection" オプションを指定しています。 auth.domain.com:4333 "Don't tell!!" 15 single-connection # サーバを IP アドレスで指定: 192.168.27.81 $X*#..38947ax-+= .Ed -.Sh 関連ファイル +.Sh 関連項目 .Xr libtacplus 3 .Sh 作者 この文書を .An John Polstra が書き、Juniper Networks, Inc. が .Fx プロジェクトに寄贈しました。 diff --git a/ja_JP.eucJP/man/man6/fortune.6 b/ja_JP.eucJP/man/man6/fortune.6 index 4f4b6fbd19..47ca0f1667 100644 --- a/ja_JP.eucJP/man/man6/fortune.6 +++ b/ja_JP.eucJP/man/man6/fortune.6 @@ -1,198 +1,199 @@ .\" Copyright (c) 1985, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Ken Arnold. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)fortune.6 8.3 (Berkeley) 4/19/94 .\" %FreeBSD: src/games/fortune/fortune/fortune.6,v 1.17 2004/07/02 21:15:48 ru Exp % .\" $FreeBSD$ .\" .\" 以下は Linux JM のクレジット .\" Japanese Version Copyright (c) 1997,1998 MAEHARA Kohichi .\" Japanese Version Copyright (c) 1997,1998 HANAYAKA Sinya .\" all rights reserved. .\" Translated Tue Feb 10 00:00:00 JST 1998 .\" by HANATAKA Sinya .\" by MAEHARA Kohichi .\" .\" .Dd April 19, 1994 .Dt FORTUNE 6 .Os .Sh 名称 .Nm fortune .Nd "おもしろくためになる格言を無作為に表示する" .Sh 書式 +.Nm .Op Fl aDefilosw .Op Fl m Ar pattern .Oo .Op Ar \&N% .Ar file/dir/all .Oc .Sh 解説 .Nm を引数なしで実行すると、無作為に選んだ格言を一つ表示します。 格言はいくつかの種類に分類されていて、それぞれの分類はさらに、 耳に痛いものとそうでないものとに分けられています。 オプションを以下に示します: .Bl -tag -width flag .It Fl a 耳に痛いものもそうでないものも、格言をすべて含めた リストから選びます (耳に痛いものについての詳細は .Fl o オプションを参照してください)。 .It Fl D 更なるデバッグ出力を有効にします。 本オプションを複数回指定すると、出力が更に冗長になります。 -DDEBUG 付きでコンパイルされている場合のみ、利用可能です。 .It Fl e すべての fortune のファイルが同一サイズであることを仮定します (複数ファイルの扱いについての下記の解説を参照してください)。 .It Fl f 検索されるファイルの一覧を表示し、格言は表示しません。 .It Fl l 長めの格言に限ります。 .It Fl m 正規表現 -.Ar pettern +.Ar pattern に合致する格言を表示します。 正規表現のパターンの記述方法については .Xr regex 3 を参照してください。 .It Fl o 耳に痛い格言に限り、 その中から選んで出力します。 .Bf -symbolic ぜひ、ぜひ、ぜひとも、 耳に痛い格言を喜んで 受け入れられる気分であると心の底から確信しているときに限って、 耳に痛そうな格言を指定して下さい (そして、 もし受け入れられない気分のときなら、出てきた文言についてわれわれに 文句を言うことをせず、黙って .Fl o オプションの使用を止めるはずですよね)。 .Ef .Bd -unfilled -offset indent \&...人類愛について基本的かつ支配的な哲学を心に留めるよう にしよう、これは以下の言葉に簡潔にまとめられている: 心からの笑いは健康のためによい -- 必要とあらば全人類を 犠牲にしたとしても。 --H. Allen Smith, "Rude Jokes" .Ed .It Fl s 短めの格言に限ります。 .It Fl i .Fl m オプションで指定された (正規表現の) パターンについて、 大文字小文字の別を無視します。 .It Fl w 終了前に、メッセージの文字数に応じた長さから算出される時間だけ停止します。 ログアウト手順に組み込んだ場合、 スクリーンがクリアされる前に メッセージを読み取る時間を確保するのに役に立ちます。 .El .Pp 別の格言集の使用を指定することができます。この指定では、 特定のファイル、1 つ以上のファイルを含むディレクトリ、 もしくは標準データベース全てを使用するという .Em all という特殊語のいずれかを指定可能です。 これらの前にはパーセンテージを付けることが可能です。 パーセンテージは、0 以上 100 以下の数字 .Ar N に .Ar % を続けたものです。 パーセンテージを指定した場合、ある格言が .Ar N パーセントの確率でそのファイルあるいはディレクトリから選択されます。 パーセントの合計が 100 に満たず、パーセント無しの指定がある場合、 残りのパーセントが、パーセント無しのファイルとディレクトリに割当てられます。 この場合、パーセント無しのものが選択される確率は、これらのサイズに依存します。 .Pp 例として、2 個のデータベース .Em funny と .Em not-funny とを用います。この時 .Em funny が 2 倍の大きさとするならば、 .Bd -literal -offset indent fortune funny not-funny .Ed .Pp と指示すると 3 回に 2 回の割合で .Em funny から選択されます。 コマンドを .Bd -literal -offset indent fortune 90% funny 10% not-funny .Ed .Pp のように指定すると 90 % を .Em funny から選び出します (この場合残りが 10% であることが明らかなので .Dq 10% not-funny は不要です)。 .Fl e オプションを指定すると、全てのファイルから均等に選び出します; すなわち .Bd -literal -offset indent fortune \-e funny not-funny .Ed .Pp とするのは .Bd -literal -offset indent fortune 50% funny 50% not-funny .Ed .Pp と指定するのと同等です。 .Sh 関連ファイル .Bl -tag -width Pa -compact .It Pa /usr/games/fortune .Pp .It Pa /usr/share/games/fortune/* fortune のデータベース (名前が .Dq -o で終るファイルには、 .Bf -symbolic 耳に痛い .Ef 格言が含まれます) .El .Sh 関連項目 .Xr regcomp 3 , .Xr regex 3 , .Xr strfile 8 .\" Amended by kuma, based on fortune.6,v 1.2 1998/02/24 14:51:07 horikawa Stab .\"ZZZ: 3.0-RELEASE complianted by N. Kumagai, 99-1-16 diff --git a/ja_JP.eucJP/man/man6/random.6 b/ja_JP.eucJP/man/man6/random.6 index 59f37857fb..f7cc4f9600 100644 --- a/ja_JP.eucJP/man/man6/random.6 +++ b/ja_JP.eucJP/man/man6/random.6 @@ -1,121 +1,121 @@ .\" Copyright (c) 1994 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgment: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)random.6 8.2 (Berkeley) 3/31/94 .\" %FreeBSD: src/games/random/random.6,v 1.7 2003/02/23 01:44:14 ru Exp % .\" $FreeBSD$ .\" -.Dd March 31, 1994 +.Dd February 8, 2003 .Dt RANDOM 6 .Os .Sh 名称 .Nm random .Nd ファイルからのランダムな行選択、あるいは乱数 .Sh 書式 .Nm random .Op Fl elrUuw .Op Fl f Ar filename .Op Ar denominator .Sh 解説 .Nm は 2 つの異なる動作モードがあります。 デフォルトは、標準入力の行を読み取り、 1 / .Ar denominator の確率でそれらを標準出力へ書き込むことです。 この動作モードでのデフォルトの .Ar denominator は 2 であり、各行が表示される確率は 50/50 です。 .Pp 第 2 の動作モードは、 .Ar filename からファイルを読み取り、ファイルの中身をかき混ぜ、 これを標準出力へ送るというものです。 ファイル内容は、改行または .Xr isspace 3 で判定される空白文字をもとに、かき混ぜられます。 この動作モードでのデフォルトの .Ar denominator は 1 であり、各行は表示されますが .Xr random 3 順となります。 .Pp オプションは以下の通りです。 .Bl -tag -width Ds .It Fl e .Fl e オプションが指定されていると、 .Nm は何も読み書きせず、 0 から .Ar denominator \&- 1 までの整数からランダムに選んだ値を返り値として そのまま終了します。 .It Fl f Ar filename .Fl f オプションは、読み取る .Ar filename を指定するために使用されます。 .Ar filename が .Sq Fl の場合、標準入力が使用されます。 .It Fl l 改行で入力をかき混ぜます (デフォルト)。 .It Fl r .Fl r オプションは、出力がバッファリングされないことを保証します。 .It Fl U かき混ぜた出力を作成するときに、同じ行や語を再利用して良いことを .Xr random 6 に指示します。 .It Fl u 同じ行または語をファイルから選択しないよう .Xr random 6 に指示します (デフォルト)。 入力に同じトークンが複数個ある場合には一意性を保証しませんが、 同じトークンが複数回選択されることは妨げます。 .It Fl w 改行ではなく、 .Xr isspace 3 で区切られる語を、かき混ぜます。 .El .Sh 関連項目 .Xr random 3 , .Xr fortune 6 .Sh バグ トークン表示時にはインデックスを使用していません。 このため、大きなファイル (10MB+) では遅くなるでしょう。 性能の影響を受ける領域でこれを使用するのでしたらば、工夫したでしょう。 しかしながら、小さなファイルに対しては十分に高速で効率的です。 .Sh 歴史 行や語をかき混ぜる機能は、2003 に .An "Sean Chittenden" Aq seanc@FreeBSD.org が追加しました。 diff --git a/ja_JP.eucJP/man/man7/operator.7 b/ja_JP.eucJP/man/man7/operator.7 index 83cb54ba39..96eec620f1 100644 --- a/ja_JP.eucJP/man/man7/operator.7 +++ b/ja_JP.eucJP/man/man7/operator.7 @@ -1,69 +1,69 @@ .\" Copyright (c) 1989, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)operator.7 8.1 (Berkeley) 6/9/93 .\" %FreeBSD: src/share/man/man7/operator.7,v 1.6 2003/02/24 22:53:23 ru Exp % .\" .\" $FreeBSD$ .\" -.Dd June 9, 1993 +.Dd January 22, 2003 .Dt OPERATOR 7 .Os .Sh 名称 .Nm operator .Nd C 言語の演算子の優先順位および評価の順序 -.Sh 書式 +.Sh 解説 .Bd -ragged -offset indent -compact .Bl -column "= += -= *= /= %= <<= >>= &= ^= |=" .It Sy "演算子 結合の順序" .It "-------- ------------" .It "() [] -> . 左から右へ" .It "! ~ ++ -- - (type) * & sizeof 右から左へ" .It "* / % 左から右へ" .It "+ - 左から右へ" .It "<< >> 左から右へ" .It "< <= > >= 左から右へ" .It "== != 左から右へ" .It "& 左から右へ" .It "^ 左から右へ" .It "| 左から右へ" .It "&& 左から右へ" .It "|| 左から右へ" .It "?: 右から左へ" .It "= += -= *= /= %= <<= >>= &= ^= |= 右から左へ" .It ", 左から右へ" .El .Ed .Sh 関連ファイル .Bl -tag -width /usr/share/misc/operator -compact .It Pa /usr/share/misc/operator .El .\"ZZZ: 3.0-RELEASE compliant by N. Kumagai 99-1-21 diff --git a/ja_JP.eucJP/man/man8/atmarpd.8 b/ja_JP.eucJP/man/man8/atmarpd.8 index 66e5cabcb0..0ed8d3d28e 100644 --- a/ja_JP.eucJP/man/man8/atmarpd.8 +++ b/ja_JP.eucJP/man/man8/atmarpd.8 @@ -1,174 +1,174 @@ .\" .\" =================================== .\" HARP | Host ATM Research Platform .\" =================================== .\" .\" .\" This Host ATM Research Platform ("HARP") file (the "Software") is .\" made available by Network Computing Services, Inc. ("NetworkCS") .\" "AS IS". NetworkCS does not provide maintenance, improvements or .\" support of any kind. .\" .\" NETWORKCS MAKES NO WARRANTIES OR REPRESENTATIONS, EXPRESS OR IMPLIED, .\" INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY .\" AND FITNESS FOR A PARTICULAR PURPOSE, AS TO ANY ELEMENT OF THE .\" SOFTWARE OR ANY SUPPORT PROVIDED IN CONNECTION WITH THIS SOFTWARE. .\" In no event shall NetworkCS be responsible for any damages, including .\" but not limited to consequential damages, arising from or relating to .\" any use of the Software or related support. .\" .\" Copyright 1994-1998 Network Computing Services, Inc. .\" .\" Copies of this Software may be made, however, the above copyright .\" notice must be reproduced on all copies. .\" .\" @(#) %FreeBSD: src/usr.sbin/atm/atmarpd/atmarpd.8,v 1.6 2002/07/14 14:42:26 charnier Exp % .\" $FreeBSD$ .\" .\" .Dd August 4, 1998 .Dt ATMARPD 8 .Os .Sh 名称 .Nm atmarpd .Nd "ATMARP/SCSP インタフェースデーモン" .Sh 書式 .Nm .Op Fl d .Op Fl l Aq Ar log_file .Aq Ar net_intf .Ar ... .Sh 解説 .Nm ユーティリティは、 Host ATM Research Platform (HARP) ネットワーキングソフトウェア用に、 カーネル内の ATMARP サーバと SCSP デーモンとの間のインタフェースを提供します。 .Nm ユーティリティは ATMARP キャッシュをカーネルから定期的に読み込み、 更新されたエントリを .Xr scspd 8 に渡すことにより、 リモートサーバに伝播させます。 .Nm はまた リモートサーバが .Xr scspd 8 へ送った更新エントリを受け取り、 新規エントリと、現在のエントリよりも新しいエントリを、 カーネル内の ATMARP キャッシュにインストールします。 ATMARP キャッシュが同期される前に、 .Nm と .Xr scspd 8 の両方が走行している必要があります。 .Pp .Nm が実行を開始すると、 自己に与えられたコマンドラインを解析し、バックグラウンドに移行します。 .Pp コマンドラインオプションは次の通りです: .Bl -tag -width "-l " .It Fl l Aq Ar log_file ログメッセージをシステムのログではなく .Aq Ar log_file という名前のファイルに書き込むように、 .Nm に指定します。 .It Fl d .Nm をデバッグモードで実行することを指定します。 デバッグモードでは、 .Nm はバックグラウンドにはなりません。 ログメッセージは、 ログファイルではなく、標準出力に書かれます。 .It Aq Ar net_intf ホストが ATMARP サービスを提供し、 SCSP を使用してキャッシュを同期する ネットワークインタフェース (複数可) を指定します。 複数のネットワークインタフェース名を指定した場合、 指定した全インタフェース上のサーバのために、 .Nm は .Xr scspd 8 に対するインタフェースを提供します。 .El .Sh シグナル処理 次のシグナルを使用して .Nm を制御できます: .Bl -tag -width indent .It Dv SIGINT デバッグ情報をファイルにダンプします。 .Dv SIGINT を受信すると、 .Nm は制御ブロックのサマリをテキストファイルにダンプします ( .Sx 関連ファイル 参照)。 .El .Sh 関連ファイル .Bl -tag -width indent .It Xo .Sm off .Pa /tmp/atmarpd. .Aq Ar pid .Pa \&. .Aq Ar seq .Pa .out .Sm on .Xc デバッグ情報をダンプするファイルの名前です。 .Nm ユーティリティが .Dv SIGINT シグナルを受信すると、 制御ブロックのサマリをこのファイルに書き込みます。 .Aq Ar pid はデーモンのプロセス ID であり、 .Aq Ar seq はダンプがとられるごとに増えるシーケンス番号です。 .El .Sh 関連項目 .Xr atm 8 , .Xr scspd 8 .Rs .%T "Classical IP and ARP over ATM" .%O "RFC 1577" .Re .Rs .%T "Classical IP and ARP over ATM" .%O "RFC 2225" .Re .Rs .%T "Server Cache Synchronization Protocol (SCSP)" .%O "RFC 2334" .Re .Rs .%T "A Distributed ATMARP Service Using SCSP" .%O "draft\-ietf\-ion\-scsp\-atmarpd\-00.txt" .Re .Sh バグ あるネットワークインタフェースに対し 複数の .Nm のインスタンスが同時に実行されると、 予測できない結果となります。 .Pp バグは .Aq harp\-bugs@magic.net に報告してください。 -.Sh 著作権 +.Sh COPYRIGHT Copyright (c) 1994-1998, Network Computing Services, Inc. .Sh 作者 .An John Cavanaugh , Network Computing Services, Inc. .An Mike Spengler , Network Computing Services, Inc. .An Joe Thomas , Network Computing Services, Inc. .Sh 謝辞 本ソフトウェアは、 Defense Advanced Research Projects Agency (DARPA) の協力により開発されました。 .Sh 日本語訳 .An 堀川和雄 Aq horikawa@jp.FreeBSD.org diff --git a/ja_JP.eucJP/man/man8/bootparamd.8 b/ja_JP.eucJP/man/man8/bootparamd.8 index 073a050562..242b1274e4 100644 --- a/ja_JP.eucJP/man/man8/bootparamd.8 +++ b/ja_JP.eucJP/man/man8/bootparamd.8 @@ -1,75 +1,75 @@ .\" @(#)bootparamd.8 .\" %FreeBSD: src/usr.sbin/bootparamd/bootparamd/bootparamd.8,v 1.14 2002/07/14 14:42:38 charnier Exp % .\" .\" $FreeBSD$ -.Dd November 8, 1989 +.Dd December 14, 2000 .Dt BOOTPARAMD 8 .Os .Sh 名称 .Nm bootparamd .Nd ブートパラメータサーバ .Sh 書式 .Nm .Op Fl ds .Op Fl r Ar router .Op Fl f Ar file .Sh 解説 .Nm bootparamd ユーティリティは、 .Xr diskless 8 クライアントの起動時に必要な情報を提供するサーバプロセスです。 .Pa /etc/bootparams ファイルの内容を参照します。 .Pp このバージョンでは .Pa /etc/bootparams ファイルにおいてホストの別名を使う事ができます。 起動中のクライアントが発行した .Em whoami リクエストに対し返されるホスト名は .Pa /etc/bootparams 中の名前であり、正式名ではありません。 この方法により、長いホスト名を扱う事のできないマシンに対しても、 起動に失敗する事の無い短い名前を答える事ができます。 .Sh オプション .Bl -tag -width Fl .It Fl d デバッグ情報を出力します。 .It Fl s デバッグ情報を .Xr syslog 3 にて記録します。 .It Fl r Ar router デフォルトルータを、ホスト名もしくは IP アドレスで指定します。 無指定時のデフォルトルータはサーバが動作しているマシンになります。 .It Fl f Ar file .Pa /etc/bootparams の代わりに使用するブートパラメータファイル名を指定します。 .El .Sh 関連ファイル .Bl -tag -width /etc/bootparams -compact .It /etc/bootparams デフォルトのブートパラメータファイル .El .Sh 使用例 ディスクレス SunOS/Xkernel SPARCstation がネットブートするとき、 ブートした SunOS カーネルはオール 0 アドレスに対してブロードキャストします。 SunOS カーネルは、応答を受け取るまで停止します。 この動作に対応するために、 オール 0 ブロードキャストに応答するエイリアスアドレスを追加します。 つまり、次のような設定を、 .Nm サーバの適切なネットワークインタフェースに追加します: .Ql "ifconfig xl0 192.168.200.254 netmask 255.255.255.255 broadcast 192.168.200.0 alias 。 もちろん、エイリアスアドレスは、使用可能であるように空いている必要があります。 .Sh 関連項目 .Xr syslog 3 , .Xr bootparams 5 , .Xr diskless 8 .Sh バグ .Xr syslog 3 への出力情報が多少冗長すぎるかもしれません。 .Sh 作者 .An Klas Heggemann Aq klas@nada.kth.se が作成しました。 diff --git a/ja_JP.eucJP/man/man8/config.8 b/ja_JP.eucJP/man/man8/config.8 index 6f8545dc7f..40dedeb0de 100644 --- a/ja_JP.eucJP/man/man8/config.8 +++ b/ja_JP.eucJP/man/man8/config.8 @@ -1,237 +1,237 @@ .\" Copyright (c) 1980, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)config.8 8.2 (Berkeley) 4/19/94 .\" %FreeBSD: src/usr.sbin/config/config.8,v 1.41 2004/08/07 04:19:37 imp Exp % .\" .\" $FreeBSD$ .\" -.Dd April 19, 1994 +.Dd July 4, 2001 .Dt CONFIG 8 .Os .Sh 名称 .Nm config .Nd システムを構築するために必要なファイルの作成 .Sh 書式 .Nm .Op Fl gp .Op Fl d Ar destdir .Ar SYSTEM_NAME .Sh 解説 これは古いバージョンの .Nm ユーティリティです。 このプログラムは、古いオートコンフィギュレーションスキームを理解します。 このスキームは HP300, i386, DECstation やその派生プラットフォームにて 使用されます。 新しいバージョンの .Nm は SPARC プラットフォームで使用されます。 あなたが使用しているアーキテクチャに適合したバージョンの .Nm のみがあなたのマシンにインストールされているでしょう。 .Pp .Nm ユーティリティは、システムの構成を記述した設定ファイル .Ar SYSTEM_NAME にもとづいてシステムを構築するために必要なファイルを作成します。 別のファイルが、 .Nm に対し、 システム生成に必要なファイルと、 構成依存ファイルセットにより追加されるファイルとを指示します。 構成依存ファイルセットは、固有マシン用代替ファイルを指定します (以降に示す .Sx 関連ファイル を参照)。 .Pp オプションとオペランドしては以下のものがあります: .Bl -tag -width ".Ar SYSTEM_NAME" .It Fl d Ar destdir デフォルトの出力ディレクトリの代わりに、 .Ar destdir に出力します。 .Nm は与えられたディレクトリに .Ar SYSTEM_NAME を追加しないことに注意してください。 .It Fl g システムのデバッグのための設定をします。 .It Fl p プロファイリングを行うシステムを構築します。プロファイルを行うものは例えば .Xr kgmon 8 や .Xr gprof 1 などです。 .Fl p オプションを 2 度以上指定すると、 .Nm はより詳細なプロファイリングを行うシステムを構築します。 .It Ar SYSTEM_NAME .Ar SYSTEM_NAME はシステム設定ファイルの名前であり、システム設定ファイル にはデバイスの仕様、構築するシステムのオプション、 その他のシステムパラメータの記述をします。 .El .Pp .Nm ユーティリティはシステムソースの .Pa conf サブディレクトリで起動します (通常 .Pa /sys/ Ns Va ARCH Ns Pa /conf ) 。ただし .Va ARCH には .Fx がサポートしているアーキテクチャの一つが入ります。 .Nm ユーティリティは必要により .Pa ../compile/ Ns Ar SYSTEM_NAME か、または .Fl d オプションで指定されたディレクトリ を作成し、そこにすべての出力ファイルを置きます。 .Nm の出力は多くのファイルです; .Tn i386 の場合は次のようなファイルになります: .Pa ioconf.c はシステムに接続された I/O デバイスの記述です; .Pa Makefile は .Xr make 1 がシステム構築に使用するファイルです; ヘッダファイルはシステムに組み込まれる多くのデバイスに関する定義です。 .Pp .Nm の実行後は、 .Dq Li make depend を Makefile が作成されたディレクトリで実行する必要があります。 .Nm ユーティリティは正常終了すると、これを促すメッセージ表示を行います。 .Pp .Nm が、これとは異なるエラーメッセージ表示を行った場合には、 設定ファイルの記述の誤りを修正し、再度 .Nm を実行する必要があります。 コンフィギュレーションでエラーとなったシステムをコンパイルしようとしても、 おそらく失敗するでしょう。 .Pp 設定ファイル中に .Cd "options INCLUDE_CONFIG_FILE" を指定した場合、 該当ファイル全体が作成されるカーネルに埋め込まれます。 これは、 .Xr strings 1 によって該当ファイルをカーネルから引き出す事が出来ることを意味します: 構成情報を抽出するには以下のコマンドを使用してください: .Pp .Dl "strings -n 3 kernel | sed -n 's/^___//p'" .Sh デバッグカーネル .Dq デバッグ カーネルをコンパイルすることはシステムにひどく負荷を掛けるため、 伝統的な .Bx カーネルはシンボルを除いてコンパイルされてきました。 デバッグカーネルは全てのソースファイルの完全なシンボルを持っているため、 経験を積んだカーネルプログラマが問題の原因を解析できるようになります。 .Bx 4.4 Lite 以前からあったデバッガは通常のカーネルからはあまり情報を 見つけられませんでした; .Xr gdb 1 は通常のカーネルからはほとんど情報を得ることはできず、 意義のある解析を行なうには、デバッグカーネルが必要です。 .Pp 歴史と時間、スペースの問題で、 .Fx はデフォルトではデバッグカーネルを 構築しません。デバッグカーネルは構築に 30% 近く長く掛かり、 デバッグ用でないカーネルでは約 6 MB で済むところを、 構築用ディレクトリに約 30 MB のディスク容量を必要とします。 デバッグカーネルはデバッグ用でないカーネルが約 2MB であるのに対して、 約 11 MB のサイズになります。このスペースはルートファイルシステムと 動作時のメモリの両方に効いてきます。 デバッグカーネルを作るには .Fl g オプションを使います。このオプションを用いると、 .Nm はカーネル構築ディレクトリに 2 つのファイルを構築します: .Bl -bullet .It .Pa kernel.debug が完全なデバッグカーネルです。 .It .Pa kernel はカーネルのデバッグシンボルを削除したコピーです。 このカーネルは通常のデバッグ用でないカーネルと同じ物です。 .El .Pp 現在はデバッグカーネルをインストールしてブートする意義はあまりありません。 なぜならシンボルを利用できるツールはオンラインでは動かないためです。 それゆえ、デバッグカーネルをインストールするには 2 つのオプションがあります。 .Bl -bullet .It .Dq Li "make install" .Pa kernel をルートファイルシステムにインストールします。 .It .Dq Li "make install.debug" .Pa kernel.debug をルートファイルシステムにインストールします。 .El .Sh 関連ファイル .Bl -tag -width ".Pa /sys/ Ns Va ARCH Ns Pa /compile/ Ns Ar SYSTEM_NAME" -compact .It Pa /sys/conf/files システム生成に必要な共通のファイルのリスト .It Pa /sys/conf/Makefile. Ns Va ARCH .Va ARCH 用の一般的な makefile .It Pa /sys/conf/files. Ns Va ARCH .Va ARCH 特有のファイルのリスト .It Pa /sys/ Ns Va ARCH Ns Pa /compile/ Ns Ar SYSTEM_NAME .Va ARCH 上の .Ar SYSTEM_NAME システム固有のデフォルトカーネル構築ディレクトリ .El .Sh 関連項目 .Xr config 5 .Pp セクション 4 にある、デバイスのマニュアルの .Sx 書式 の部分。 .Rs .%T "Building 4.3 BSD UNIX System with Config" .Re .Sh バグ エラーメッセージにおいて報告される行番号は 1 行ずれます。 .Sh 歴史 .Nm ユーティリティは .Bx 4.1 から登場しました。 diff --git a/ja_JP.eucJP/man/man8/faithd.8 b/ja_JP.eucJP/man/man8/faithd.8 index 294e8117f2..204e777361 100644 --- a/ja_JP.eucJP/man/man8/faithd.8 +++ b/ja_JP.eucJP/man/man8/faithd.8 @@ -1,414 +1,414 @@ .\" $KAME: faithd.8,v 1.37 2002/05/09 14:21:23 itojun Exp $ .\" .\" Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. .\" All rights reserved. .\" .\" 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. .\" 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. Neither the name of the project nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``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 PROJECT OR CONTRIBUTORS 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.sbin/faithd/faithd.8,v 1.18 2004/06/04 19:24:35 ru Exp % .\" .\" $FreeBSD$ -.Dd January 27, 2000 +.Dd May 17, 1998 .Dt FAITHD 8 .Os .Sh 名称 .Nm faithd .Nd FAITH IPv6/v4 変換デーモン .Sh 書式 .Nm .Op Fl dp .Op Fl f Ar configfile .Ar service .Op Ar serverpath Op Ar serverargs .Sh 解説 .Nm ユーティリティは IPv6 から IPv4 への TCP リレー機能を提供します。 .Nm は IPv4/v6 デュアルスタックルータ上で起動しなければなりません。 .Pp .Tn TCPv6 トラフィックが見つかると、 .Nm はその .Tn TCPv6 トラフィックを .Tn TCPv4 にリレーします。 リレーする .Tn TCPv4 コネクションの終点は、元の .Tn IPv6 終点の末尾 4 オクテットから決定されます。 例えば、 .Nm 用に .Li 3ffe:0501:4819:ffff:: が予約されていて、 .Tn TCPv6 終点アドレスが .Li 3ffe:0501:4819:ffff::0a01:0101 なら、このトラフィックは IPv4 の終点 .Li 10.1.1.1 に向けてリレーされます。 .Pp .Nm による変換サービスを用いるには、 IPv4 アドレスをマップするための IPv6 アドレスプレフィックスを 予約しておく必要があります。 カーネルは、そこで予約した IPv6 アドレスプレフィックスへの すべての TCP コネクションを、 .Xr route 8 を用いて疑似インタフェース .Xr faith 4 にルーティングするように、適切に構築されていなければなりません。 また、 .Xr sysctl 8 を用いて .Dv net.inet6.ip6.keepfaith を .Dv 1 に設定しておくべきです。 .Pp ルータは、予約された .Tn IPv6 アドレスプレフィックス行きのすべての TCP トラフィックを捕まえるように 設定しなければなりません。このためには .Xr route 8 と .Xr sysctl 8 のコマンドを使用します。 .Pp .Nm ユーティリティは、名前からアドレスへの特別な変換機構を必要とし、 ホスト名から特別な .Tn IPv6 アドレスプレフィックスへ解決します。 小規模なインストールでは、 .Xr hosts 5 を使用してください。 大規模なインストールでは、 特別なアドレス変換をサポートする DNS サーバが有用でしょう。 .Nm totd と呼ばれる実装が .Pa http://www.vermicelli.pasta.cs.uit.no/ipv6/software.html で入手可能です。 変換された DNS レコードが一般の DNS 群に伝播されないよう、注意してください。 非常に有害です。 .Ss デーモンモード .Nm がスタンドアロンプログラムとして起動されると、 .Nm は自分自身をデーモン化します。 .Nm ユーティリティは .Tn TCPv6 のポート .Ar service を listen します。 ポート .Ar service への .Tn TCPv6 トラフィックを見付けると、コネクションをリレーします。 .Pp .Nm が TCP ポート .Ar service を listen するので、 .Xr inetd 8 や他の標準的な仕組みを用いて、そのルータ上で .Ar service ポートを使うローカルな TCP デーモンを動作させることはできません。 .Nm に対して .Ar serverpath を指定することで、 ルータ上でローカルデーモンを走らせることができます。 終点アドレスがローカルのインターネットアドレスであれば、 .Nm ユーティリティは .Ar serverpath においてローカルデーモンを起動します。 それ以外の場合、 .Nm は IPv4 TCP への変換を行います。 ローカルデーモンの引数は .Ar serverargs を用いて指定することができます。 .Pp 次のオプションが使用可能です: .Bl -tag -width indent .It Fl d .Xr syslog 3 を用いてデバッグ情報を出力します。 .It Fl f Ar configfile アクセス制御用の設定ファイルを指定します。 後述を参照してください。 .It Fl p IPv4 TCP コネクションを最終の終点向けにリレーする際、 .Nm はソースポートとして特権 TCP ポートを使用します。 .Xr ftp 1 をリレーする際は 本オプションは不要です。 そのための特別なプログラムコードが含まれています。 .El .Pp .Nm ユーティリティは通常の TCP データも帯域外 TCP データもリレーします。 TCP half close をエミュレートすることも可能です。 .Nm ユーティリティは .Xr ftp 1 で用いられるプロトコルに対して、特別なサポートを行います。 FTP プロトコルを転送する際は、 .Nm は、 .Li PORT/LPRT/EPRT コマンドおよび .Li PASV/LPSV/EPSV コマンドにおけるネットワークレベルアドレスも変換します。 .Pp アクティブでないセッションは 30 分で切断します。 これは、使わなくなったセッションのせいでリソースが消費されるのを 防ぐためです。 サービスによってはこの機能は適切でないかもしれません。 (この機能をコンフィギュレーション可能にすべきでしょうか?) .Ss inetd モード .Nm が .Xr inetd 8 から起動されると、 .Nm ユーティリティは標準入力から渡されるコネクションを扱います。 コネクションの終点が、予約した IPv6 アドレスプレフィックスの範囲内の場合、 .Nm はコネクションをリレーします。 それ以外の場合、 .Nm はサービスに対応する .Xr telnetd 8 のようなデーモンを起動し、 .Xr inetd 8 から渡されるコマンド引数を使用します。 .Pp .Nm は、ローカルな TCP ポート番号を元に動作モードを決定し、 必要な時/可能な時には特別なプロトコル処理を有効にします。 例えば、 .Nm が FTP ポート上で .Xr inetd 8 から起動されると、これは FTP リレーとして動作します。 .Pp この動作モードでは、 .Xr inetd 8 中に .Nm 用の特別なサポートを必要とします。 .Ss アクセス制御 悪意あるアクセスを防ぐため、 .Nm は単純なアドレスベースのアクセス制御を実装しています。 .Pa /etc/faithd.conf (または .Fl f で指定した .Ar configfile ) で、 .Nm は望まないトラフィックの中継を防ぎます。 .Pa faithd.conf は、次の書式のディレクティブを含みます: .Bl -bullet .It .Ar src Ns / Ns Ar slen Cm deny Ar dst Ns / Ns Ar dlen .Pp 問い合わせの始点アドレスが .Ar src Ns / Ns Ar slen に合致する場合で、変換後の終点アドレスが .Ar dst Ns / Ns Ar dlen に合致する場合、接続を拒否します。 .It .Ar src Ns / Ns Ar slen Cm permit Ar dst Ns / Ns Ar dlen .Pp 問い合わせの始点アドレスが .Ar src Ns / Ns Ar slen に合致する場合で、変換後の終点アドレスが .Ar dst Ns / Ns Ar dlen に合致する場合、接続を許可します。 .El .Pp これらのディレクティブは順番に評価され、 最初に合致するエントリが効果を持ちます。 合致しないと (これがルールセットの最後である場合) トラフィックは拒否されます。 .Pp inetd モードでは、 .Xr inetd 8 のアクセス制御機能でトラフィックをフィルタ可能です。 .Sh 診断 成功すると .Nm ユーティリティは .Dv EXIT_SUCCESS .Pq 0 で終了し、エラーがある場合は .Dv EXIT_FAILURE .Pq 1 で終了します。 .Sh 使用例 .Nm を起動する前に、 .Xr faith 4 インタフェースを適切に設定しておく必要があります。 .Bd -literal -offset # sysctl net.inet6.ip6.accept_rtadv=0 # sysctl net.inet6.ip6.forwarding=1 # sysctl net.inet6.ip6.keepfaith=1 # ifconfig faith0 up # route add -inet6 3ffe:501:4819:ffff:: -prefixlen 96 ::1 # route change -inet6 3ffe:501:4819:ffff:: -prefixlen 96 -ifp faith0 .Ed .Ss デーモンモードのサンプル .Li telnet サービスを変換し、そしてローカルな telnet サービスを提供しない場合は、 次のように .Nm を起動します: .Bd -literal -offset # faithd telnet .Ed .Pp もし .Pa /usr/libexec/telnetd にある .Xr telnetd 8 によるローカル telnet サービスを提供したい場合は、 次のコマンドラインを使用します: .Bd -literal -offset # faithd telnet /usr/libexec/telnetd telnetd .Ed .Pp ローカルデーモンに追加の引数を渡したい場合は: .Bd -literal -offset # faithd ftp /usr/libexec/ftpd ftpd -l .Ed .Pp 他の使用例です。 サービスが始点ポート範囲をチェックする場合には .Fl p が必要かもしれません。 .Bd -literal -offset # faithd ssh # faithd telnet /usr/libexec/telnetd telnetd .Ed .Ss inetd モードのサンプル .Xr inetd.conf 5 に次の行を追加します。 構文はオペレーティングシステムによって様々でしょう。 .Bd -literal -offset telnet stream tcp6/faith nowait root faithd telnetd ftp stream tcp6/faith nowait root faithd ftpd -l ssh stream tcp6/faith nowait root faithd /usr/sbin/sshd -i .Ed .Pp .Xr inetd 8 は、listen するソケットをオープンし、 カーネルの TCP リレーサポートを有効化します。 コネクションが到着すると、 .Nm が .Xr inetd 8 から起動されます。 コネクションの終点が、予約した IPv6 アドレスプレフィックスの範囲内の場合、 .Nm はコネクションをリレーします。 それ以外の場合、 .Nm ユーティリティはサービスに対応する .Xr telnetd 8 のようなデーモンを起動します。 .Ss アクセス制御の例 以下に単純な .Pa faithd.conf 設定を示します。 .Bd -literal -offset # 3ffe:501:ffff::/48 からのすべてに変換器の使用を許し、 # 次の IPv4 の終点へ接続させます: # - 10.0.0.0/8 と 127.0.0.0/8 以外のすべて # 他の接続は許しません。 # 3ffe:501:ffff::/48 deny 10.0.0.0/8 3ffe:501:ffff::/48 deny 127.0.0.0/8 3ffe:501:ffff::/48 permit 0.0.0.0/0 .Ed .Sh 関連項目 .Xr faith 4 , .Xr route 8 , .Xr sysctl 8 .Rs .%A Jun-ichiro itojun Hagino .%A Kazu Yamamoto .%T "An IPv6-to-IPv4 transport relay translator" .%B RFC3142 .%O ftp://ftp.isi.edu/in-notes/rfc3142.txt .%D June 2001 .Re .\" .Sh 歴史 .Nm ユーティリティは WIDE Hydrangea IPv6 プロトコルスタックキットで 初めて登場しました。 .\" .Pp KAME プロジェクト (http://www.kame.net/) スタックに 基づく IPv6, IPsec サポートは、 .Fx 4.0 で初めて統合されました。 .Sh セキュリティの考察 .Nm および他の TCP リレーサービス でリレーされたコネクションに対し、 IP アドレスベースの認証を用いるのは大変危険です。 .Pp .Pa faithd.conf もしくは IPv6 パケットフィルタを使用し、 .Nm へのアクセス制限を行うことを、管理者へお勧めします。 これは .Nm を悪意ある者達から防御することであり、 サービス/バンド幅を盗まれないようにすることを意味します。 IPv6 の終点アドレスについては、 .Xr route 8 を用いて、 .Xr faith 4 を指す経路エントリを注意深く設定することで、制限可能です。 IPv6 の始点アドレスについては、 パケットフィルタでフィルタする必要があります。 .Sx 関連項目 に列挙した文書に、本件に関する更なる議論が記述されています。 diff --git a/ja_JP.eucJP/man/man8/fdcontrol.8 b/ja_JP.eucJP/man/man8/fdcontrol.8 index 32e7133bcf..adf88b1844 100644 --- a/ja_JP.eucJP/man/man8/fdcontrol.8 +++ b/ja_JP.eucJP/man/man8/fdcontrol.8 @@ -1,336 +1,336 @@ .\" -.\" Copyright (C) 1994 by Joerg Wunsch, Dresden +.\" Copyright (C) 1994, 2001 by Joerg Wunsch, Dresden .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``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(S) 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.sbin/fdcontrol/fdcontrol.8,v 1.20 2004/07/02 23:12:41 ru Exp % .\" .\" $FreeBSD$ .Dd December 25, 2001 .Os .Dt FDCONTROL 8 .Sh 名称 .Nm fdcontrol .Nd フロッピディスクパラメータの表示と変更 .Sh 書式 .Nm .Op Fl F .Op Fl d Ar dbg .Op Fl f Ar fmt .Op Fl s Ar fmtstr .Op Fl v .Ar device .Sh 解説 .Nm ユーティリティは、 .Ar device で指定した .Xr fdc 4 ドライバの実行時の振る舞いを変更します。 .Pp 下位に位置するデバイスハードウェアの設定と 現在のデバイス密度設定について、 ドライバに登録された情報を返す問い合わせコマンド、 デバッグレベル操作コマンド、 デバイス密度設定調整コマンドが実装されています。 カーネル設定の変更の全ては、(デバイスドライバにより) スーパユーザに操作が制限されていますが、 問い合わせリクエストの全ては、 .Ar device への読み込みアクセス権だけを必要とします。 .Pp 引数 .Ar device には、例えば .Pa /dev/fd0 のように、常にフルパス名を与える必要があります。 .Ss 問い合わせコマンド .Nm ユーティリティをオプション引数無しで実行すると、デバイスドライバに 登録されたドライブタイプを返します。 最も簡潔な形式では、ドライブタイプを 1 行で返します。 返す可能性のある値は、 .Dq Li 360K , .Dq Li 1.2M , .Dq Li 720K , .Dq Li 1.44M , .Dq Li 2.88M , .Dq Li unknown です。 この情報の主な目的は、スクリプトからの解釈が容易になることを 想定しています。 .Pp 出力が人間にとってより分かり易くなるように説明を追加するために、 .Fl v を指定することができます。 .Pp フラグ .Fl F を指定することにより、オプション .Fl s Ar fmtstr (下記を参照下さい) の与える入力として適切な形式を返すようになります。 これと .Fl v とをいっしょに指定することで、現在の密度指定に基づく容量を キロバイト単位で示すテキストも加えて返すようになります。 .Ss デバッグ制御 オプション .Dv FDC_DEBUG を付けてドライバ .Xr fdc 4 を構築した (これがデフォルトです) としても、 デバイスデバッグ情報は抑止されたままです。 これは、カーネルメッセージを大量に吐き出す可能性があるためです。 デバッグ情報を出力させるためには、 .Dq Fl d Li 1 とともに .Nm を用いる必要があります。通常、デバッグ情報が必要な デバイスを操作する直前にこの設定をオンにし、操作直後に .Dq Fl d Li 0 でオフにすることになります。 デバッグレベルは、ドライバのグローバルオプションであり、 コマンド .Nm のコマンド行でどの .Ar device を指定したかに関わらず、ドライバ .Xr fdc 4 を用いるドライブ、コントローラのいずれに対しても影響を与えることに 注意して下さい。 .Ss 密度制御 コントロールユーティリティ .Xr fdc 4 は、どのようにデバイス密度の設定を指定するかについて、2 個の異なる オプションをサポートしています。 最初の形式では、 .Fl f Ar fmt を用い、メディアのフォーマットをキロバイト単位で指定します。 下位に位置するドライブタイプにより、指定した値は、 そのドライブにおいて、世の中でよく使われているデバイス密度設定を 表すテーブルと比較し、一致する設定が見つかれば、その設定を 使用します。現在のところ、ドライブタイプ毎に次の値が受理可能です。 .Bl -item .It 2.88M ドライブ、1.44M ドライブ .Bd -ragged -offset indent -compact .TS lB lB lB lB lB lB lB r l l l l l l. KB sectrac secsize ncyls speed heads flags 1721 21 2 (512) 82 500 2 MFM 1476 18 2 (512) 82 500 2 MFM 1440 18 2 (512) 80 500 2 MFM 1200 15 2 (512) 80 500 2 MFM 820 10 2 (512) 82 250 2 MFM 800 10 2 (512) 80 250 2 MFM 720 9 2 (512) 80 250 2 MFM .TE .Ed .It 1.2M ドライブ .Bd -ragged -offset indent -compact .TS lB lB lB lB lB lB lB r l l l l l l. KB sectrac secsize ncyls speed heads flags 1200 15 2 (512) 80 500 2 MFM 1232 8 3 (1024) 77 500 2 MFM 1476 18 2 (512) 82 500 2 MFM 1440 18 2 (512) 80 500 2 MFM 1200 15 2 (512) 80 500 2 MFM 820 10 2 (512) 82 300 2 MFM 800 10 2 (512) 80 300 2 MFM 720 9 2 (512) 80 300 2 MFM 360 9 2 (512) 40 300 2 MFM,2STEP 640 8 2 (512) 80 300 2 MFM .TE .Ed .It 720K ドライブ .Bd -ragged -offset indent -compact .TS lB lB lB lB lB lB lB r l l l l l l. KB sectrac secsize ncyls speed heads flags 720 9 2 (512) 80 250 2 MFM .TE .Ed .It 360K ドライブ .Bd -ragged -offset indent -compact .TS lB lB lB lB lB lB lB r l l l l l l. KB sectrac secsize ncyls speed heads flags 360 9 2 (512) 40 250 2 MFM .TE .Ed .El .Pp 2 番目の形式でデバイス密度を指定するには、 .Fl s Ar fmtstr を使い、各パラメータを詳細にわたり指定します。 引数 .Ar fmtstr は、コンマで区切られた値のリストであり、次の形式です。 .Pp .Sm off .Ar sectrac , secsize , datalen , gap , ncyls , speed , .Ar heads , f_gap , f_inter , offs2 , flags .Sm on .Pp パラメータの意味は次のとおりです。 .Bl -tag -width ".Ar secsize" .It Ar sectrac トラックあたりのセクタ数です。 .It Ar secsize セクタサイズを表す数値です。0 = 128 バイト (または、それ以下)、 1 = 256 バイト、2 = 512 バイト、3 = 1024 バイト。 .It Ar datalen 上記のサイズ数値が 0 のとき、実セクタサイズを表します。 0 以外のサイズ数値のとき、(無視して構わない) 値 0xFF です。 .It Ar gap 読み/書き操作における、GAP 3 パラメータの長さです。 .It Ar ncyls シリンダ数です。 .It Ar speed 転送速度 (毎秒キロバイト単位の) です。 値 250, 300, 500, 1000 を取り得ますが、各ドライブタイプにより、 サポートする値はこのうちの一部になります。 .It Ar heads ヘッド数です。 .It Ar f_gap メディアをフォーマットするときの GAP 3 の長さです。 .It Ar f_inter フォーマットするときに適用するセクタインタリーブです。 0 はインタリーブ無し、1 は 1:1 インタリーブ (以下同様) を 表します。 .It Ar offs2 サイド 2 (ヘッド番号 1 ) におけるセクタ数オフセットです。 通常、セクタの番号付けは両面とも 1 から始まります。 .It Ar flags 次に示すフラグ値のリストです。 .Pp .Bl -tag -width ".Cm +perpend" -compact .It Cm +mfm MFM 符号化を使用。 .It Cm -mfm FM 符号化 (単密度) を使用。 .It Cm +2step 1 シリンダにつき 2 ステップを使用 (80 シリンダのドライブで 40 シリンダのメディアにアクセスするためのもの)。 .It Cm -2step 1 シリンダにつき 2 ステップを使用せず。つまり、ドライブの各物理シリンダに アクセスする。 .It Cm +perpend 垂直記録方式を使用 (2.88 MB メディア用、現在は未サポート)。 .It Cm -perpend 長手方向記録方式を使用。 .El .El .Pp パラメータ指定がないものについては、現在の値が使用されます。 ですから、指定する必要があるものは、実際に変更したいものだけです。 (フラグ .Cm +mfm のようにデフォルトで全ドライブでオンの) フラグビットをオフにするには、先頭にマイナス符号を付けた形式 を明示的に用いる必要があります。 .Sh 例 単純にドライブタイプを問い合わせる。 .Bd -literal -offset indent $ fdcontrol /dev/fd0 1.44M .Ed .Pp 上と同様ですが、冗長な出力をつける。 結果は、 .Em デバイスの密度 ではなく、 .Em ドライブタイプ についてのものであることに注意して下さい。 ですから、この結果は .Ar device で用いられる実際のサブデバイスとは別物です。 .Bd -literal -offset indent $ fdcontrol -v /dev/fd0 /dev/fd0: 1.44M drive (3.5" high-density) .Ed .Pp 密度設定を問い合わせる。 .Bd -literal -offset indent $ fdcontrol -F /dev/fd0 18,512,0xff,0x1b,80,500,2,0x6c,1,0,+mfm .Ed .Pp 冗長フラグをつけると読みやすくなります。 .Bd -literal -offset indent /dev/fd0: 1440 KB media type Format: 18,512,0xff,0x1b,80,500,2,0x6c,1,0,+mfm Sector size: 512 Sectors/track: 18 Heads/cylinder: 2 Cylinders/disk: 80 Transfer rate: 500 kbps Sector gap: 27 Format gap: 108 Interleave: 1 Side offset: 0 Flags .Ed .Pp ここに示すように、パラメータリスト末尾のコンマは省略できます。 .Pp 新しい 1.2M ドライブで 古き良き 160KB 単密度 (FM 符号化) 5.25 インチメディアに アクセスするためには、次のような定義が必要になりそうです。 (実際には全てのコントローラハードウェアが FM 符号化を扱えるわけでは ないことに注意して下さい) .Bd -literal # fdcontrol -s 16,128,0x80,0x2,40,300,,0x10,,,-mfm,+2step /dev/fd1.1 .Ed .Pp たいていの最近のフロッピコントローラに 8 インチドライブを繋げることは、 適当なケーブルがあれば、未だに可能です。 (PC ハードウェアでは、BIOS には 5.25 インチドライブと設定して下さい) 次のようにすれば、伝統的な 128/26/2/77 フォーマットを読み込めます。 .Bd -literal -offset indent fdcontrol -s 26,128,0x80,0x2,77,500,2,0x10,,,-mfm /dev/fd0 .Ed .Sh 関連項目 .Xr fdc 4 .Sh 歴史 .Nm ユーティリティは .Fx 2.0 で現れ、 .Fx 5.0 で大々的に改装されました。 .Sh 作者 本プログラムと本マニュアルページは .An J\(:org Wunsch , Dresden から寄贈されました。 diff --git a/ja_JP.eucJP/man/man8/getfmac.8 b/ja_JP.eucJP/man/man8/getfmac.8 index e448095018..42be79522a 100644 --- a/ja_JP.eucJP/man/man8/getfmac.8 +++ b/ja_JP.eucJP/man/man8/getfmac.8 @@ -1,57 +1,57 @@ .\" Copyright (c) 2002 Networks Associates Technology, Inc. .\" All rights reserved. .\" .\" This software was developed for the FreeBSD Project by Chris .\" Costello at Safeport Network Services and NAI Labs, the Security .\" Research Division of Network Associates, Inc. under DARPA/SPAWAR .\" contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA CHATS .\" research program. .\" .\" 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. .\" 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 names of the authors may not be used to endorse or promote .\" products derived from this software without specific prior written .\" permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``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 AUTHORS OR CONTRIBUTORS 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.sbin/getfmac/getfmac.8,v 1.6 2003/01/15 03:12:48 chris Exp % .\" .\" $FreeBSD$ .Dd June 27, 2002 .Dt GETFMAC 8 .Os .Sh 名称 .Nm getfmac .Nd ファイルシステムオブジェクトの MAC ラベルの表示 .Sh 書式 .Nm .Op Fl h .Op Fl l Ar list,of,labels .Op Ar -.Sh 記述 +.Sh 解説 .Nm ユーティリティは、 指定されたファイルの MAC ラベルのテキスト表現を表示します。 .Sh 関連項目 .Xr mac 3 , .Xr mac_get_file 3 , .Xr mac 4 , .Xr setfmac 8 , .Xr mac 9 diff --git a/ja_JP.eucJP/man/man8/getty.8 b/ja_JP.eucJP/man/man8/getty.8 index a40c518de1..1c8c62bf14 100644 --- a/ja_JP.eucJP/man/man8/getty.8 +++ b/ja_JP.eucJP/man/man8/getty.8 @@ -1,125 +1,125 @@ .\" Copyright (c) 1980, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" from: @(#)getty.8 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/libexec/getty/getty.8,v 1.15 2002/12/23 16:04:50 ru Exp % .\" $FreeBSD$ .\" " -.Dd April 25, 1991 +.Dd June 4, 1993 .Dt GETTY 8 .Os .Sh 名称 .Nm getty .Nd 端末のモードを設定する .Sh 書式 .Nm .Oo .Ar type .Op Ar tty .Oc .Sh 解説 .Nm ユーティリティは、 .Xr init 8 から呼ばれ、tty 回線をオープンしたあと初期化 し、ログイン名を読んで .Xr login 1 を起動します。 .Pp .Ar tty は、端末にどの .Pa /dev の特殊デバイスファイルを使うかを指定します (例:``ttyh0'')。 引数がないか .Sq Fl ならば、tty 回線はファイル記述子 0 としてオープンされます。 .Pp .Ar type は、 .Nm が端末回線を特別に扱うようにするために使われます。 この .Ar type は、 .Xr gettytab 5 のデータベースのインデックスとして使われ、 回線の特徴を決定します。引数が与えられないか、データベースにマッチする テーブルがなければ、 .Em default テーブルが使われます。もし、 .Pa /etc/gettytab ファイルがなければ、システムのデフォルトが使われます。 テーブルにより指示されれば、 .Nm は端末画面をクリアし、 バナーヘッダを表示し、 ログインプロンプトを表示します。通常、このプロンプトのなかに システムのホスト名が含まれます。 .Pp .Nm のデフォルトの行動は、大抵の場合、適当な .Pa gettytab テーブルを作成することによって、回避したり修正したりすることができます。 .Pp .Nm ユーティリティはタイムアウト時間を設定することができます。これによって、 ログイン名がすぐに入力されないような場合に、ダイヤル回線を切断 することができます。 .Sh 診断 .Bl -diag .It "ttyxx: No such device or address." .It "ttyxx: No such file or address." .Pp .Pa ttys ファイルのなかで有効にされていた端末がオープンできませんでした。 必要な回線がシステムに設定されていなかったか、 関係するデバイスがブート時のシステム設定の際に組み込まれなかったか、 もしくは .Pa /dev に特殊ファイルがありませんでした。 .El .Sh 関連ファイル .Bl -tag -width /etc/gettytab -compact .It Pa /etc/gettytab .It Pa /etc/ttys .El .Sh 関連項目 .Xr login 1 , .Xr ioctl 2 , .Xr tty 4 , .Xr gettytab 5 , .Xr ttys 5 , .Xr init 8 .Sh 歴史 .Nm ユーティリティは .At v6 から登場しました。 diff --git a/ja_JP.eucJP/man/man8/ip6fw.8 b/ja_JP.eucJP/man/man8/ip6fw.8 index f7b8ce8f94..51afcb630f 100644 --- a/ja_JP.eucJP/man/man8/ip6fw.8 +++ b/ja_JP.eucJP/man/man8/ip6fw.8 @@ -1,610 +1,610 @@ .\" .\" %FreeBSD: src/sbin/ip6fw/ip6fw.8,v 1.23 2004/07/03 23:01:44 ru Exp % .\" .\" $KAME$ .\" .\" Copyright (C) 1998, 1999, 2000 and 2001 WIDE Project. .\" All rights reserved. .\" .\" 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. .\" 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. Neither the name of the project nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``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 PROJECT OR CONTRIBUTORS 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$ .\" .\" WORD: modifier 修飾子 .\" WORD: fragmented packet フラグメントパケット .\" WORD: encapsulating security payload 暗号ペイロード [IPv6] .\" WORD: no next header 次ヘッダなし [IPv6] .\" WORD: fine points 微調整 .Dd March 13, 2000 .Dt IP6FW 8 .Os .Sh 名称 .Nm ip6fw .Nd IPv6 ファイアフォール用制御ユーティリティ .Sh 書式 .Nm .Op Fl nq .Oo .Fl p Ar preproc .Oo Fl D .Ar macro Ns Op = Ns Ar value .Oc .Op Fl U Ar macro .Oc .Ar pathname .Nm .Op Fl n .Op Fl f | Fl q flush .Nm .Op Fl nq zero .Op Ar number ... .Nm .Op Fl n delete .Ar number ... .Nm .Op Fl aftN list .Op Ar number ... .Nm .Op Fl ftN show .Op Ar number ... .Nm .Op Fl nq add .Op Ar number .Ar action .Op log .Ar proto from .Ar src to .Ar dst .Op via Ar name | ipv6no .Op Ar options .Sh 解説 簡単に設定するために、ルールをファイルに格納して、最初の書式に示すように .Nm に処理させることが可能です。 絶対 .Ar pathname を使用する必要があります。 ファイルは、1 行ずつ読み込まれ、 .Nm ユーティリティへの引数に適用されます。 .Pp オプションとして、プリプロセッサを .Fl p Ar preproc で指定可能であり、ここを .Ar pathname がパイプされます。 有用なプリプロセッサには .Xr cpp 1 と .Xr m4 1 があります。 .Ar preproc の最初の文字がスラッシュ .Pq Ql / で開始しない場合、通常の .Ev PATH の名前検索が実行されます。 .Nm 実行時には (まだ) 全ファイルシステムがマウントされていない環境においては、 注意が必要です (例えば NFS 経由でマウントする場合)。 一度 .Fl p が指定されると、オプションの .Fl D と .Fl U の指定を続けることが可能であり、これらはプリプロセッサに渡されます。 これにより、設定ファイル (ローカルホスト名による条件等) が柔軟になり、 IP アドレス等の頻繁に必要となる引数を集中管理可能となります。 .Pp .Nm コードは、各パケットに対してマッチするものが見つかるまで ルールリストを走査することによって動作します。 ルールにはすべて 2 つの関連のあるカウンタがあります。 パケットカウンタとバイトカウンタです。 これらのカウンタはパケットがルールにマッチするときに 更新されます。 .Pp ルールは、 1 から 65534 までの .Dq 行番号 で序列がつけられており、 ルールを決めたり削除したりするのに使用されます。 ルールは昇順で試され、パケットに最初にマッチしたルールが 適用されます。 複数のルールが同じ行番号を共有できます。 この場合、追加した順番でルールが適用されます。 .Pp 番号をつけずにルールを足した場合、その直前のルールよりも 100 大きい番号がつけられます。 定義されたルール番号の最大値が 65434 よりも大きい場合、 新しく定義されるルールは、ルールの最後に追加されます。 .Pp delete 操作では、それが存在する場合には、 .Ar number を行番号にもつ最初のルールが削除されます。 .Pp list コマンドは、現在のルールセットを出力します。 .Pp show コマンドは `ip6fw -a list' と等価です。 .Pp zero 操作は、ルール番号 .Ar number に関連づけられたカウンタを 0 にします。 .Pp flush 操作は、すべてのルールを削除します。 .Pp .Sq # で始まるコマンドおよび空白だけのコマンドはみな 無視されます。 .Pp 次のルールは必ず存在します: .Bd -literal -offset center 65535 deny all from any to any .Ed .Pp このルールはデフォルトのポリシです。すなわち、 何も許さないということです。ルールを設定する際に あなたがすべき仕事は、このポリシを必要に合わせて 変更するということです。 .Pp 次のオプションが使用できます: .Bl -tag -width flag .It Fl a リスト中に、カウンタ値を表示します。 .Dq show コマンドを参照してください。 .It Fl f 間違って使用すると問題をひき起こす可能性のある コマンド (つまり、flush) の確認をとりません。 .Ar 注意、 プロセスに端末が割り当てられていない場合は、暗黙のうちに このオプションが指定されています。 .It Fl n コマンド文字列の文法をチェックするだけで、文字列を実際にカーネルに 渡すことはありません。 .It Fl q add 操作や zero 操作、flush 操作を行っている最中に、 そのアクションに対して何も表示しません (暗黙のうちに '-f' が指定されています)。 これは、リモートログイン時のセッションで スクリプト内で複数の ip6fw コマンドを実行したり (例えば、sh /etc/rc.firewall のように)、 たくさんの ip6fw ルールファイルを処理したりすることで ルールを調節するときに便利です。 通常モード (冗長) で flush 操作を行うと、メッセージが出力されます。 ルールがすべて flush されるので、ログインセッションに メッセージを送ることができず、ログインセッションも閉じてしまいます。 そのため、残りのルールセットは処理されなくなってしまいます。 復旧には、コンソールへのアクセスが必要になります。 .It Fl t list している最中に、最後にマッチしたときのタイムスタンプを表示します。 .It Fl N 出力で、アドレスおよびサービス名を解決しようとします。 .El .Pp .Ar アクション は次の通りです。 .Bl -hang -offset flag -width 16n .It Ar allow ルールにマッチしたパケットを許可します。 そして探索を終了します。別名は .Ar pass , .Ar permit , .Ar accept です。 .It Ar deny ルールにマッチしたパケットを捨てます。 そして探索を終了します。 .Ar drop は .Ar deny の別名です。 .It Ar reject (非推奨です。) ルールにマッチしたパケットを捨てて、 ICMPv6 の host unreachable notice メッセージを 送ろうとします。 そして探索を終了します。 .It Ar unreach code ルールにマッチしたパケットを捨てて、 ICMPv6 の unreachable notice メッセージをコード .Ar code で送ろうとします。ここで、 .Ar code は 0 から 255 までの番号もしくは次の別名のうちのいずれかです: .Ar noroute , .Ar admin , .Ar notneighbor , .Ar addr , .Ar noport 。 そして探索を終了します。 .It Ar reset TCP パケットのみです。 ルールにマッチしたパケットを捨てて、 TCP reset (RST) notice メッセージを送ろうとします。 そして探索を終了します。 .It Ar count ルールにマッチしたすべてのパケットに対するカウンタを 更新します。 探索は、次のルールへと継続します。 .It Ar skipto number .Ar number よりも小さい番号のついたルールをスキップします。 探索は .Ar number 以上の番号のついたルールへと継続します。 .El .Pp カーネルを .Dv IPV6FIREWALL_VERBOSE つきでコンパイルした場合、パケットが .Dq log キーワードつきのルールにマッチしたとき または clear/resetlog が実行されたときには、 メッセージが .Xr syslogd 8 に記録されるか、これが失敗したときにはコンソールにメッセージが表示されます。 カーネルを .Dv IPV6FIREWALL_VERBOSE_LIMIT オプションつきでコンパイルした場合、 特定のチェーンエントリに対して このオプションで指定した数だけパケットを受け取った後は ログを記録しません。 この制限に到達した場合、制限とルール番号が記録されます。 このエントリに対するカウンタをクリアすることでログの記録を再開できます。 .Pp .Xr syslogd 8 ログおよびデフォルトのログの制限を、 .Xr sysctl 8 インタフェースを介して動的に調整できます。 .Pp .Ar proto は次の通りです。 .Bl -hang -offset flag -width 16n .It Ar ipv6 すべてのパケットがマッチします。 別名 .Ar all は同じ効果を持ちます。 .It Ar tcp TCP パケットだけがマッチします。 .It Ar udp UDP パケットだけがマッチします。 .It Ar ipv6-icmp ICMPv6 パケットだけがマッチします。 .It Ar 指定したプロトコルだけがマッチします (完全なリストは .Pa /etc/protocols を参照してください)。 .El .Pp .Ar src および .Ar dst は次の通りです。 .Bl -hang -offset flag .It Ar
.Op Ar ports .El .Pp .Em
は次のように指定できます: .Bl -hang -offset flag -width 16n .It Ar ipv6no .Li fec0::1:2:3:4 という形式の IPv6 ナンバ。 .It Ar ipv6no/prefixlen .Li fec0::1:2:3:4/112 のような形式のプレフィックス長をもった IPv6 ナンバ。 .El .Pp .Dq not 修飾子をアドレスの前につけることで、マッチの意味を反転させることができます。 これによって、他のすべてのアドレスが代わりにマッチするようになります。 これは、ポート番号の選択には影響ありません。 .Pp TCP および UDP プロトコルでは、オプションで .Em ports が次のように指定できます: .Pp .Bl -hang -offset flag .It Ns {port|port-port} Ns Op ,port Ns Op ,... .El .Pp .Pf ( Pa /etc/services より) サービス名を、 数値によるポート番号の代わりに使用できます。 範囲は最初の値としてのみ指定でき、ポートリスト長は .Dv IPV6_FW_MAX_PORTS .Pf ( In netinet6/ip6_fw.h で指定) 個のポートまでに制限されています。 .Pp 0 ではないオフセットを持つ (すなわち、最初のフラグメントではない) フラグメントパケットは、1 つ以上のポートが列挙されたルールには 絶対にマッチしません。 フラグメントパケットのマッチについての詳細は .Ar frag オプションを参照してください。 .Pp ルールは、パケットが入力されるとき、および出力されるとき、 あるいはその両方ともであるときに適用されます。 .Ar in キーワードは、入力パケットにのみルールがマッチしなくては ならないことを示すものです。 .Ar out キーワードは、出力パケットにのみルールがマッチしなくては ならないことを示すものです。 .Pp あるインタフェースを通るパケットにマッチするためには、 .Ar via を使用して次のようにインタフェースを指定してください。 .Bl -hang -offset flag -width 16n .It Ar via ifX パケットは、インタフェース .Ar ifX を通らなくてはなりません。 .It Ar via if* パケットは、インタフェース .Ar ifX を通らなくてはなりません。ここで、X は任意のユニット番号です。 .It Ar via any パケットは、 .Em なんらかの インタフェースを通らなくてはなりません。 .It Ar via ipv6no パケットは、IPv6 アドレス .Ar ipv6no を持ったインタフェースを通らなくてはなりません。 .El .Pp .Ar via キーワードを使用すると、該当インタフェースは常に チェックされるようになります。 .Ar via の代わりに .Ar recv あるいは .Ar xmit を使用すると、 (それぞれ) 受信インタフェースまたは送信インタフェースだけが チェックされます。 両方を指定することで、受信インタフェース、送信インタフェースの 両方ともにパケットをマッチさせることができます。 例えば、次のようにします。 .Pp .Dl "ip6fw add 100 deny ip from any to any out recv ed0 xmit ed1" .Pp .Ar recv インタフェースは、入力パケットあるいは出力パケットのどちらかで テストされます。これに対して、 .Ar xmit インタフェースは、出力パケットでしかテストされません。 そのため、 .Ar xmit を使用する場合はいつでも .Ar out が必要です (そして、 .Ar in は不正です)。 .Ar xmit あるいは .Ar recv と一緒に .Ar via を指定するのは不正です。 .Pp パケットには、受信インタフェースあるいは送信インタフェースがない かもしれません。ローカルホストから送信されたパケットには 受信インタフェースがありません。そして、ローカルホストへ向けて 送信されたパケットには送信インタフェースがありません。 .Pp 追加の .Ar options は次の通りです。 .Bl -hang -offset flag -width 16n .It frag パケットがフラグメントであり、しかも データグラムの最初のフラグメントでなければマッチします。 .Ar frag は、 .Ar tcpflags あるいは TCP/UDP ポートの指定と一緒には使うことができません。 .It in パケットが入ってこようとしている場合にマッチします。 .It out パケットが出ていこうとしている場合にマッチします。 .It ipv6options Ar spec IPv6 ヘッダに、 .Ar spec で指定されたコンマ区切りのオプションリストの要素が含まれて いればマッチします。 サポートしている IPv6 オプションは次の通りです。 .Ar hopopt (hop-by-hop オプションヘッダ)、 .Ar route (ルーティングヘッダ)、 .Ar frag (フラグメントヘッダ)、 .Ar esp (暗号ペイロード)、 .Ar ah (認証ヘッダ)、 .Ar nonxt (次ヘッダなし)、そして .Ar opts (デスティネーションオプションヘッダ) です。 特定のオプションがないことは、 .Dq \&! で表します .Em ( "まだ動作していません" ) 。 .It established RST あるいは ACK ビットがセットされているパケットに マッチします。 .It setup SYN ビットはセットされているが ACK ビットがセットされていない パケットにマッチします。 .It tcpflags Ar spec TCP ヘッダに、 .Ar spec で指定されたコンマ区切りのフラグリストの要素が含まれていれば マッチします。 サポートしている TCP フラグは以下の通りです。 .Ar fin , .Ar syn , .Ar rst , .Ar psh , .Ar ack , そして .Ar urg です。 特定のフラグがないことは .Dq \&! を使って表します。 .Ar tcpflags 指定を含んだルールは、 0 でないオフセットを持ったフラグメントパケットには 絶対にマッチしません。 フラグメントパケットへのマッチに関する詳細は .Ar frag オプションを参照してください。 .It icmptypes Ar types ICMPv6 のタイプが .Ar types リスト中にあればマッチします。 リストには、範囲と、個々のタイプをコンマで区切ったものを、 任意に組み合わせて指定できます .El .Sh チェックリスト ここには、あなたがルールをデザインする際に考慮すべき 重要なポイントをいくつか述べてあります。 .Bl -bullet -offset flag .It 入力および出力パケットの両方をフィルタするのだということを 忘れないでください。ほとんどの接続には両方向のパケットが 必要です。 .It とても注意深くテストするのを忘れないでください。 テストする際にはコンソールの近くで行うというのが良いアイデアです。 .It ループバックインタフェースを忘れないでください。 .El .Sh 微調整 ファイアウォールが常に破棄するパケットが 1 種類あります。 それは、フラグメントオフセット 1 を持った IPv6 フラグメントです。 これは正しいパケットですが、使用方法は 1 つだけです。 それは、ファイアウォールの抜け道を探そうとすることです。 .Pp ネットワーク越しにログインしている場合は、 .Nm の KLD バージョンをロードするのは、おそらく あなたが思っているほどには簡単ではないでしょう .Em ( "サポートされていません " ) 。 次のようなコマンド行を推奨します。 .Bd -literal -offset center kldload ip6fw && \e ip6fw add 32000 allow all from any to any .Ed .Pp 同様の状況で、同じ行で .Bd -literal -offset center ip6fw flush .Ed .Pp を行うことも良くないアイデアです。 .Sh パケット変換 サポートされていません。 .Sh 使用例 このコマンドは、 .Em hacker.evil.org から .Em wolf.tambov.su の telnet ポートへの TCP パケットすべてを、このホストで フォワードしないようにします。 .Pp .Dl ip6fw add deny tcp from hacker.evil.org to wolf.tambov.su 23 .Pp 次のコマンドは、hackers ネットワーク全体から自ホストへの接続を 何であれ禁止します。 .Pp .Dl ip6fw add deny all from fec0::123:45:67:0/112 to my.host.org .Pp これは、カウント値の記録とタイムスタンプ情報を表示するための リストコマンドの良い使用例です。 .Pp .Dl ip6fw -at l .Pp あるいは、タイムスタンプなしの、短い形式のものは .Pp .Dl ip6fw -a l です。 -.Sh 関連ファイル +.Sh 関連項目 .Xr ip 4 , .Xr ipfirewall 4 , .Xr protocols 5 , .Xr services 5 , .Xr reboot 8 , .Xr sysctl 8 , .Xr syslogd 8 .Sh バグ .Em 注意 !! 注意 !! 注意 !! 注意 !! .Pp このプログラムは、あなたのコンピュータをかなり使えない状態 にしてしまう可能性があります。初めて使用する際には、 コンピュータのコンソールで作業してください。また、 理解していないことは何も .Em しないでください 。 .Pp チェーンエントリを操作 / 追加する際には、サービス名および プロトコル名は受け付けられません。 .Sh 作者 .An Ugen J. S. Antsilevich , .An Poul-Henning Kamp , .An Alex Nash , .An Archie Cobbs です。 .Pp .An -nosplit API は、BSDI 用に .An Daniel Boulet が書いたコードに基いています。 .Sh 歴史 .Nm ユーティリティは最初に .Fx 4.0 で登場しました。 diff --git a/ja_JP.eucJP/man/man8/isdnd.8 b/ja_JP.eucJP/man/man8/isdnd.8 index 08d0e0929b..c9dcf447c0 100644 --- a/ja_JP.eucJP/man/man8/isdnd.8 +++ b/ja_JP.eucJP/man/man8/isdnd.8 @@ -1,445 +1,445 @@ .\" .\" Copyright (c) 1997, 2001 Hellmuth Michaelis. All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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. .\" -.\" $Id: isdnd.8,v 1.18 2004-09-25 21:54:29 metal Exp $ +.\" $Id: isdnd.8,v 1.19 2004-10-11 08:23:01 metal Exp $ .\" .\" %FreeBSD: src/usr.sbin/i4b/isdnd/isdnd.8,v 1.21 2002/07/14 14:43:13 charnier Exp % .\" .\" last edit-date: [Wed May 2 10:48:30 2001] .\" .\" $FreeBSD$ .\" WORD: Call Description IDentifier (CDID) 呼記述識別子 [isdnd.8] .\" WORD: active connection アクティブ接続 [isdnd.8] .\" WORD: call 呼 [isdnd.8] (ISDN における通信セッション) .\" WORD: call setup 呼設定 [isdnd.8] .\" WORD: incoming call 着呼 [isdnd.8] .\" WORD: outgoing call 発呼 [isdnd.8] .\" WORD: tty line tty 回線 [getty.8] .\" WORD: userland ユーザランド .\" WORD: subscriber 加入者 [isdnd.8] .\" " -.Dd February 23, 1999 +.Dd May 2, 2001 .Dt ISDND 8 .Os .Sh 名称 .Nm isdnd .Nd isdn4bsd ISDN 接続管理デーモン .Sh 書式 .Nm .Op Fl c Ar configfile .Op Fl d Ar debuglevel .Op Fl f .Op Fl F .Op Fl l .Op Fl L Ar logfile .Op Fl P .Op Fl r Ar device .Op Fl s Ar facility .Op Fl t Ar terminaltype .Op Fl u Ar charging unit length .Op Fl m .Sh 解説 .Nm ユーティリティは isdn4bsd パッケージのデーモンであり、 このパッケージがサポートする ISDN デバイスのすべての ISDN 関連の接続や切断を管理します。 .Pp オプションは以下の通りです: .Bl -tag -width Ds .It Fl c デフォルトのファイル .Li /etc/isdn/isdnd.rc の代わりに、 .Ar configfile を .Nm の実行時設定ファイル名として用います。 .It Fl d .Nm がデバッグ機能をサポートするようにコンパイルされている場合に、 このオプションを使ってデバッグレベルを指定し、 どの種類のデバッグメッセージを表示するかを設定します。 デバッグレベルには次の値の和を指定します: .Pp .Bl -tag -width Ds -compact -offset indent .It Ar 0x001 一般的なデバッグ。 .It Ar 0x002 料金計算。 .It Ar 0x004 タイミング計算。 .It Ar 0x008 状態移行。 .It Ar 0x010 再試行操作。 .It Ar 0x020 ダイヤル。 .It Ar 0x040 プロセス操作。 .It Ar 0x080 isdn4bsd カーネルの入出力呼び出し。 .It Ar 0x100 コントローラとチャネルのビジー/フリーメッセージ。 .It Ar 0x200 設定ファイル isdnd.rc の処理。 .It Ar 0x400 発呼の予算処理。 .It Ar 0x800 有効なキーワードと休日ファイルの処理。 .El .Pp この値の指定に際して、 .Xr sscanf 3 ライブラリルーチンがサポートする基数のどれでも使用できます。 .Pp さらに、このオプションでは引数として文字「n」を与えて、 全画面表示にデバッグメッセージを表示させないようにもできます。 .Pp .It Fl f このオプションを指定すると、 .Nm は全画面モードでの操作に切り替わります。このモードで操作する場合、 制御文字 .Em Control-L を入力すると表示を更新します。また、 .Em 復帰文字 (Carriage-Return) または .Em Enter でコマンドウィンドウを表示します。 .Nm ユーティリティは コマンドウィンドウが開いている間はメッセージを受け付けないので、 5 秒間どのコマンドキーも押されなければ、 このコマンドウィンドウは自動的に閉じます。 .Pp コマンドウィンドウが開いている時は、 .Em タブ か .Em スペース で次のメニュー項目へ進みます。コマンドを実行するには、 ハイライト表示されたメニュー項目に対し .Em Return か .Em Enter を入力するか、実行する項目に対応する数字を入力するか、 メニュー項目記述の大文字を入力して下さい。 .It Fl l このオプションが指定されると、ログは .Xr syslogd 8 ファシリティ経由ではなく、ファイルに追加書きされます。 .It Fl L オプション .Em -l が指定されている時に使用されるログファイルの名前を指定します。 .Xr isdnd.rc 5 のシステムセクションのキーワード .Em rotatesuffix も参照してください。 .It Fl P このオプションは、解析され有効になった isdnd の設定を isdnd.rc ファイルと同じ書式で出力します。 この出力は isdnd.rc ファイルとして利用できます。 isdnd.rc をデバッグする際に、 isdnd.rc 入力ファイル中で設定していないオプションのデフォルトの設定は 何かを調べる場合、この機能は特に有用です。 .Pp 出力を終えると、 .Nm は終了します。 .It Fl F このオプションは、 .Nm が制御端末から離れてデーモンにならないようにします。 .It Fl r .Fl t オプションとともに用いられ、 .Ar device で端末デバイスを指定します。これが .Nm の制御端末となり、ここに全画面モードの出力が表示されるようになります。 .It Fl s .Xr syslog 3 によるログが設定されていて、 デフォルトの LOCAL0 ファシリティ以外のファシリティを使いたい場合に、 このオプションを用いてログファシリティを指定できます。 ファシリティは 0-11 または 16-23 の範囲の整数で指定します (ファイル /usr/include/syslog.h を参照)。 .It Fl t オプション .Fl f と .Fl r と共に用いられ、 .Nm の全画面出力に使われるデバイスの端末タイプか termcap エントリ名 (vt220 など) を .Ar terminaltype で指定します。 このオプションは、環境変数 .Li TERM が存在しない、未使用の (getty が動いていない) tty 回線を 全画面出力に使う場合に有用です。 .It Fl u 設定ファイルのエントリキーワード .Em unitlenghtsrc が .Em cmdl に設定されている場合に、課金単位の長さを指定します。 .It Fl m isdn デーモンが、ローカル監視またはリモート監視を サポートしてコンパイルされていれば、 このオプションは監視アクセスをすべて無効にします。 これは設定ファイルのオプション .Em monitor-allowed よりも優先されます。 .El .Sh カーネルとのやりとり .Nm ユーティリティは isdn4bsd のカーネル部分と通信して、 状態やイベントメッセージを受けとったり (デバイス /dev/i4b から .Xr read 2 します)、 コマンドや応答を送ります (デバイス /dev/i4b から .Xr ioctl 2 します)。 .Pp メッセージおよびメッセージパラメータは、インクルードファイル .Em /usr/include/machine/i4b_ioctl.h に記述されています。 .Pp カーネルへのコマンドと応答メッセージ (ioctl) は次のものがサポートされています: .Bl -tag -width Ds -compact -offset indent .It Ar I4B_CDID_REQ 交換局とのローカル D チャネルの単一のやりとりを一意に識別する 呼記述識別子 (CDID: Call Description IDentifier) を要求します。 .It Ar I4B_CONNECT_REQ 呼設定 (call setup) をリモート ISDN 加入者 (subscriber) に能動的に要求します。 .It Ar I4B_CONNECT_RESP 着呼 (incoming call) に対し、受け入れ、拒否、または無視すると応答します。 .It Ar I4B_DISCONNECT_REQ 能動的に呼を終了させます。 .It Ar I4B_CTRL_INFO_REQ 設置されている ISDN コントローラカードについての情報を要求します。 .It Ar I4B_DIALOUT_RESP ダイヤルアウトを要求してきたドライバに対し、 呼設定に関する情報を与えます。 .It Ar I4B_TIMEOUT_UPD 動的に計算されるショートホールドモードのタイミングが変わった場合に、 カーネルのタイムアウト値を更新します。 .It Ar I4B_UPDOWN_IND カーネルのユーザランドドライバにインタフェースのソフト的 アップ/ダウン状態変化を知らせます。 .It Ar I4B_CTRL_DOWNLOAD アクティブなカードにファームウェアをダウンロードします。 .It Ar I4B_ACTIVE_DIAGNOSTIC アクティブなカードからの診断情報を返します。 .El .Pp .Pp カーネルから送られる状態メッセージとイベントメッセージは、 次のものがサポートされています: .Bl -tag -width Ds -compact -offset indent .It Ar MSG_CONNECT_IND リモートの ISDN ユーザからの着呼を示します。 .It Ar MSG_CONNECT_ACTIVE_IND 着呼がローカルで受け入れられた後、 あるいは発呼 (outgoing call) がリモートに受け入れられた後で、 交換局がアクティブ接続を通知しました。 対応する B チャネルが交換されます。 .It Ar MSG_DISCONNECT_IND 呼は終了しました。 .It Ar MSG_DIALOUT_IND ユーザランドインタフェースドライバがデーモンに ダイヤルアウトするよう要求します (典型的には、ネットワークインタフェースの送信キューにパケットが届く時です)。 .It Ar MSG_IDLE_TIMEOUT_IND B チャネルのアイドルタイムアウトが起こったために、 isdn4bsd カーネルドライバが呼を終了させました。 .It Ar MSG_ACCT_IND ネットワークドライバからのアカウンティング情報です。 .It Ar MSG_CHARGING_IND カーネルからの課金情報です。 .El .Pp .Ss 発呼 現在のところ、発呼を起こす唯一の可能性は、 isdn4bsd ネットワークドライバ .Em (ipr) が .Em MSG_DIALOUT_IND を .Nm ユーティリティに送ることです。 .Pp デーモンは ioctl メッセージ .Em I4B_CDID_REQ を用いて、カーネルから新しい CDID を要求します。 以後この CDID は、切断が起こるまで、カーネルとのやりとりすべてにおいて、 この単一の呼を識別するのに使われます。 .Pp CDID を取得した後、 デーモンはその接続に対応する設定のエントリセクションから 追加情報をいくつか調べ、ioctl メッセージ .Em I4B_CONNECT_REQ をカーネルに発行します。 ここでカーネルはリモート側へダイヤルし、 リモート側が呼を受け入れると、カーネルはデーモンへ .Em MSG_CONNECT_ACTIVE_IND を送ります。 .Pp ローカルサイトがタイムアウトするかリモート側が接続を切る、 あるいはローカル側が能動的に ioctl メッセージ .Em I4B_DISCONNECT_REQ を送ることで、呼は終了します。 いずれのイベントも、カーネルが .Em I4B_DISCONNECT_IND メッセージを送って .Nm に通知されます。また、その呼に対応する CDID は無効になります。 .Pp .Ss 着呼 着呼は、カーネルが .Em MSG_CONNECT_IND メッセージを送って .Nm に通知します。 .Pp .Nm は、このメッセージに含まれる情報を使って 設定データベースのエントリセクションを探し、 マッチした場合にはその呼を受け入れる、または拒否し、 マッチしなかった場合にはその呼を無視します。 いずれの場合にも ioctl メッセージ .Em I4B_CONNECT_RESP に適切なパラメータを指定して、カーネルに発行します。 .Pp デーモンが呼の受け入れを決めた場合、カーネルは .Em MSG_CONNECT_ACTIVE_IND メッセージをデーモンに送って、このことを通知します。 .Pp ローカルサイトがタイムアウトするかリモート側が接続を切る、 あるいはローカル側が能動的に ioctl メッセージ .Em I4B_DISCONNECT_REQ を送ることで、呼は終了します。 いずれのイベントも、カーネルが .Em I4B_DISCONNECT_IND メッセージを送って .Nm に通知されます。また、その呼に対応する CDID は無効になります。 .Sh シグナル HUP シグナルを .Nm に送ると、開いている接続をすべて終了させ、設定ファイルを読み直します。 エイリアスファイル操作が有効な場合、エイリアスファイルも読み直します。 .Pp USR1 シグナルを .Nm に送ると、アカウンティングファイルと ( .Xr syslog 3 ファシリティ経由のログの代わりにファイルへログが送られる場合は) ログファイルがクローズされ、再オープンされて、ログファイルの 交換を可能とします。 .Sh 環境変数 次の環境変数が .Nm の実行に影響します: .Bl -tag -width Ds .It Ev TERM 全画面表示モードで実行される時の端末タイプです。 より詳しくは .Xr environ 7 を参照して下さい。 .El .Sh 関連ファイル .Bl -tag -width /etc/isdn/isdnd.rates .It Pa /dev/i4b カーネルの ISDN ドライバサブシステムと通信するためのデバイスファイル。 .It Pa /var/log/messages syslogd ログがサポートされている時の動作記録。 .It Pa /var/log/isdnd.acct デフォルトのアカウンティング情報ファイル名 (アカウンティングが設定されている場合)。 .It Pa /var/log/isdnd.log デフォルトのログファイル名 (ファイルへのログに設定されている場合)。 .It Pa /var/run/isdnd.pid isdn デーモンのプロセス ID (isdnd では "lockfile" とも呼ばれ、多重に呼び出されるのを防ぎます)。 .It Pa /usr/local/lib/isdn .It Pa /etc/isdn 留守番電話をサポートするための補助的なデータファイルやプログラムが 置かれていることを isdnd が期待するディレクトリ。 .It Pa /etc/isdn/isdnd.rc デフォルトの実行時設定ファイル。 .It Pa /etc/isdn/isdnd.rates デフォルトの課金単位料金記述ファイル。 .It Pa /etc/isdn/isdntel.alias (エイリアスが有効な場合) 電話番号を通話者の名前に変換するデフォルトの表。 .El .Sh 使用例 最初に試されるときは、設定をうまくデバッグするために、 次のコマンドを実行して .Nm をフォアグラウンドモードで起動するのが良いでしょう: .Bd -literal -offset indent isdnd -d0xf9 -F .Ed .Pp このコマンドは、isdnd を妥当なデバッグ設定で起動し、 現在の端末に出力を生成します。 .Nm ユーティリティはその後 Control-C の入力で終了できます。 .Pp 別の例として、コマンド: .Bd -literal -offset indent isdnd -d0xf9 -f -r /dev/ttyv3 -t vt100 .Ed .Pp は、妥当なデバッグメッセージを有効にし、全画面モードの動作、 全画面表示は /dev/ttyv3 にリダイレクト、その表示には vt100 用の termcap エントリを使って .Nm を起動します。 .Sh 診断 終了ステータスは成功時には 0、エラー時には 1 です。 .Sh 関連項目 .Xr i4bing 4 , .Xr i4bipr 4 , .Xr i4bisppp 4 , .Xr isdnd.rates 5 , .Xr isdnd.rc 5 , .Xr isdntel 8 , .Xr isdntrace 8 , .Xr syslogd 8 .Sh バグ まだ 1 つ以上残っています。 .Sh 作者 .Nm ユーティリティと本マニュアルページは .An Hellmuth Michaelis Aq hm@FreeBSD.org が作成しました。 diff --git a/ja_JP.eucJP/man/man8/isdndebug.8 b/ja_JP.eucJP/man/man8/isdndebug.8 index 14a5829eb5..a8cd35caa8 100644 --- a/ja_JP.eucJP/man/man8/isdndebug.8 +++ b/ja_JP.eucJP/man/man8/isdndebug.8 @@ -1,111 +1,111 @@ .\" .\" Copyright (c) 1997, 2000 Hellmuth Michaelis. All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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. .\" -.\" $Id: isdndebug.8,v 1.16 2004-09-24 05:47:39 metal Exp $ +.\" $Id: isdndebug.8,v 1.17 2004-10-11 08:23:01 metal Exp $ .\" .\" %FreeBSD: src/usr.sbin/i4b/isdndebug/isdndebug.8,v 1.18 2004/07/02 23:12:43 ru Exp % .\" .\" last edit-date: [Wed May 31 10:15:07 2000] .\" .\" $FreeBSD$ -.Dd May 29, 1999 +.Dd May 31, 2000 .Dt ISDNDEBUG 8 .Os .Sh 名称 .Nm isdndebug .Nd isdn4bsd カーネル変数と統計情報の表示と制御 .Sh 書式 .Nm .Op Fl c .Op Fl e .Op Fl g .Op Fl l Ar layer .Op Fl m .Op Fl q .Op Fl r .Op Fl s Ar value .Op Fl u Ar unit .Op Fl z .Op Fl C .Op Fl Q .Sh 解説 .Nm ユーティリティは isdn4bsd パッケージの一部であり、 isdn4bsd カーネル部分のデバッグ出力レベルを制御するのに使われます。 isdn4bsd カーネルの各レイヤは、 本ユーティリティを用いて操作できるデバッグマスクを使います。 .Pp .Nm の第 2 の用途はチップセット固有のエラーカウンタの表示とリセットと、 D チャネルレイヤ 2 (Q.921 LAPD プロトコル) の統計情報とエラーカウンタの 表示とリセットです。 .Pp 次のオプションが利用可能です: .Bl -tag -width Ds .It Fl c チップセット固有の統計情報やエラーカウンタを表示します。 .It Fl e 選択したレイヤのデバッグマスクを、エラーのみ表示するように設定します。 .It Fl g 選択したレイヤのデバッグマスクを取得します。 .It Fl l コマンドを適用するレイヤを指定します。 デフォルトではすべてのレイヤに適用します。 .It Fl m 選択したレイヤのデバッグマスクを、 起こりうるデバッグメッセージすべてを表示するように設定します (最大の出力)。 .It Fl q Q.921 (D チャネルレイヤ 2) フレームの受信/送信の統計情報を表示します。 .It Fl r 選択したレイヤのデバッグマスクを コンパイル時のデフォルトに設定します (リセット)。 .It Fl s 選択したレイヤのデバッグマスクを value に設定します。 value には .Xr sscanf 3 がサポートする基数のいずれでも指定できます。 .It Fl u フラグ -c, -q, -C, -Q の単位量を設定します。 .It Fl z 選択したレイヤのデバッグマスクを、何も出力しないように設定します (0)。 .It Fl H チップセット固有の統計情報およびエラーカウンタを 0 にリセットします。 .It Fl Q Q.921 (D チャネルレイヤ 2) フレームの受信/送信の統計情報を、 0 にリセットします。 .El .Sh 関連ファイル /dev/i4bctl .Sh 使用例 コマンド: .Bd -literal -offset indent isdndebug -g .Ed .Pp は、すべての ISDN レイヤの現在のデバッグレベルを表示します。 .Sh 作者 .Nm ユーティリティと本マニュアルページは .An Hellmuth Michaelis Aq hm@kts.org が作成しました。 diff --git a/ja_JP.eucJP/man/man8/isdntrace.8 b/ja_JP.eucJP/man/man8/isdntrace.8 index 6f4b2e3f7e..03baf9bd80 100644 --- a/ja_JP.eucJP/man/man8/isdntrace.8 +++ b/ja_JP.eucJP/man/man8/isdntrace.8 @@ -1,240 +1,240 @@ .\" .\" Copyright (c) 1997, 2000 Hellmuth Michaelis. All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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. .\" -.\" $Id: isdntrace.8,v 1.14 2004-09-24 05:47:39 metal Exp $ +.\" $Id: isdntrace.8,v 1.15 2004-10-11 08:23:01 metal Exp $ .\" .\" %FreeBSD: src/usr.sbin/i4b/isdntrace/isdntrace.8,v 1.20 2004/07/02 23:12:44 ru Exp % .\" .\" last edit-date: [Wed Nov 1 15:52:28 2000] .\" .\" $FreeBSD$ .\" isdndecode.8 と isdntrace.8 は共通部分が多いため、相互に参照 .\" すると便利です。 -.Dd October 19, 1998 +.Dd November 1, 2000 .Dt ISDNTRACE 8 .Os .Sh 名称 .Nm isdntrace .Nd isdn4bsd ISDN プロトコルトレースユーティリティ .Sh 書式 .Nm .Op Fl a .Op Fl b .Op Fl d .Op Fl f Ar filename .Op Fl h .Op Fl i .Op Fl l .Op Fl n Ar number .Op Fl o .Op Fl p Ar filename .Op Fl r .Op Fl u Ar number .Op Fl x .Op Fl B .Op Fl F .Op Fl P .Op Fl R Ar unit .Op Fl T Ar unit .Sh 解説 .Nm ユーティリティは isdn4bsd パッケージの一部であり、 D チャネル上のレイヤ 1, 2, 3 のプロトコルアクティビティのニーモニック表記と、 B チャネルアクティビティの 16 進数ダンプを、 ユーザに提供するために使用されます。 .Pp 受動動作がサポートされているカード 2 枚および 容易に作成可能なケーブルと共に本ユーティリティを使用することにより、 S0 バス上のトラフィックを完全に監視して、 S0 バスアナライザ機能を提供することもできます。 .Pp .Nm ユーティリティは、受動動作がサポートされているカードでのみ動作します。 .Pp .Em 注 .Pp すべてのファイルは、ユーザが指定してもデフォルトであっても、 タイムスタンプ文字列が -yyyymmdd-hhmmss の形式で追加されます。 この形式は、ハイフン、4 桁の年、2 桁の月と日、ハイフン、 2 桁の時間と分と秒です。 トレースファイルは上書きされることはありません。 1 秒以内に新規ファイルが必要な場合、ファイル名生成機構は 1 秒間眠ります。 .Pp プログラムが USR1 シグナルを送られた場合、 ユーザが指定した新規ファイルまたはデフォルトのファイル名に、 新規の日付とタイムスタンプを付けたものが、生成されてオープンされます。 .Pp 次のオプションを使用可能です: .Bl -tag -width Ds .It Fl a 2 枚の受動カードとカスタムケーブルを使用して、 .Nm をアナライズモードで動作させます。 カスタムケーブルは、isdn4bsd ソース配布物中のファイル .Em cable.txt に記述されている方法で作成可能です。 片方のカードが S0 バスの送信方向におけるレシーバとして動作し、 もう片方のカードが S0 バスの受信方向におけるレシーバとして動作します。 この設定により、完全なトラフィック監視が可能となります。 .It Fl b B チャネルのトレースをオンにします (デフォルトではオフです)。 .It Fl d D チャネルのトレースをオフにします (デフォルトではオンです)。 .It Fl f トレース出力を書き込むファイル名として .Ar filename を使用します (デフォルトのファイル名は isdntrace であり、 n はトレースに使用するユニット番号です)。 .It Fl h ヘッダ表示をオフにします (デフォルトではオンです)。 .It Fl i レイヤ 1 アクティビティを監視するために、 レイヤ 1 (I.430) INFO シグナルを表示します (デフォルトではオフです)。 .It Fl l レイヤ 2 (Q.921) フレームの表示をオフにします (デフォルトではオンです)。 .It Fl n 本オプションは数値引数を取り、 表示されるフレームの最小フレームサイズをオクテットで指定します (デフォルトは 0)。 .It Fl o トレース出力のファイルへの書き込みをオフにします (デフォルトではオンです)。 .It Fl p オプション -B および -P で使用するファイル名として .Ar filename を使用します (デフォルトのファイル名は isdntracebin であり、 n はトレースに使用するユニット番号です)。 .It Fl r パケットの生の 16 進数ダンプを、 デコードされたプロトコル情報の前に表示することを、オフにします (デフォルトではオンです)。 .It Fl u トレースに使用するコントローラカードのユニット番号として、 .Ar number を使用します (デフォルトでは 0 です)。 .It Fl x Q.931 プロトコル識別を持たないパケットの表示をオンにします (デフォルトではオフです)。 .It Fl B 後でアナライズするためまたは遠隔アナライズするために、 デコード前のバイナリトレースデータをファイルに書き込みます (デフォルトではオフです)。 .It Fl F オプション -P (バイナリデータファイルの再生) が使用されたときだけ、 本オプションを使用可能です。 オプション -F を指定すると、ファイルが終了しても再生を終了せずに、 更なるデータが入力ファイルから利用できるようになるまで待つようにさせます。 .Pp (ディスクスペースを節約するために) トレースデータをバイナリ形式で収集しているときに、 監視機構もまた必要な場合に、本オプションが有用です (デフォルトではオフです)。 .It Fl P デバイスからではなく、ファイルから、デコード前のバイナリトレースデータを 読み込みます (デフォルトではオフです)。 .It Fl R アナライズモードにおいて、受信インタフェースユニット番号として、 .Ar unit を使用します。 .It Fl T アナライズモードにおいて、送信インタフェースユニット番号として、 .Ar unit を使用します。 .El .Pp USR1 シグナルが .Nm プロセスに送信されると、 現在使用されているログファイルが再オープンされますので、 ログファイルの回転を行うことができます。 .Pp トレース出力は明確なはずです。 ISDN プロトコルトレース時に、 次の標準的なテキストを持っていると非常に便利でしょう: .Pp .Bl -tag -width Ds -compact -offset indent .It Ar I.430 ISDN BRI レイヤ 1 プロトコルの記述。 .It Ar Q.921 ISDN D チャネルレイヤ 2 プロトコルの記述。 .It Ar Q.931 ISDN D チャネルレイヤ 3 プロトコルの記述。 .It Ar 1TR6 ドイツ固有の ISDN レイヤ 3 プロトコルの記述。 (注意: 1TR6 プロトコルのデコードが含まれていますが、サポートされていません。 なぜなら作者が 1TR6 ベースの ISDN 装置をもう持っていないためです。) .El .Pp .Nm ユーティリティは、プロトコル分別器 (Protocol Discriminator) を見て、 使用されているレイヤ 3 プロトコルを自動的に検出します (Q.931/1993 pp.\& 53 参照)。 .Sh 関連ファイル .Bl -tag -width daddeldi -compact .It Pa /dev/i4btrc ISDN カードユニット のトレースメッセージを カーネルから取り出すために使用するデバイスファイル。 .El .Sh 使用例 コマンド: .Bd -literal -offset indent isdntrace -f /var/tmp/isdn.trace .Ed .Pp は、D チャネルのトレースを受動コントローラ 0 上で開始します。 この際、B チャネルのトレース以外はすべて有効にされ、 すべては出力ファイル /var/tmp/isdn.trace-yyyymmdd-hhmmss へ書き込まれます。 (yyyymmdd と hhmmss は現在の日付と時刻の値で置き換えられます)。 .Sh 関連項目 .Xr isdnd 8 .Sh バグ まだ 1 個以上残っています。 .Sh 規格 ITU Recommendations I.430, Q.920, Q.921, Q.930, Q.931 .Pp FTZ Richtlinie 1TR3, Band III .Pp ITU Recommendation Q.932 (03/93), Q.950 (03/93) .Pp ETSI Recommendation ETS 300 179 (10/92), ETS 300 180 (10/92) .Pp ETSI Recommendation ETS 300 181 (04/93), ETS 300 182 (04/93) .Pp ITU Recommendation X.208, X.209 .Sh 作者 .An -nosplit .Nm ユーティリティは .An Gary Jennejohn Aq gj@FreeBSD.org と .An Hellmuth Michaelis Aq hm@FreeBSD.org が書きました。 .Pp 本マニュアルページは .An Hellmuth Michaelis が書きました。 diff --git a/ja_JP.eucJP/man/man8/mrouted.8 b/ja_JP.eucJP/man/man8/mrouted.8 index 75a64b9b95..03df2bb647 100644 --- a/ja_JP.eucJP/man/man8/mrouted.8 +++ b/ja_JP.eucJP/man/man8/mrouted.8 @@ -1,643 +1,643 @@ .\"COPYRIGHT 1989 by The Board of Trustees of Leland Stanford Junior University. .\" .\" %FreeBSD: src/usr.sbin/mrouted/mrouted.8,v 1.30 2004/07/03 18:35:51 ru Exp % .\" .\" $FreeBSD$ .Dd May 8, 1995 .Dt MROUTED 8 .Os .Sh 名称 .Nm mrouted .Nd IP マルチキャストルーティングデーモン .Sh 書式 .Nm .Op Fl c Ar config_file .Op Fl d Op Ar debug_level .Op Fl p .Sh 解説 .Nm ユーティリティは、Distance-Vector Multicast Routing Protocol (DVMRP) の実装です。 DVMRP の以前のバージョンは RFC1075 で規定されています。 本コマンドは distance-vector routing protocol (RIP に似たプロトコルであり、RFC1058 に記述されています) を使うことで、ネットワークトポロジに関する情報を管理し、 そのプロトコルの上で、Reverse Path Multicasting と呼ばれる マルチキャストデータグラムフォワーディングアルゴリズムを実装しています。 .Pp .Nm ユーティリティは、 マルチキャストデータグラムを、データグラムが生成されたサブネットを幹と して樹状に構成されるパス上に、パスの最短距離を通過するようにして送出します。 マルチキャストツリーは目的のグループを含むサブネットを越えないブロード キャストツリーと考えることができます。 したがって、データグラムはマルチキャストの受け手がいない枝には送出され ません。 さらに、マルチキャストデータグラムパケットの生存時間によっては、到達で きる範囲が限定される場合もあります。 .Pp IP マルチキャストをサポートしない (ユニキャスト) ルータを介したサブネット間で、 マルチキャストを実現するために、 .Nm の実装にはトンネリングのサポートも含まれます。 トンネリングとは、インターネットのあらゆるところにて稼働している マルチキャストルータの組の間で仮想的なポイントツーポイントリンクを 確立する技術です。 IP マルチキャストパケットは、トンネルを通過するところでカプセル化されます。 間にあるルータ及びサブネットにとっては、 カプセル化されたパケットは、 通常のユニキャストデータグラムに見えます。 トンネルの入口でカプセル化が行われ、トンネルの出口でカプセルが取り外されます。 パケットは、IP-in-IP プロトコル (IP プロトコル番号 4) を用いることでカプセル化を 行ないます。 古いバージョンの .Nm のトンネリングは、 IP ソースルーティングを用いたものですが、 これはルータによっては大きな負荷をかけることになります。 本バージョンでは、IP ソースルーティングを用いたトンネリングは サポートしません。 .Pp トンネリング機構の実装により、 .Nm は、 実際のインターネットとは独立の、 マルチキャストパケットのみを扱う広範囲の自立システムに跨る 仮想インターネットを構築できます。 この機能は、 普通の (ユニキャスト) ルータによるマルチキャストルーティングの 広範囲なサポートがなされるまで、 インターネットマルチキャスティングのみを実験的に サポートするように意図したものです。 .Nm ユーティリティは distance vector ルーティングプロトコルが持つ よく知られたスケーリングの問題の影響を被りますし、 階層的なマルチキャストルーティングを (まだ) サポートしていません。 .Pp .Nm ユーティリティはマルチキャストルーティングのみを扱いますので、 .Nm と同じ機械の上でユニキャストルーティングソフトが走っていてもいなくても 構いません。 トンネリングを利用すれば、 .Nm はマルチキャストフォワーディングのためにひとつより多くの 物理的なサブネットにアクセスする必要がありません。 .Pp 次のオプションを使用可能です: .Bl -tag -width indent .It Fl c Ar config_file 別の設定コマンドファイルを指定します。 デフォルトは .Pa /etc/mrouted.conf です。 .It Fl d Op Ar debug_level .Fl d オプションが与えられないか、もしくは debug level として 0 が指定された 場合、 .Nm は起動された端末から切り離されます。 それ以外の場合は、 .Nm は、起動された端末に残り、起動された端末からのシグナルを受け付けます。 debug level の指定の有無にかかわらず、 .Nm は常に警告メッセージやエラーメッセージを syslogd に対して送ります。 .Fl debug-level 引数は、次に示すものをコンマで区切ったリストです: .Bl -tag -width indent .It "packet" 送受信したすべてのパケットに関し、タイプ・ソース・宛先を表示します。 .It "pruning" 送受信した枝苅りに関し、更なる情報を表示します。 .It "routing" 送受信した経路更新パケットに関し、更なる情報を表示します。 .It "route_detail" 経路更新に関し、過度に詳細な程表示します。 大概の場合、情報が多すぎるでしょう。 .It "neighbors" 隣接ルータ発見に関し、情報を表示します。 .It "cache" カーネルのフォワーディングキャッシュに関し、挿入・削除・更新を表示します。 .It "timeout" タイムアウトと定期処理をデバッグします。 .It "interface" インタフェースとその設定に関し、情報を表示します。 .It "membership" 物理インタフェースにおけるグループメンバシップに関し、情報を表示します。 .It "traceroute" このルータを通過するマルチキャスト経路追跡要求に関し、情報を表示します。 .It "igmp" グループメンバシップおよび問い合わせ者選出を含む IGMP 操作を表示します。 .\" Display IGMP operation including group membership and querier election. .\" including 以降はこれで良いのか? .It "icmp" ICMP 操作を監視します。 .It "rsrr" RSRR 操作を監視します。 .El .Pp 起動にともない、 .Nm はそのプロセス ID を .Pa /var/run/mrouted.pid ファイルに 書き出します。 .El -.Sh 初期設定 +.Sh 設定 .Nm ユーティリティは、自動的にすべてのマルチキャスト可能なインタフェース、 つまり、IFF_MULTICAST フラグがセットされたインタフェース (ループバックインタフェースは除きます) に対して初期化を行い、別の DVMRP ルータ に直接接続可能なインタフェースを探索します。 デフォルトの設定を上書きする、あるいは別の マルチキャストルータ に対するトンネルリンクを付加するには、 .Pa /etc/mrouted.conf (もしくは .Fl c オプションによって指定されるファイル) を編集します。 .Pp ファイルの形式は自由です。すなわち、空白文字 (改行も含みます) は意味を 持ちません。 .Nm の操作全体またはデフォルト設定に適用されるコマンドから、ファイルは開始します。 .Bl -tag -width indent .It cache_lifetime Ar secs カーネル内の マルチキャストフォワーディングキャッシュ経路エントリの生存時間を、 秒で指定します。 カーネル内のマルチキャストフォワーディングキャッシュのエントリは、 .Ar secs 秒毎にチェックされ、ソースがアクティブな場合にはリフレッシュされ、 そうでない場合は削除されます。 この値を設定するときには注意してください。 小さな値を設定するとカーネルキャッシュは小さくなりますが、 定期的な送信者がいると キャッシュの「スラッシング」が起るという弊害がありますし、 大きな値を設定すると許容できない程カーネルキャッシュが大きくなります。 デフォルトは 300 (5 分) です。 .It prune_lifetime Ar secs 親に送った枝苅りの平均生存時間を、秒で指定します。 実際の生存時間は [.5\fIsecs\fP,1.5\fIsecs\fP] の範囲でランダムとなります。 デフォルトは 7200 (2 時間) です。 小さな値を設定するとこのルータおよび親ルータが保存する状態は少なくなりますが、 ブロードキャストの頻度が高くなるという弊害があります。 隣接ルータのリブート判定に DVMRP の世代 ID を使用しないルータがあります (例えば 3.3 以前の .Nm と、cisco の IOS の現在知られている全バージョン)。 リブートからの回復時間を短縮するために、 これらの隣接ルータに送信した枝苅りを保持する時間は短くすべきです。 このような状況で使用する場合、後述するように prune_lifetime キーワードをインタフェースに指定すると良いでしょう。 .It noflood .Nm ユーティリティは DVMRP 最適化を使用し、 各隣接ルータに対して個々にルーティングテーブルを持つことを避けます。 接続されている個々のサブネットに対し、 自己がフォワーダであると開始時に仮定することも、この最適化の一部です。 ちょうど今開始したルータと正しいフォワーダの両方が トラフィックをフォワードすることにより、 短期間 (およそ経路報告間隔 1 回分) 重複が生じることがあります。 この動作は noflood キーワードを指定することにより停止できます。 .Nm が自己をフォワーダであると仮定しなくなるためです。 noflood を指定すると、再開時におよそ経路報告間隔 1 回分、 ブラックホールを生じさせることがあります。 noflood キーワードは個々のインタフェースに指定可能です。 .It rexmit_prunes Ar [on|off] デフォルトでは、 枝苅りを全ポイントツーポイントインタフェース (トンネル含む) に対して 再フォワードしますが、マルチアクセスインタフェースに対しては行いません。 本オプションを使用すると、全インタフェースに対してデフォルトをオン (またはオフ) にします。 rexmit_prunes キーワードもまた個々のインタフェースに指定可能です。 .It name Ar "boundary-name scoped-addr/mask-len" .Ar boundary-name を .Ar scoped-addr/mask-len で記述される境界に関連付け、設定ファイルにおいて、 インタフェース設定を読み易くし、繰り返しを減らします。 .El .Pp 設定ファイルの第 2 の部分は、空でも構いませんが、 物理インタフェースに適用されるオプションを記述します。 .Bl -tag -width indent .It phyint Ar "local-addr|ifname" phyint コマンド自身は何もしません。 単なる埋め草であり、この後にインタフェース固有のコマンドが続きます。 インタフェースのアドレスまたは名前を指定します。 .It disable 本インタフェースにおけるマルチキャストのフォワーディングを無効にします。 デフォルトでは、 .Nm はローカルに接続されたマルチキャスト可能なインタフェースをすべて発見し、 それらすべてに対してフォワードします。 .It netmask Ar netmask カーネルの netmask がサブネットを正確に反映していない場合 (例えば IP サブネット化の代りに代理 ARP 使用の場合)、 netmask コマンドを使用して実際の netmask を記述してください。 .It altnet Ar network/mask-len phyint が複数の IP からなるサブネットに接続されている場合、 altnet キーワードを使用してそれぞれのサブネットについて記述して下さい。 本コマンドを複数回使用して、複数のサブネットを記述可能です。 .It igmpv1 phyint 上に IGMPv1 ルータが存在する場合、 \fBigmpv1\fP キーワードを使用して .Nm を強制的に IGMPv1 モードにしてください。 phyint 上の全ルータは、同じバージョンの IGMP を使用する必要があります。 .It force_leaf このインタフェース上の他のルータを無視するように、 .Nm に強制します。 .Nm は、本インタフェース上では、 隣接ルータへプローブや経路報告を送りませんし、受け付けません。 .El .Pp 更に、後述する共通の vif コマンドを phyint に対してすべて使用可能です。 .Pp 設定ファイルの第 3 の部分は、これも空でも構いませんが、 このルータが持つ DVMRP トンネルの設定を記述します。 .Bl -tag -width indent .It tunnel Ar "local-addr|ifname" Ar "remote-addr|remote-hostname" このコマンドは、このホスト .Pf ( Ar local-addr または .Ar ifname で記述されるインタフェース) とリモートホスト .Pf ( Ar remote-addr または .Ar remote-hostname で識別されます) との間の DVMRP トンネルを確立します。 リモートのホスト名は、単一の IP アドレスにマップされる場合のみ使用可能です。 トンネルは、使用前に、両方のルータ上で構成されている必要があります。 .Pp リモートアドレスへのユニキャスト経路が、 .Ar "local-addr|ifname" で指定されるインタフェースから出て行くように気を付けてください。 .Nm が扱うパケットのソースアドレスを、 送出インタフェースのアドレスに 書き換えてしまう UNIX カーネルがあります。 安全第一のためには、静的なホスト単位の経路を使用してください。 .El .Pp 次の共通の vif コマンドを tunnel や phyint に対してすべて使用可能です。 .Bl -tag -width indent .It metric Ar m metric は、 指定したインタフェースもしくはトンネルでデータグラムを受信するための 「コスト」であり、経路選択に影響を与えるために使用します。 metric のデフォルト値は 1 です。 metric は可能なかぎり小さくすべきです。 なぜなら、 DVMRP は metric の合計が 31 を越える経路を通ることができないからです。 .It advert_metric Ar m advert_metric は、 指定したインタフェースもしくはトンネルでデータグラムを送信するための 「コスト」であり、経路選択に影響を与えるために使用します。 advert_metric のデフォルト値は 0 です。 リンクの実際の metric は一端の metric ともう一端の advert_metric との和です。 .It threshold Ar t threshold は最小の IP の生存時間であり、 この要件を満たすマルチキャストデータグラムは 指定したインタフェースもしくはトンネルにフォワードされます。 このパラメータは、 マルチキャストデータグラムの到達範囲を定めるために使用します (フォワードされたパケットの TTL は threshold と比較されるだけで、 threshold だけ TTL を減らすというわけではありません。 すべてのマルチキャストルータは TTL を丁度 1 づつ減らします)。 threshold のデフォルト値は 1 です。 .Pp 特定のサブネットやトンネルへ接続される 全マルチキャストルータは、そのサブネットやトンネルに対し、 一般的にはすべて同じ metric と threshold を持つべきです。 .It rate_limit Ar r rate_limit オプションによって、 マルチキャストトラフィック用に何キロビット毎秒のバンド幅を割り当てるかを、 ネットワーク管理者は指定可能です。 デフォルト値は、0 (無制限) です。 .It boundary Ar "boundary-name|scoped-addr/mask-len" boundary オプションは、ある範囲のアドレスに対する管理上の境界として、 インタフェースを設定します。 この範囲のアドレスに属するパケットは範囲内のインタフェース にはフォワードされません。boundary オプションは名前もしくは境界にて指定します。 単一のインタフェースに対して本コマンドを複数回使用して、 複数の境界を記述可能です。 .It passive もう一端から何かが聞こえるまで、 このリンクまたはトンネルに対してパケットを送出しません。 要求時にダイヤルするリンク上のトンネルにおける「サーバ」側で 使用すると良いです。 「サーバ」側を passive とすることで、 もう一方から何かが聞こえるまで定期的なプローブをサーバは送りませんので、 リンクをアップ状態に保つということはありません。 トンネルの両端でこのオプションを指定すると、 トンネルはいつになっても使えないでしょう。 .It noflood 前述の通りですが、このインタフェース/トンネルに対してのみ適用されます。 .It prune_lifetime Ar secs 前述の通りですが、このインタフェース/トンネルに対してのみ適用されます。 .It rexmit_prunes Ar "[on|off]" 前述の通りですが、このインタフェース/トンネルに対してのみ適用されます。 枝苅りの再送信のデフォルトは、 ポイントツーポイントリンクとトンネルではオンであり、 マルチアクセスリンクではオフです。 .It allow_nonpruners デフォルトでは、枝苅りをサポートしないと主張する DVMRP 隣接ルータとは .Nm は仲間にはなりません。 本オプションを使用すると、本インタフェースにおいて、 このようなルータとも仲間となります。 .It notransit 経路フィルタリングの特殊ケースです。 \&"notransit" とマークされたインタフェースから学習された経路は、他の \&"notransit" とマークされたインタフェースにおいて広告されません。 単一のインタフェースのみを "notransit" とマークしても、意味はありません。 .It accept|deny Ar "(route/mask-len [exact])+" Op bidir .Li accept および .Li deny のコマンドにより、原始的な経路フィルタリングが可能となります。 .Li accept コマンドにより、設定されたインタフェースに関してリストされた経路のみ、 .Nm は受け付けます。 .Li deny コマンドにより、リストされた経路以外のすべての経路を、 .Nm は受け付けます。 ひとつのインタフェースには、 .Li accept または .Li deny のどちらかのみ使用可能です。 .Pp .Li accept と .Li deny のキーワードの後には、経路のリストが続きます。 経路の後にキーワード .Ar exact が続くと、その経路のみがマッチします。 指定しない場合には、その経路とより具体的な経路がマッチします。 例えば、 .Li deny 0/0 はすべての経路を拒否しますが、 .Li deny 0/0 exact はデフォルト経路のみ拒否します。 デフォルト経路は .Li default キーワードで指定することも可能です。 .Pp .Ar bidir キーワードは双方向の経路フィルタリングを可能にします。 フィルタは、出力および入力の両方の経路に適用されます。 .Ar bidir キーワードを指定しないと、 .Li accept および .Li deny のフィルタは、入力に対してのみ適用されます。 Poison reverse 経路は、フィルタにより取り除かれることはありません。 .El .Pp .Nm ユーティリティは、 2 つ以上の有効な vif (仮想インタフェース) が無いときには実行を開始しません。 vif はマルチキャスト可能な物理インタフェースもしくはトンネルです。 すべての仮想インタフェースがトンネルの場合は警告が記録されます。 そのような .Nm の設定は、より多くの直接トンネルを指定した方が良いかもしれません (中間管理者を削除するという意味です)。 .Sh 設定例 次に示すのは大きな学校にある架空のマルチキャストルータでの例です。 .Pp .Bd -literal # # mrouted.conf の例 # # 簡単に記述するため、境界に名前を付けます。 name LOCAL 239.255.0.0/16 name EE 239.254.0.0/16 # # le1 は compsci に対する我々のゲートウェイであり、 # ローカルグループはそちらにフォーワードしません。 phyint le1 boundary EE # # le2 は classroom ネット上の我々のインタフェースであり、 # 4 つの異なった長さのサブネットがあります。 # IP アドレスでもインタフェース名でも使えることに注意。 phyint 172.16.12.38 boundary EE altnet 172.16.15.0/26 altnet 172.16.15.128/26 altnet 172.16.48.0/24 # # atm0 は我々の ATM インタフェースであり、 # マルチキャストを正しくサポートしません。 phyint atm0 disable # # これは、別の EE サブネットに対する内部トンネルです。 # トンネルはイーサネット上にあるので、 # トンネルのデフォルトのレート制限を取り除きます。 tunnel 192.168.5.4 192.168.55.101 metric 1 threshold 1 rate_limit 0 # # これは外世界に対する我々のトンネルです。 # これらの境界には注意してくださいね、Eugene (訳注: ユージーン; 人名)。 tunnel 192.168.5.4 10.11.12.13 metric 1 threshold 32 boundary LOCAL boundary EE .Ed .Sh シグナル .Nm ユーティリティは次のシグナルに反応します。 .Bl -tag -width indent .It HUP .Nm を再スタートします。 設定ファイルは再度読み込まれます。 .It INT 後かたづけをしてから実行終了します (たとえば、隣接するルータすべてにさよならのメッセージを送ります)。 .It TERM INT と同じです。 .It USR1 内部ルーティングテーブルを .Pa /var/tmp/mrouted.dump にダンプします。 .It USR2 内部キャッシュテーブルを .Pa /var/tmp/mrouted.cache にダンプします。 .It QUIT 内部ルーティングテーブルを stderr にダンプします。 ただし、 .Nm が 0 以外の debug level の時のみです。 .El .Pp シグナルを送る際の便宜のために、 .Nm は開始時に自身のプロセス ID を .Pa /var/run/mrouted.pid に書き出します。 .Sh 使用例 ルーティングテーブルは次のようになります: .Pp .Bd -literal Virtual Interface Table Vif Local-Address Metric Thresh Flags 0 36.2.0.8 subnet: 36.2/16 1 1 querier groups: 224.0.2.1 224.0.0.4 pkts in: 3456 pkts out: 2322323 1 36.11.0.1 subnet: 36.11/16 1 1 querier groups: 224.0.2.1 224.0.1.0 224.0.0.4 pkts in: 345 pkts out: 3456 2 36.2.0.8 tunnel: 36.8.0.77 3 1 peers: 36.8.0.77 (3.255) boundaries: 239.0.1/24 : 239.1.2/24 pkts in: 34545433 pkts out: 234342 3 36.2.0.8 tunnel: 36.6.8.23 3 16 Multicast Routing Table (1136 entries) Origin-Subnet From-Gateway Metric Tmr In-Vif Out-Vifs 36.2 1 45 0 1* 2 3* 36.8 36.8.0.77 4 15 2 0* 1* 3* 36.11 1 20 1 0* 2 3* . . . .Ed .Pp この例では、4 つの vif が 2 つのサブネットと 2 つのトンネルにつながっています。 vif 3 がつながったトンネルは使われていません (peer アドレスが有りません)。 vif 0 と vif 1 がつながったサブネットには いくつかのグループが有ります。 トンネルにはグループは有りません。 この例の .Nm は、 \&"querier" フラグが示すように、 定期的なグループメンバシップの問い合わせを vif 0 および vif 1 サブネットにて 送出する責任が有ります。 境界のリストは当該インタフェースのアドレス範囲が示されます。 入力及び出力パケット数が各インタフェースに対して示されます。 .Pp マルチキャストデータグラムの起源となりうるサブネットに関連して 表示される情報は、 直前のホップのルータのアドレス (サブネットが直接接続されていない場合)、 起源までのパスの metric、 当該サブネットから最後に更新を受信してから経過した時間、 当該起源からのマルチキャストが入力される vif、 出力 vif 一覧です。 \&"*" は、 起源を根とするブロードキャストツリーの葉に、 当該出力 vif が接続していることを意味します。 宛先グループのメンバが当該葉にいる時のみ、 当該起源からのマルチキャストデータグラムを当該出力 vif からフォワードします。 .Pp .Nm ユーティリティはカーネル内のフォワーディングキャッシュテーブルも管理します。 エントリの生成及び削除は .Nm が行います。 .Pp キャッシュテーブルは次のようなものです: .Pp .Bd -literal Multicast Routing Cache Table (147 entries) Origin Mcast-group CTmr Age Ptmr IVif Forwvifs 13.2.116/22 224.2.127.255 3m 2m - 0 1 >13.2.116.19 >13.2.116.196 138.96.48/21 224.2.127.255 5m 2m - 0 1 >138.96.48.108 128.9.160/20 224.2.127.255 3m 2m - 0 1 >128.9.160.45 198.106.194/24 224.2.135.190 9m 28s 9m 0P >198.106.194.22 .Ed .Pp 各エントリは起源のサブネット番号、マスク、宛先マルチキャストグループにて 区別します。 .Pp \&'CTmr' フィールドは当該エントリの生存時間を表します。 このタイマ値が 0 まで減算されたエントリはキャッシュテーブルから削除されます (エントリはトラフィックが流れるとリフレッシュされます)。 \&'Age' フィールドはこのエントリが最初に生成されてから経過した時間を表します。 キャッシュエントリはリフレッシュされるため、 当該エントリに関するトラフィックが続く限りルーティングエントリは生き残ります。 .Pp \&'Ptmr' フィールドは、上流に枝刈が送出されていなければ単に -、 そうでないばあいには上流の枝刈がタイムアウトするまでの時間を表します。 .Pp \&'Ivif' フィールドは起源からのマルチキャストパケットが入力される vif を表します。 各ルータは特定のソース及びグループに関し、 隣接するルータより受信する枝刈数の記録も管理します。 あるサブネットに関してマルチキャストツリーの下流の枝において マルチキャストグループのメンバが存在しない場合、 上流のルータに対して枝刈メッセージが送信されます。 この場合、vif 番号の後に \&"P" が付けられます。 .Pp \&'Forwvifs' フィールドは ソースグループに属するデータグラムがフォワードされる インタフェースを表します。 \&"p" は、このインタフェースを介してフォワードされるデータグラムが存在しない ことを表します。 リストされないインタフェースは葉のサブネットであり、 特定のグループのメンバを当該サブネットに持ちません。 インタフェースにおける "b" の表示は、 当該インタフェースが境界インタフェースであることを表します。 すなわち、範囲内のアドレスのトラフィックは 当該インタフェースを介してフォワードされないことを意味します。 .Pp \&">" を最初の文字として表示する追加の行は、 当該サブネット上のソースを表します。 1 つのサブネット上に複数のソースが存在可能であることに注意して下さい。 \&"<" を最初の文字として表示する追加の行は、 このサブネットもしくはグループに関して、 下流の隣接ルータから受信した枝苅りを表示します。 .Sh 関連ファイル .Bl -tag -width /var/tmp/mrouted.cache -compact .It Pa /etc/mrouted.conf .It Pa /var/run/mrouted.pid .It Pa /var/tmp/mrouted.dump .It Pa /var/tmp/mrouted.cache .El .Sh 関連項目 .Xr map-mbone 8 , .Xr mrinfo 8 , .Xr mtrace 8 .Pp DVMRP は、 他のマルチキャスト経路制御アルゴリズムと共に、 ACM SIGCOMM '88 コンファレンスのプロシーディングに、 .An S. Deering が "Multicast Routing in Internetworks and Extended LANs" として記述しています。 .Sh 作者 .An Steve Deering , .An Ajit Thyagarajan , .An Bill Fenner diff --git a/ja_JP.eucJP/man/man8/pppoed.8 b/ja_JP.eucJP/man/man8/pppoed.8 index 6c0efed2e6..d12a7265b4 100644 --- a/ja_JP.eucJP/man/man8/pppoed.8 +++ b/ja_JP.eucJP/man/man8/pppoed.8 @@ -1,207 +1,207 @@ .\"- -.\" Copyright (c) 1999 Brian Somers +.\" Copyright (c) 1999-2001 Brian Somers .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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/libexec/pppoed/pppoed.8,v 1.16 2002/07/06 19:19:09 charnier Exp % .\" .\" $FreeBSD$ .Dd November 8, 1999 .Dt PPPOED 8 .Os .Sh 名称 .Nm pppoed .Nd PPP over Ethernet の待ち受けを扱う .Sh 書式 .Nm .Op Fl Fd\& .Op Fl P Ar pidfile .Op Fl a Ar name .Op Fl e Ar exec | Fl l Ar label .Op Fl n Ar ngdebug .Op Fl p Ar provider .Ar interface .Sh 解説 .Nm ユーティリティは、指定された .Ar interface に対して PPP over Ethernet (PPPoE) サービス要求パケットを listen し、 このパケットへの対応として、セッション交渉後に .Xr ppp 8 プログラムを起動します。 交渉は .Dq pppoe netgraph ノードとして実装されています。 詳細は .Xr ng_pppoe 4 を参照してください。 .Pp .Nm ユーティリティは、指定された .Ar provider からサービスを要求しているクライアントに対してのみ、サービスを提供します。 .Ar provider は、指定されない場合には空の名前とされます。 .Ar provier 名として .Dq * が指定されると、すべての PPPoE 要求に対してサービスが提供されます。 .Pp 指定した .Ar name は、接続確立時に、アクセス集中者 (access concentrator) 名として与えられます。 .Ar name を指定しないと、現在のベースホスト名が使用されます。 .Pp PPPoE netgraph ノードからの要求 (PADI) 受信後は、 .Nm は子プロセスを .Xr fork 2 し、更なる要求へサービスするために戻ります。 子プロセスは ( .Ar name を使用して) サービスを提供し、PPPoE ノードからの .Dv 「成功」 表示を待ちます。 「成功」表示を受けると、 .Nm は次のコマンドをシェルのサブプロセスとして実行します。 .Pp .D1 Ic exec Pa /usr/sbin/ppp Fl direct Ar label .Pp .Ar label は、指定されない場合、 .Ar provider になります。 .Ar exec 引数を使用することにより、別のコマンドを指定可能です。 .Ar provider と .Ar label を指定しない場合には、これは必須です。 この子プロセスは開始時に、標準入力と標準出力が、同じ .Xr netgraph 4 データソケット ( .Xr ng_socket 4 参照) へ接続されます。 .Pp 環境変数 .Ev HISMACADDR と .Ev ACNAME は、子プロセスも使用可能です。 これらはそれぞれ、対向の MAC アドレスと、AC 名に設定されます。 .Pp .Nm は起動時に、 .Dq Ar interface Ns \&: をノード名として使用し、 .Dq pppoe netgraph ノードを適切な .Dq ether ノードへ接続します。その後この .Dq pppoe ノードをローカルの .Dq socket ノードへ接続します。 .Fl F オプションを指定しないと、 .Nm はバックグラウンドモードへ移行し、制御端末を切り離します。 .Fl F オプションを指定すると、 .Nm はフォアグラウンドにとどまります。 .Pp .Fl d オプションを指定すると、追加の診断機能が提供されます (後述の .Sx 診断 を参照してください)。 .Fl n オプションを指定すると、 .Fn NgSetDebug が引数 .Ar ngdebug で呼ばれます。 .Pp .Ar pidfile を指定すると、 .Nm は起動時に、自己のプロセス ID をこのファイルへ書き込みます。 .Sh 診断 前述のように必要な .Xr netgraph 4 ノードを作成した後では、 .Nm は .Xr syslogd 8 を使用し、全ての受け付けた接続を報告します。 .Fl d オプションを指定すると、 .Nm は新規 netgraph ソケットでの子プロセス生成と、 そのサービス提供、 .Xr ppp 8 プログラムの起動に関して報告します。 .Fl n オプションを指定すると、netgraph 診断メッセージも .Xr syslogd 8 へリダイレクトされます。 .Pp .Pa /etc/syslog.conf へ .Bd -literal -offset indent !pppoed *.* /var/log/pppoed.log .Pp を追加し、 .Pa /etc/newsyslog.conf へ .Pp .Dl "/var/log/pppoed.log 640 3 100 * Z" .Pp を追加すると便利な場合があります。 .Sh 関連項目 .Xr NgSetDebug 3 , .Xr netgraph 4 , .Xr ng_ether 4 , .Xr ng_pppoe 4 , .Xr ng_socket 4 , .Xr syslog.conf 5 , .Xr ppp 8 , .Xr syslogd 8 .Sh バグ 指定したインタフェースを他の netgraph ノードが使用している場合、 .Nm は開始できません。現在の .Xr netgraph 4 は、ノードの連鎖を許していないためです。 将来これは変更されるかもしれません。 .Sh 歴史 .Nm ユーティリティは .An Brian Somers Aq brian@Awfulhak.org が記述し、 .Fx 3.4 で初登場しました。 diff --git a/ja_JP.eucJP/man/man8/pppstats.8 b/ja_JP.eucJP/man/man8/pppstats.8 index c02c9416b7..8799c6bb43 100644 --- a/ja_JP.eucJP/man/man8/pppstats.8 +++ b/ja_JP.eucJP/man/man8/pppstats.8 @@ -1,207 +1,207 @@ .\" @(#) %FreeBSD: src/usr.sbin/pppstats/pppstats.8,v 1.10 2000/03/03 09:11:28 sheldonh Exp % .\" $FreeBSD$ .\" .TH PPPSTATS 8 "26 June 1995" .SH 名称 pppstats \- PPP の利用統計を表示する .SH 書式 .B pppstats [ .B -a ] [ .B -v ] [ .B -r ] [ .B -z ] [ .B -c .I ] [ .B -w .I ] [ .I interface ] .ti 12 .SH 解説 .B pppstats は、指定した PPP インタフェースについて、 PPP に関連した統計情報を一定間隔で表示します。 インタフェースは無指定の場合は ppp0 になります。 表示は入力と出力のセクションに横方向に分割され、 それぞれのセクションで、 そのインタフェースで入出力されたパケットの属性と大きさの統計値を示します。 .PP オプションには以下のものがあります: .TP .B -a 差分ではなく絶対値を表示するようにします。 このオプションを指定すると、 すべてのレポートは リンクが成立してからの統計値を表示するようになります。 このオプションが未指定なら、 2 回目とそれ以降のレポートが、 前回のレポートからの統計を表示するようになります。 .TP .B -c \fIcount 表示を .I count 回繰り返します。 このオプションが指定されない場合、 .B -w オプションが指定されていれば無限に繰り返し、 さもなくば 1 回だけ表示されます。 .TP .B -r 使用中のパケット圧縮アルゴリズムによる圧縮率の統計値を要約して 追加表示します。 .TP .B -v Van Jacobson TCP ヘッダ圧縮アルゴリズムのパフォーマンスに関する 統計値を追加表示します。 .TP .B -w \fIwait 繰り返して表示する際の間隔を -.B -w \fIwait +.I wait 秒にします。 無指定時は 5 秒です。 .TP .B -z 通常の表示に替えて、 使用中のパケット圧縮アルゴリズムの性能の統計値を表示します。 .PP .B -z オプションが指定されない場合、入力側には以下の項目が表示されます: .TP .B IN このインタフェースで受信した総バイト数。 .TP .B PACK このインタフェースで受信したパケットの総数。 .TP .B VJCOMP このインタフェースで受信した、ヘッダ圧縮された TCP パケットの数。 .TP .B VJUNC このインタフェースで受信した、ヘッダの圧縮されていない TCP パケットの数。 .B -r オプションが指定されたときは表示されません。 .TP .B VJERR このインタフェースで受信した、 破損した、あるいは不正にヘッダが圧縮された TCP パケットの数。 .B -r オプションが指定されたときは表示されません。 .TP .B VJTOSS 先行するエラーで受理されずに落された、 VJ ヘッダ圧縮された TCP パケットの数。 .B -v オプションが指定されたときだけ表示されます。 .TP .B NON-VJ このインタフェースで受信した非 TCP パケットの総数。 .B -v オプションが指定されたときだけ表示されます。 .TP .B RATIO 使用中のパケット圧縮方法で達成された、 受信パケットの、圧縮時に対する非圧縮時の大きさの比率で表した圧縮率。 .B -r オプションが指定されたときだけ表示されます。 .TP .B UBYTE 受信した圧縮パケットの展開後のバイト総数。 .B -r オプションが指定されたときだけ表示されます。 .PP 出力側には以下の項目が表示されます: .TP .B OUT このインタフェースから送信された総バイト数。 .TP .B PACK このインタフェースから送信した総パケット数。 .TP .B VJCOMP このインタフェースから送信された、 TCP ヘッダを VJ 圧縮した TCP パケットの数。 .TP .B VJUNC このインタフェースから送信された、 TCP ヘッダを VJ 圧縮していない TCP パケットの数。 .B -r オプションが指定されたときは表示されません。 .TP .B NON-VJ このインタフェースから送信された非 TCP パケットの総数。 .B -r オプションが指定されたときは表示されません。 .TP .B VJSRCH VJ ヘッダ圧縮パケットのヘッダエントリをキャッシュで探索した回数。 .B -v オプションが指定されているときだけ表示されます。 .TP .B VJMISS VJ ヘッダ圧縮パケットのヘッダエントリをキャッシュで探索して失敗した回数。 .B -v オプションが指定されているときだけ表示されます。 .TP .B RATIO 使用中のパケット圧縮方法で達成された、送信パケットの、 圧縮後に対する圧縮前の大きさの比率で表した圧縮率。 .B -r オプションが指定されているときだけ表示されます。 .TP .B UBYTE 送信した圧縮パケットの圧縮前のバイト総数。 .B -r オプションが指定されているときだけ表示されます。 .PP .B -z オプションが指定されている場合は、 .B pppstats は上記のものに替えて、 現在使用中のパケット圧縮アルゴリズムについて以下の項目を表示します。 パケット圧縮が使用されていない場合は、これらの項目はすべて 0 になります。 入力側で表示される項目は: .TP .B COMPRESSED BYTE 受信した圧縮パケットのバイト数。 .TP .B COMPRESSED PACK 受信した圧縮パケットの数。 .TP .B INCOMPRESSIBLE BYTE 受信した圧縮不可能な (非圧縮形式で送られた) パケットのバイト数。 .TP .B INCOMPRESSIBLE PACK 受信した非圧縮パケットの数。 .TP .B COMP RATIO (圧縮可能なものと不可能なものの両方を含めた) 圧縮後に対する圧縮前の大きさの比率で表した、 受信パケットの目下の圧縮率。 .PP 出力側で表示される項目は: .TP .B COMPRESSED BYTE 送信された圧縮パケットのバイト数。 .TP .B COMPRESSED PACK 送信された圧縮パケットの数。 .TP .B INCOMPRESSIBLE BYTE 送信された (非圧縮の形式で送信された) 圧縮不可能なパケットのバイト数。 .TP .B INCOMPRESSIBLE PACK 送信された圧縮不可能なパケットの数。 .TP .B COMP RATIO 外へ出て行くパケットの目下の圧縮率。 .SH 関連項目 pppd(8) diff --git a/ja_JP.eucJP/man/man8/pwd_mkdb.8 b/ja_JP.eucJP/man/man8/pwd_mkdb.8 index bf2491c1f7..c18d631784 100644 --- a/ja_JP.eucJP/man/man8/pwd_mkdb.8 +++ b/ja_JP.eucJP/man/man8/pwd_mkdb.8 @@ -1,180 +1,180 @@ .\" Copyright (c) 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)pwd_mkdb.8 8.1 (Berkeley) 6/6/93 .\" %FreeBSD: src/usr.sbin/pwd_mkdb/pwd_mkdb.8,v 1.24 2004/08/07 04:27:52 imp Exp % .\" .\" $FreeBSD$ .\" .Dd June 6, 1993 .Dt PWD_MKDB 8 .Os .Sh 名称 .Nm pwd_mkdb .Nd パスワードデータベースを構築する .Sh 書式 .Nm .Op Fl C .Op Fl N .Op Fl p .Op Fl i .Op Fl d Ar directory .Op Fl s Ar cachesize .Op Fl u Ar username .Ar file .Sh 解説 .Nm ユーティリティは、指定されたファイルから .Xr db 3 スタイルの、セキュリティのしっかりしたデータベースと そうでないデータベースの 2 つを構築します。 そして、これらのデータベースは、それぞれ .Pa /etc/spwd.db と .Pa /etc/pwd.db にインストールされます。 このファイルは、 .Pa /etc/master.passwd にインストールされます。このファイルは 正しいフォーマットでなければなりません .Pf ( Xr passwd 5 を参照)。このシステムで使われるフォーマットは、旧来の バージョン 7 スタイルのフォーマットとは異なるので注意を要します。 .Pp オプションは以下の通りです。 .Bl -tag -width flag .It Fl C パスワードファイルが正しいフォーマットかどうかをチェックします。 どのファイルも変更、追加、削除を行ないません。 .It Fl N ファイルに対するロックを取得できない場合にはエラー状態で終了するように、 .Nm に指示します。 デフォルトでは、ソースファイルに対するロックを、ブロックして待ちます。 データベースの再構築中、このロックは保持されます。 .It Fl p バージョン 7 スタイルのパスワードファイルを作成し、 .Pa /etc/passwd にインストールします。 .It Fl i .Pa master.passwd ファイルのロックの失敗を無視します。 競合が起き得ないような、リリースの過程で NFS 越しにパスワードファイルを 構築する場合に、このオプションは使用されます。 ロックを無視するために .Fl d オプションでデフォルトでないディレクトリも指定しなければなりません。 このオプションのその他の利用はできる限り控えて下さい。 .It Fl d Ar directory .Pa /etc の代わりに、指定された先のディレクトリにデータベースを保存します。 .It Fl u Ar username 指定したユーザのレコードだけ更新します。 単一ユーザに対してのみ作用するユーティリティは、このオプションを使用し、 データベース全体を再構築するオーバヘッドを避けることが出来ます。 .It Fl s Ar cachesize ハッシングライブラリが使用するメモリキャッシュの大きさを、 メガバイト単位で指定します。 ユーザ数が多いシステムでキャッシュを小さくすると、 データベースファイルの再構築に耐えがたいほどの長時間を要します、 おおざっぱな目安では、 .Nm の使用メモリ量はここで指定した大きさの 2 倍をちょっと越えたものになります。 デフォルト値は 2 メガバイトです。 .El .Pp 2 つのデータベースの違いは、安全なバージョンでは、ユーザのパスワードが 暗号化されて入っており、安全でないバージョンでは、パスワードが ``*'' と なっていることです。 .Pp このデータベースは、 C ライブラリパスワードルーチンに使われます .Pf ( Xr getpwent 3 を参照)。 .Pp .Nm ユーティリティは成功したときは 0 を返し、失敗したときは 0 以外を返します。 .Sh 環境変数 .Ev PW_SCAN_BIG_IDS 環境変数が設定されると、 大きなユーザ ID およびグループ ID に対して通常生成される警告メッセージを、 .Nm は抑制します。 ID 値を仮定するプログラムでこのような ID を使用すると、 深刻な問題の原因となります。 .Sh 関連ファイル .Bl -tag -width Pa -compact .It Pa /etc/pwd.db セキュリティのないパスワードデータベースファイル .It Pa /etc/pwd.db.tmp 一時ファイル。 .It Pa /etc/spwd.db セキュリティのあるパスワードデータベースファイル。 .It Pa /etc/spwd.db.tmp 一時ファイル。 .It Pa /etc/master.passwd 現在のパスワードファイル。 .It Pa /etc/passwd バージョン 7 フォーマットのパスワードファイル。 .El .Sh バグ パスワードファイルの不可分な更新が必要なので、 .Nm は、インストールに .Xr rename 2 を使います。 しかし、コマンドラインで指定されたファイルが .Pa /etc ディレクトリと同じファイルシステム上に存在しなければなりません。 .Pp 複数の人が、 .Nm を同時に異なるパスワードファイルに対して走らせると、 明らかにレース (race; 競合) になってしまいます。 .Nm のフロントエンドである .Xr chpass 1 , .Xr passwd 1 , .Xr vipw 8 では、この問題を避けるために必要なロック操作を行います。 -.Sh 可搬性 +.Sh 互換性 以前のバージョンのシステムは、 .Nm 同様のプログラムである .Xr mkpasswd 8 を持っており、それはパスワードファイルに対して .Xr dbm 3 スタイルのデータベースを構築しましたが、 これをインストールするために呼ぶプログラムに依存していました。 このプログラムは、以前のプログラムのユーザが機能の変化で 驚かないように名前が変えられました。 .Sh 関連項目 .Xr chpass 1 , .Xr passwd 1 , .Xr db 3 , .Xr getpwent 3 , .Xr passwd 5 , .Xr vipw 8 diff --git a/ja_JP.eucJP/man/man8/rpc.statd.8 b/ja_JP.eucJP/man/man8/rpc.statd.8 index f0d2b1976f..980a7046ed 100644 --- a/ja_JP.eucJP/man/man8/rpc.statd.8 +++ b/ja_JP.eucJP/man/man8/rpc.statd.8 @@ -1,117 +1,117 @@ .\" -*- nroff -*- .\" .\" Copyright (c) 1995 A.R.Gordon, andrew.gordon@net-tel.co.uk .\" All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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.sbin/rpc.statd/rpc.statd.8,v 1.12 2004/07/02 23:12:55 ru Exp % .\" $FreeBSD$ .\" .Dd September 19, 1995 .Dt RPC.STATD 8 .Os .Sh 名称 .Nm rpc.statd .Nd ホストステータス監視デーモン .Sh 書式 .Nm .Op Fl d .Sh 解説 .Nm ユーティリティは、他のホスト上の .Nm デーモンと協調してステータスの監視 サービスを提供するデーモンです。 デーモンは、ローカルホスト上で動くプログラム (たとえば .Xr rpc.lockd 8 NFS ファイルロックデーモン) からのリクエストを受け取り、 指定したホストのステータスを監視します。 監視中のホストがクラッシュし再起動すると、リモートのデーモンは そのことをローカルデーモンに対し知らせ、さらにローカルデーモンが 監視サービスをリクエストしたローカルプログラムに対して知らせます。 逆に、もしこのホストがクラッシュし再起動すると、 .Nm は再起動時に、クラッシュ時に監視していた全てのホストに対して クラッシュが起こったことを知らせます。 .Pp オプションは以下のとおりです: .Bl -tag -width indent .It Fl d syslog を通してデバッグ情報を書くようになります。 デーモンへの全ての RPC トランザクションが記録されます。 このメッセージは level が LOG_DEBUG で facility が LOG_DAEMON として 記録されます。 エラーの状態は、このオプションに関わらず、log level が LOG_ERR で facility が LOG_DAEMON として syslog を通して記録されます。 .El .Pp .Nm ユーティリティは .Xr inetd 8 から起動してはいけません。これは、プロトコルが、システムの開始時に デーモンが起動されていることを仮定しているためです。 デーモンは .Xr rc 8 によりネットワークの開始後に起動されるべきです。 .Sh 関連ファイル .Bl -tag -width /usr/include/rpcsvc/sm_inter.x -compact .It Pa /var/db/statd.status 現在監視しているホストの不揮発レコード .It Pa /usr/include/rpcsvc/sm_inter.x ローカルアプリケーションが監視リクエストを登録するために使う RPC プロトコルの仕様。 .El .Sh 関連項目 .Xr syslog 3 , .Xr rc 8 , .Xr rpc.lockd 8 .Sh バグ 監視中のホストが (致命的なハードウェア障害などのため) 永久に 見えなくなったことをデーモンが知る手段はありませんが、 ホストや中間のルータの一時的な障害は知ることは出来ます。 現在の実装では、リトライは 10 分間隔、つぎは 1 時間ごとに行い、最後に 24 時間 経つとあきらめます。 .Pp プロトコルでは、監視関係の確立に、 ローカルとリモートの両方のデーモンで対称に監視リクエストを行うことを 要求しています。 これは NFS のロックプロトコルの場合は便利ですが、 おそらく他のアプリケーション用の監視システムとしての 有用性が低下しています。 .Pp 現在の実装では、各監視ホストにつき 1Kbytes の領域が ステータスファイル内 (VM 内にも) に確保されます。 このため、 多くのクライアントを抱える NFS サーバでは非効率的であるかもしれません。 -.Sh 標準 +.Sh 規格 実装は、 X/Open CAE Specification C218, "Protocols for X/Open PC Interworking: XNFS, Issue 4", ISBN 1 872630 66 9 をもとにしています。 diff --git a/ja_JP.eucJP/man/man8/rtadvd.8 b/ja_JP.eucJP/man/man8/rtadvd.8 index d488052a73..6b672c9ed9 100644 --- a/ja_JP.eucJP/man/man8/rtadvd.8 +++ b/ja_JP.eucJP/man/man8/rtadvd.8 @@ -1,203 +1,202 @@ .\" %FreeBSD: src/usr.sbin/rtadvd/rtadvd.8,v 1.14 2003/08/15 19:13:53 ume Exp % .\" $KAME: rtadvd.8,v 1.24 2002/05/31 16:16:08 jinmei Exp $ .\" .\" Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. .\" All rights reserved. .\" .\" 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. .\" 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. Neither the name of the project nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``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 PROJECT OR CONTRIBUTORS 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$ .\" .Dd May 17, 1998 .Dt RTADVD 8 .Os .Sh 名称 .Nm rtadvd .Nd ルータ通知デーモン .Sh 書式 .Nm .Op Fl dDfMRs .Op Fl c Ar configfile .Ar interface ... .Sh 解説 .Nm は指定された .Ar interfaces に対して ルータ通知パケットを送信します。 .Pp このプログラムは実行時に自身をデーモン化します。 そして、定期的にルータ通知パケットを送信します。 また、エンドホストが送信したルータ要請メッセージに対しても、これで応答します。 .Pp ルータ通知は、インタフェース毎に設定可能であり、 .Xr rtadvd.conf 5 で記述されています。 .Pp 設定ファイル中でインタフェースに対する記述が存在しない、または 設定ファイルが存在しない場合には、 .Nm は全てのパラメータに対してデフォルト値を設定します。 特に、 .Nm は全てのインタフェースの経路を経路表より取得し、 リンク上のプレフィックスとして通知します。 .Pp .Nm はまた、経路表を監視します。 もしインタフェースダイレクト経路が 通知しているインタフェースに追加された場合で、 設定ファイルに静的なプレフィックスが指定されていない場合、 .Nm は対応するプレフィックスを通知リストへ追加します。 .Pp 同様に、インタフェースダイレクト経路が削除された場合、 .Nm は 0 の最終有効期間と推奨有効期間のプレフィックスを通知開始し、 これを受信するホストがリナンバリング時に 新規プレフィックスへ切り替えることを助けます。 0 の最終有効期間が受信されたホストにおいて、 自動構成されたアドレスが即時に無効化可能ではないことに注意してください。 仕様によれば、ホストは一定期間はアドレスを保持することになっており、 これは典型的には 2 時間です。 0 の最終有効期間が意図するところは、アドレスの価値を低下させ、 価値が低下していない新規アドレスを新規接続の始点アドレスとして 使用すべきことを示すことです。 この動作は 2 時間継続します。 その後、 .Nm はプレフィックスを完全に通知リストから削除し、 後続する通知にはこのプレフィックス情報は含まれなくなります。 .Pp さらに、通知中のインタフェースの状態が変わった場合、 最新状態に基づいて、 .Nm はルータ通知を開始または停止します。 .Pp .Fl s オプションを使用してこの動作を無効化できます。 この場合 .Nm は経路表を監視せず、上述のすべての機能が抑制されます。 .Pp 基本的には、ホストは、 ルータ通知メッセージを如何なる時にも送出しては「なりません」 (RFC 2461 の 6.2.3 節)。 しかしながら、プレフィックス情報やリンク MTU といったパラメータの通知を ホストに許すと有用な場合があります。 よって、すべての通知を行っているインタフェース上で ルータの有効期間を明示的に 0 に設定している場合、 .Nm を起動可能です。 .Pp コマンドラインオプションは次の通りです: .Bl -tag -width indent .\" .It Fl c 設定ファイルとして代わりの場所 .Ar configfile を指定します。 デフォルトでは .Pa /etc/rtadvd.conf が使用されます。 .It Fl d デバッグ情報を表示します。 .It Fl D より詳細なデバッグ情報を表示します。 .It Fl f フォアグラウンドモードです (デバッグ時に有用です)。 本オプションが指定された場合、ログメッセージは stderr へダンプされます。 .It Fl M .\" Specify an interface to join the all-routers site-local multicast group. .\" は join to the ... group の意味? .\" horikawa@jp.FreeBSD.org 2001/07/08 全ルータサイトローカルマルチキャストグループに加入するよう、 インタフェースに指示します。 デフォルトでは、 .Nm は、通知を行うインタフェースで最初にコマンドラインに登場するものに加入します。 本オプションは、ルーティングリナンバリングサポートを有効にする .Fl R オプションと共に指定した場合のみ有用です。 .It Fl R ルータリナンバリング (ルータの番号付け直し) 要求を受け付けます。 これを有効にする場合、セキュリティ上の理由から、IPsec の設定をお勧めします。 本オプションは、現在無効化されており、 .Nm は、警告メッセージを表示して無視します。 .It Fl s 静的プレフィックスモードです。 経路表を監視しません。 .El .Pp シグナル .Dv SIGUSR1 を受信すると、 .Nm は現在の内部状態を .Pa /var/run/rtadvd.dump へダンプします。 .Pp .Nm を綺麗に殺したい場合には .Dv SIGTERM を使用してください。 この場合、 +.Pq RFC 2461 の 6.2.5 節に従って ルータ有効期間 (lifetime) 0 のルータ通知を、 .Nm は、すべてのインタフェースに送信します。 .Sh 戻り値 .Nm プログラムは、成功時には 0 で終了し、失敗時には >0 で終了します。 -.Sh 診断 -.Ex -std .Sh 関連ファイル .Bl -tag -width Pa -compact .It Pa /etc/rtadvd.conf デフォルトの設定ファイル。 .It Pa /var/run/rtadvd.pid 現在実行中の .Nm の PID を含みます。 .It Pa /var/run/rtadvd.dump .Nm の内部状態をここにダンプします。 .El .Sh 関連項目 .Xr rtadvd.conf 5 , .Xr rtsol 8 .Sh 歴史 .Nm コマンドは WIDE Hydrangea IPv6 プロトコルスタックキットで はじめて登場しました。 .Sh バグ 以前の記述でのユーザへの推奨は、望まない .Xr icmp6 4 リダイレクトメッセージを避けるために、ルータ通知メッセージを .Nm が上流リンクへ通知しないようにするというものでした。 しかしながら、IETF ipng ワーキンググループでの後の議論によると、 到達性を保証するために、 ネットワークトポロジに依存せずに全ルータはメッセージを通知すべきです。 diff --git a/ja_JP.eucJP/man/man8/scspd.8 b/ja_JP.eucJP/man/man8/scspd.8 index 17f031a03b..5c08a0a094 100644 --- a/ja_JP.eucJP/man/man8/scspd.8 +++ b/ja_JP.eucJP/man/man8/scspd.8 @@ -1,584 +1,584 @@ .\" .\" =================================== .\" HARP | Host ATM Research Platform .\" =================================== .\" .\" .\" This Host ATM Research Platform ("HARP") file (the "Software") is .\" made available by Network Computing Services, Inc. ("NetworkCS") .\" "AS IS". NetworkCS does not provide maintenance, improvements or .\" support of any kind. .\" .\" NETWORKCS MAKES NO WARRANTIES OR REPRESENTATIONS, EXPRESS OR IMPLIED, .\" INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY .\" AND FITNESS FOR A PARTICULAR PURPOSE, AS TO ANY ELEMENT OF THE .\" SOFTWARE OR ANY SUPPORT PROVIDED IN CONNECTION WITH THIS SOFTWARE. .\" In no event shall NetworkCS be responsible for any damages, including .\" but not limited to consequential damages, arising from or relating to .\" any use of the Software or related support. .\" .\" Copyright 1994-1998 Network Computing Services, Inc. .\" .\" Copies of this Software may be made, however, the above copyright .\" notice must be reproduced on all copies. .\" .\" @(#) %FreeBSD: src/usr.sbin/atm/scspd/scspd.8,v 1.6 2004/07/02 23:12:39 ru Exp % .\" .\" WORD: Server Cache Synchronization Protocol サーバキャッシュ同期プロトコル .\" WORD: Cache Alignment キャッシュアラインメント .\" WORD: finite state machine 有限状態機械 .\" .\" $FreeBSD$ .\" .\" .Dd August 21, 1998 .Dt SCSPD 8 .Os .Sh 名称 .Nm scspd .Nd "SCSP デーモン" .Sh 書式 .Nm .Op Fl f Aq Ar cfg\-file .Op Fl d .Op Fl T Ns Aq Ar options .Sh 解説 .Nm ユーティリティは、 Host ATM Research Platform (HARP) ネットワーキングソフトウェア用の、 サーバキャッシュ同期プロトコル (Server Cache Synchronization Protocol; SCSP) の実装のひとつです。 .Nm ユーティリティは、 あるホスト上の (1 つ以上の) サーバの (1 つ以上の) キャッシュと、 リモートホスト上のサーバのキャッシュを同期させます。 SCSP は多くの異なったプロトコルに対して定義されますが、 現在のバージョンの .Nm は ATMARP のみサポートします。 .Pp .Nm と .Xr atmarpd 8 を使用すると、 単一の ATM LIS に対して複数の ATMARP サーバを提供することが可能となります。 例えば、 長距離リンクで接続される複数のローカルエリア ATM ネットワークにより、 LIS が構成される場合に有用でしょう。 各ローカルエリアネットワークは各自の ATMARP サーバを持つことができ、 すべてのサーバのキャッシュは SCSP により同期されます。 このような場合、もし長距離リンクが切断されても、 ローカルエリアネットワーク上のホストは他のローカルホストとの接続性を保ちます (全ローカルホストはローカルの ATMARP サーバを使用するからです)。 長距離リンクが回復すると、SCSP はサーバのキャッシュを再同期し、 リモートホストとの接続性を回復します。 ATMARP キャッシュが同期される前に、 .Nm と .Xr atmarpd 8 の両方が走行している必要があります。 .Pp .Nm ユーティリティは、 RFC 2334, .%T "Server Cache Synchronization Protocol (SCSP)" および .Pa draft\-ietf\-ion\-scspd\-atmarpd\-00.txt , .%T "A Distributed ATMARP Service using SCSP" に示されるように SCSP を実装しています。 .Pp .Nm が実行を開始すると、 自己に与えられたコマンドラインを解析し、バックグラウンドに移行します。 .Sh 用語 SCSP に関する用語には混乱しやすいものがあります。 この文書では、次の定義を使用します: .Pp .Em "クライアントサーバ" もしくは .Em "ローカルサーバ" は、 .Nm と同じホストで実行されているサーバを意味します。 このサーバのキャッシュは、複数のリモートサーバと同期されます。 .Em "サーバ" という言葉が単独で使用される場合、 .Em "クライアントサーバ" を意味します。 .Pp .Em "リモートサーバ" は、 .Nm が実行されているホストとは別のホスト上で実行されているサーバを 意味します。 .Pp .Em "直接接続されたサーバ (Directly Connected Server; DCS)" は、 .Nm が直接通信を行うリモートサーバを意味します。 リモートサーバもまた SCSP の実装のひとつを実行しているでしょう。 .Pp .Em "キャッシュアラインメント (Cache Alignment; CA)" には、 2 つの意味があります。 キャッシュアラインメントプロトコルは SCSP プロトコル仕様の一部であり、 キャッシュアラインメント有限状態機械 (FSM) は キャッシュアラインメントプロトコルを実装する有限状態機械です。 .Sh オプション コマンドラインオプションは次の通りです: .Bl -tag -width "-f " .It Fl f Aq Ar cfg\-file 設定ファイルの名前を指定します。 このオプションを指定しないと、 .Nm はファイル .Pa /etc/scspd.conf を探します。 .It Fl d .Nm をデバッグモードで実行することを指定します。 デバッグモードでは、デーモンはバックグラウンドにはなりません。 ログメッセージは、 設定ファイルに指定されたログファイルではなく、標準出力に書かれます。 .It Fl T Ns Aq Ar options 実行に際して、指定したイベントとメッセージをトレースするよう、 .Nm に指示します。 .Fl T フラグの後には、次に示すオプションを 1 つ以上付けます: .Pp .Bl -tag -width 4n -compact .It Cm c .Nm の CA 有限状態機械 (FSM) をトレースします。 .It Cm h .Nm の Hello FSM をトレースします。 .It Cm i .Nm のクライアントインタフェース FSM をトレースします。 .It Cm C CA, CSUS, CSU リクエストと CSU リプライのメッセージを トレースします。 .It Cm H Hello メッセージをトレースします。 .It Cm I .Nm のクライアントと相互にやりとりする インタフェースメッセージをトレースします。 .El .El .Sh 設定 設定ファイルは、一連の設定文から成ります。 これらの文は、 .Nm がキャッシュの同期を行う対象となる、 ローカルおよびリモートの両方のサーバに関する情報を指定します。 .Nm の設定方法については、 RFC 2334, .%T "Server Cache Synchronization Protocol (SCSP)" および .Pa draft\-ietf\-ion\-scspd\-atmarpd\-00.txt , .%T "A Distributed ATMARP Service using SCSP" が役立つでしょう。 .Pp コメント以外の設定文はセミコロンで終端します。 文によってはブロックを持ち、ブレース .No ( Dq Li { と .Dq Li } ) で区切ります。 設定文のキーワードは大文字小文字の区別はありませんが、 パラメータには区別のあるものがあります (例えばインタフェース名)。 設定文は複数行に渡ることが可能です。 .Ss コメント 3 種類のコメントを使用可能です: .Bl -hang .It Sy "# comments" : .Dq Li # から行末までのすべての文字は無視されます。 .It Sy "C コメント" : .Dq Li /* と .Dq Li */ の間のすべての文字は無視されます。 .It Sy "C++ コメント" : .Dq Li // から行末までのすべての文字は無視されます。 .El .Ss 文 .Nm が理解する設定文を示します: .Bd -literal Server { Protocol ; Netif ; ServerGroupID ; FamilyID ; DCS { ATMaddr ; ID ; CAReXmitInt ; CSUSReXmitInt ; CSUReXmitInt ; CSUReXmitMax ; HelloDead ; HelloInt ; Hops ; }; }; Log { File ; Syslog; }; .Ed .Pp 設定ファイル内でホストアドレスを指定する必要があるところでは、 DNS での名前でも、10 進数をドットで繋ぐ IP アドレスの形式でも、 どちらでも使用可能です。 .Pp ATM アドレスは 16 進数の文字列として指定します。 前に .Dq Li 0x を付けてもかまいません。 アドレス内のフィールドはピリオドで区切ってもかまいません。 ピリオドは読みやすさのためだけにあり、単に無視されます。 ATM アドレスの長さは 20 バイトです。 先行する 0 を含めて、全アドレスを指定する必要があります。 例: .Pp .Dl "0x47.0005.80.ffe100.0000.f21a.0170.0020481a0170.00" .Ss "Server 文" .Ic server 文はクライアントサーバを指定します。 このクライアントサーバのキャッシュは、 リモートホスト上で実行されている他のサーバのキャッシュと同期されます。 .Nm によってキャッシュが同期される各クライアントサーバごとに、 1 つの .Ic server 文を設定ファイルに書きます。 .Ic server 文の書式は次の通りです: .Bd -ragged -offset indent .Ic Server .Aq Ar name { .Aq Ar statements }; .Ed .Pp .Ar name は .Ic server 文で指定する必要がありますが、 .Nm はこれを使用しません。 サーバの用途に関する短い記述を与えるものと期待されています。 .Pp .Ic server 文は、いくつかの副文を持ち、 .Nm の設定の詳細を指定します。 副文を示します: .Bl -tag -width indent .It Ic Protocol Cm ATMARP ; 現在のバージョンの .Nm がサポートする唯一のプロトコルは .Cm ATMARP です。 .Ic protocol 文は常に指定する必要があります。 .It Ic Netif Aq Ar intf ; .Ic netif 文は、クライアントサーバがサービスを提供している ATM ネットワークインタフェース名を指定します。 .Ic netif 文は常に指定する必要があります。 .It Ic ServerGroupID Aq Ar ID ; .Ic ServerGroupID 文は、 .Nm が同期を行うサーバ群に対する識別子を指定します。 .Ar ID は 10 進数として指定され、範囲は 0 - 65,535 です。 SCSP セッションにより同期されるキャッシュを持つ全サーバにおいて、 サーバグループ ID は同一である必要があります。 つまり、ホストのサーバグループ ID は、 .Ic server 文内で指し示されるすべての直接接続されたサーバ (DCS) において同一である必要があるということです。 .Ic ServerGroupID 文は常に指定する必要があります。 .It Ic FamilyID Aq Ar ID ; .Ic familyID 文は、 ホスト群間で実行される並列 SCSP セッションのファミリに対する識別子を指定します (ファミリとはすなわち、 異なったプロトコル ID ではあっても同一のサーバ集合である、 SCSP セッションの集合です)。 .Ar ID は 10 進数として指定され、範囲は 0 - 65,535 です。 ファミリ ID は現在 .Nm は使用しません。 .El .Ss "DCS 文" .Ic DCS 文は .Ic server 文の副文であり、 直接接続されたサーバ (DCS) の特性を指定します。 .Ic server 文は、 .Nm が情報交換する DCS ごとに 1 つの .Ic DCS 文を持ちます。 .Ic DCS 文は多くの副文を持ち、 DCS の設定に関する詳細を指定します。 それらを次に示します: .Bl -tag -width indent .It Ic ATMaddr Aq Ar ATM\ address ; .Ic ATMaddr 文は DCS の ATM アドレスを指定します。 .Ic ATMaddr 文は常に指定する必要があります。 .It Ic ID Aq Ar host ; .Ic ID 文は DCS の SCSP 識別子を指定します。 ATMARP における ID は、 DCS の ATM インタフェースに関連付けられた IP アドレスまたは DNS での名前です。 .Ic ID 文は常に指定する必要があります。 .It Ic CAReXmitInt Aq Ar int ; .Ic CAReXmitInt 文は、 CA メッセージの再送間隔時間を指定します。 CA メッセージが送信されて確認応答が .Ic CAReXmitInt 秒以内に受信されない場合、 メッセージが再送されます。 .Ic CAReXmitInt のデフォルト値は 3 秒です。 .It Ic CSUSReXmitInt Aq Ar int ; .Ic CSUSReXmitInt 文は、 CSU Solicit メッセージの再送間隔時間を指定します。 CSUS メッセージが送信されたとき、 CSUS によりリクエストされた Cache State Advertisement (CSA) が .Ic CSUSReXmitInt 秒以内に受信されないと、 別の CSUS メッセージによる再リクエストが発生します。 .Ic CSUSReXmitInt のデフォルト値は 3 秒です。 .Ic CSUSReXmitInt と .Ic CSUReXmitInt に関して 混乱しないようにしてください。 .It Ic CSUReXmitInt Aq Ar int ; .Ic CSUReXmitInt 文は、 CSU リクエストメッセージの再送間隔時間を指定します。 CSU リクエストメッセージが送信されたとき、 .Ic CSUReXmitInt 秒以内に CSU リプライメッセージによって確認応答が返されない CSA は再送されます。 .Ic CSUReXmitInt のデフォルト値は 2 秒です。 .Ic CSUReXmitInt と .Ic CSUSReXmitInt に関して 混乱しないようにしてください。 .It Ic CSUReXmitMax Aq Ar cnt ; .Ic CSUReXmitMax 文は、前述のように CSA が再送される回数を指定します。 この回数を越えると、SCSP は CSA を諦めて捨ててしまいます。 .Ic CSUReXmitMax のデフォルト値は 5 です。 .It Ic HelloDead Aq Ar cnt ; .Ic HelloDead 文は、 Hello メッセージに入れられて DCS に送られる、Hello Dead Factor を指定します。 .Ic HelloDead No * Ic HelloInt 秒間 DCS からなにも受信しない場合、 .Dq "DCS down" 状態が検出されます。 .Ic HelloDead のデフォルト値は 3 です。 .It Ic HelloInt Aq Ar int ; .Ic HelloInt 文は、 Hello メッセージに入れられて DCS に送られる、Hello Interval を指定します。 .Ic HelloInt のデフォルト値は 3 秒です。 .It Ic Hops Aq Ar cnt ; .Ic Hops 文は (DCS から DCS への) ホップ数を指定し、 ローカルサーバを起点とする CSA の中に指定されます。 この値は最小でもサーバグループの直径である必要があります。 すなわち、 サーバ群中の全サーバに CSA が伝播するのに十分な大きさが必要ということです。 .Ic Hops のデフォルト値は 3 です。 .El .Ss "Log 文" .Ic log 文は、 .Nm の操作情報をどのようにログするかを指定します。 .Nm ユーティリティは、ログ情報をファイルに書き込むことができますし、 システムのログに書き込むこともできますし、両方とも行うことも可能です。 .Bl -tag -width indent .It Ic File Aq Ar file\ name ; .Ic file 文は、 .Nm がログメッセージを 指定された名前のファイルに書き込むことを指定します。 ファイルが既に存在する場合、ログメッセージはファイルの最後に追加されます。 .It Ic Syslog ; .Ic syslog 文は、 .Nm がログメッセージを syslog ファシリティに書き込むことを指定します。 .Nm ユーティリティは、ファシリティコード .Dv LOG_DAEMON を使用して、 メッセージを syslog に書き込みます。 .El .Pp .Ic log 文を指定しないと、 .Nm はログメッセージを システムのログに書き込みます。 .Ic file と .Ic syslog の両方が指定されると、 指定された名前のファイルとシステムのログの両方に、 .Nm はログメッセージを書き込みます。 .Ss 使用例 .Nm の簡単な設定ファイルの例は次のようになります: .Bd -literal -offset indent server atmarp_ni0 { protocol ATMARP; netif ni0; ServerGroupID 23; DCS { ID 10.1.1.2; ATMaddr 0x47.0005.80.ffdc00.0000.0002.0001.002048061de7.00; hops 2; }; }; .Ed .Pp この設定では、ネットワークインタフェース ni0 上で実行されている ATMARP サーバのキャッシュと、 IP アドレス 10.1.1.2 のホスト上で実行されている 2 番目のサーバのキャッシュとの 同期をとります。 ログメッセージはシステムのログに書き込まれます。 .Sh シグナル処理 次のシグナルを使用して .Nm を制御できます: .Bl -tag -width indent .It Dv SIGHUP 設定ファイルを再度読み込み、 .Nm を再スタートします。 .It Dv SIGINT デバッグ情報をファイルにダンプします。 .Dv SIGINT を受信すると、 .Nm は制御ブロックのサマリをテキストファイルにダンプします ( .Sx 関連ファイル 参照)。 .El .Sh 関連ファイル .Bl -tag -width indent .It Pa /etc/scspd.conf .Nm のデフォルトの設定ファイルの名前です。 別の名前は、コマンドラインで .Fl f オプションで指定可能です。 .It Xo .Sm off .Pa /tmp/scspd. .Aq Ar pid .Pa \&. .Aq Ar seq .Pa .out .Sm on .Xc デバッグ情報をダンプするファイルの名前です。 .Nm ユーティリティが .Dv SIGINT シグナルを受信すると、 制御ブロックのサマリをこのファイルに書き込みます。 .Aq Ar pid はデーモンのプロセス ID であり、 .Aq Ar seq はダンプがとられるごとに増えるシーケンス番号です。 .It Xo .Sm off .Pa /tmp/scspd. .Aq Ar pid .Pa .trace .Sm on .Xc トレースファイルです。 .Fl T オプションがコマンドラインで指定されると、 .Nm ユーティリティはトレース情報をこのファイルに書き込みます。 .El -.Sh 関連ファイル +.Sh 関連項目 .Xr atm 8 , .Xr atmarpd 8 .Rs .%O "RFC 2334" .%T "Server Cache Synchronization Protocol (SCSP)" .Re .Rs .%O "draft\-ietf\-ion\-scsp\-atmarpd\-00.txt" .%T "A Distributed ATMARP Service Using SCSP" .Re .Sh バグ .Nm が終了して再スタートすると、 以前に同期されたキャッシュエントリがタイムアウトして リフレッシュされるまでの期間、不安定になります。 .Pp バグは .Aq harp\-bugs@magic.net に報告してください。 .Sh COPYRIGHT Copyright (c) 1994-1998, Network Computing Services, Inc. .Sh 作者 .An John Cavanaugh , Network Computing Services, Inc. .An Mike Spengler , Network Computing Services, Inc. .An Joe Thomas , Network Computing Services, Inc. .Sh 謝辞 本ソフトウェアは、 Defense Advanced Research Projects Agency (DARPA) の協力により開発されました。 .Sh 日本語訳 .An 堀川和雄 Aq horikawa@jp.FreeBSD.org diff --git a/ja_JP.eucJP/man/man8/setpmac.8 b/ja_JP.eucJP/man/man8/setpmac.8 index cc2fa6351c..f9df7c4adf 100644 --- a/ja_JP.eucJP/man/man8/setpmac.8 +++ b/ja_JP.eucJP/man/man8/setpmac.8 @@ -1,67 +1,67 @@ .\" Copyright (c) 2003 Networks Associates Technology, Inc. .\" All rights reserved. .\" .\" This software was developed for the FreeBSD Project by Chris Costello .\" at Safeport Network Services and Network Associates Labs, the .\" Security Research Division of Network Associates, Inc. under .\" DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the .\" DARPA CHATS research program. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``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 AUTHORS OR CONTRIBUTORS 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.sbin/setpmac/setpmac.8,v 1.5 2004/07/02 23:12:56 ru Exp % .\" .\" $FreeBSD$ -.Dd JANUARY 14, 2003 +.Dd January 14, 2003 .Os .Dt SETPMAC 8 .Sh 名称 .Nm setpmac .Nd "別の MAC プロセスラベルにおけるコマンド実行" .Sh 書式 .Nm .Ar label .Ar command .Op Ar arg ... .Sh 解説 .Nm ユーティリティは、新規プロセスをフォークし、ラベルを .Ar label に設定しようとし、成功すると .Ar command を実行します。 .Sh 関連項目 .Xr mac 4 , .Xr maclabel 7 , .Xr getfmac 8 , .Xr getpmac 8 , .Xr setfmac 8 .Sh 作者 このソフトウェアは、 Network Associates Labs, the Security Research Division of Network Associates Inc. が、DARPA CHATS 研究プログラムの一部として、 DARPA/SPAWAR 契約 N66001-01-C-8035 .Pq Dq CBOSS のもとに、 .Fx Project に寄贈しました。 diff --git a/ja_JP.eucJP/man/man8/spppcontrol.8 b/ja_JP.eucJP/man/man8/spppcontrol.8 index 301281398e..fbaba57f61 100644 --- a/ja_JP.eucJP/man/man8/spppcontrol.8 +++ b/ja_JP.eucJP/man/man8/spppcontrol.8 @@ -1,259 +1,259 @@ .\" Copyright (C) 1997, 2001 by Joerg Wunsch, Dresden .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``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(S) 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/sbin/spppcontrol/spppcontrol.8,v 1.14 2004/07/02 21:45:05 ru Exp % .\" .\" $FreeBSD$ -.Dd October 11, 1997 +.Dd December 30, 2001 .Os .Dt SPPPCONTROL 8 .Sh 名称 .Nm spppcontrol .Nd sppp インタフェースのパラメータの表示または設定 .Sh 書式 .Nm .Op Fl v .Ar ifname .Op Ar parameter Ns Op Li = Ns Ar value .Op Ar ... .Sh 解説 .Xr sppp 4 ドライバには、 .Xr ifconfig 8 にて調整可能な設定の他に、 多くの追加引数やオプションパラメータが必要となるかもしれません。 これらには、認証プロトコルのパラメータなどと、 他の調整可能なコンフィギュレーション変数があります。 .Nm ユーティリティは、現在の設定を表示したり、 これらのパラメータを必要に応じて調整するために使用可能です。 .Pp どのような用途においても、 .Nm 呼び出しにおいては、少なくともパラメータ .Ar ifname を指定して、インタフェースの名前を指定する必要があります。 このインタフェースに対して、設定がおこなわれるかまたは設定が表示されます。 .Xr ifconfig 8 または .Xr netstat 1 を使用して、どのインタフェースが使用可能かを確認してください。 .Pp 他にパラメータを指定しない場合、 .Nm は、 .Ar ifname の現在の設定を列挙 (list) して終了します。 報告される設定にはインタフェースの現在の PPP フェーズも含まれ、その名は .Em dead , .Em establish , .Em authenticate , .Em network , .Em terminate のうちの 1 つです。 認証プロトコルがインタフェースに対して設定されている場合、 使用するプロトコル名と、使用するまたは期待されるシステム名と、 そして認証プロトコルに対して使用可能なオプションがあればそれを表示します。 認証に使用する秘密情報 ( .Em キー とも呼ばれます) は、この機能が使用するシステムコールによって返されないため、 表示されません。 .Pp 追加のパラメータを指定する場合、スーパユーザの特権が必要になり、コマンドは .Dq 設定 (set) モードにて動作します。 オプション .Fl v が有効にならない限り、静かに動作します。 .Fl v を指定すると、他のすべての動作をおこなった後、 最後に上述のように設定を表示します。 インタフェースが現在 .Em dead フェーズ以外である場合、このモードを使用しようとしてもリジェクトされます。 インタフェースを強制的に .Em dead フェーズにするためには、 .Xr ifconfig 8 をパラメータ .Cm down 付きで呼び出せば良いことに注意してください。 .Pp 現在サポートされているパラメータには次のものがあります: .Bl -tag -offset indent -width indent .It Ar authproto Ns Li = Ns Em protoname 相手と自分の両方の認証プロトコルを .Ar protoname に設定します。 プロトコル名は .Dq Li chap , .Dq Li pap , .Dq Li none のいずれかです。 最後の場合、 指定したインタフェースにおいて認証プロトコルは使用されなくなります。 この副作用として、 このインタフェースに関する認証関連の他のパラメータもまた消去されます (つまり、システム名と認証における秘密情報を忘れてしまいます)。 .It Va myauthproto Ns Li = Ns Em protoname 上と同じですが、リンクの自分側にのみ作用します。 すなわち、 相手が認証者であり、かつ、 自分を認証してもらう必要がある場合に使用されるプロトコルです。 .It Va hisauthproto Ns Li = Ns Em protoname 上と同じですが、リンクの相手側にのみ作用します。 .It Va myauthname Ns Li = Ns Em name 認証プロトコルにおける自分のシステム名を設定します。 .It Va hisauthname Ns Li = Ns Em name 認証プロトコルにおける相手のシステム名を設定します。 CHAP では、これはヒントとしてのみ使用され、 相手が違う名前を提供した場合には警告メッセージが表示されます。 PAP では、これは相手が相手自身であることを認めさせるときに使用すべき名前です (相手の秘密情報と関連があります)。 .It Va myauthsecret Ns Li = Ns Em secret 認証フェーズにおいて使用する、自分の秘密情報 (キーとパスワード) を設定します。 CHAP では、これは相手のチャレンジに基づく 返答のハッシュ値を計算するために使用されます。 PAP では、これはシステム名とともにプレインテキストにて送信されます。 秘密情報にシェルのメタ文字 (や空白) を含む場合、 秘密情報をシェルからエスケープすることを忘れないようにしてください。 .It Va myauthkey Ns Li = Ns Em secret 上と同様です。 .It Va hisauthsecret Ns Li = Ns Em secret 上と同様ですが、 自分が認証者であり、かつ相手を認証する必要がある場合に使用されます。 .It Va hisauthkey Ns Li = Ns Em secret 上と同様です。 .It Va callin 相手から呼び出されるときにのみ、相手を認証する必要があり、 自分が呼び出す場合には不要であることを示します。 相手が対称的な認証プロトコルを実装していない場合に、必要となります (例えば Ascend ルータ)。 .It Va always .Va callin の逆です。どちらが呼び出す場合でも、 常に相手を認証する必要があることを示します。 これがデフォルトであり、 .Dq list モードでは明示的に表示されません。 .It Va norechallenge CHAP でのみ意味があります。 最初に CHAP 交換が成功したならば、相手に再チャレンジしません。 相手の実装が壊れていて、 接続が確立した後の再チャレンジを認識しない場合、対処として使用します。 .It Va rechallenge CHAP において、接続がネットワークフェーズである間、 ランダムな間隔にて再チャレンジを送信します (現在、間隔は 300 からおよそ 800 秒です)。 これがデフォルトであり、 .Dq list モードでは明示的に表示されません。 .It Va lcp-timeout Ns Li = Ns Ar timeout-value LCP リスタートタイマの値を変更します。 値はミリ秒単位です。 値は 10 から 20000 ms の間であることが必要です。 デフォルトは 3000 ms です。 .It Va enable-vj Van Jacobsen ヘッダ圧縮のネゴシエーションを有効化します。 (デフォルトで有効です)。 .It Va disable-vj Van Jacobsen ヘッダ圧縮のネゴシエーションを無効化します。 .It Va enable-ipv6 IPv6 ネットワーク制御プロトコルのネゴシエーションを有効化します。 (カーネルの IPv6 が有効な場合、デフォルトで有効です)。 .It Va disable-ipv6 IPv6 ネットワーク制御プロトコルのネゴシエーションを無効化します。 IPv6 を有効可したカーネルでは、 すべての IPv4 インタフェースが自動的に IPv6 アドレスを割り当てられます。 本オプションにより、 リンクが IPv6 をネゴシエーションすることを運用として禁止できます。 IPv6 インタフェースの初期化には複数のパケットの送出を要しますので、 (ダイヤルオンデマンドのインタフェースでは) 望まないトラフィックコストがかかります。 .El .Sh 使用例 .Bd -literal # spppcontrol bppp0 bppp0: phase=dead myauthproto=chap myauthname="uriah" hisauthproto=chap hisauthname="ifb-gw" norechallenge lcp-timeout=3000 enable-vj enable-ipv6 .Ed .Pp .Li bppp0 の設定を表示します。 インタフェースは、現在 .Em dead フェーズ、つまり LCP 層はダウンしているため、通信できません。 接続の両端は CHAP プロトコルを使用し、 当方のシステム名は .Dq Li uriah であるとリモート側に対して告げ、 リモート側は .Dq Li ifb-gw という名前で認証されると期待されます。 最初の CHAP 交換が成功すると、更なる CHAP チャレンジは送信されません。 おそらく CHAP に関する双方の秘密情報があるでしょうが、それらは表示されません。 .Bd -literal # spppcontrol bppp0 \e authproto=chap \e myauthname=uriah myauthsecret='some secret' \e hisauthname=ifb-gw hisauthsecret='another' \e norechallenge .Ed .Pp インタフェースを前の例の状態にするために、このように .Nm を呼び出したかもしれません。 .Sh 関連項目 .Xr netstat 1 , .Xr sppp 4 , .Xr ifconfig 8 .Rs .%A B. Lloyd .%A W. Simpson .%T "PPP Authentication Protocols" .%O RFC 1334 .Re .Rs .%A W. Simpson, Editor .%T "The Point-to-Point Protocol (PPP)" .%O RFC 1661 .Re .Rs .%A W. Simpson .%T "PPP Challenge Handshake Authentication Protocol (CHAP)" .%O RFC 1994 .Re .Sh 歴史 .Nm ユーティリティは .Fx 3.0 に登場しました。 .Sh 作者 プログラムの記述を .An J\(:org Wunsch, Dresden がおこないました。 diff --git a/ja_JP.eucJP/man/man8/swapon.8 b/ja_JP.eucJP/man/man8/swapon.8 index 9cfd894b12..53e7864d70 100644 --- a/ja_JP.eucJP/man/man8/swapon.8 +++ b/ja_JP.eucJP/man/man8/swapon.8 @@ -1,166 +1,166 @@ .\" Copyright (c) 1980, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)swapon.8 8.1 (Berkeley) 6/5/93 .\" %FreeBSD: src/sbin/swapon/swapon.8,v 1.27 2004/04/09 19:58:39 markm Exp % .\" .\" $FreeBSD$ .\" -.Dd June 5, 1993 +.Dd December 28, 2002 .Dt SWAPON 8 .Os .Sh 名称 .Nm swapon , swapoff , swapctl .Nd ページングやスワッピングに使用するデバイスの指定 .Sh 書式 .Nm swapon Ar .Nm swapon Fl a .Nm swapoff Ar .Nm swapoff Fl a .Nm swapctl .Op Fl AhklsU .Oo .Fl a Ar | .Fl d Ar .Oc .Sh 解説 .Nm swapon , swapoff , swapctl ユーティリティはシステムのスワップデバイスを制御するために使用されます。 ブート時、マルチユーザモードにシステムが移行するときに、 .Pa /etc/fstab の全スワップエントリが自動的に追加されます。 スワップデバイスは固定値のインタリーブを使用します。 最大のデバイス数は、カーネル設定オプション .Dv NSWAPDEV で設定され、典型的には 4 です。 優先度機構はありません。 .Pp .Nm swapon ユーティリティは、指定されたスワップデバイスをシステムに追加します。 .Fl a オプションが使用されたときには、 .Dq noauto オプションが設定されていない、 すべてのスワップデバイスが追加されます。 .Pp .Nm swapoff ユーティリティは、指定されたスワップデバイスをシステムから削除します。 .Fl a オプションが使用されたときには、 .Dq noauto オプションが設定されていない、 すべてのスワップデバイスが削除されます。 システム実行のために VM (メモリ + 残りのスワップデバイス) が不十分だと、 スワップデバイスの削除に .Nm swapoff ユーティリティは失敗して拒否します。 .Nm swapoff ユーティリティは、 スワップアウトされたページを削除対象のデバイスから移動させなければならないので、 一定期間システム負荷が上昇し得ます。 これは、当該デバイスにどれだけのデータがスワップされていたかに依存します。 .Pp .Nm swapctl ユーティリティは、他の .Bx に親しんだ方々のためのものであり、 スワップの追加・削除・列挙に使用可能です。 .Nm swapctl では .Fl a の用途は異なっており、 指定したデバイスリストを追加すべきことを意味することに注意してください。 .Fl d オプションは、指定したデバイスリストを削除すべきことを意味します。 .Nm swapctl に対する .Fl A および .Fl U のオプションは、 .Pa /etc/fstab 中の .Dq noauto オプションが設定されていないすべてのスワップデバイスに作用します。 .Pp スワップ情報は、 .Xr swapinfo 8 プログラム、 .Nm pstat .Fl s または .Nm swapctl .Fl l で生成可能です。 .Nm swapctl ユーティリティは、スワップの列挙用に以下のオプションを取ります: .Bl -tag -width indent .It Fl h 値をメガバイト単位で出力します。 .It Fl k 値をキロバイト単位で出力します。 .It Fl l システムスワップの印があるデバイスを列挙します。 .It Fl s システムスワップのサマリ行を表示します。 .Pp 特にオーバライドしなければ、 .Dv BLOCKSIZE 環境変数が使用されます。 デフォルトで、512 バイトブロックが使用されます。 .Sh 診断 これらのユーティリティは、 .Xr swapon 2 に記述された理由で失敗することがあります。 .El .Sh 関連項目 .Xr swapon 2 , .Xr fstab 5 , .Xr init 8 , .Xr mdconfig 8 , .Xr pstat 8 , .Xr rc 8 .Sh 関連ファイル .Bl -tag -width ".Pa /dev/{ad,da}?s?b" -compact .It Pa /dev/{ad,da}?s?b 標準のページングデバイス .It Pa /dev/md? メモリディスクデバイス .It Pa /etc/fstab .Tn ASCII 形式のファイルシステム記述テーブル .El .Sh 歴史 .Nm swapon ユーティリティは .Bx 4.0 から登場しました。 .Nm swapoff , swapctl ユーティリティは .Fx 5.1 から登場しました。 diff --git a/ja_JP.eucJP/man/man8/telnetd.8 b/ja_JP.eucJP/man/man8/telnetd.8 index 08c058bcdd..b44c4cb481 100644 --- a/ja_JP.eucJP/man/man8/telnetd.8 +++ b/ja_JP.eucJP/man/man8/telnetd.8 @@ -1,577 +1,556 @@ .\" Copyright (c) 1983, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. .\" .\" @(#)telnetd.8 8.4 (Berkeley) 6/1/94 .\" %FreeBSD: src/contrib/telnet/telnetd/telnetd.8,v 1.18 2001/12/14 14:41:07 ru Exp % .\" .\" $FreeBSD$ .\" .Dd January 27, 2000 .Dt TELNETD 8 .Os .Sh 名称 .Nm telnetd .Nd DARPA .Tn TELNET プロトコルサーバ .Sh 書式 .Nm /usr/libexec/telnetd .Op Fl BUhlkn .Op Fl D Ar debugmode .Op Fl S Ar tos .Op Fl X Ar authtype .Op Fl a Ar authmode .Op Fl edebug .Op Fl p Ar loginprog .Op Fl u Ar len .Op Fl debug Op Ar port .Sh 解説 .Nm コマンドは、 .Tn DARPA 標準 .Tn TELNET 仮想端末プロトコルをサポートするサーバです。 .Nm は、通常は .Pa /etc/services ファイル ( .Xr services 5 参照) に記述されている .Tn TELNET ポートへの接続要求を受けて、インターネットサーバ ( .Xr inetd 8 参照) から起動されます。 .Fl debug オプションは、 .Xr inetd 8 の代わりに .Nm を手動で起動するために用いられます。 このように手動で起動された場合には、代わりの .Tn TCP ポート番号で .Nm を動かすために .Ar port を指定する事ができます。 .Pp .Nm コマンドには以下のオプションがあります: .Bl -tag -width indent .It Fl a Ar authmode このオプションは、どのモードが認証に使われるかを指定するために用いられます。 このオプションは、 .Nm が .Dv AUTHENTICATION オプションをサポートする設定で構築された場合においてのみ役に立つことに 注意して下さい。 以下に示すようないくつかの .Ar authmode があります: .Bl -tag -width debug .It Cm debug 認証のデバッグコードを有効にします。 .It Cm user リモートユーザは、自分自身であること示すための有効な認証情報を 提供した時にのみ接続が許可されます。 この場合、指定されたアカウントに対しては、パスワードの提供なしに接続が 許可されます。 .It Cm valid リモートユーザが自分自身であることを示すための有効な認証情報を 提供した時にのみ接続が許可されます。 リモートユーザが指定されたアカウントに対する自動的な接続が許可されて いなければ .Xr login 1 コマンドは、必要となるユーザ認証を実施します。 .It Cm other ある種の認証情報を提供した場合のみ接続を許可します。 現在このオプションはすべての認証方法でサポートされていないため .Fl a .Cm valid オプションを指定した時と同じ動作をします。 .It Cm none デフォルトではこの状態です。 認証情報は要求されません。 もし認証情報がなかったり不十分であれば、 .Xr login 1 プログラムによって必要となるユーザ認証を実施します。 .It Cm off 認証コードを無効にします。 すべてのユーザ証明が .Xr login 1 プログラムによって行われます。 .El .It Fl B bftp サーバモードを指定します。 このモードでは、 .Nm は、ユーザの通常のシェルの代りに .Xr bftp 1 セッションをログインに開始させます。 bftp デーモンモードでは、通常のログインはサポートされません。 これは、通常の .Tn TELNET ポート以外のポートで使用される必要があります。 .It Fl D Ar debugmode このモードはデバックのために用いられます。 これによって .Nm がデバッグ情報を表示し、ユーザは .Nm が何をしているのかを見ることが許されます。 以下に示すようないくつかの .Ar debugmode があります: .Bl -tag -width exercise .It Cm options .Tn TELNET オプションのネゴシエーションについての情報が表示されます。 .It Cm report .Cm options で表示される情報に加えて、 どのような操作が行われているのかという、いくつかの付加的な情報が 表示されます。 .It Cm netdata .Nm が受け取ったデータストリームを表示します。 .It Cm ptydata pty に書かれたデータを表示します。 .It Cm exercise まだ実装されていません。 .El .It Fl debug .Nm によって作られたソケットについてのデバッグを可能にします ( .Xr socket 2 の .Dv SO_DEBUG 参照)。 .It Fl edebug .Nm がデータの暗号化をサポートする設定で構築されている場合に、 .Fl edebug オプションは、暗号化デバッグコードを有効にするために使われます。 .It Fl h ログインが完了するまでホストに特有の情報を表示しないようにします。 .It Fl k このオプションは、 .Nm が linemode と kludge linemode をサポートする設定で構築されている ときにのみ有効です。 .Fl k オプションが指定されている場合で、もしリモートのクライアントが .Dv LINEMODE オプションをサポートしていなければ、 .Nm は、 character at a time mode で動きます。 この様な状態でも kludge linemode をサポートしますが、リモートのクライアントが 要求した場合のみ kludge linemode になります (これは、クライアントが .Dv DONT SUPPRESS-GO-AHEAD と .Dv DONT ECHO を送信することによって行われます)。 .Fl k オプションは kludge linemode をサポートしていないリモートクライアントが あるが、(もしクライアントが .Dv DO TIMING-MARK に対して .Dv WILL TIMING-MARK を応答する事で) 自己発見的に kludge linemode をサポートすると認められる 様な場合にとても便利です。 .It Fl l line mode を指定します。クライアントを強制的に line-at-a-time mode に なるよう試みます。 もし .Dv LINEMODE オプションがサポートされてなければ、kludge linemode になります。 .It Fl n .Dv TCP keep-alives を行いません。通常、 .Nm は .Tn TCP keep-alive を有効にしています。なぜなら、クラッシュしたり、すでに接続 出来ないようなマシンからのアイドルコネクションを解消するために、 ある期間アイドルだった場合にクライアントとの接続がまだ存在するかどうかを 調べる必要があるからです。 .It Fl p Ar loginprog ログインを完了する際に実行されるコマンドとして .Xr login 1 以外のコマンドを指定します。 指定されたコマンドは通常の login と同じ引数を 解釈できる必要があります。 .It Fl S Ar tos .It Fl u Ar len このオプションは、リモートホスト名を保持している .Dv utmp 構造体のフィールドの大きさを指定するために使われます。 もし解決されたホスト名が .Ar len よりも長ければ、ホスト名の代わりにドットで区切られたアドレスが使われます。 これによりフィールドを超えるようなとても長いホスト名を 一意に特定できるようにします。 .Fl u0 を指定することによって、ドットで区切られたアドレスだけが .Pa utmp ファイルに書き込まれるようにします。 .It Fl U このオプションは .Nm が、 .Xr gethostbyaddr 3 ルーチンを通してシンボルでの名前にマップされないようなアドレスからの コネクションを拒絶するようにします。 .It Fl X Ar authtype このオプションは .Nm が認証オプションをサポートする設定で構築されたときにのみ有効です。 .Ar authtype 認証を使用不能にし、 .Nm を再コンパイルすることなしに 特定の認証タイプを一時的に使用不能にする事が出来ます。 .El .Pp .Nm は仮想端末デバイス ( .Xr pty 4 参照) をクライアントに割り当てます。 そして、 .Dv stdin , .Dv stdout , .Dv stderr として仮想端末のスレーブ側を使用する login プロセスを生成します。 .Nm は、 .Tn TELNET プロトコルを実装し、 リモートクライアントと login プロセスとの間の キャラクタを通過させることにより、仮想端末のマスタ側を操作します。 .Pp .Tn TELNET セッションが開始されると .Nm は以下の .Tn TELNET オプションをクライアント側に送信して、これらの .Tn TELNET オプションの使用を希望している事を伝えます。 これらのオプションの詳細については以下に説明されています。 .Bd -literal -offset indent DO AUTHENTICATION WILL ENCRYPT DO TERMINAL TYPE DO TSPEED DO XDISPLOC DO NEW-ENVIRON DO ENVIRON WILL SUPPRESS GO AHEAD DO ECHO DO LINEMODE DO NAWS WILL STATUS DO LFLOW DO TIMING-MARK .Ed .Pp クライアントに割り当てられた仮想端末は、 .Dq cooked モードで動作し、 .Dv XTABS と .Dv CRMOD ( .Xr tty 4 参照) が有効な状態で操作するように設定されます。 .Pp .Nm は、ローカル側で有効な以下に示す .Tn TELNET オプションをサポートしています: .Bl -tag -width "DO AUTHENTICATION" .It "WILL ECHO" .Dv LINEMODE オプションが設定されている時に 端末エコーの現在の状態を示すためにクライアントに .Dv WILL ECHO あるいは .Dv WONT ECHO が送信されます。 端末エコーが不要な場合は、 .Tn telnetd がエコーが必要なデータに対する エコーを処理する事を示すために .Dv WILL ECHO が送信され、何もエコーされません。 端末エコーが必要な場合は、 .Tn telnetd がいかなる端末エコーも 行わない事を示すために .Dv WONT ECHO が送信されるので、必要な時は端末エコーをクライアント側が 行わなければなりません。 .It "WILL BINARY" クライアントが、通常のネットワーク仮想端末が用いる 7 ビットのデータ ではなく、8 ビットのデータを送信するように指定します。 .It "WILL SGA" .Dv IAC GA すなわち go ahead コマンドを送信しないように指定します。 .It "WILL STATUS" クライアントから要求があった時に、全ての .Tn TELNET オプションの現在の状況を送信するように指定します。 .It "WILL TIMING-MARK" .Dv DO TIMING-MARK コマンドが受信された場合に、常にそれに対して .Dv WILL TIMING-MARK を返答します。 .It "WILL LOGOUT" .Dv DO LOGOUT が受信されると .Dv WILL LOGOUT を返答し、 .Tn TELNET セッションはシャットダウンされます。 .It "WILL ENCRYPT" .Nm がデータの暗号化をサポートする設定で構築された場合のみ送信され、 データ列に対して暗号を復号するように指定します。 .El .Pp .Nm はリモート側で有効な以下に示す .Tn TELNET オプションをサポートしています: .Bl -tag -width "DO AUTHENTICATION" .It "DO BINARY" .Nm telnetd が 8 ビットのデータ列を受信するように指定します。 .It "DO LFLOW" クライアントがフロー制御文字をリモート側で処理するように指定します。 .It "DO ECHO" このコマンドは実際にはサポートされませんが、クライアントが .Bx 4.2 .Xr telnet 1 クライアント ( .Dv WILL ECHO に正しく応答しない) であるかを判断するために送信されます。 もし、 .Dv WILL ECHO が受信された場合は、それに対して .Dv DONT ECHO が送信されます。 .It "DO TERMINAL-TYPE" 接続のクライアント側に割り当てられた端末タイプの名前を 要求できるように指定します。 .It "DO SGA" .Dv IAC GA すなわち go ahead コマンドを受信する必要がないように指定します。 .It "DO NAWS" ウィンドウ (ディスプレイ) のサイズが変わった場合に、クライアントが それをサーバに知らせる事を要求します。 .It "DO TERMINAL-SPEED" クライアントに割り当てられたシリアルラインの速度に関する情報を 要求できるように指定します。 .It "DO XDISPLOC" -telnet クライアントが使用している X ウィンドウのディスプレイの名前を +telnet クライアントが使用している X Window System のディスプレイの名前を 要求できるように指定します。 .It "DO NEW-ENVIRON" RFC 1572 に示されている環境変数に関する情報を 要求できるように指定します。 .It "DO ENVIRON" RFC 1408 に示されている環境変数に関する情報を 要求できるように指定します。 .It "DO LINEMODE" .Nm が linemode をサポートする設定で構築された場合のみ送信され、 クライアントに行単位の処理を行う事を要求します。 .It "DO TIMING-MARK" .Nm が linemode および kludge linemode の両方をサポートする設定で 構築され、クライアントが .Dv WONT LINEMODE を返信した場合のみ送信されます。 クライアントが .Dv WILL TM を返信した場合は、クライアントが kludge linemode を サポートしていると判断されます。 .Op Fl k オプションによりこの機能を無効にする事ができます。 .It "DO AUTHENTICATION" .Nm が認証機能をサポートする設定で構築された場合のみ送信され、 自動ログインに使用する認証情報を受信するようにします。 .It "DO ENCRYPT" .Nm がデータの暗号化をサポートする設定で構築された場合のみ送信され、 データ列に対して暗号を復号するように指定します。 .El .Sh 注 デフォルトでは、 .Nm は .Pa /etc/gettytab から .Em \&he , .Em \&hn , .Em \&im -のケーパビリティを読み、(存在するならば) この情報を使用して -login: プロンプトの前に何を表示すべきかを決定します。 -.Em \&im -ケーパビリティに優先する -.Em \&if -ケーパビリティを使用して、System V スタイルの -.Pa /etc/issue -ファイルを使うこともできます。 -.Em \&im -または -.Em \&if -に指定される情報は、コンソールとリモートログインの両方で表示されます。 -.Sh 注 -デフォルトでは、 -.Nm -は -.Pa /etc/gettytab -から -.Em \&he , -.Em \&hn , -.Em \&im のケーパビリティを読み取り、 (存在すれば) これらの情報を使用し、 login: プロンプト前に何を表示するかを判定します。 .Em \&if -ケーパビリティを使用して、System V style スタイルの +ケーパビリティを使用して、System V スタイルの .Pa /etc/issue ファイルも使用できます。 これは、 .Em \&im に優先します。 .Em \&im または .Em \&if に指定された情報は、 コンソールとリモートの両方のログインに対して表示されます。 .\" .Sh 環境変数 .Sh 関連ファイル .Bl -tag -width /usr/ucb/bftp -compact .It Pa /etc/services .It Pa /etc/gettytab .It Pa /etc/iptos (サポートされている場合) .It Pa /usr/ucb/bftp (サポートされている場合) .El .Sh "関連項目" .Xr bftp 1 , .Xr login 1 , .Xr gettytab 5 , .Xr telnet 1 (サポートされている場合) -.Sh 標準 +.Sh 規格 .Bl -tag -compact -width RFC-1572 .It Cm RFC-854 .Tn TELNET PROTOCOL SPECIFICATION .It Cm RFC-855 TELNET OPTION SPECIFICATIONS .It Cm RFC-856 TELNET BINARY TRANSMISSION .It Cm RFC-857 TELNET ECHO OPTION .It Cm RFC-858 TELNET SUPPRESS GO AHEAD OPTION .It Cm RFC-859 TELNET STATUS OPTION .It Cm RFC-860 TELNET TIMING MARK OPTION .It Cm RFC-861 TELNET EXTENDED OPTIONS - LIST OPTION .It Cm RFC-885 TELNET END OF RECORD OPTION .It Cm RFC-1073 Telnet Window Size Option .It Cm RFC-1079 Telnet Terminal Speed Option .It Cm RFC-1091 Telnet Terminal-Type Option .It Cm RFC-1096 Telnet X Display Location Option .It Cm RFC-1123 Requirements for Internet Hosts -- Application and Support .It Cm RFC-1184 Telnet Linemode Option .It Cm RFC-1372 Telnet Remote Flow Control Option .It Cm RFC-1416 Telnet Authentication Option .It Cm RFC-1411 Telnet Authentication: Kerberos Version 4 .It Cm RFC-1412 Telnet Authentication: SPX .It Cm RFC-1571 Telnet Environment Option Interoperability Issues .It Cm RFC-1572 Telnet Environment Option .El .Sh バグ いくつかの .Tn TELNET コマンドは部分的にしか実装されていまいません。 .Pp オリジナルの .Bx 4.2 の .Xr telnet 1 のバグに対処するため、 .Nm は、ある種のあいまいなプロトコル変換を行うことにより、 リモートクライアントが実際に .Bx 4.2 の .Xr telnet 1 であるかどうかを判断しようとします。 .Pp バイナリモードは よく似たオペレーティングシステム (この場合 Unix) 間以外では 互換性がありません。 .Pp リモートクライアントから受け取った端末タイプの名前は小文字に変換されます。 .Pp .Nm は、 .Tn TELNET .Dv IAC GA (go ahead) コマンドを絶対に送りません。 .Sh 歴史 IPv6 サポートは、WIDE/KAME プロジェクトが追加しました。 diff --git a/ja_JP.eucJP/man/man8/traceroute.8 b/ja_JP.eucJP/man/man8/traceroute.8 index e787542af3..cdc68e1186 100644 --- a/ja_JP.eucJP/man/man8/traceroute.8 +++ b/ja_JP.eucJP/man/man8/traceroute.8 @@ -1,435 +1,435 @@ .\" Copyright (c) 1989, 1995, 1996, 1997, 1999, 2000 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms are permitted .\" provided that the above copyright notice and this paragraph are .\" duplicated in all such forms and that any documentation, .\" advertising materials, and other materials related to such .\" distribution and use acknowledge that the software was developed .\" by the University of California, Berkeley. The name of the .\" University may not be used to endorse or promote products derived .\" from this software without specific prior written permission. .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED .\" WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. .\" .\" $Id: traceroute.8,v 1.19 2000/09/21 08:44:19 leres Exp % .\" %FreeBSD: src/contrib/traceroute/traceroute.8,v 1.10 2002/12/13 22:26:10 fenner Exp % .\" .\" $FreeBSD$ .\" .TH TRACEROUTE 8 "21 September 2000" .UC 6 .SH 名称 traceroute \- パケットがネットワーク上のホストまでにたどる経路を表示する .SH 書式 .na .B traceroute [ .B \-dFISdnrvx ] [ .B \-f .I first_ttl ] [ .B \-g .I gateway ] .br .ti +8 [ .B \-i .I iface ] [ .B \-M .I first_ttl ] .br .ti +8 [ .B \-m .I max_ttl ] [ .B \-P .I proto ] [ .B \-p .I port ] .br .ti +8 [ .B \-q .I nqueries ] [ .B \-s .I src_addr ] [ .B \-t .I tos ] .br .ti +8 [ .B \-w .I waittime ] [ .B \-z .I pausemsecs ] .br .ti +8 .I host [ .I packetlen ] .ad .SH 解説 インターネットはネットワーク機器の巨大で複雑な集合体で、 ゲートウェイによって互いに接続されています。 パケットの流れを追跡すること (あるいはパケットを破棄する悪い ゲートウェイを見つけること) は大変難しい仕事になり得ます。 .I traceroute は IP プロトコルの `time to live' フィールドを利用して、 あるホストまでの経路上の全てのゲートウェイから ICMP TIME_EXCEEDED レスポンスを引き出そうと試みます。 .PP 唯一の必須パラメータは目的地のホスト名 (IP アドレスでも可) です。 プローブパケットの長さはデフォルトで 40 バイトですが、 目的のホスト名の後にパケットサイズを (バイト単位で) 指定することによって 大きくすることもできます。 .PP その他のオプションを以下で説明します。 .TP .B \-f 最初に送出するプローブパケットの初期の有効期間 (time-to-live) を設定します。 .TP .B \-F 「フラグメント不許可」ビットをセットします。 .TP .B \-d パケットレベルデバッグを有効にします。 .TP .B \-g 粗く、ソースルーティングのためのゲートウェイを指定します。 最大 8 つ指定できます。 .TP .B \-i 送出するプローブパケットに使用するための、 始点 IP アドレスを取得するネットワークインタフェースを指定します。 通常、マルチホームホストでのみ有用です (同じことを行う他の方法については .B \-s を参照してください)。 .TP .B \-I UDP データグラムの代りに ICMP ECHO を使用します ("-P icmp" と同じです)。 .TP .B \-M 送出されるプローブパケットの time-to-live の初期値を設定します。 デフォルトは 1 であり、最初のホップから開始することを意味します。 .TP .B \-m 送出されるプローブパケットの最大 time-to-live (最大ホップ数) をセットします。 デフォルトは .I net.inet.ip.ttl ホップ (TCP と同じデフォルト値) です。 .TP .B \-n ゲートウェイのアドレスをホスト名と IP アドレスではなく IP アドレスだけで表示します (ネームサーバへの IP アドレスからホスト名への変換問い合わせを省きます)。 .TP .B \-P 指定した IP プロトコルのパケットを送出します。 現在サポートされているプロトコルは UDP, TCP, GRE, ICMP です。 他のプロトコルも (名前または数値で) 指定可能ですが、 .I traceroute はこれらのパケットフォーマットに関する特別な知識は実装していません。 経路上のどのルータが IP プロトコル番号に従ってブロックしているかを 判定する場合、このオプションが有用です。 後述のバグを参照してください。 .TP .B \-p プローブに使用する UDP ポート番号 (デフォルトは 33434) の 基準値 (base) を指定します。 .I traceroute は目的のホストにおいて、 .I base から .I base+nhops-1 までの UDP ポートで listen していないことを期待します (そして ICMP PORT_UNREACHABLE メッセージが経路追跡を終了させるために返って来ます)。 デフォルトの範囲のポートで listen されているものがある場合は、 このオプションを用いて使用されていない範囲のポートを 使用することができます。 .TP .B \-q ホップ毎のプローブ回数を指定します (デフォルトは 3 回です)。 .TP .B \-r 通常のルーティングテーブルを使用しません。 プローブパケットを接続されているネットワーク上のホストに直接送出します。 そのホストが直接接続されたネットワーク上にない場合には エラーが返ります。 このオプションは、 経路を持たないインタフェースを介してローカルホストに ping する場合 (たとえば、 .IR routed (8C) によってインタフェースが消された後) に使用することができます。 .TP .B \-s 送出されるプローブパケットのソースアドレス (送出するアドレス) として、 引数の IP アドレス (通常、ホスト名ではなく、数字で指定します) を用います。 マルチホームホスト (複数 IP アドレスを持つホスト) で、 プローブパケットに別のソースアドレスを 持たせるのに使用することができます。 指定した IP アドレスが、このホストのインタフェースのアドレスのうちの 1 つでない場合、エラーが返され何も送出されません (同じことを行う他の方法については -.B \-s +.B \-i を参照してください)。 .TP .B \-S 各ホップに対し、何個のプローブに対する応答が無かったかのまとめを表示します。 .TP .B \-t プローブパケットの .I type-of-service に引数の値 (デフォルトは 0) を指定します。 値は 0 から 255 までの十進数です。 .I type-of-service の値によって、経路が異なるのかを見るために、 このオプションを使用することができます (telnet や ftp のような通常のネットワークサービスは、 TOS を制御することはできないので、 4.4bsd 以降のシステムでなければ、このオプションの実際的な意味はありません)。 全ての TOS の値に意味があるわけではありません。 定義については IP の詳細を参照してください。 おそらく、 .RB ` -t .IR 16 ' (low delay) や .RB ` -t .IR 8 ' (high throughput) が有益な値でしょう。 .TP .B \-v 冗長モードです。 TIME_EXCEEDED と UNREACHABLE 以外の受信した ICMP パケットを表示します。 .TP .B \-w プローブパケットの応答時間 (デフォルトは 5 秒) を (秒単位で) 指定します。 .TP .B \-x IP チェックサムを切り替えます。 通常これは、traceroute による IP チェックサムの計算を抑止します。 オペレーティングシステムが出力パケットの一部を書き換えることがありますが、 チェックサムを再計算しません (そのためデフォルトがチェックサムを計算しないことになっていて、 .B \-x を使用することによりチェックサム計算が有効になる場合があります)。 ICMP ECHO プローブ使用時 .RB ( \-I ) には、最終ホップでは通常チェックサムが必要なことに注意してください。 このため、ICMP 使用時には常にチェックサムが計算されます。 .TP .B \-z プローブ間の休止時間 (ミリ秒単位) を設定します (デフォルトは 0)。 例えば Solaris のようなシステムや Cisco のようなルータでは、 ICMP メッセージの頻度に制限をかけています。 この値には 500 (1/2 秒) を指定すると良いでしょう。 .PP このプログラムは、IP パケットが あるホストに到達するまでにたどる経路を追跡するものです。 UDP プローブパケットを小さな ttl (time to live) で送出し、 ゲートウェイから ICMP "time exceeded" が返ってくるのを待ちます。 まず、プローブを ttl 1 から始め、(ホストに到達したことを意味する) ICMP "port unreachable" を受け取るまで、 あるいは最大 (デフォルトは .I net.inet.ip.ttl ですが、 .B \-m フラグで変更できます) になるまで ttl を 1 づつ増やします。 各 ttl に対して、3 個 ( .B \-q フラグで変更可能です) のプローブが送出され、 ttl、ゲートウェイのアドレス、各プローブの往復時間を 1 行に表示します。 異なるゲートウェイからプローブが返ってきた場合は、 それぞれのシステムのアドレスを表示します。 5 秒 ( .B \-w フラグで変更します) 以内に反応がない場合は、 各プローブに対して "*" を表示します。 .PP 目的のホストのポートが不適当な値に設定されているために、 UDP プローブパケットが処理されてしまうことを我々は望みません (目的のホストがその値を使用している場合、 .B \-p フラグで 変更することができます)。 .PP 使用と出力の例 : .RS .nf [yak 71]% traceroute nis.nsf.net. traceroute to nis.nsf.net (35.1.1.48), 64 hops max, 38 byte packet 1 helios.ee.lbl.gov (128.3.112.1) 19 ms 19 ms 0 ms 2 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 ms 39 ms 19 ms 3 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 ms 39 ms 19 ms 4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 39 ms 40 ms 39 ms 5 ccn-nerif22.Berkeley.EDU (128.32.168.22) 39 ms 39 ms 39 ms 6 128.32.197.4 (128.32.197.4) 40 ms 59 ms 59 ms 7 131.119.2.5 (131.119.2.5) 59 ms 59 ms 59 ms 8 129.140.70.13 (129.140.70.13) 99 ms 99 ms 80 ms 9 129.140.71.6 (129.140.71.6) 139 ms 239 ms 319 ms 10 129.140.81.7 (129.140.81.7) 220 ms 199 ms 199 ms 11 nic.merit.edu (35.1.1.48) 239 ms 239 ms 239 ms .fi .RE 2 行目と 3 行目が同じであることに注意して下さい。 これは、2番目のシステム \- lbl-csam.arpa \- が、 ttl 0 のパケットを転送するという (4.3BSD に含まれる) バグを 持ったカーネルであることによるものです。 また、NSFNet (129.140) はアドレスをホスト名に変換してくれないので、 パケットがどの経路をたどったのかを 推測する必要があることに注意して下さい。 .PP もっと興味深い例 : .RS .nf [yak 72]% traceroute allspice.lcs.mit.edu. traceroute to allspice.lcs.mit.edu (18.26.0.115), 64 hops max 1 helios.ee.lbl.gov (128.3.112.1) 0 ms 0 ms 0 ms 2 lilac-dmc.Berkeley.EDU (128.32.216.1) 19 ms 19 ms 19 ms 3 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 ms 19 ms 19 ms 4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 19 ms 39 ms 39 ms 5 ccn-nerif22.Berkeley.EDU (128.32.168.22) 20 ms 39 ms 39 ms 6 128.32.197.4 (128.32.197.4) 59 ms 119 ms 39 ms 7 131.119.2.5 (131.119.2.5) 59 ms 59 ms 39 ms 8 129.140.70.13 (129.140.70.13) 80 ms 79 ms 99 ms 9 129.140.71.6 (129.140.71.6) 139 ms 139 ms 159 ms 10 129.140.81.7 (129.140.81.7) 199 ms 180 ms 300 ms 11 129.140.72.17 (129.140.72.17) 300 ms 239 ms 239 ms 12 * * * 13 128.121.54.72 (128.121.54.72) 259 ms 499 ms 279 ms 14 * * * 15 * * * 16 * * * 17 * * * 18 ALLSPICE.LCS.MIT.EDU (18.26.0.115) 339 ms 279 ms 279 ms .fi .RE l2, 14, 15, 16, 17 番目のゲートウェイが ICMP "time exceeded" メッセージを送出していないか、 あるいは送出された ICMP "time exceeded" メッセージの ttl が小さいために、 こちらに到達しないのでしょう。 14 から 17 番目のホストでは、"time exceeded" を送出しない MIT C Gateway コードが稼動しています。 12 番目で何が起こっているのかは、神のみぞ知るところです。 .PP 上記の 12 番目のゲートウェイが反応しないのは、4.[23] BSD ネットワークコード (かその派生プログラム) のバグのせいでしょう。 4.x (x <= 3) では、元のデータグラムに残っている ttl がどんな値であっても、 それを用いて unreachable メッセージを送出します。 よって、ゲートウェイに対して残っている ttlは 0 なので、 ICMP "time exceeded" が戻ってこないことが保証されます。 このバグが目的のシステム上であらわれた場合、 さらにもう少し興味深いものとなります。 .RS .nf 1 helios.ee.lbl.gov (128.3.112.1) 0 ms 0 ms 0 ms 2 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 ms 19 ms 39 ms 3 lilac-dmc.Berkeley.EDU (128.32.216.1) 19 ms 39 ms 19 ms 4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 39 ms 40 ms 19 ms 5 ccn-nerif35.Berkeley.EDU (128.32.168.35) 39 ms 39 ms 39 ms 6 csgw.Berkeley.EDU (128.32.133.254) 39 ms 59 ms 39 ms 7 * * * 8 * * * 9 * * * 10 * * * 11 * * * 12 * * * 13 rip.Berkeley.EDU (128.32.131.22) 59 ms ! 39 ms ! 39 ms ! .fi .RE 12 のゲートウェイ (13 番目は最終目的のホストです) があり、 ちょうど半分のゲートウェイが失敗しています。 これは、rip (Sun OS3.5 の稼働している Sun-3) が、 到着したデータグラムの ttl を ICMP 応答の ttl としてそのまま使用すること によるものです。 経路の長さの少なくとも 2 倍の ttl のプローブが送出されるまで、( ICMP に対して ICMP は送出されないので、誰にも気付かれずに) 帰りの経路上で応答がタイムアウトします。 すなわち、実際には rip までに 7 ホップしかありません。 ttlが 1 の応答は、問題解決の糸口になります。 ttlが 1 以下の場合、 .I traceroute は時間の後に "!" を表示します。 ベンダは旧式の (DEC の Ultrix、Sun 3.x) あるいは標準でない (HPUX) ソフトウェアを多く使用しているので、 しばしばこの問題が起こることを承知して、 プローブの目標のホストは注意して選んでください。 時間の後に付くその他の注釈には、 .BR !H , .BR !N , .BR !P (ホスト、ネットワーク、プロトコルに到達不能) や、 .BR !S (ソースルーティングに失敗) や、 .B !F\- (フラグメンテーションが必要 \- RFC1191 Path MTU Discovery 値を表示) や、 .B !X (管理上、通信が禁止されている) や、 .B !V (ホスト順序違反) や、 .B !C (順序カットオフがなされた), や、 .B ! (ICMP は コード num では到達できない) があります。 これらは RFC1812 (RFC1716 に取って代りました) で定義されています。 ほとんど全てのプローブが到達不能であれば、 .I traceroute は送出を止め終了します。 .PP このコマンドはネットワークの検査、測定、管理のために使用するものです。 本来は手動で障害を切り離すために使用されるべきものです。 ネットワークにかかる負荷が大きいので、 .I traceroute を通常の操作や自動的なスクリプトで使用することは愚かなことです。 .SH 関連項目 pathchar(8), netstat(1), ping(8) .SH 作者 Steve Deering の提案に基づき Van Jacobson によって実装されました。 デバッグは何千もの人々、特に C.Philip Wood、 Tim Seaver と Ken Adelman による説得力のある提案と修正によって行なわれました。 .LP 現在のバージョンは匿名 ftp を使って以下のところから入手できます。 .LP .RS .I ftp://ftp.ee.lbl.gov/traceroute.tar.gz .RE .SH バグ UDP 以外のプロトコルを使用する場合、機能が制限されます。 特に、最後のパケットがしばしば失われたように見えます。 なぜなら、最後のパケットが宛先ホストに到達したとしても、 ICMP メッセージは送り返されないため、 それを知る方法が無いためです。 TCP の場合、 .I traceroute は宛先ホスト (またはパケットをフィルタしている中間ルータ) からの RST を見るべきですが、まだ実装されていません。 .PP バグレポートは、traceroute@ee.lbl.gov に送ってください。 diff --git a/ja_JP.eucJP/man/man8/tzsetup.8 b/ja_JP.eucJP/man/man8/tzsetup.8 index 37fe472dd2..95ff03ef6b 100644 --- a/ja_JP.eucJP/man/man8/tzsetup.8 +++ b/ja_JP.eucJP/man/man8/tzsetup.8 @@ -1,132 +1,132 @@ .\" Copyright (c) 1996 Wolfram Schneider . Berlin. .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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.sbin/tzsetup/tzsetup.8,v 1.18 2004/07/02 23:12:58 ru Exp % .\" .\" $FreeBSD$ -.Dd January 1996 +.Dd January 24, 1996 .Dt TZSETUP 8 .Os .Sh 名称 .Nm tzsetup .Nd ローカルタイムゾーンを設定する .Sh 書式 .Nm .Op Fl n .Op Ar default .Sh 解説 .Nm ユーティリティは、タイムゾーン情報データベースを読み込み、 メニューをユーザに提供してタイムゾーンを選択させます。 ユーザはデータベースのレイアウトの詳細を知る必要はありません。 選択されたゾーンは、システムのデフォルトのゾーンとしてインストールされます。 また .Nm ユーティリティは、ハードウェアクロックが .Tn UTC でないシステムにおいてなんらかの修正が必要か否かを判定します。 .Pp 以下のオプションが使用可能です: .Bl -tag -offset indent -width Fl .It Fl n ファイルの生成やコピーを行いません。 .El .Pp コマンドラインで .Ar default を指定することにより、メニューシステムを略すことができます; これは主に、設定済のインストールスクリプトのためにあります。 .Sh タイムゾーンデータベース タイムゾーンデータベースの内容は、 .Pa /usr/share/zoneinfo/zone.tab でインデックスされます。 このファイルは、各タイムゾーンデータファイルに対し、 .Tn ISO 3166 領土コードと、 .Pf ( Tn ISO 6709 書式の) おおよその地理的な位置と、領土内の場所を列挙します。 .Pp データベースの管理者は、次の方針で管理を行います: .Bl -enum -offset indent .It 国または居住者のない地理的な領土おのおのに対し、 最低 1 個のゾーンを割り当てます。 .It .Ux の基準時点 .Pf ( Tn GMT 1970 年 1 月 1 日) からのタイムゾーンの履歴の記述されている、 区別するものおのおのに対し、 1 個のゾーンを割り当てます。 .It 各ゾーンの名前は、その中で最も人口の多い都市からとります (可能であれば、データベースには 1970 年以前のその都市の歴史を含めます)。 .El データベース .Pq Pa /usr/src/share/zoneinfo/[a-z]* のソースコードには、 さらに多くのコメントと歴史的な事情に関する文書への参照が含まれています。 .Sh バグ .Nm が .Pa /etc/localtime を生成または更新したときにすでに実行中であるプログラムは、 更新されたタイムゾーンを反映しません。 システムが最初に非 .Tn UTC ハードウェアクロックに設定されたときには、 .Xr adjkerntz 8 を実行する必要があります (通常システム起動時に実行されます)。 これは、正しいタイムゾーンオフセットに関するカーネルの理解を 更新する必要があるためです。 .Sh 関連ファイル .Bl -tag -width /usr/share/zoneinfo/zone.tab -compact .It Pa /etc/localtime 現在のタイムゾーンのファイル .It Pa /etc/wall_cmos_clock .Xr adjkerntz 8 を見てください。 .It Pa /usr/share/misc/iso3166 .Tn ISO 3166 領土コードから名前へのマッピング .It Pa /usr/share/zoneinfo ゾーン情報ファイルを置くディレクトリ .It Pa /usr/share/zoneinfo/zone.tab タイムゾーンファイルから国と場所へのマッピング .El .Sh 関連項目 .Xr date 1 , .Xr adjtime 2 , .Xr ctime 3 , .Xr timezone 3 , .Xr tzfile 5 , .Xr adjkerntz 8 , .Xr zdump 8 , .Xr zic 8 .Sh 否認証明 各地に対して特定の国や領土と関連付けているのは、識別だけを目的としています。 なんらかの領土問題に対する .Fx Project の支持や拒否を意図しているのではありません。 diff --git a/ja_JP.eucJP/man/man9/VOP_INACTIVE.9 b/ja_JP.eucJP/man/man9/VOP_INACTIVE.9 index e821668bec..bdf20db783 100644 --- a/ja_JP.eucJP/man/man9/VOP_INACTIVE.9 +++ b/ja_JP.eucJP/man/man9/VOP_INACTIVE.9 @@ -1,113 +1,113 @@ .\" -*- nroff -*- .\" .\" Copyright (c) 1996 Doug Rabson .\" .\" All rights reserved. .\" .\" This program is free software. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``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 DEVELOPERS 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/share/man/man9/VOP_INACTIVE.9,v 1.14 2003/10/23 03:07:56 hmp Exp % .\" .\" $FreeBSD$ .Dd July 24, 1996 .Os .Dt VOP_INACTIVE 9 .Sh 名称 .Nm VOP_INACTIVE , .Nm VOP_RECLAIM .Nd vnode のためのファイルシステム資源の回収 .Sh 書式 .In sys/param.h .In sys/vnode.h .Ft int .Fn VOP_INACTIVE "struct vnode *vp" "struct thread *td" .Ft int .Fn VOP_RECLAIM "struct vnode *vp" "struct thread *td" .Sh 解説 引数は以下の通りです。 .Bl -tag -width 2n .It Fa vp 回収されている vnode。 .El .Pp .Fn VOP_INACTIVE は、カーネルがもはやその vnode を使用しなくなった時に呼び出されます。 これは、参照カウントが 0 になった時、 またはオープンされているファイルがあるファイルシステムが 強制的にアンマウントされた時に起こります。 .Sq オープンされているが削除された ファイルのための領域を回収するために、 使用可能です。 .Pp .Fn VOP_RECLAIM は、異なるファイルシステムのために vnode が再利用される時に呼び出されます。 vnode に関連しているあらゆるファイルシステム固有の資源は、解放されるべきです。 .Sh ロック VOP_INACTIVE では、入る時に .Fa vp がロックされます。 VOP_INACTIVE コードは、戻る前に .Fa vp をアンロックしなければなりません。 .Pp VOP_RECLAIM では、入る時に .Fa vp はロックされず、戻り時もロックされないままでいるべきです。 .Sh 疑似コード .Bd -literal int vop_inactive(struct vnode *vp, struct thread *td) { if (link count of vp == 0) { /* * vp のためのファイルシステム内の領域を回収します。 */ ...; } VOP_UNLOCK(vp, 0, td); return 0; } int -vop_reclaim(struct vnode *vp) +vop_reclaim(struct vnode *vp, struct thread *td) { /* * 名前キャッシュを一掃します。 */ cache_purge(vp); /* * ファイルシステムに関連したデータを解放します。 */ ...; return 0; } .Ed .Sh 関連項目 .Xr vnode 9 .Sh 作者 このマニュアルページは .An Doug Rabson が書きました。 diff --git a/ja_JP.eucJP/man/man9/VOP_LOOKUP.9 b/ja_JP.eucJP/man/man9/VOP_LOOKUP.9 index 7c253cb803..f3ff422a12 100644 --- a/ja_JP.eucJP/man/man9/VOP_LOOKUP.9 +++ b/ja_JP.eucJP/man/man9/VOP_LOOKUP.9 @@ -1,455 +1,455 @@ .\" -*- nroff -*- .\" .\" Copyright (c) 1996 Doug Rabson .\" .\" All rights reserved. .\" .\" This program is free software. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``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 DEVELOPERS 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/share/man/man9/VOP_LOOKUP.9,v 1.21 2004/07/08 00:36:58 alfred Exp % .\" .\" $FreeBSD$ .Dd November 24, 1997 .Os .Dt VOP_LOOKUP 9 .Sh 名称 .Nm VOP_LOOKUP .Nd パス名の構成要素の調査 .Sh 書式 .In sys/param.h .In sys/vnode.h .In sys/namei.h .Ft int .Fn VOP_LOOKUP "struct vnode *dvp" "struct vnode **vpp" "struct componentname *cnp" .Sh 解説 このエントリポイントは与えられたディレクトリ内の単一のパス名要素を調べます。 .Pp 引数は以下のとおりです。 .Bl -tag -width vpp .It Fa dvp 検索するディレクトリのロックされた vnode です。 .It Fa vpp 結果のロックされた vnode が格納されるべき変数のアドレスです。 .It Fa cnp 検索されるためのパス名要素です。 .El .Pp .Fa cnp は以下で定義されている componentname 構造体へのポインタです。 .Bd -literal struct componentname { /* * lookup への引数です。 */ u_long cn_nameiop; /* namei 操作 */ u_long cn_flags; /* namei へのフラグ */ - struct thread *cn_proc; /* lookup を要求しているスレッド */ + struct thread *cn_thread; /* lookup を要求しているスレッド */ struct ucred *cn_cred; /* 証明 */ /* * 検索ルーチンおよびコミットルーチンで共有されます。 */ char *cn_pnbuf; /* パス名バッファ */ char *cn_nameptr; /* 検索された名前へのポインタ */ long cn_namelen; /* 検索された要素の長さ */ u_long cn_hash; /* 検索された名前のハッシュ値 */ long cn_consume; /* lookup() で消費する文字数 */ }; .Ed .Pp パス名の要素をロックされた vnode へのポインタに変換します。 これが正に中心であり、より複雑なルーチンです。 ファイルシステムが厳密なツリー階層に保たれていない場合には、 デッドロック状態に陥ることがあります。 .Pp .Fa cnp->cn_nameiop 引数は、オブジェクトの用途目的に依存し、 .Dv LOOKUP , .Dv CREATE , .Dv RENAME , または .Dv DELETE です。 .Dv CREATE , .Dv RENAME , または .Dv DELETE が明示されたときには、ディレクトリエントリの作成、名前変更、削除に 使用する情報が計算できます。 .Pp VOP_LOOKUP の全体の概要です。 .Bd -ragged -offset indent ディレクトリのアクセス権をチェックします。 キャッシュの中の名前を検索し、もし見つかれば、その名前を返します。 ディレクトリの中の名前を検索し、found または notfound に適切に進みます。 .Ed .Pp notfound: .Bd -ragged -offset indent 作成または名前変更でパス名の最後の場合には、 .Er EJUSTRETURN を返し、利用可能な位置に情報を残します。 そうでなければ .Er ENOENT を返します。 .Ed .Pp found: .Bd -ragged -offset indent パス名の最後で削除の場合には、削除を可能にする情報を返します。 パス名の最後で名前変更の場合には、変更先の inode をロックして 名前変更を可能にする情報を返します。 最後でない場合には、名前をキャッシュに追加します。 最後で作成でも削除でもない場合には、名前をキャッシュに追加します。 .Ed .Sh ロック ディレクトリ .Fa dvp はエントリ時にロックされているべきです。 エラー (注: 戻り値 .Er EJUSTRETURN はエラーとはみなされません) が検出された場合には、ロックされたまま戻ります。 しかしながら、 .Fa cnp->cn_flags に .Dv LOCKPARENT および .Dv ISLASTCN の両方が明示されていない場合には、アンロックされません。 エントリがそのディレクトリの中で見つかった場合には、ロックされて返されます。 .Sh 戻り値 要素が見つかった場合には、 .Fa *vpp にそのファイルのロックされた vnode が設定されて、0 が返されます。 検索されている要素が "." の場合、その vnode は .Xr vref 9 を使用して追加された余分な参照を得ます。 この場合は、呼び出し側が適切にロックを解放することに注意しなければなりません。 .Pp 要素が見つからず操作が .Dv CREATE または .Dv RENAME である場合には、フラグ .Dv ISLASTCN が明示されて操作は成功し、特別な戻り値 .Er EJUSTRETURN が返されます。 そうでない場合には、適切なエラーコードが返されます。 .Sh 擬似コード .Bd -literal int vop_lookup(struct vnode *dvp, struct vnode **vpp, struct componentname *cnp) { int error; int nameiop = cnp->cn_nameiop; int flags = cnp->cn_flags; int lockparent = flags & LOCKPARENT; int islastcn = flags & ISLASTCN; struct vnode *vp = NULL; /* * ディレクトリのアクセス権をチェックします。 */ if (dvp->v_type != VDIR) return ENOTDIR; error = VOP_ACCESS(dvp, VEXEC, cred, cnp->cn_thread); if (error) return (error); if (islastcn && (dvp->v_mount->mnt_flag & MNT_RDONLY) && (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME)) return (EROFS); /* * ディレクトリ/名前のペアのための名前キャッシュをチェックします。 * これは、存在していない名前の場合には ENOENT を、名前が見つかった * 場合には -1 を、そうでない場合には 0 を返します。 */ error = cache_lookup(dvp, vpp, cnp); if (error) { int vpid; if (error = ENOENT) return error; vp = *vpp; if (dvp == vp) { /* "." 上を探します */ VREF(vp); error = 0; } else if (flags & ISDOTDOT) { /* * デッドロックを避けるため、".." のロックされた vnode を * 取得する前に、そのディレクトリをアンロックする必要が * あります。 */ VOP_UNLOCK(dvp); error = vget(vp, 1); if (!error) { if (lockparent && islastcn) error = VOP_LOCK(dvp); } } else { error = vget(vp, 1); if (error || !(lockparent && islastcn)) { VOP_UNLOCK(dvp); } } /* * ロックを待っている間に特性の数が変化していないことを * チェックします。 */ if (!error) { if (vpid == vp->v_id) { /* * lockparent && islastcn の場合には dvp がロック * されます。 vp がロックされます。 */ return (0); } vput(vp); if (dvp != vp && lockparent && islastcn) VOP_UNLOCK(pdp); } /* * 以下のディレクトリ検索のために dvp を再度ロックします。 */ error = VOP_LOCK(dvp); if (error) { return (error); } *vpp = NULL; } /* * 要素 cnp->cn_nameptr のために dvp を検索します。 */ ...; if (!found) { if ((nameiop == CREATE || nameiop == RENAME) && islastcn && directory dvp has not been removed) { /* * ディレクトリの書込み権をチェックします。 */ /* * できる限り、ディレクトリの中の新しい要素の名前のために * 十分に大きい場所の位置を記録します。 これは dvp のための * vnode の私的データの中に記録されることが可能です。 * VOP_CREATE または VOP_RENAME で後で使用するために、 * パス名に保持するために SAVENAME フラグを設定します。 */ cnp->cn_flags |= SAVENAME; if (!lockparent) /* * 上記で記録された追加のデータは lockparent が明示 * された時にのみ有用であることに注意してください。 */ VOP_UNLOCK(dvp); return EJUSTRETURN; } /* * キャッシュに名前を挿入することを考慮します。 */ if ((cnp->cn_flags & MAKEENTRY) && nameiop != CREATE) cache_enter(dvp, NULL, cnp); return ENOENT; } else { /* * 削除でパス名の最後の場合には、ファイルの削除に使用できる * パラメータを返します。 wantparent フラグが設定されていない * 場合にはそのディレクトリのみを返し、そうでない場合には * 続けてその inode をロックし、"." に注意します。 */ if (nameiop == DELETE && islastcn) { /* * ディレクトリの書込み権をチェックします。 */ error = VOP_ACCESS(dvp, VWRITE, cred, cnp->cn_thread); if (error) return (error); if (found entry is same as dvp) { VREF(dvp); *vpp = dvp; return 0; } error = VFS_VGET(dvp->v_mount, ..., &vp); if (error) return error; if (directory is sticky && cred->cr_uid != 0 && cred->cr_uid != owner of dvp && owner of vp != cred->cr_uid) { vput(vp); return EPERM; } *vpp = vp; if (!lockparent) VOP_UNLOCK(dvp); return 0; } /* * 再書込み (RENAME) の場合には、その inode および現在の * ディレクトリを再書込みするために要求される情報を返します。 * 通常ファイルまたは空のディレクトリであることを確認するために、 * ディレクトリエントリの inode を取得しなければなりません。 */ if (nameiop == RENAME && wantparent && islastcn) { error = VOP_ACCESS(dvp, VWRITE, cred, cnp->cn_thread); if (error) return (error); /* * "." をチェックします。 */ if (found entry is same as dvp) return EISDIR; error = VFS_VGET(dvp->v_mount, ..., &vp); if (error) return error; *vpp = vp; /* * 後で VOP_RENAME で使用するために名前を保存します。 */ cnp->cn_flags |= SAVENAME; if (!lockparent) VOP_UNLOCK(dvp); return 0; } /* * 名前の変換のステップの全容です。 シンボリックリンクが現在の * ディレクトリからの相対である場合には、再度必要になるので、 * ディレクトリを 'vput' しません。 代わりに "pdp" として * アンロックされたディレクトリを保存します。 取得する前にその * inode が削除されないことを保証するために、そのディレクトリを * アンロックする前に目的の inode を取得しなければなりません。 * ルートからディレクトリツリーを下る方向で inode を取得する * ことで、デッドロックを常に予防します。 従がって、逆向きの * ポインタ ".." を辿るときには、要求されたディレクトリを取得する * 前に親ディレクトリをアンロックしなければなりません。 ".." に * 関連付けられた inode のための VFS_VGET が戻る前に、現在の * および親ディレクトリの両方が削除された場合には、ここに潜在的な * 競合状態があります。 きわめて複雑なデッドロック検出アルゴリズム * の実装なしにこの競合状態を避けることができないので、この * 競合状態の発生が稀であることを期待しています。 ファイルシステムが、 * ".." 以外に、ディレクトリ構造の中に遡りを指すハードリンクを * 持つ場合、この簡単なデッドロック検出機構が働かないことにも注意 * してください。 */ if (flags & ISDOTDOT) { VOP_UNLOCK(dvp); /* inode を取得するための競合です */ error = VFS_VGET(dvp->v_mount, ..., &vp); if (error) { VOP_LOCK(dvp); return (error); } if (lockparent && islastcn) { error = VOP_LOCK(dvp); if (error) { vput(vp); return error; } } *vpp = vp; } else if (found entry is same as dvp) { VREF(dvp); /* 例えば "." など、自分自身が必要です */ *vpp = dvp; } else { error = VFS_VGET(dvp->v_mount, ..., &vp); if (error) return (error); if (!lockparent || !islastcn) VOP_UNLOCK(dvp); *vpp = vp; } /* * 適切であれば名前をキャッシュに挿入します。 */ if (cnp->cn_flags & MAKEENTRY) cache_enter(dvp, *vpp, cnp); return (0); } } .Ed .Sh エラー .Bl -tag -width Er .It Bq Er ENOTDIR vnode .Fa dvp がディレクトリを表わしていません。 .It Bq Er ENOENT 要素 .Fa dvp がそのディレクトリには見つかりません。 .It Bq Er EACCES 明示された操作のためのアクセスが拒否されました。 .It Bq Er EJUSTRETURN .Dv CREATE または .Dv RENAME の操作は成功です。 .El .Sh 関連項目 .Xr VOP_ACCESS 9 , .Xr VOP_CREATE 9 , .Xr VOP_MKDIR 9 , .Xr VOP_MKNOD 9 , .Xr VOP_RENAME 9 , .Xr VOP_SYMLINK 9 , .\" 下の関連項目をマージ by A.Ikeuchi。 .Xr vnode 9 .Sh 歴史 関数 .Nm は .Bx 4.3 で登場しました。 .\" 上の関連項目にマージ by A.Ikeuchi。 .\" .Sh 関連項目 .\" .Xr vnode 9 .Sh 作者 このマニュアルページは .Pa ufs_lookup.c の中のコメントからのテキストを使って、 .An Doug Rabson が書きました。 diff --git a/ja_JP.eucJP/man/man9/VOP_READDIR.9 b/ja_JP.eucJP/man/man9/VOP_READDIR.9 index a3d3fa76d1..30ffd070c4 100644 --- a/ja_JP.eucJP/man/man9/VOP_READDIR.9 +++ b/ja_JP.eucJP/man/man9/VOP_READDIR.9 @@ -1,169 +1,169 @@ .\" -*- nroff -*- .\" .\" Copyright (c) 1996 Doug Rabson .\" .\" All rights reserved. .\" .\" This program is free software. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``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 DEVELOPERS 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/share/man/man9/VOP_READDIR.9,v 1.12 2003/10/23 02:11:14 hmp Exp % .\" .\" $FreeBSD$ .Dd July 24, 1996 .Os .Dt VOP_READDIR 9 .Sh 名称 .Nm VOP_READDIR .Nd ディレクトリ内容の読込み .Sh 書式 .In sys/param.h .In sys/dirent.h .In sys/vnode.h .Ft int .Fn VOP_READDIR "struct vnode *vp" "struct uio *uio" "struct ucred *cred" "int *eofflag" "int *ncookies" "u_long **cookies" .Sh 解説 ディレクトリエントリを読込みます。 .Bl -tag -width ncookies .It Fa vp ディレクトリの vnode です。 .It Fa uio ディレクトリ内容を読込む場所です。 .It Fa cred 呼び出し側の証明です。 .It Fa eofflag ファイル終端の状態を返します (必要なければ NULL)。 .It Fa ncookies NFS のために作成されたディレクトリクッキーの数です (必要なければ NULL)。 .It Fa cookies NFS のためのディレクトリ検索クッキーです (必要なければ NULL)。 .El .Pp ディレクトリ内容は .Vt struct dirent 構造体に読込まれます。 ディスク上の構造体がこれと違っている場合、変換が必要となります。 .Sh ロック ディレクトリはエントリ時にロックされているべきであり、 終了時までロックされます。 .Sh 戻り値 成功時には 0 が返され、そうでなければエラーコードが返されます。 .Pp NFS サーバから呼び出された場合には、追加の引数 .Fa eofflag , .Fa ncookies および .Fa cookies が与えられます。 .Fa *eofflag の値は、読込み中にディレクトリの最後に達した場合には、 TRUE に設定されるべきです。 ディレクトリ検索クッキーは NFS クライアントに返され、後でそのディレクトリを 通してディレクトリの読込みを再開するために使用されることが出来ます。 ディレクトリエントリ毎に 1 つのクッキーが返されるべきです。 クッキーの値は、ディレクトリ内のオフセットであり、 対応するディスク上のディレクトリエントリがそこから開始します。 クッキーのためのメモリは以下を使用して割り当てられるべきです。 .Pp .Bd -literal ...; *ncookies = number of entries read; *cookies = (u_int*)# malloc(*ncookies * sizeof(u_int), M_TEMP, M_WAITOK); .Ed .Sh 疑似コード .Bd -literal int vop_readdir(struct vnode *vp, struct uio *uio, struct ucred *cred, int *eofflag, int *ncookies, u_int **cookies) { off_t off; int error = 0; /* * クッキーの生成時に後で使うために元のオフセットを覚えます。 */ off = uio->uio_offset; /* * uio->uio_offset から始まるディレクトリ内容を uio によって * 指されるバッファに読込みます。 */ ...; if (!error && ncookies != NULL) { struct dirent *dpStart; struct dirent *dpEnd; struct dirent *dp; int count; u_int *cookiebuf; u_int *cookiep; if (uio->uio_segflg != UIO_SYSSPACE || uio->uio_iovcnt != 1) panic("vop_readdir: unexpected uio from NFS server"); /* * 今 uio に読込んだ要素を解析します。 */ dpStart = (struct dirent *) ((char *)uio->uio_iov->iov_base - (uio->uio_offset - off)); dpEnd = (struct dirent *) uio->uio_iov->iov_base; /* * エントリ数の数え上げ */ for (dp = dpStart, count = 0; dp < dpEnd; dp = (struct dirent *)((caddr_t) dp + dp->d_reclen)) count++; cookiebuf = (u_int *) malloc(count * sizeof(u_int), M_TEMP, M_WAITOK); for (dp = dpStart; cookiep = cookiebuf; dp < dpEnd; dp = (struct dirent *)((caddr_t) dp + dp->d_reclen)) { off += dp->d_reclen; *cookiep++ = (u_int) off; } *ncookies = count; *cookies = cookiebuf; } if (eofflag && uio->uio_offset is past the end of the directory) { *eofflag = TRUE; } return error; } .Ed .Sh エラー .Bl -tag -width Er .It Bq Er EINVAL ディレクトリ内の不正なオフセットから読込もうとしました。 .It Bq Er EIO ディレクトリの読込み中に、読取りエラーが発生しました。 .El .Sh 関連項目 .Xr vnode 9 -.Sh AUTHORS +.Sh 作者 このマニュアルページは .An Doug Rabson が書きました。 diff --git a/ja_JP.eucJP/man/man9/VOP_SETEXTATTR.9 b/ja_JP.eucJP/man/man9/VOP_SETEXTATTR.9 index 6edca43c93..5327bf88b6 100644 --- a/ja_JP.eucJP/man/man9/VOP_SETEXTATTR.9 +++ b/ja_JP.eucJP/man/man9/VOP_SETEXTATTR.9 @@ -1,122 +1,122 @@ .\"- .\" Copyright (c) 1999, 2000, 2001 Robert N. M. Watson .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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/share/man/man9/VOP_SETEXTATTR.9,v 1.18 2003/09/12 21:54:11 ru Exp % .\" .\" $FreeBSD$ .Dd December 23, 1999 .Os .Dt VOP_SETEXTATTR 9 .Sh 名称 .Nm VOP_SETEXTATTR .Nd vnode への名前つき拡張属性の設定 .Sh 書式 .In sys/param.h .In sys/vnode.h .In sys/extattr.h .Ft int -.Fn VOP_SETEXTATTR "struct vnode *vp" "int attrnamespace" "char *name" "struct uio *uio" "struct ucred *cred" "struct thread *td" +.Fn VOP_SETEXTATTR "struct vnode *vp" "int attrnamespace" "const char *name" "struct uio *uio" "struct ucred *cred" "struct thread *td" .Sh 解説 この vnode 呼び出しは、ファイルまたはディレクトリに対し、 特定の名前付き拡張属性を設定するために使用可能です。 .Pp 引数は以下の通りです。 -.Bl -tag -width ".Fa attrnamespace" +.Bl -tag -width type .It Fa vp ファイルまたはディレクトリの vnode。 .It Fa attrnamespace どの拡張属性の名前空間に、その属性の名前が存在するのかを示す整数定数。 .It Fa name 属性の名前が入った、ヌル文字で終端された文字列へのポインタ。 .It Fa uio 読み込みまたは書き込みされるデータの位置。 .It Fa cred 要求の認証で使用するユーザ証明。 .It Fa td 拡張属性を設定しているスレッド。 .El .Pp uio 構造体は、 .Xr VOP_WRITE 9 での同じ名前の引数と同様に使用されます。しかしながら、 拡張属性が厳密な "name=value" のセマンティクスを規定しているので、 0 でないオフセットは却下されるでしょう。 .Pp .Fa uio ポインタは、 .Dv NULL であることが可能であり、 指定された拡張属性が削除されるべきであることを指示します。 .Pp .Fa cred ポインタは、 .Dv NULL を渡すことができ、 可能であるならばアクセス制御チェックが実行されないことを指示します。 この .Fa cred の設定は、アクティブプロセスに許されていない拡張属性の変更を、 カーネルが正当化することを認めるために使用可能です。 .Pp 拡張属性のセマンティクスは、 呼び出しを実装しているファイルシステムに依存して異なり得ます。 拡張属性についてのより多くの情報は .Xr extattr 9 を参照してください。 .Sh ロック vnode は、入る時にロックされ、戻り時にもロックされ続けているべきです。 .Sh 戻り値 拡張属性が成功裏に設定された場合には 0 が返されます。 そうでない場合には適切なエラーコードが返されます。 .Sh エラー .Bl -tag -width Er .It Bq Er EACCES 呼び出し側が適切な特権を持っていません。 .It Bq Er ENXIO 指定された vnode および属性名に対する要求は、このファイルシステムでは無効です。 .It Bq Er ENOMEM 要求を実行するための十分なメモリがありません。 .It Bq Er EFAULT uio 構造体が無効なユーザ空間アドレスを参照しています。 .It Bq Er EINVAL name, namespace, または uio 引数が無効です。 .It Bq Er EOPNOTSUPP ファイルシステムが -.Fn VOP_GETEXTATTR +.Fn VOP_SETEXTATTR をサポートしていません。 .It Bq Er ENOSPC ファイルシステムに空き領域がありません。 .It Bq Er EROFS ファイルシステムが読み取り専用です。 .El .Sh 関連項目 .Xr extattr 9 , .Xr vnode 9 , .Xr VOP_GETEXTATTR 9 , .Xr VOP_LISTEXTATTR 9 .Sh 作者 このマニュアルページは .An Robert Watson が書きました。 diff --git a/ja_JP.eucJP/man/man9/bios.9 b/ja_JP.eucJP/man/man9/bios.9 index 40ddbf044d..5f4fa80972 100644 --- a/ja_JP.eucJP/man/man9/bios.9 +++ b/ja_JP.eucJP/man/man9/bios.9 @@ -1,127 +1,127 @@ .\" %FreeBSD: src/share/man/man9/bios.9,v 1.13 2003/10/23 01:14:18 hmp Exp % .\" .\" Copyright (c) 1997 Michael Smith .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" 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$ -.Dd Aug 1, 1997 +.Dd August 1, 1997 .Dt BIOS 9 .Os .Sh 名称 .Nm bios_sigsearch , .Nm bios32_SDlookup , .Nm bios32 .Nd PC BIOS との相互作用 .Sh 書式 .In sys/param.h .In vm/vm.h .In vm/pmap.h .In machine/param.h .In machine/pmap.h .In machine/pc/bios.h .Ft u_int32_t .Fn bios_sigsearch "u_int32_t start" "u_char *sig" "int siglen" "int paralen" "int sigofs" .Ft int .Fn bios32_SDlookup "struct bios32_SDentry *ent" .Ft int .Fn bios32 "struct bios_regs *br" "u_int offset" "u_short segment" .Fn BIOS_PADDRTOVADDR "addr" .Fn BIOS_VADDRTOPADDR "addr" .Vt extern struct bios32_SDentry PCIbios ; .Vt extern struct SMBIOS_table SMBIOStable ; .Vt extern struct DMI_table DMItable ; .Sh 解説 これらの関数は、BIOS 関数と x86 PC アーキテクチャシステムで出会うデータを 取り扱うための、汎用インタフェースを提供します。 .Bl -tag -width 20n .It Fn bios_sigsearch サービスシグネチャの BIOS アドレス空間を検索します。 サービスシグネチャは、 大抵はアンダスコアで囲まれている大文字の ASCII 文字列です。 検索は、 .Fa start から、または .Fa start が 0 の場合には BIOS の最初から始まります。 .Fa siglen バイトの BIOS イメージと .Fa sig とが、現在位置から .Fa sigofs バイトのオフセットにおいて比較されます。 マッチしないことが分かると、現在位置が .Fa paralen バイト増加されて検索が繰り返されます。 シグネチャが見つかった場合には、その実効物理アドレスが返されます。 シグネチャが見つからなかった場合には、0 が返されます。 .It Fn BIOS_VADDRTOPADDR カーネル仮想アドレス .Fa addr に対応する実効物理アドレスを返します。 .It Fn BIOS_VADDRTOPADDR 実効物理アドレス .Fa addr に対応するカーネル仮想アドレスを返します。 .It SMBIOStable NULL でない場合は、システム起動時に システムマネージメント BIOS (System Management BIOS; SMBIOS) テーブル から読み込まれた情報を含んでいる .Ft struct SMBIOS_table 構造体を指します。 .It DMItable NULL でない場合は、システム起動時に デスクトップマネージメントインタフェース (Desktop Management Interface; DMI) パラメータテーブル から読み込まれた情報を含んでいる .Ft struct DMI_table 構造体を指します。 .El .Sh BIOS32 システム起動時に、BIOS32 サービスディレクトリ (PCI 仕様の一部) の ために BIOS がスキャンされ、ディレクトリの存在が記録されます。 これは後で、他のサービスの場所を特定するために使用できます。 .Bl -tag -width 20n .It Fn bios32_SDlookup 引数 .Fa ent の .Fa ident フィールドで渡される 4 バイトの識別子にマッチする BIOS32 サービス の場所を特定しようと試みます。 .It Fn bios32 bios32 関数を呼び出します。 これは関数が、カーネルセグメント内で動作できることを 仮定しています (通常の場合)。 エントリポイントの仮想アドレスは .Fa entry で与えられ、 関数へのレジスタ引数は .Fa args で与えられます。 .It PCIbios NULL でない場合は、システム起動時に見つかった PCI BIOS エントリポイントを記述する .Ft struct bios32_SDentry 構造体を指します。 .El diff --git a/ja_JP.eucJP/man/man9/bus_release_resource.9 b/ja_JP.eucJP/man/man9/bus_release_resource.9 index cc8e8f8d49..effe73a9ec 100644 --- a/ja_JP.eucJP/man/man9/bus_release_resource.9 +++ b/ja_JP.eucJP/man/man9/bus_release_resource.9 @@ -1,110 +1,109 @@ .\" -*- nroff -*- .\" .\" Copyright (c) 2000 Alexander Langer .\" .\" All rights reserved. .\" .\" This program is free software. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``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 DEVELOPERS 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/share/man/man9/bus_release_resource.9,v 1.9 2004/07/03 18:29:23 ru Exp % .\" .\" $FreeBSD$ .Dd May 18, 2000 .Dt BUS_RELEASE_RESOURCE 9 .Os .Sh 名称 .Nm bus_release_resource .Nd バス上の資源の解放 .Sh 書式 .In sys/param.h .In sys/bus.h .Pp .In machine/bus.h .In sys/rman.h .In machine/resource.h -.Fd #include .Ft int .Fn bus_release_resource "device_t dev" "int type" "int rid" "struct resource *r" .Sh 解説 .Xr bus_alloc_resource 9 によって割り当てられた資源を解放します。 その資源は解放時に使用中であってはなりません。 すなわち、適切な関数 (IRQ のための .Xr bus_teardown_intr 9 など) を事前に呼び出してください。 .Bl -item .It .Fa dev は、資源を所有しているデバイスです。 .It .Fa type は、解放される資源の型です。 以前に割り当てた時と同一の型でなければなりません。 有効な型については .Xr bus_alloc_resource 9 を参照してください。 .It .Fa rid は、資源の資源識別子です。 .Fa rid は .Xr bus_alloc_resource 9 によって返された識別子と同一でなければなりません。 .It .Fa r は .Va struct resource 構造体へのポインタで、すなわち .Xr bus_alloc_resource 9 によって返された資源そのものです。 .El .Sh 戻り値 デバイス .Fa dev が親を持たない場合には .Er EINVAL が返され、そうでない場合には .Dv 0 が返されます。 資源を解放できない場合には、カーネルはパニックするでしょう。 .Sh 使用例 .Bd -literal /* IRQ の不活性化 */ bus_teardown_intr(dev, foosoftc->irqres, foosoftc->irqid); /* IRQ 資源の解放 */ bus_release_resource(dev, SYS_RES_IRQ, foosoftc->irqid, foosoftc->irqres); /* 入出力ポートの資源の解放 */ bus_release_resource(dev, SYS_RES_IOPORT, foosoftc->portid, foosoftc->portres); .Ed .Sh 関連項目 .Xr bus_alloc_resource 9 , .Xr device 9 , .Xr driver 9 .Sh 作者 このマニュアルページは .An Alexander Langer Aq alex@big.endian.de が書きました。 diff --git a/ja_JP.eucJP/man/man9/device_ids.9 b/ja_JP.eucJP/man/man9/device_ids.9 index 65e5685f25..37fabf8a06 100644 --- a/ja_JP.eucJP/man/man9/device_ids.9 +++ b/ja_JP.eucJP/man/man9/device_ids.9 @@ -1,78 +1,78 @@ .\" .\" Copyright (C) 2001 Chad David . All rights reserved. .\" .\" 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(s), this list of conditions and the following disclaimer as .\" the first lines of this file unmodified other than the possible .\" addition of one or more copyright notices. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice(s), this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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/share/man/man9/device_ids.9,v 1.3 2004/06/22 20:18:15 le Exp % .\" .\" $FreeBSD$ .Dd June 22, 2004 .Dt DEVICE_IDS 9 .Os .Sh 名称 .Nm device_ids , .Nm major , .Nm minor , .Nm umajor , .Nm uminor .Nd デバイス ID の計算 .Sh 書式 .In sys/types.h .In sys/systm.h .Ft int .Fn major "struct cdev *dev" .Ft int .Fn minor "struct cdev *dev" .Ft int .Fn umajor "dev_t id" .Ft int .Fn uminor "dev_t id" .Sh 解説 .Nm ファミリの関数は、ローデバイスの ID である .Fa id またはデバイス構造体へのポインタである .Fa dev をとり、要求されたメジャーまたはマイナデバイス ID の整数値を返します。 .Pp 実際のメジャーおよびマイナデバイス ID はローデバイス ID から マスクされた値です。 実際のメジャーおよびマイナ ID を決定するために使用される計算上の詳細は、 .Pa kern_conf.c の実際のソースを参照して下さい。 .Sh 戻り値 0 より大きくかつ .Dv NUMCDEVSW より小さい整数値です。 そのデバイスが無効である場合には、 .Fn major および .Fn minor は .Dv NODEV を返します。 -.Sh AUTHORS +.Sh 作者 このマニュアルページは .An Chad David Aq davidc@acns.ab.ca が書きました。 diff --git a/ja_JP.eucJP/man/man9/store.9 b/ja_JP.eucJP/man/man9/store.9 index 91c241d006..72b202a59b 100644 --- a/ja_JP.eucJP/man/man9/store.9 +++ b/ja_JP.eucJP/man/man9/store.9 @@ -1,91 +1,91 @@ .\" %NetBSD: store.9,v 1.2 1996/01/09 21:59:27 perry Exp % .\" .\" Copyright (c) 1996 Jason R. Thorpe. .\" All rights reserved. .\" .\" This code is derived from software contributed by Kenneth Stailey. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed for the NetBSD Project .\" by Jason R. Thorpe. .\" 4. 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/share/man/man9/store.9,v 1.11 2001/10/01 16:09:25 ru Exp % .\" $FreeBSD$ .\" .Dd January 7, 1996 .Dt STORE 9 .Os .Sh 名称 .Nm store , .Nm subyte , .Nm susword , .Nm suswintr , .Nm suword .Nd ユーザ空間へのデータの格納 .Sh 書式 .In sys/types.h .In sys/time.h .In sys/systm.h .In sys/resourcevar.h .Ft int .Fn subyte "void *base" "int byte" .Ft int .Fn susword "void *base" "int word" .Ft int .Fn suswintr "void *base" "int word" .Ft int -.Fn suword "void *base" "int word" +.Fn suword "void *base" "long word" .Sh 解説 .Nm 関数群はユーザ空間へ小さなデータをコピーするようにデザインされています。 .Pp .Nm ルーチンは以下の機能を提供します。 .Bl -tag -width "suswintr()" .It Fn subyte 1 バイトのデータをユーザ空間のアドレス .Pa base へ格納します。 .It Fn susword 1 ショートワードのデータをユーザ空間のアドレス .Pa base へ格納します。 .It Fn suswintr 1 ショートワードのデータをユーザ空間のアドレス .Pa base へ格納します。 この関数は割り込みコンテキスト中でも安全に呼び出せます。 .It Fn suword 1 ワードのデータをユーザ空間のアドレス .Pa base へ格納します。 .El .Sh 戻り値 .Nm 関数は 0 を返しますが、失敗した場合は -1 を返します。 .Sh 関連項目 .Xr copy 9 , .Xr fetch 9 diff --git a/ja_JP.eucJP/man/man9/suser.9 b/ja_JP.eucJP/man/man9/suser.9 index 99df01506a..e783226bba 100644 --- a/ja_JP.eucJP/man/man9/suser.9 +++ b/ja_JP.eucJP/man/man9/suser.9 @@ -1,128 +1,128 @@ .\" .\" Copyright (c) 1996 Julian R Elischer .\" All rights reserved. .\" .\" This code is derived from software contributed by Kenneth Stailey. .\" .\" 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. .\" 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. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed for the FreeBSD Project .\" by Julian R Elischer .\" 4. 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/share/man/man9/suser.9,v 1.25.2.1 2004/08/24 20:43:10 simon Exp % .\" $FreeBSD$ .\" .Dd April 2, 2002 .Dt SUSER 9 .Os .Sh 名称 .Nm suser , .Nm suser_cred .Nd 証明がスーパユーザの権限を持っているかどうかのチェック .Sh 書式 .In sys/param.h .In sys/systm.h .Ft int .Fn suser "struct thread *td" .Ft int -.Fn suser_cred "struct ucred *cred" "int flags" +.Fn suser_cred "struct ucred *cred" "int flag" .Sh 解説 .Fn suser および .Fn suser_cred 関数は、スーパユーザの権限を含む証明が与えられているかどうかをチェックします。 .Pp .Fn suser 関数は最も普通で、特別な事情がその他の方法を要求するのでなければ、 これが使用されるべきです。 .Pp .Fn suser_cred 関数は、チェックされるべき証明がそのスレッド自身のものでない時、 スレッドが存在しない時、スーパユーザの権限が 閉じ込められた root に拡大されるべき時、またはチェックされるべき証明が 実効ユーザというよりは実際のユーザである時に、使用されるべきです。 .Pp デフォルトでは、 .Xr jail 2 システムコールによって閉じ込められている場合には、 プロセスはスーパユーザの権限を持ちません。 しかしながら、これが適切な場合があり、 .Fn suser_cred 関数へ渡す -.Fa flags +.Fa flag 引数に .Dv SUSER_ALLOWJAIL ビットを設定することによって実現されます。 これが牢屋を弱くしないことを、注意深く再調査することが重要です。 一般的には .Xr jail 2 呼び出しの中の暗黙の .Xr chroot 2 によって行動が保護されている場所のみにおいて、 このような権限を承諾されるべきです。 .Pp デフォルトでは、チェックされる証明は実効ユーザです。 代わりに実際のユーザをチェックする必要がある場合 (例えば、 リソースリミットが適用された場合の決定のとき) があります。 そして、これは .Fn suser_cred 関数への .Fa flag 引数に .Dv SUSER_RUID を渡すことによって行うことが可能です。 .Pp .Fn suser および .Fn suser_cred 関数は、スーパユーザの権限が使用された事を、 指定されたプロセスのプロセス構造体中に記録します。 これらの関数の機能の一部は、スーパユーザの権限が使用されたかどうかを 通知することにありますので、 他のパーミッションの可能性が使い尽くされた後でのみ、 これら関数を呼び出すべきです。 .Sh 戻り値 .Fn suser および .Fn suser_cred 関数は、そのユーザがスーパユーザの権限を持っている場合には 0 を返し、 そうでない場合には .Er EPERM を返します。 これは、TRUE の応答がスーパユーザ権限を持つことを示すような他の実装とは .Em 逆の論理 になっています。 TRUE の応答の .Fn suser はスーパユーザの権限を示します。 .Sh 関連項目 .Xr chroot 2 , .Xr jail 2 .Sh バグ .Fn suser および .Fn suser_cred 関数は事実上は 2000 年の 8 月から、 スーパユーザの特権が使用されたことおよびされなかったことを記録しません。 diff --git a/ja_JP.eucJP/man/man9/sx.9 b/ja_JP.eucJP/man/man9/sx.9 index ce9e5d1bfc..c4fafa418a 100644 --- a/ja_JP.eucJP/man/man9/sx.9 +++ b/ja_JP.eucJP/man/man9/sx.9 @@ -1,217 +1,216 @@ .\" .\" Copyright (C) 2001 Jason Evans . All rights reserved. .\" .\" 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(s), this list of conditions and the following disclaimer as .\" the first lines of this file unmodified other than the possible .\" addition of one or more copyright notices. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice(s), this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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/share/man/man9/sx.9,v 1.29 2004/07/11 16:08:25 darrenr Exp % .\" .\" $FreeBSD$ .Dd August 14, 2001 .Dt SX 9 .Os .Sh 名称 .Nm sx , .Nm sx_init , .Nm sx_destroy , .Nm sx_slock , .Nm sx_xlock , .Nm sx_try_slock , .Nm sx_try_xlock , .Nm sx_sunlock , .Nm sx_xunlock , .Nm sx_try_upgrade , .Nm sx_downgrade , .Nm sx_assert , .Nm sx_unlock , .Nm SX_SYSINIT .Nd カーネルの共有/排他ロック .Sh 書式 .In sys/param.h .In sys/lock.h .In sys/sx.h .Ft void .Fn sx_init "struct sx *sx" "const char *description" .Ft void .Fn sx_destroy "struct sx *sx" .Ft void .Fn sx_slock "struct sx *sx" .Ft void .Fn sx_xlock "struct sx *sx" .Ft int .Fn sx_try_slock "struct sx *sx" .Ft int .Fn sx_try_xlock "struct sx *sx" .Ft void .Fn sx_sunlock "struct sx *sx" .Ft void .Fn sx_xunlock "struct sx *sx" .Ft int .Fn sx_try_upgrade "struct sx *sx" .Ft void .Fn sx_downgrade "struct sx *sx" .Ft void .Fn sx_assert "struct sx *sx" "int what" .\" .Ss sx ユーティリティマクロ .Fn sx_unlock "struct sx *sx" .Fn SX_SYSINIT "name" "struct sx *sx" "const char *description" .\" .Ss カーネルオプション .Cd "options INVARIANTS" .Cd "options INVARIANT_SUPPORT" -.In sys/kernel.h .Sh 解説 共有/排他ロックは書き込まれるよりも、読み込まれる方が非常に多いデータを 保護するために使用されます。 mutex は本質的に共有/排他ロックよりも能率的なので、共有/排他ロックは 用心深く使用されるべきです。 .Pp 共有/排他ロックは .Fn sx_init を使用して作成されます。 ここで .Fa sx は .Vt struct sx のための領域へのポインタで、 .Fa description はその共有/排他ロックを説明するヌルで終端された文字列へのポインタです。 共有/排他ロックは .Fn sx_destroy を使用して破壊されます。 スレッドは .Fn sx_slock または .Fn sx_try_slock および .Fn sx_sunlock または .Fn sx_unlock の呼び出しによって共有ロックを獲得および解放します。 スレッドは .Fn sx_xlock または .Fn sx_try_xlock および .Fn sx_xunlock または .Fn sx_unlock の呼び出しによって排他ロックを獲得および解放します。 スレッドは .Fn sx_try_upgrade の呼び出しによって、現在保有している共有ロックから排他ロックへの アップグレードを試みることが可能です。 排他ロックを持っているスレッドは、 .Fn sx_downgrade の呼び出しによってその排他ロックから共有ロックへのダウングレードが可能です。 .Pp .Fn sx_try_slock および .Fn sx_try_xlock は共有/排他ロックがすぐに獲得できなかった場合には 0 を返し、 そうでない場合には共有/排他ロックが獲得され 0 ではない値が返されます。 .Pp .Fn sx_try_upgrade は共有ロックをすぐに排他ロックにアップグレードできない場合には 0 を返し、 そうでない場合には排他ロックが獲得され 0 ではない値が返されます。 .Pp .Cd "options INVARIANTS" および .Cd "options INVARIANT_SUPPORT" 付きでコンパイルされたときには、 .Fn sx_assert 関数は .Fa what に指定されたアサートのために .Fa sx をテストし、それらが合わなかった場合には panic します。 以下のアサートがサポートされています。 .Bl -tag -width ".Dv SX_UNLOCKED" .It Dv SX_LOCKED 現在のスレッドが、最初の引数によって指されている .Vt sx ロック上に、共有または排他ロックのいずれかを持っていることをアサートします。 .It Dv SX_SLOCKED 現在のスレッドが、最初の引数によって指されている .Vt sx ロック上に、共有ロックを持っていることをアサートします。 .It Dv SX_XLOCKED 現在のスレッドが、最初の引数によって指されている .Vt sx ロック上に、排他ロックを持っていることをアサートします。 .It Dv SX_UNLOCKED 現在のスレッドが、最初の引数によって指されている .Vt sx ロック上に、ロックを持っていないことをアサートします。 .El .Pp プログラミングを簡単にするために、 .Fn sx_sunlock および .Fn sx_xunlock 各々の関数へのフロントエンドマクロとして .Fn sx_unlock が提供されています。 ロックがどの状態になっているかを知っているアルゴリズムは、 小さなパフォーマンスの利益のために各々の 2 つの特定の関数を使用すべきです。 .Pp .Fn SX_SYSINIT マクロはシステムスタートアップ時に与えられた .Fa sx ロックを初期化するために .Fn sx_sysinit の呼び出しを生成します。 引数は .Fn sx_init と同様ですが、 そのロックと sysinit ルーチンに関連付けられた構造体に関連した唯一の 変数名を生成する際に使用される追加の引数として .Fa name を持ちます。 .Pp スレッドは同じロック上に共有ロックと排他ロックを同時には持つことができません。 同時に持つことはデッドロックを引き起こすことになるためです。 .Sh コンテキスト スリープしている間に .Nm ロック上に共有ロックまたは排他ロックを所有することは許可されます。 .Sh 関連項目 .Xr condvar 9 , .Xr mtx_pool 9 , .Xr mutex 9 , .Xr panic 9 , .Xr sema 9 .Sh バグ 現在、ロックが保持されていないことをアサートする方法がありません。 .Dv WITNESS ではない場合には、このスレッドが共有ロックを保持していないことを アサートすることは不可能です。 .Dv WITNESS ではない場合には、 .Dv SX_LOCKED および .Dv SX_SLOCKED のアサートは、あるスレッドが共有ロックを保持していることを 単にチェックするに過ぎません。 これらは、現在のスレッドが共有ロックを保持していることを保証しません。 diff --git a/ja_JP.eucJP/man/man9/sysctl_add_oid.9 b/ja_JP.eucJP/man/man9/sysctl_add_oid.9 index 252ccd543b..b0a50f5759 100644 --- a/ja_JP.eucJP/man/man9/sysctl_add_oid.9 +++ b/ja_JP.eucJP/man/man9/sysctl_add_oid.9 @@ -1,499 +1,499 @@ .\" .\" Copyright (c) 2000, Andrzej Bialecki .\" All rights reserved. .\" .\" 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. .\" 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 AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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/share/man/man9/sysctl_add_oid.9,v 1.20 2004/07/03 18:29:24 ru Exp % .\" $FreeBSD$ .\" .Dd July 15, 2000 .Dt SYSCTL_ADD_OID 9 .Os .Sh 名称 .Nm sysctl_add_oid , .Nm sysctl_move_oid , .Nm sysctl_remove_oid .Nd ランタイム sysctl ツリー操作 .Sh 書式 .In sys/types.h .In sys/sysctl.h .Ft struct sysctl_oid * .Fo sysctl_add_oid .Fa "struct sysctl_ctx_list *ctx" .Fa "struct sysctl_oid_list *parent" .Fa "int number" .Fa "const char *name" .Fa "int kind" .Fa "void *arg1" .Fa "int arg2" .Fa "int (*handler) (SYSCTL_HANDLER_ARGS)" .Fa "const char *format" .Fa "const char *descr" .Fc .Ft int .Fo sysctl_move_oid .Fa "struct sysctl_oid *oidp" .Fa "struct sysctl_oid_list *parent" .Fc .Ft int .Fo sysctl_remove_oid .Fa "struct sysctl_oid *oidp" .Fa "int del" .Fa "int recurse" .Fc .Ft struct sysctl_oid_list * .Fo SYSCTL_CHILDREN .Fa "struct sysctl_oid *oidp" .Fc .Ft struct sysctl_oid_list * .Fo SYSCTL_STATIC_CHILDREN .Fa "struct sysctl_oid_list OID_NAME" .Fc .Ft struct sysctl_oid * .Fo SYSCTL_ADD_OID .Fa "struct sysctl_ctx_list *ctx" .Fa "struct sysctl_oid_list *parent" .Fa "int number" -.Fa "const cha *name" +.Fa "const char *name" .Fa "int kind" .Fa "void *arg1" .Fa "int arg2" .Fa "int (*handler) (SYSCTL_HANDLER_ARGS)" .Fa "const char *format" .Fa "const char *descr" .Fc .Ft struct sysctl_oid * .Fo SYSCTL_ADD_NODE .Fa "struct sysctl_ctx_list *ctx" .Fa "struct sysctl_oid_list *parent" .Fa "int number" .Fa "const char *name" .Fa "int access" .Fa "int (*handler) (SYSCTL_HANDLER_ARGS)" .Fa "const char *descr" .Fc .Ft struct sysctl_oid * .Fo SYSCTL_ADD_STRING .Fa "struct sysctl_ctx_list *ctx" .Fa "struct sysctl_oid_list *parent" .Fa "int number" .Fa "const char *name" .Fa "int access" .Fa "char *arg" .Fa "int len" .Fa "const char *descr" .Fc .Ft struct sysctl_oid * .Fo SYSCTL_ADD_INT .Fa "struct sysctl_ctx_list *ctx" .Fa "struct sysctl_oid_list *parent" .Fa "int number" .Fa "const char *name" .Fa "int access" .Fa "int *arg" .Fa "int len" .Fa "const char *descr" .Fc .Ft struct sysctl_oid * .Fo SYSCTL_ADD_UINT .Fa "struct sysctl_ctx_list *ctx" .Fa "struct sysctl_oid_list *parent" .Fa "int number" .Fa "const char *name" .Fa "int access" .Fa "unsigned int *arg" .Fa "int len" .Fa "const char *descr" .Fc .Ft struct sysctl_oid * .Fo SYSCTL_ADD_LONG .Fa "struct sysctl_ctx_list *ctx" .Fa "struct sysctl_oid_list *parent" .Fa "int number" .Fa "const char *name" .Fa "int access" .Fa "long *arg" .Fa "const char *descr" .Fc .Ft struct sysctl_oid * .Fo SYSCTL_ADD_ULONG .Fa "struct sysctl_ctx_list *ctx" .Fa "struct sysctl_oid_list *parent" .Fa "int number" .Fa "const char *name" .Fa "int access" .Fa "unsigned long *arg" .Fa "const char *descr" .Fc .Ft struct sysctl_oid * .Fo SYSCTL_ADD_OPAQUE .Fa "struct sysctl_ctx_list *ctx" .Fa "struct sysctl_oid_list *parent" .Fa "int number" .Fa "const char *name" .Fa "int access" .Fa "void *arg" .Fa "int len" .Fa "const char *format" .Fa "const char *descr" .Fc .Ft struct sysctl_oid * .Fo SYSCTL_ADD_STRUCT .Fa "struct sysctl_ctx_list *ctx" .Fa "struct sysctl_oid_list *parent" .Fa "int number" .Fa "const char *name" .Fa "int access" .Fa "void *arg" .Fa STRUCT_NAME .Fa "const char *descr" .Fc .Ft struct sysctl_oid * .Fo SYSCTL_ADD_PROC .Fa "struct sysctl_ctx_list *ctx" .Fa "struct sysctl_oid_list *parent" .Fa "int number" .Fa "const char *name" .Fa "int access" .Fa "void *arg1" .Fa "int arg2" .Fa "int (*handler) (SYSCTL_HANDLER_ARGS)" .Fa "const char *format" .Fa "const char *descr" .Fc .Sh 解説 これらの関数およびマクロは sysctl oid のランタイム (例えばモジュールの 存在期間) での作成と削除のためのインタフェースを提供します。 リンカセット (詳細は .In sys/linker_set.h および .\" XXX マニュアルページはソースファイルの参照を避けるべきです。 .Pa src/sys/kern/kern_sysctl.c を参照) に基づく代わりの方法は、各々のモジュールのロード時およびアンロード時の 作成と削除のみを可能にします。 .Pp 型 .Dv CTLTYPE_NODE の動的な oid は再利用可能であるため、複数のコードセクションが、 oid を作成および削除することが可能です。 実際には、参照カウントに基づいて、その割り当ておよび解放が行われます。 その結果として、2 つ以上のコードセクションが、部分的に重なり、 両者が使用できるツリーを作成可能にします。 重なる葉の作成や、同一の名前と親を持つ異なる型の子の作成は、 不可能です。 .Pp 新しく作成された oid は親のノードに接続されます。 これら全ての関数およびマクロ .Fn ( sysctl_remove_oid は例外) において、必須パラメータの 1 つ .Fa parent は、子の親リストの先頭を指します。 .Pp 殆どのトップレベルのカテゴリは静的に作成されます。 既存の静的な oid に接続するときに、このポインタは .Fn SYSCTL_STATIC_CHILDREN マクロによって取得することが可能で、その .Fa OID_NAME 引数は .Dv CTLTYPE_NODE 型の親 oid の名前 (すなわち、 .Xr sysctl 8 によって表示される名前に、 アンダスコアを前置し、全てのドットをアンダスコアで置き換えた名前) です。 .Pp 既存の動的な oid に接続するときに、このポインタは .Fn SYSCTL_CHILDREN マクロによって取得することが可能で、その .Fa oidp 引数は .Dv CTLTYPE_NODE 型の親 oid を指します。 .Pp .Fn sysctl_add_oid 関数はあらゆる型の生の oid を作成します。 oid の作成が成功した場合には、この関数はその oid へのポインタを返します。 そうでない場合には、 .Dv NULL を返します。 .Fn sysctl_add_oid のための引数の多くはマクロと共通です。 引数は以下のとおりです。 .Bl -tag -width handler .It Fa ctx オプションの sysctl コンテキストへのポインタ、または .Dv NULL です。 詳細は .Xr sysctl_ctx_init 9 を参照してください。 特別な作成および削除のシーケンスが要求されるのでなければ、 作成する動的な oid を組織するためにコンテキストを使用することを、 プログラマは強く勧告されています。 .Fa ctx が .Dv NULL でない場合には、新しく作成される oid は最初のエントリとしてこのコンテキストに 追加されます。 .It Fa parent 子の親リストの先頭である .Li struct sysctl_oid_list へのポインタです。 .It Fa number この oid に割り当てられる oid 番号です。 殆ど全ての場合、これは割り当て時に次の利用可能な oid 番号になる .Dv OID_AUTO に設定されるべきです。 .It Fa name この oid の名前です。 新しく作成された oid は名前のコピーを含んでいます。 .It Fa kind oid の種類で、 .In sys/sysctl.h ヘッダファイルの中で定義される型とアクセス値のビットマスクとして明示されます。 動的に作成された oid は常に .Dv CTLFLAG_DYN フラグが設定されます。 アクセスフラグはこの oid が読み取り専用か読み書き可能か、および 全てのユーザによってまたはスーパユーザによってのみ修正可能かを明示します。 .It Fa arg1 oid が参照すべきあらゆるデータへのポインタ、または .Dv NULL です。 .It Fa arg2 .Fa arg1 の大きさ、または .Fa arg1 が .Dv NULL であれば 0 です。 .It Fa handler この oid への読み書き要求を取り扱う責任がある関数へのポインタです。 ノード、整数、文字列、および不透明なオブジェクトの操作をサポートする 幾つかの標準ハンドラが存在しています。 .Fn SYSCTL_ADD_PROC マクロを使用して新しいハンドラを定義することも可能です。 .It Fa format oid のフォーマットを記号的に明示する文字列へのポインタです。 このフォーマットは、表示目的のための適切なデータフォーマットを適用するために .Xr sysctl 8 によってヒントとして使用されます。 現在使用されているフォーマット名は以下のとおりです。 .Dq N はノード、 .Dq A は .Li "char *" 型、 .Dq I は .Li "int" 型、 .Dq IU は .Li "unsigned int" 型、 .Dq L は .Li "long" 型、 .Dq LU は .Li "unsigned long" 型、および .Dq S,TYPE は .Li "struct TYPE" 構造体です。 .It Fa descr この oid の解説テキストへのポインタです。 .El .Pp .Fn sysctl_move_oid 関数は存在している oid の親を付け変えます。 その oid は、まるで .Fa number に .Dv OID_AUTO が設定されて作成されたかの様に、新しい番号を割り当てられます。 .Pp .Fn sysctl_remove_oid 関数は動的に作成された oid をツリーから削除し、 オプションでそのリソースを解放します。 これは以下の引数を取ります。 .Bl -tag -width recurse .It Fa oidp 削除されるべき動的な oid へのポインタです。 oid が動的でない、またはポインタが .Dv NULL の場合には、この関数は .Er EINVAL を返します。 .It Fa del 0 でない場合には、oid の参照カウントが 0 になった時に、 .Fn sysctl_remove_oid は oid のリソースを解放しようとします。 しかしながら .Fa del が 0 に設定されている場合には、このルーチンは oid のリソースの解放をせずに ツリーから oid の登録抹消のみを行ないます。 この振舞いは、呼び出し側が後で (ひょっとすると部分的に失敗する) 多数の oid の 削除のロールバックを予期している時に、有用です。 .It Fa recurse 0 でない場合には、そのノードとその子を削除しようとします。 .Pa recurse が 0 に設定されている場合には、あらゆる子を含むノードの削除の試みは .Er ENOTEMPTY エラーを発生させます。 .Em 警告 : "再帰的な削除は非常な注意を払って使用すること" ! 通常、コンテキストが使用されていれば、必要とされるべきではありません。 コンテキストはツリーの利用者間の依存性の追跡に注意しています。 しかしながら、ある極端な場合には、ある他のリソースを解放するために、 それがどのように作成されたものであれ、サブツリーの一部を削除することが 必要になることがあります。 しかしながら、このことは、別のコードセクションが削除されたサブツリーを 使用し続ける場合に、システムの .Xr panic 9 を引き起こすことがあることを知っていてください。 .El .Pp .\" XXX sheldonh はここまで仕上げました。 再度言いますが、殆んどの場合、作成された oid を見失わないようにするため、 および後で整然とした流儀でそれらを削除するため、 .Xr sysctl_ctx_init 9 で解説されているように、プログラマはコンテキストを使用するべきです。 .Pp 与えられた型の oid の作成を助ける定義済みのマクロセットがあります。 .Bl -tag -width SYSCTL_ADD_STRINGXX それらを以下に示します。 .It Fn SYSCTL_ADD_OID は生の oid を作成します。 このマクロは機能的には .Fn sysctl_add_oid 関数と同等です。 .It Fn SYSCTL_ADD_NODE は型 .Dv CTLTYPE_NODE の oid を作成します。 この oid に対して、子の oid を追加可能です。 .It Fn SYSCTL_ADD_STRING は 0 で終端された文字列を取り扱う oid を作成します。 .It Fn SYSCTL_ADD_INT は .Li int 変数を取り扱う oid を作成します。 .It Fn SYSCTL_ADD_UINT は .Li unsigned int 変数を取り扱う oid を作成します。 .It Fn SYSCTL_ADD_LONG は .Li long 変数を取り扱う oid を作成します。 .It Fn SYSCTL_ADD_ULONG は .Li unsigned long 変数を取り扱う oid を作成します。 .It Fn SYSCTL_ADD_OPAQUE は .Li "size_t *" へのポインタである .Fa len 引数によって明示された大きさのあらゆる不透明なデータのかたまりを 取り扱う oid を作成します。 .It Fn SYSCTL_ADD_STRUCT は .Li "struct TYPE" 構造体を取り扱う oid を作成します。 .Fa format 引数は .Xr sysctl 8 ユーティリティへの適切なヒントを提供するために .Dq S,TYPE に設定されます。 .It Fn SYSCTL_ADD_PROC は明示された .Pa handler ハンドラ関数を持つ oid を作成します。 ハンドラは oid に対しての読み書き要求を取り扱う責任を持ちます。 カーネルデータが簡単にアクセスできない場合、または取り出される前に処理される 必要がある場合に、この oid 型は特に有用です。 .El .Sh 使用例 以下は、どのように新しいトップレベルのカテゴリを作成するか、および どのように既存の静的なノードに別のサブツリーを引っ掛けるか を示す使用例です。 この使用例はコンテキストを使用していません。 これは全ての後でそれらを解放するといった、 中間の oid の退屈な管理を結果として生じさせます。 .Bd -literal #include ... /* 新しく作成したサブツリーへのポインタは、後でそれらを解放するために * 保存しておく必要があります。 */ struct sysctl_oid *root1, *root2, *oidp; int a_int; char *string = "dynamic sysctl"; ... root1 = SYSCTL_ADD_NODE( NULL, SYSCTL_STATIC_CHILDREN(/* tree top */), - OID_AUTO, "newtree", CTFLAG_RW, 0, "new top level tree"); + OID_AUTO, "newtree", CTLFLAG_RW, 0, "new top level tree"); oidp = SYSCTL_ADD_INT( NULL, SYSCTL_CHILDREN(root1), OID_AUTO, "newint", CTLFLAG_RW, &a_int, 0, "new int leaf"); ... root2 = SYSCTL_ADD_NODE( NULL, SYSCTL_STATIC_CHILDREN(_debug), - OID_AUTO, "newtree", CTFLAG_RW, 0, "new tree under debug"); + OID_AUTO, "newtree", CTLFLAG_RW, 0, "new tree under debug"); oidp = SYSCTL_ADD_STRING( NULL, SYSCTL_CHILDREN(root2), - OID_AUTO, "newstring", CTLFLAG_R, string, 0, "new string leaf"); + OID_AUTO, "newstring", CTLFLAG_RD, string, 0, "new string leaf"); .Ed .Pp この使用例は以下のサブツリーを作成します。 .Bd -literal -offset indent debug.newtree.newstring newtree.newint .Ed .Pp .Em "これ以上必要でなくなった全ての oid は解放されるべきであることに注意!" .Sh 関連項目 .Xr sysctl 8 , .Xr sysctl_ctx_free 9 , .Xr sysctl_ctx_init 9 .Sh 歴史 これらの関数は .Fx 4.2 ではじめて登場しました。 .Sh 作者 .An Andrzej Bialecki Aq abial@FreeBSD.org .Sh バグ 多くのコードセクション間でノードを共有することは、 時々リソースをロックすることがある相互依存を引き起こします。 例えば、モジュール B によって作成された oid に対し、 モジュール A がサブツリーを引っ掛けた場合には、 モジュール B はその oid を削除できないでしょう。 これらの問題は sysctl コンテキストによって適切に取り扱われます。 .Pp ツリー上の多くの操作はリンクリストを横切ることを必要とします。 この理由のため、oid の作成と削除は相対的にコストがかかります。 diff --git a/ja_JP.eucJP/man/man9/vfs_unmountall.9 b/ja_JP.eucJP/man/man9/vfs_unmountall.9 index d564a7ba36..f493bd6be8 100644 --- a/ja_JP.eucJP/man/man9/vfs_unmountall.9 +++ b/ja_JP.eucJP/man/man9/vfs_unmountall.9 @@ -1,44 +1,45 @@ .\" Copyright (c) 2001 Chris Costello .\" All rights reserved. .\" .\" 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. .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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/share/man/man9/vfs_unmountall.9,v 1.6 2002/12/12 17:25:58 ru Exp % .\" .\" $FreeBSD$ .Dd July 26, 2001 .Dt VFS_UNMOUNTALL 9 .Os .Sh 名称 .Nm vfs_unmountall .Nd 全てのファイルシステムのアンマウント .Sh 書式 +.In sys/param.h .In sys/mount.h .Ft void .Fn vfs_unmountall "void" .Sh 解説 .Nm 関数は、システムシャットダウン時にのみ実行され、操作の依存性を避けるため、 最新のものから古いものの順で、 マウントした全てのファイルシステムをアンマウントします。 .Sh 関連項目 .Xr boot 9