[原文] .TH WHICH 1 .rn RS Rs .de RS .na .nf .Rs .. .rn RE Re .de RE .Re .fi .ad .. .de Sx [訳文] .TH WHICH 1 .rn RS Rs .de RS .na .nf .Rs .. .rn RE Re .de RE .Re .fi .ad .. .de Sx ---------------------------------------- [原文] .PP .ne \\$1 [訳文] .PP .ne \\$1 ---------------------------------------- [原文] .RS .. .de Ex [訳文] .RS .. .de Ex ---------------------------------------- [原文] .RE [訳文] .RE ---------------------------------------- [原文] .PP .. .na [訳文] .PP .. .na ---------------------------------------- [原文] .SH NAME which - shows the full path of (shell) commands. [訳文] .SH 名前 which - (シェル) コマンドのフルパスを表示します ---------------------------------------- [原文] .SH SYNOPSIS .B which [options] [--] programname [...] [訳文] .SH 書式 which [options] [--] programname [...] ---------------------------------------- [原文] .SH DESCRIPTION Which takes one or more arguments. For each of its arguments it prints to stdout the full path of the executables that would have been executed when this argument had been entered at the shell prompt. It does this by searching for an executable or script in the directories listed in the environment variable PATH using the same algorithm as bash(1). [訳文] .SH 説明 which は 1 つまたは複数の引数を取ります。 その引数それぞれに対して、その引数がシェルプロンプトから入力 された際に、実行されることになる実行モジュールのフルパスを stdout に出力します。 これを実現する際には、環境変数 PATH に列記されたディレクトリ内から実行ファイルやスクリプトを検索 します。 これは bash(1) と同じアルゴリズムを用いています。 ---------------------------------------- [原文] This man page is generated from the file which.texinfo. [訳文] この man ページは which.texinfo ファイルから生成されています。 ---------------------------------------- [原文] .SH OPTIONS [訳文] .SH オプション ---------------------------------------- [原文] .TP 4 .B --all\fR, -a Print all matching executables in PATH, not just the first. [訳文] .TP 4 --all, -a PATH 内に見つかった実行ファイルすべてを表示します。 最初に見つかったもの以外も表示します。 ---------------------------------------- [原文] .TP .B --read-alias\fR, -i Read aliases from stdin, reporting matching ones on stdout. This is useful in combination with using an alias for which itself. For example .B alias which=\'alias | which -i\'\fR. [訳文] .TP --read-alias, -i 標準入力からエイリアスを読み込んで、合致したものを標準出力し ます。 これは which そのものを含む alias において、本オプションを合わせて利用すると便利です。 たとえば以下です。 alias which=\'alias | which -i\'. ---------------------------------------- [原文] .TP .B --skip-alias\fR Ignore option \`--read-alias\', if any. This is useful to explicity search for normal binaries, while using the \`--read-alias\' option in an alias or function for which. [訳文] .TP --skip-alias \`--read-alias\' が指定されても無視します。 which に対するエイリアスや関数の中で \`--read-alias\' オプションを利用している場合であっても、 明示的に通常の実行ファイルを検索する場合に利用できます。 ---------------------------------------- [原文] .TP .B --read-functions\fR Read shell function definitions from stdin, reporting matching ones on stdout. This is useful in combination with using a shell function for which itself. For example: .B which() { declare -f | which --read-functions $@ } export -f which\fR [訳文] .TP --read-functions 標準入力からシェル関数定義を読み込んで、合致したものを標準出 力します。 これはwhich そのものを含むシェル関数において、本オプションを合わせて利用 すると便利です。 たとえば以下です。 which() { declare -f | which --read-functions $@ } export -f which ---------------------------------------- [原文] .TP .B --skip-functions\fR Ignore option \`--read-functions\', if any. This is useful to explicity search for normal binaries, while using the \`--read-functions\' option in an alias or function for which. [訳文] .TP --skip-functions \`--read-functions\' が指定されても無視します。 which に対するエイリアスや関数の中で \`--read-functions\' オプションを利用している場合であっても、明示的に通常の実行フ ァイルを検索する場合に利用できます。 ---------------------------------------- [原文] .TP .B --skip-dot\fR Skip directories in PATH that start with a dot. [訳文] .TP --skip-dot PATH 内のディレクトリにうち、ドットで始まるディレクトリは除外しま す。 ---------------------------------------- [原文] .TP .B --skip-tilde\fR Skip directories in PATH that start with a tilde and executables which reside in the HOME directory. [訳文] .TP --skip-tilde チルダで始まる PATH 内のディレクトリ、および HOME ディレクトリ内に存在する実行ファイルは除外します。 ---------------------------------------- [原文] .TP .B --show-dot\fR If a directory in PATH starts with a dot and a matching executable was found for that path, then print "./programname" rather than the full path. [訳文] .TP --show-dot PATH 内にドットで始まるディレクトリがあって、合致した実行ファイル がその中に見つかった場合には、フルパスでなく "./programname" と表示します。 ---------------------------------------- [原文] .TP .B --show-tilde\fR Output a tilde when a directory matches the HOME directory. This option is ignored when which is invoked as root. [訳文] .TP --show-tilde ディレクトリが HOME に合致した場合、チルダを表示します。 このオプションは root ユーザーが実行した際には無視されます。 ---------------------------------------- [原文] .TP .B --tty-only\fR Stop processing options on the right if not on tty. [訳文] .TP --tty-only tty 上でない場合、この右側に指定されたオプションの実行を停止しま す。 ---------------------------------------- [原文] .TP .B --version,-v,-V\fR Print version information on standard output then exit successfully. [訳文] .TP --version,-v,-V バージョン情報を標準出力して正常終了します。 ---------------------------------------- [原文] .TP .B --help\fR Print usage information on standard output then exit successfully. [訳文] .TP --help 利用方法を標準出力して正常終了します。 ---------------------------------------- [原文] .SH RETURN VALUE Which returns the number of failed arguments, or -1 when no \`programname\' was given. [訳文] .SH 返り値 which は検索に失敗した引数の数を返します。 また \`programname\' が指定されなかった場合は -1 を返します。 ---------------------------------------- [原文] .SH EXAMPLE The recommended way to use this utility is by adding an alias (C shell) or shell function (Bourne shell) for which like the following: [訳文] .SH 例 このユーティリティーのお薦めの使い方は、 which に対するエイリアス (C シェル) やシェル関数 (Bourne シェル) を追加して利用する方法です。 たとえば以下です。 ---------------------------------------- [原文] [ba]sh: [訳文] [ba]sh の場合: ---------------------------------------- [原文] .in +5 .nf .na which () { (alias; declare -f) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot $@ } export -f which .in -5 .ad .fi [訳文] .in +5 .nf .na which () { (alias; declare -f) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot $@ } export -f which .in -5 .ad .fi ---------------------------------------- [原文] [t]csh: [訳文] [t]csh の場合: ---------------------------------------- [原文] .in +5 .nf .na alias which \'alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde\' .in -5 .ad .fi [訳文] .in +5 .nf .na alias which \'alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde\' .in -5 .ad .fi ---------------------------------------- [原文] This will print the readable ~/ and ./ when starting which from your prompt, while still printing the full path when used from a script: [訳文] こうすることで、プロンプトから実行した場合には、見やすいよう に ~/ や ./ を出力します。 スクリプトから利用した場合には、そのままフルパスで出力します 。 ---------------------------------------- [原文] .in +5 .nf .na > which q2 ~/bin/q2 > echo \`which q2\` /home/carlo/bin/q2 .in -5 .ad .fi [訳文] .in +5 .nf .na > which q2 ~/bin/q2 > echo \`which q2\` /home/carlo/bin/q2 .in -5 .ad .fi ---------------------------------------- [原文] .SH BUGS The HOME directory is determined by looking for the HOME environment variable, which aborts when this variable doesn\'t exist. Which will consider two equivalent directories to be different when one of them contains a path with a symbolic link. [訳文] .SH バグ HOME ディレクトリは、環境変数 HOME を調べることで決定されますが、この変数が存在しない場合には、 その処理がキャンセルされます。which は 2 つの同等のディレクトリであっても、その 1 つにシンボリックリンクを使ったパスが含まれている場合に、別の ディレクトリと取り扱ってしまいます。 ---------------------------------------- [原文] .SH AUTHOR Carlo Wood [訳文] .SH 著者 Carlo Wood ---------------------------------------- [原文] .SH "SEE ALSO" bash(1) [訳文] .SH 関連項目 bash(1) ----------------------------------------