|
|
(80 intermediate revisions by the same user not shown) |
Line 878: |
Line 878: |
|
| |
|
| === Redirecting Input === | | === Redirecting Input === |
| Redirection of input causes the file whose name results from the expansion of word to be opened
| | 入力をリダイレクトすると、wordを展開した結果の名前のファイルが、ファイル記述子n、またはnが指定されていない場合は標準入力(ファイル記述子0)で読み込むためにオープンされる。 |
| for reading on file descriptor n, or the standard input (file descriptor 0) if n is not speci‐
| |
| fied.
| |
|
| |
|
| The general format for redirecting input is:
| | 入力をリダイレクトする一般的な書式は以下の通りである: |
|
| |
|
| [n]<word
| | :<code>[n]<word</code> |
|
| |
|
| === Redirecting Output === | | === Redirecting Output === |
| Redirection of output causes the file whose name results from the expansion of word to be opened
| | 出力のリダイレクトは、wordを展開した結果の名前を持つファイルを、ファイル記述子n、またはnが指定されていない場合は標準出力(ファイル記述子1)に書き込むためにオープンする。 ファイルが存在しない場合は作成され、存在する場合はサイズがゼロに切り詰められる。 |
| for writing on file descriptor n, or the standard output (file descriptor 1) if n is not speci‐
| |
| fied. If the file does not exist it is created; if it does exist it is truncated to zero size.
| |
|
| |
|
| The general format for redirecting output is:
| | 出力をリダイレクトする一般的な書式は以下の通りである: |
|
| |
|
| [n]>word
| | :<code>[n]>word</code> |
|
| |
|
| If the redirection operator is >, and the noclobber option to the set builtin has been enabled,
| | リダイレクト演算子が>であり、set 組み込み関数の noclobber オプションが有効になっている場合、 word を展開した結果のファイル名が存在し、かつ通常のファイルであれば、 リダイレクトは失敗する。 リダイレクション演算子が<nowiki>>|</nowiki>であるか、リダイレクション演算子が>であり、 set builtinコマンドのnoclobberオプションが有効になっていない場合、 wordで指定された名前のファイルが存在しても、リダイレクションが試みられる。 |
| the redirection will fail if the file whose name results from the expansion of word exists and is
| |
| a regular file. If the redirection operator is >|, or the redirection operator is > and the no‐
| |
| clobber option to the set builtin command is not enabled, the redirection is attempted even if
| |
| the file named by word exists.
| |
|
| |
|
| === Appending Redirected Output === | | === Appending Redirected Output === |
| Redirection of output in this fashion causes the file whose name results from the expansion of
| | この方法で出力をリダイレクトすると、wordを展開した結果の名前を持つファイルが、ファイル記述子n、またはnが指定されていない場合は標準出力(ファイル記述子1)に追加するためにオープンされる。 ファイルが存在しない場合は作成される。 |
| word to be opened for appending on file descriptor n, or the standard output (file descriptor 1)
| |
| if n is not specified. If the file does not exist it is created.
| |
|
| |
|
| The general format for appending output is:
| | 出力を追加する一般的な書式は以下の通りである: |
|
| |
|
| [n]>>word
| | :<code>[n]>>word</code> |
|
| |
|
| === Redirecting Standard Output and Standard Error === | | === Redirecting Standard Output and Standard Error === |
| This construct allows both the standard output (file descriptor 1) and the standard error output
| | この構文は、標準出力(ファイル記述子1)と標準エラー出力(ファイル記述子2)の両方を、wordの展開名を持つファイルにリダイレクトすることを可能にする。 |
| (file descriptor 2) to be redirected to the file whose name is the expansion of word.
| |
|
| |
|
| There are two formats for redirecting standard output and standard error:
| | 標準出力と標準エラーのリダイレクトには2つの形式がある: |
|
| |
|
| &>word
| | <code>&>word</code> |
| and
| |
| >&word
| |
|
| |
|
| Of the two forms, the first is preferred. This is semantically equivalent to
| | and |
|
| |
|
| >word 2>&1
| | <code>>&word</code> |
|
| |
|
| When using the second form, word may not expand to a number or -. If it does, other redirection
| | この2つの形式のうち、最初の形式が好まれる。 これは意味的に次のものと等価である。 |
| operators apply (see Duplicating File Descriptors below) for compatibility reasons.
| | |
| | <code>>word 2>&1</code> |
| | |
| | 2番目の形式を使用する場合、wordは数字または-に展開されないかもしれない。 その場合、互換性の理由から、他のリダイレクト演算子が適用される(後述の[[#Duplicating File Descriptors|Duplicating File Descriptors ]]を参照)。 |
|
| |
|
| === Appending Standard Output and Standard Error === | | === Appending Standard Output and Standard Error === |
| This construct allows both the standard output (file descriptor 1) and the standard error output
| | この構成では、標準出力(ファイル記述子1)と標準エラー出力(ファイル記述子2)の両方を、wordの展開名を持つファイルに追加することができる。 |
| (file descriptor 2) to be appended to the file whose name is the expansion of word.
| |
|
| |
|
| The format for appending standard output and standard error is:
| | 標準出力と標準エラーを付加する書式は以下の通りである: |
|
| |
|
| &>>word
| | <code>&>>word</code> |
|
| |
|
| This is semantically equivalent to
| | これは意味的に以下と等価である |
|
| |
|
| >>word 2>&1
| | <code>>>word 2>&1</code> |
|
| |
|
| (see Duplicating File Descriptors below).
| | (後述の [[#Duplicating File Descriptors|Duplicating File Descriptors ]]参照) |
|
| |
|
| === Here Documents === | | === Here Documents === |
| This type of redirection instructs the shell to read input from the current source until a line
| | このタイプのリダイレクトは、区切り文字(末尾に空白を含まない)だけを含む行が表示されるまで、現在のソースから入力を読み込むようにシェルに指示する。 その時点までに読み込まれたすべての行が、コマンドの標準入力(nが指定されている場合はファイル記述子n)として使用される。 |
| containing only delimiter (with no trailing blanks) is seen. All of the lines read up to that
| |
| point are then used as the standard input (or file descriptor n if n is specified) for a command.
| |
|
| |
|
| The format of here-documents is:
| | here-documentsの書式は以下の通りである: |
|
| |
|
| | <syntaxhighlight lang="bash"> |
| [n]<<[-]word | | [n]<<[-]word |
| here-document | | here-document |
| delimiter | | delimiter |
| | </syntaxhighlight> |
|
| |
|
| No parameter and variable expansion, command substitution, arithmetic expansion, or pathname ex‐
| | wordに対してパラメータや変数の展開、コマンドの置換、算術展開、パス名の展開は行われない。 word の一部が引用符で囲まれている場合、区切り文字は word の引用符除去の結果となり、 ヒアドキュメントの行は展開されない。 wordが引用符で囲まれていない場合、ヒアドキュメントのすべての行はパラメータ展開、コマンド置換、および算術展開の対象となり、文字シーケンスである<nowiki>\<newline></nowiki>は無視され、<nowiki>\, $</nowiki>、および`は引用符で囲むために使用されなければならない。 |
| pansion is performed on word. If any part of word is quoted, the delimiter is the result of
| |
| quote removal on word, and the lines in the here-document are not expanded. If word is unquoted,
| |
| all lines of the here-document are subjected to parameter expansion, command substitution, and
| |
| arithmetic expansion, the character sequence \<newline> is ignored, and \ must be used to quote
| |
| the characters \, $, and `.
| |
|
| |
|
| If the redirection operator is <<-, then all leading tab characters are stripped from input lines
| | リダイレクト演算子が<nowiki><<-</nowiki>の場合、入力行と区切り文字を含む行から先頭のタブ文字がすべて取り除かれる。 これにより、シェルスクリプト内のヒアドキュメントが自然な形でインデントされる。 |
| and the line containing delimiter. This allows here-documents within shell scripts to be in‐
| |
| dented in a natural fashion.
| |
|
| |
|
| === Here Strings === | | === Here Strings === |
| A variant of here documents, the format is:
| | here文書の変形で、フォーマットは以下の通りである: |
|
| |
|
| [n]<<<word
| | <code>[n]<<<word</code> |
|
| |
|
| The word undergoes tilde expansion, parameter and variable expansion, command substitution,
| | wordは、チルダ展開、パラメータ展開、変数展開、コマンド置換、算術展開、引用符除去を受ける。 パス名の展開と単語の分割は行われない。 結果は、改行が付加された単一の文字列として、コマンドの標準入力(nが指定されている場合はファイル記述子n)に供給される。 |
| arithmetic expansion, and quote removal. Pathname expansion and word splitting are not per‐
| |
| formed. The result is supplied as a single string, with a newline appended, to the command on
| |
| its standard input (or file descriptor n if n is specified).
| |
|
| |
|
| === Duplicating File Descriptors === | | === Duplicating File Descriptors === |
| The redirection operator
| | リダイレクト演算子 |
|
| |
|
| [n]<&word
| | <code>[n]<&word</code> |
|
| |
|
| is used to duplicate input file descriptors. If word expands to one or more digits, the file de‐
| | は、入力ファイル記述子を複製するために使われる。 wordが1桁以上に拡張されると、nで示されるファイル記述子はそのファイル記述子のコピーとなる。 wordの数字が入力用にオープンされているファイル記述子を指定しない場合、リダイレクションエラーが発生する。 wordが-と評価された場合、ファイル記述子nはクローズされる。 nが指定されない場合、標準入力(ファイル記述子0)が使用される。 |
| scriptor denoted by n is made to be a copy of that file descriptor. If the digits in word do not
| |
| specify a file descriptor open for input, a redirection error occurs. If word evaluates to -,
| |
| file descriptor n is closed. If n is not specified, the standard input (file descriptor 0) is
| |
| used.
| |
|
| |
|
| The operator
| | 演算子 |
|
| |
|
| [n]>&word
| | <code>[n]>&word</code> |
|
| |
|
| is used similarly to duplicate output file descriptors. If n is not specified, the standard out‐
| | は、出力ファイル記述子を複製するために同様に使われる。 nが指定されない場合、標準出力(ファイル記述子1)が使用される。 wordの数字が出力用にオープンされているファイル記述子を指定しない場合、リダイレクションエラーが発生する。 wordが-と評価された場合、ファイル記述子nはクローズされる。 特殊なケースとして、nが省略され、wordが1桁以上の数字または-に展開されない場合、標準出力と標準エラーは前述のようにリダイレクトされる。 |
| put (file descriptor 1) is used. If the digits in word do not specify a file descriptor open for
| |
| output, a redirection error occurs. If word evaluates to -, file descriptor n is closed. As a
| |
| special case, if n is omitted, and word does not expand to one or more digits or -, the standard
| |
| output and standard error are redirected as described previously.
| |
|
| |
|
| === Moving File Descriptors === | | === Moving File Descriptors === |
| The redirection operator
| | リダイレクト演算子 |
|
| |
|
| [n]<&digit-
| | <code>[n]<&digit-</code> |
|
| |
|
| moves the file descriptor digit to file descriptor n, or the standard input (file descriptor 0)
| | は、ファイル記述子digitをファイル記述子n、またはnが指定されない場合は標準入力(ファイル記述子0)に移動する。digitはnに複製された後、クローズされる。 |
| if n is not specified. digit is closed after being duplicated to n.
| |
|
| |
|
| Similarly, the redirection operator
| | 同様に、リダイレクト演算子 |
|
| |
|
| [n]>&digit-
| | <code>[n]>&digit-</code> |
|
| |
|
| moves the file descriptor digit to file descriptor n, or the standard output (file descriptor 1)
| | は、ファイル記述子digitをファイル記述子nに移動し、nが指定されなければ標準出力(ファイル記述子1)に移動する。 |
| if n is not specified.
| |
|
| |
|
| === Opening File Descriptors for Reading and Writing === | | === Opening File Descriptors for Reading and Writing === |
| The redirection operator
| | リダイレクト演算子 |
|
| |
|
| [n]<>word
| | <code>[n]<>word</code> |
|
| |
|
| causes the file whose name is the expansion of word to be opened for both reading and writing on
| | は、wordを展開した名前を持つファイルを、ファイル記述子n、またはnが指定されない場合はファイル記述子0上で読み書きの両方についてオープンする。 ファイルが存在しない場合は作成される。 |
| file descriptor n, or on file descriptor 0 if n is not specified. If the file does not exist, it
| |
| is created.
| |
|
| |
|
| == ALIASES == | | == ALIASES == |
| Aliases allow a string to be substituted for a word when it is used as the first word of a simple
| | エイリアスを使用すると、単純なコマンドの最初の単語として文字列を使用するときに、その文字列を単語の代わりにすることができる。 シェルはエイリアスのリストを保持し、aliasとunalias組み込みコマンドで設定したり解除したりできる(後述のシェル組み込みコマンドを参照)。 各単純コマンドの最初の単語は、引用符で囲まれていない場合、エイリアスを持っているかどうかチェックされる。 もしあれば、その単語はエイリアスのテキストに置き換えられる。 文字 /, $, `, = や、上に挙げたシェルのメタ文字や引用符は、エイリアス名には使えない。 置換テキストには、シェルのメタキャラクタを含む有効なシェル入力を含めることができる。 置換テキストの最初の単語はエイリアスかどうかテストされるが、展開されるエイリアスと同じ単語は2度展開されない。 つまり、例えばlsをls -Fにエイリアスしても、bashは置換テキストを再帰的に展開しようとしない。 エイリアス値の最後の文字が空白の場合、エイリアスに続く次のコマンド語もエイリアス展開がチェックされる。 |
| command. The shell maintains a list of aliases that may be set and unset with the alias and una‐
| |
| lias builtin commands (see SHELL BUILTIN COMMANDS below). The first word of each simple command,
| |
| if unquoted, is checked to see if it has an alias. If so, that word is replaced by the text of
| |
| the alias. The characters /, $, `, and = and any of the shell metacharacters or quoting charac‐
| |
| ters listed above may not appear in an alias name. The replacement text may contain any valid
| |
| shell input, including shell metacharacters. The first word of the replacement text is tested
| |
| for aliases, but a word that is identical to an alias being expanded is not expanded a second
| |
| time. This means that one may alias ls to ls -F, for instance, and bash does not try to recur‐
| |
| sively expand the replacement text. If the last character of the alias value is a blank, then
| |
| the next command word following the alias is also checked for alias expansion.
| |
|
| |
|
| Aliases are created and listed with the alias command, and removed with the unalias command.
| | エイリアスは、aliasコマンドで作成、リストされ、unaliasコマンドで削除される。 |
|
| |
|
| There is no mechanism for using arguments in the replacement text. If arguments are needed, a
| | 置換テキストに引数を使う仕組みはない。 引数が必要な場合は、シェル関数を使うべきである(下記のFUNCTIONSを参照)。 |
| shell function should be used (see FUNCTIONS below).
| |
|
| |
|
| Aliases are not expanded when the shell is not interactive, unless the expand_aliases shell op‐
| | shoptを使用してexpand_aliasesシェルオプションが設定されていない限り、シェルが対話的でないときにはエイリアスは展開されない(shoptについては、後述の[[#SHELL BUILTIN COMMANDS|SHELL BUILTIN COMMANDS ]]の説明を参照のこと)。 |
| tion is set using shopt (see the description of shopt under SHELL BUILTIN COMMANDS below).
| |
|
| |
|
| The rules concerning the definition and use of aliases are somewhat confusing. Bash always reads
| | エイリアスの定義と使用に関するルールは少々わかりにくい。 Bashは常に、少なくとも1行の入力と、複合コマンドを構成するすべての行を読み込んでから、その行のコマンドや複合コマンドを実行する。 エイリアスは、コマンドが実行されるときではなく、読み込まれるときに展開される。 したがって、他のコマンドと同じ行に現れたエイリアス定義は、次の入力行が読み込まれるまで有効にならない。 その行のエイリアス定義に続くコマンドは、新しいエイリアスの影響を受けない。 この動作は、関数が実行される際にも問題となる。 関数定義はそれ自体がコマンドであるため、エイリアスは関数が実行されるときではなく、関数定義が読み込まれるときに展開される。 結果として、関数内で定義されたエイリアスは、その関数が実行されるまで使用できない。 安全のため、エイリアス定義は常に別の行に記述し、複合コマンドではエイリアスを使用しないこと。 |
| at least one complete line of input, and all lines that make up a compound command, before exe‐
| |
| cuting any of the commands on that line or the compound command. Aliases are expanded when a
| |
| command is read, not when it is executed. Therefore, an alias definition appearing on the same
| |
| line as another command does not take effect until the next line of input is read. The commands
| |
| following the alias definition on that line are not affected by the new alias. This behavior is
| |
| also an issue when functions are executed. Aliases are expanded when a function definition is
| |
| read, not when the function is executed, because a function definition is itself a command. As a
| |
| consequence, aliases defined in a function are not available until after that function is exe‐
| |
| cuted. To be safe, always put alias definitions on a separate line, and do not use alias in com‐
| |
| pound commands.
| |
|
| |
|
| For almost every purpose, aliases are superseded by shell functions.
| | ほとんどすべての目的において、エイリアスはシェル関数に取って代わられる。 |
|
| |
|
| == FUNCTIONS == | | == FUNCTIONS == |
| A shell function, defined as described above under SHELL GRAMMAR, stores a series of commands for
| | シェル関数は、上記の''SHELL GRAMMAR''で説明したように定義され、後で実行するための一連のコマンドを格納する。 シェル関数の名前が単純なコマンド名として使用されると、その関数名に関連付けられたコマンドのリストが実行される。 関数は現在のシェルのコンテキストで実行され、関数を解釈するために新しいプロセスが作成されることはない(シェルスクリプトの実行とは対照的である)。 関数が実行されると、関数の引数は実行中の位置パラメーターとなる。 特殊パラメータ#は、変更を反映して更新される。 特別パラメータ0は変更されない。 FUNCNAME変数の最初の要素は、関数の実行中に関数名に設定される。 |
| later execution. When the name of a shell function is used as a simple command name, the list of
| |
| commands associated with that function name is executed. Functions are executed in the context
| |
| of the current shell; no new process is created to interpret them (contrast this with the execu‐
| |
| tion of a shell script). When a function is executed, the arguments to the function become the
| |
| positional parameters during its execution. The special parameter # is updated to reflect the
| |
| change. Special parameter 0 is unchanged. The first element of the FUNCNAME variable is set to
| |
| the name of the function while the function is executing.
| |
|
| |
|
| All other aspects of the shell execution environment are identical between a function and its
| | シェル実行環境の他のすべての側面は、これらの例外を除いて、関数とその呼び出し元との間で同一である: DEBUG トラップおよび RETURN トラップ(後述の [[#SHELL BUILTIN COMMANDS|SHELL BUILTIN COMMANDS ]] にある trap 組み込み関数の説明を参照)は、関数に trace 属性が与えられているか(後述の declare 組み込み関数の説明を参照)、set 組み込み関数で -o functrace シェル・オプションが有効になっていない限り継承されず(この場合、すべての関数は DEBUG トラップおよび RETURN トラップを継承する)、ERR トラップは -o errtrace シェル・オプションが有効になっていない限り継承されない。 |
| caller with these exceptions: the DEBUG and RETURN traps (see the description of the trap builtin
| |
| under SHELL BUILTIN COMMANDS below) are not inherited unless the function has been given the
| |
| trace attribute (see the description of the declare builtin below) or the -o functrace shell op‐
| |
| tion has been enabled with the set builtin (in which case all functions inherit the DEBUG and RE‐
| |
| TURN traps), and the ERR trap is not inherited unless the -o errtrace shell option has been en‐
| |
| abled.
| |
|
| |
|
| Variables local to the function may be declared with the local builtin command. Ordinarily,
| | 関数にローカルな変数は、local builtin コマンドで宣言することができる。 通常、変数とその値は、関数とその呼び出し元との間で共有される。 ローカル変数が宣言された場合、その変数の可視スコープはその関数とその子関数(その関数が呼び出す関数を含む)に限定される。 ローカル変数は、以前のスコープで宣言された同名の変数を「シャドウ」する。 例えば、関数内で宣言されたローカル変数は、同名のグローバル変数を隠蔽する。参照と代入はローカル変数を参照し、グローバル変数は変更されないままである。 関数が戻ると、グローバル変数は再び見えるようになる。 |
| variables and their values are shared between the function and its caller. If a variable is de‐
| |
| clared local, the variable's visible scope is restricted to that function and its children (in‐
| |
| cluding the functions it calls). Local variables "shadow" variables with the same name declared
| |
| at previous scopes. For instance, a local variable declared in a function hides a global vari‐
| |
| able of the same name: references and assignments refer to the local variable, leaving the global
| |
| variable unmodified. When the function returns, the global variable is once again visible.
| |
|
| |
|
| The shell uses dynamic scoping to control a variable's visibility within functions. With dynamic
| | シェルは動的スコープを使用して、関数内の変数の可視性を制御する。 動的スコープでは、可視変数とその値は、実行が現在の関数に到達する原因となった一連の関数呼び出しの結果である。 関数が目にする変数の値は、呼び出し元が「グローバル」スコープであるか、別のシェル関数であるかにかかわらず、呼び出し元での値に依存する。 これは、ローカル変数宣言が''shadow''する値でもあり、関数が戻ったときに復元される値でもある。 |
| scoping, visible variables and their values are a result of the sequence of function calls that
| |
| caused execution to reach the current function. The value of a variable that a function sees de‐
| |
| pends on its value within its caller, if any, whether that caller is the "global" scope or an‐
| |
| other shell function. This is also the value that a local variable declaration "shadows", and
| |
| the value that is restored when the function returns.
| |
|
| |
|
| For example, if a variable var is declared as local in function func1, and func1 calls another
| | 例えば、ある変数varが関数func1内でローカル変数として宣言され、func1が別の関数func2を呼び出した場合、func2内からのvarへの参照はfunc1のローカル変数varに解決され、varという名前のグローバル変数はshadowされる。 |
| function func2, references to var made from within func2 will resolve to the local variable var
| |
| from func1, shadowing any global variable named var.
| |
|
| |
|
| The unset builtin also acts using the same dynamic scope: if a variable is local to the current
| | unset組み込み関数も、同じダイナミック・スコープを使用して動作する。変数が現在のスコープにローカルな場合、unsetはそれをアンセットする。そうでない場合、unsetは上記のように、呼び出し元のスコープで見つかった変数を参照する。 現在のローカルスコープにある変数がアンセットされた場合、そのスコープでリセットされるか、関数がリターンするまでアンセットのままである。 関数が戻ると、以前のスコープにあったその変数のインスタンスが見えるようになる。 アンセットが前のスコープにある変数に作用した場合、シャドウされていたその名前の変数のインスタンスはすべて見えるようになる。 |
| scope, unset will unset it; otherwise the unset will refer to the variable found in any calling
| |
| scope as described above. If a variable at the current local scope is unset, it will remain so
| |
| until it is reset in that scope or until the function returns. Once the function returns, any
| |
| instance of the variable at a previous scope will become visible. If the unset acts on a vari‐
| |
| able at a previous scope, any instance of a variable with that name that had been shadowed will
| |
| become visible.
| |
|
| |
|
| The FUNCNEST variable, if set to a numeric value greater than 0, defines a maximum function nest‐
| | FUNCNEST変数に0以上の数値を設定すると、関数の最大入れ子レベルが定義される。 この制限を超えた関数呼び出しは、コマンド全体を中断させる。 |
| ing level. Function invocations that exceed the limit cause the entire command to abort.
| |
|
| |
|
| If the builtin command return is executed in a function, the function completes and execution re‐
| | 組み込みコマンドreturnが関数内で実行された場合、関数は完了し、関数呼び出しの次のコマンドで実行が再開される。 RETURNトラップに関連付けられたコマンドは、実行が再開される前に実行される。 関数が完了すると、位置パラメータと特殊パラメータ#の値は、関数実行前の値に戻される。 |
| sumes with the next command after the function call. Any command associated with the RETURN trap
| |
| is executed before execution resumes. When a function completes, the values of the positional
| |
| parameters and the special parameter # are restored to the values they had prior to the func‐
| |
| tion's execution.
| |
|
| |
|
| Function names and definitions may be listed with the -f option to the declare or typeset builtin
| | 関数名と定義は、declareまたはtypeset組み込みコマンドの-fオプションでリストすることができる。 declareまたはtypesetの-Fオプションは、関数名のみをリストアップする(extdebugシェル・オプションが有効な場合は、オプションでソース・ファイルと行番号もリストアップされる)。 関数は、export 組み込み関数に -f オプションを付けることで、サブシェルに自動的に定義されるようにエクスポートできる。 関数の定義を削除するには、unset 組み込み関数の -f オプションを使用する。 |
| commands. The -F option to declare or typeset will list the function names only (and optionally
| |
| the source file and line number, if the extdebug shell option is enabled). Functions may be ex‐
| |
| ported so that subshells automatically have them defined with the -f option to the export
| |
| builtin. A function definition may be deleted using the -f option to the unset builtin.
| |
|
| |
|
| Functions may be recursive. The FUNCNEST variable may be used to limit the depth of the function
| | 関数は再帰的に使用できる。 FUNCNEST 変数を使用して、関数呼び出しスタックの深さを制限し、関数の呼び出し回数を制限することができる。 デフォルトでは、再帰呼び出しの回数に制限はない。 |
| call stack and restrict the number of function invocations. By default, no limit is imposed on
| |
| the number of recursive calls.
| |
|
| |
|
| == ARITHMETIC EVALUATION == | | == ARITHMETIC EVALUATION == |
| The shell allows arithmetic expressions to be evaluated, under certain circumstances (see the let
| | シェルでは、特定の条件下で算術式を評価することができる(letおよびdeclare組み込みコマンド、(( 複合コマンド、算術展開参照)。 評価は固定幅の整数で行われ、オーバーフローのチェックは行われないが、0による除算はトラップされ、エラーとしてフラグが立てられる。 演算子とその優先順位、連想順位、値はC言語と同じである。 以下の演算子のリストは、等しい優先順位の演算子のレベルにグループ化されている。 レベルは優先順位の低い順に並んでいる。 |
| and declare builtin commands, the (( compound command, and Arithmetic Expansion). Evaluation is
| |
| done in fixed-width integers with no check for overflow, though division by 0 is trapped and
| |
| flagged as an error. The operators and their precedence, associativity, and values are the same
| |
| as in the C language. The following list of operators is grouped into levels of equal-precedence
| |
| operators. The levels are listed in order of decreasing precedence.
| |
|
| |
|
| id++ id-- | | id++ id-- |
Line 1,150: |
Line 1,047: |
| comma | | comma |
|
| |
|
| Shell variables are allowed as operands; parameter expansion is performed before the expression
| | 式が評価される前にパラメータ展開が行われる。 式中では、パラメータ展開構文を使わずにシェル変数を名前で参照することもできる。 NULLまたは未設定のシェル変数は、パラメータ展開構文を使わずに名前で参照すると0と評価される。 変数の値は、その変数が参照されたとき、または declare -i を使って整数属性を与えられた変数に値が割り当てられたときに、算術式として評価される。 シェル変数は、式で使用するために整数属性をオンにする必要はない。 |
| is evaluated. Within an expression, shell variables may also be referenced by name without using
| |
| the parameter expansion syntax. A shell variable that is null or unset evaluates to 0 when ref‐
| |
| erenced by name without using the parameter expansion syntax. The value of a variable is evalu‐
| |
| ated as an arithmetic expression when it is referenced, or when a variable which has been given
| |
| the integer attribute using declare -i is assigned a value. A null value evaluates to 0. A
| |
| shell variable need not have its integer attribute turned on to be used in an expression.
| |
|
| |
|
| Integer constants follow the C language definition, without suffixes or character constants.
| | 整数定数はC言語の定義に従うが、接尾辞や文字定数は付けない。 |
| Constants with a leading 0 are interpreted as octal numbers. A leading 0x or 0X denotes hexadec‐
| | 先頭に0を持つ定数は、8進数として解釈される。 先頭の0xまたは0Xは16進数を表す。 それ以外の場合、数値は<nowiki>[base#]n</nowiki>の形をとる。オプションのbaseは算術基底を表す2から64までの10進数で、nはその基底の数値である。 base#が省略された場合は、10進数が使用される。 nを指定する際、数字以外が必要な場合は、9より大きい数字を小文字、大文字、@、_の順で表す。 |
| imal. Otherwise, numbers take the form [base#]n, where the optional base is a decimal number be‐
| | 基数が36以下の場合、小文字と大文字を入れ替えて10以上35以下の数字を表すことができる。 |
| tween 2 and 64 representing the arithmetic base, and n is a number in that base. If base# is
| |
| omitted, then base 10 is used. When specifying n, if a non-digit is required, the digits greater
| |
| than 9 are represented by the lowercase letters, the uppercase letters, @, and _, in that order.
| |
| If base is less than or equal to 36, lowercase and uppercase letters may be used interchangeably
| |
| to represent numbers between 10 and 35.
| |
|
| |
|
| Operators are evaluated in order of precedence. Sub-expressions in parentheses are evaluated
| | 演算子は優先順位の高い順に評価される。 括弧内の部分式は最初に評価され、上記の優先順位の規則を上書きすることができる。 |
| first and may override the precedence rules above.
| |
|
| |
|
| == CONDITIONAL EXPRESSIONS == | | == CONDITIONAL EXPRESSIONS == |
| Conditional expressions are used by the [[ compound command and the test and [ builtin commands
| | 条件式は、<nowiki>[[</nowiki> 複合コマンド、test および [ 組み込みコマンドで使用され、ファイル属性のテストや文字列比較、算術比較を実行する。 testコマンドと<nowiki>[</nowiki> コマンドは、引数の数に基づいて動作を決定する。その他のコマンド固有の動作については、これらのコマンドの説明を参照のこと。 |
| to test file attributes and perform string and arithmetic comparisons. The test and [ commands
| |
| determine their behavior based on the number of arguments; see the descriptions of those commands
| |
| for any other command-specific actions.
| |
|
| |
|
| Expressions are formed from the following unary or binary primaries. Bash handles several file‐
| | 式は、以下の単項または二項のプライマリから形成される。 Bashは、いくつかのファイル名が式の中で使われている場合、それらを特別に扱う。 bashが動作しているオペレーティング・システムがこれらの特別なファイルを提供している場合、bashはそれらを使用する: プライマリの1つのファイル引数が/dev/fd/nの場合、ファイル記述子nがチェックされる。 プライマリへのファイル引数が /dev/stdin、/dev/stdout、/dev/stderr のいずれかである場合、 それぞれファイル記述子 0、1、2 がチェックされる。 |
| names specially when they are used in expressions. If the operating system on which bash is run‐
| |
| ning provides these special files, bash will use them; otherwise it will emulate them internally
| |
| with this behavior: If any file argument to one of the primaries is of the form /dev/fd/n, then
| |
| file descriptor n is checked. If the file argument to one of the primaries is one of /dev/stdin,
| |
| /dev/stdout, or /dev/stderr, file descriptor 0, 1, or 2, respectively, is checked.
| |
|
| |
|
| Unless otherwise specified, primaries that operate on files follow symbolic links and operate on
| | 特に指定がない限り、ファイルを操作するプライマリはシンボリックリンクに従い、リンクそのものではなくリンク先を操作する。 |
| the target of the link, rather than the link itself.
| |
|
| |
|
| When used with [[, the < and > operators sort lexicographically using the current locale. The
| | <nowiki>[[</nowiki>と一緒に使うと、<nowiki><[</nowiki> 演算子と <nowiki>></nowiki> 演算子は、現在のロケールを使って辞書順にソートする。 testコマンドはASCII順序でソートする。 |
| test command sorts using ASCII ordering.
| |
|
| |
|
| -a file
| | :;-a file |
| True if file exists.
| | ::ファイルが存在するならば True |
| -b file
| | :;-b file |
| True if file exists and is a block special file.
| | ::ファイルが存在し、ブロックスペシャルファイルならば True |
| -c file
| | :;-c file |
| True if file exists and is a character special file.
| | ::ファイルが存在し、キャラクタースペシャルファイルならば True |
| -d file
| | :;-d file |
| True if file exists and is a directory.
| | ::ファイルが存在し、ディレクトリーならば True |
| -e file
| | :;-e file |
| True if file exists.
| | ::ファイルが存在するならば True |
| -f file
| | :;-f file |
| True if file exists and is a regular file.
| | ::ファイルが存在し、、レギュラーファイルならば True |
| -g file
| | :;-g file |
| True if file exists and is set-group-id.
| | ::ファイルが存在し set-group-id ならば True |
| -h file
| | :;-h file |
| True if file exists and is a symbolic link.
| | ::ファイルが存在し、シンボリックリンクならば True |
| -k file
| | :;-k file |
| True if file exists and its ``sticky'' bit is set.
| | ::ファイルが存在し、その``sticky'' ビットがセットされているならば True |
| -p file
| | :;-p file |
| True if file exists and is a named pipe (FIFO).
| | ::ファイルが存在しファイルが存在し、名前付きパイプ(FIFO)であれば True |
| -r file
| | :;-r file |
| True if file exists and is readable.
| | ::ファイルが存在し、readableであれば True |
| -s file
| | :;-s file |
| True if file exists and has a size greater than zero.
| | ::ファイルが存在し、0より大きいファイルサイズであれば True |
| -t fd True if file descriptor fd is open and refers to a terminal.
| | :;-t fd |
| -u file
| | ::ファイル記述子fdがオープンされていて、端末を参照していれば True |
| True if file exists and its set-user-id bit is set.
| | :;-u file |
| -w file
| | ::ファイルが存在し、その set-user-id bitがセットされていれば True |
| True if file exists and is writable.
| | :;-w file |
| -x file
| | ::ファイルが存在し、writableであるならば True |
| True if file exists and is executable.
| | :;-x file |
| -G file
| | ::ファイルが存在し、executableであるならば True |
| True if file exists and is owned by the effective group id.
| | :;-G file |
| -L file
| | ::ファイルが存在し、有効なグループIDが所有していれば、True |
| True if file exists and is a symbolic link.
| | :;-L file |
| -N file
| | ::ファイルが存在し、シンボリックリンクであれば、True |
| True if file exists and has been modified since it was last read.
| | :;-N file |
| -O file
| | ::ファイルが存在し、最後に読み込まれてから変更されていれば True |
| True if file exists and is owned by the effective user id.
| | :;-O file |
| -S file
| | ::ファイルが存在し、有効なユーザIDに所有されていれば True |
| True if file exists and is a socket.
| | :;-S file |
| file1 -ef file2
| | ::ファイルが存在し、ソケットであれば True |
| True if file1 and file2 refer to the same device and inode numbers.
| | :;file1 -ef file2 |
| file1 -nt file2
| | ::file1とfile2が、同じデバイスとinode番号に参照されていれば True |
| True if file1 is newer (according to modification date) than file2, or if file1 exists and
| | :;file1 -nt file2 |
| file2 does not.
| | ::file1がfile2より(更新日付に従って)新しい場合、またはfile1が存在しfile2が存在しない場合、True |
| file1 -ot file2
| | :;file1 -ot file2 |
| True if file1 is older than file2, or if file2 exists and file1 does not.
| | ::file1がfile2より古い場合、またはfile2が存在しfile1が存在しない場合に True |
| -o optname
| | :;-o optname |
| True if the shell option optname is enabled. See the list of options under the descrip‐
| | ::シェル・オプション optname が有効なら True。以下のset組み込み関数の-oオプションの説明の下にあるオプションのリストを参照のこと。 |
| tion of the -o option to the set builtin below.
| | :;-v varname |
| -v varname
| | ::シェル変数varnameが設定されている(値が割り当てられている)場合は True |
| True if the shell variable varname is set (has been assigned a value).
| | :;-R varname |
| -R varname
| | ::シェル変数 varname が設定されていて、名前参照であれば True |
| True if the shell variable varname is set and is a name reference.
| | :;-z string |
| -z string
| | ::文字列の長さが 0であれば True |
| True if the length of string is zero.
| | :;string |
| string
| | :;-n string |
| -n string
| | ::文字列の長さが 0以外であれば True |
| True if the length of string is non-zero.
| |
|
| |
|
| string1 == string2
| | :;string1 == string2 |
| string1 = string2
| | :;string1 = string2 |
| True if the strings are equal. = should be used with the test command for POSIX confor‐
| | ::POSIXに準拠するためには、testコマンドと一緒に使う必要がある。 <nowiki>[[</nowiki>コマンドと一緒に使うと、上記の([[#Compound Commands|Compound Commands ]])で説明したパターンマッチングを行う。 |
| mance. When used with the [[ command, this performs pattern matching as described above
| |
| (Compound Commands).
| |
|
| |
|
| string1 != string2
| | :;string1 != string2 |
| True if the strings are not equal.
| | ::文字列が等しくなければ True |
|
| |
|
| string1 < string2
| | :;string1 < string2 |
| True if string1 sorts before string2 lexicographically.
| | ::文字列1が文字列2より辞書順に先にソートされていれば True |
|
| |
|
| string1 > string2
| | :;string1 > string2 |
| True if string1 sorts after string2 lexicographically.
| | ::文字列1が文字列2の後に辞書式にソートされていれば True |
|
| |
|
| arg1 OP arg2
| | :;arg1 OP arg2 |
| OP is one of -eq, -ne, -lt, -le, -gt, or -ge. These arithmetic binary operators return
| | ::OPは-eq、-ne、-lt、-le、-gt、-geのいずれかである。これらの算術二項演算子は、それぞれ arg1 が arg2 と等しい、等しくない、未満、以下、以上、または以上の場合に true を返します。arg1とarg2は、正または負の整数である。<nowiki>[[</nowiki>コマンドと併用すると、Arg1とArg2は算術式として評価される(上記の[[#ARITHMETIC EVALUATION|ARITHMETIC EVALUATION ]]を参照)。 |
| true if arg1 is equal to, not equal to, less than, less than or equal to, greater than, or
| |
| greater than or equal to arg2, respectively. Arg1 and arg2 may be positive or negative
| |
| integers. When used with the [[ command, Arg1 and Arg2 are evaluated as arithmetic ex‐
| |
| pressions (see ARITHMETIC EVALUATION above).
| |
|
| |
|
| == SIMPLE COMMAND EXPANSION == | | == SIMPLE COMMAND EXPANSION == |
| When a simple command is executed, the shell performs the following expansions, assignments, and
| | 単純なコマンドが実行されると、シェルは以下の展開、代入、リダイレクションを左から順に実行する。 |
| redirections, from left to right, in the following order.
| |
| | |
| 1. The words that the parser has marked as variable assignments (those preceding the command
| |
| name) and redirections are saved for later processing.
| |
| | |
| 2. The words that are not variable assignments or redirections are expanded. If any words
| |
| remain after expansion, the first word is taken to be the name of the command and the re‐
| |
| maining words are the arguments.
| |
|
| |
|
| 3. Redirections are performed as described above under REDIRECTION.
| | #パーサーが変数代入としてマークした単語(コマンド名の前にあるもの)とリダイレクションは、後の処理のために保存される。 |
| | #変数代入やリダイレクションでない単語は展開される。 展開後も単語が残っている場合、最初の単語はコマンド名とみなされ、それ以降の単語は引数となる。 |
| | #リダイレクションは上記の[[#REDIRECTION|REDIRECTION ]]の説明に従って実行される。 |
| | #各変数代入の=の後のテキストは、変数に代入される前に、チルダ展開、パラメータ展開、コマンド置換、算術展開、引用符除去を受ける。 |
|
| |
|
| 4. The text after the = in each variable assignment undergoes tilde expansion, parameter ex‐
| | コマンド名の結果がない場合、変数への代入は現在のシェル環境に影響する。 そうでなければ、変数は実行されたコマンドの環境に追加され、現在のシェル環境には影響しない。 代入のいずれかが読み取り専用変数に値を代入しようとした場合、エラーが発生し、コマンドは0以外のステータスで終了する。 |
| pansion, command substitution, arithmetic expansion, and quote removal before being as‐
| |
| signed to the variable.
| |
|
| |
|
| If no command name results, the variable assignments affect the current shell environment. Oth‐
| | コマンド名の結果が得られない場合、リダイレクションが実行されるが、現在のシェル環境には影響しない。 リダイレクション・エラーは、コマンドをゼロ以外のステータスで終了させる。 |
| erwise, the variables are added to the environment of the executed command and do not affect the
| |
| current shell environment. If any of the assignments attempts to assign a value to a readonly
| |
| variable, an error occurs, and the command exits with a non-zero status.
| |
|
| |
|
| If no command name results, redirections are performed, but do not affect the current shell envi‐
| | 展開後にコマンド名が残っている場合、以下の説明に従って実行が進められる。 そうでなければ、コマンドは終了する。 展開のいずれかにコマンド置換が含まれていた場合、コマンドの終了ステータスは、最後に実行されたコマンド置換の終了ステータスになる。 コマンド置換がなかった場合、コマンドの終了ステータスは0である。 |
| ronment. A redirection error causes the command to exit with a non-zero status.
| |
| | |
| If there is a command name left after expansion, execution proceeds as described below. Other‐
| |
| wise, the command exits. If one of the expansions contained a command substitution, the exit
| |
| status of the command is the exit status of the last command substitution performed. If there
| |
| were no command substitutions, the command exits with a status of zero.
| |
|
| |
|
| == COMMAND EXECUTION == | | == COMMAND EXECUTION == |
| After a command has been split into words, if it results in a simple command and an optional list
| | コマンドが単語に分割された後、それが単純なコマンドとオプションの引数リストになる場合、以下のアクションが実行される。 |
| of arguments, the following actions are taken.
| |
|
| |
|
| If the command name contains no slashes, the shell attempts to locate it. If there exists a
| | コマンド名にスラッシュが含まれていない場合、シェルはそのコマンドを探そうとする。 その名前のシェル関数が存在する場合、その関数は上記の[[#FUNCTIONS|FUNCTIONS ]]で説明したように呼び出される。 その名前が関数と一致しない場合、シェルはシェル組み込み関数のリストからその関数を検索する。 一致するものが見つかれば、その組み込み関数が呼び出される。 |
| shell function by that name, that function is invoked as described above in FUNCTIONS. If the
| |
| name does not match a function, the shell searches for it in the list of shell builtins. If a
| |
| match is found, that builtin is invoked.
| |
|
| |
|
| If the name is neither a shell function nor a builtin, and contains no slashes, bash searches
| | 名前がシェル関数でもビルトインでもなく、スラッシュを含まない場合、bashは'''PATH'''の各要素からその名前の実行可能ファイルを含むディレクトリを検索する。 Bashは、実行可能ファイルのフルパス名を記憶するためにハッシュテーブルを使用する(以下の「シェル組み込みコマンド」の「ハッシュ」を参照)。 PATH内のディレクトリの完全な検索は、ハッシュテーブルでコマンドが見つからなかった場合にのみ実行される。 検索に失敗した場合、シェルはcommand_not_found_handleという名前の定義されたシェル関数を検索する。 その関数が存在する場合、元のコマンドと元のコマンドの引数を引数として別の実行環境で呼び出され、その関数の終了ステータスがそのサブシェルの終了ステータスになる。 その関数が定義されていない場合、シェルはエラー・メッセージを表示し、終了ステータス127を返す。 |
| each element of the PATH for a directory containing an executable file by that name. Bash uses a
| |
| hash table to remember the full pathnames of executable files (see hash under SHELL BUILTIN COM‐
| |
| MANDS below). A full search of the directories in PATH is performed only if the command is not
| |
| found in the hash table. If the search is unsuccessful, the shell searches for a defined shell
| |
| function named command_not_found_handle. If that function exists, it is invoked in a separate
| |
| execution environment with the original command and the original command's arguments as its argu‐
| |
| ments, and the function's exit status becomes the exit status of that subshell. If that function
| |
| is not defined, the shell prints an error message and returns an exit status of 127.
| |
|
| |
|
| If the search is successful, or if the command name contains one or more slashes, the shell exe‐
| | 検索に成功した場合、またはコマンド名に1つ以上のスラッシュが含まれている場合、シェルは指定されたプログラムを別の実行環境で実行する。 引数0は与えられた名前に設定され、コマンドの残りの引数は、もしあれば与えられた引数に設定される。 |
| cutes the named program in a separate execution environment. Argument 0 is set to the name
| |
| given, and the remaining arguments to the command are set to the arguments given, if any.
| |
|
| |
|
| If this execution fails because the file is not in executable format, and the file is not a di‐
| | ファイルが実行可能形式でなく、ファイルがディレクトリでないためにこの実行が失敗した場合、それはシェルスクリプト(シェルコマンドを含むファイル)であると仮定される。 それを実行するためにサブシェルが生成される。 このサブシェルは自分自身を再初期化するので、あたかも新しいシェルがスクリプトを処理するために呼び出されたかのような効果が得られるが、例外として、親が記憶しているコマンドの位置(後述の[[#SHELL BUILTIN COMMANDS|SHELL BUILTIN COMMANDS ]]のハッシュを参照)は子シェルに保持される。 |
| rectory, it is assumed to be a shell script, a file containing shell commands. A subshell is
| |
| spawned to execute it. This subshell reinitializes itself, so that the effect is as if a new
| |
| shell had been invoked to handle the script, with the exception that the locations of commands
| |
| remembered by the parent (see hash below under SHELL BUILTIN COMMANDS) are retained by the child.
| |
|
| |
|
| If the program is a file beginning with #!, the remainder of the first line specifies an inter‐
| | プログラムが<nowiki>#!</nowiki>で始まるファイルである場合、最初の行の残りはプログラムのインタープリタを指定する。 シェルは、この実行形式を扱わないオペレーティングシステム上で、指定されたインタプリタを実行する。 インタプリタへの引数は、プログラムの1行目のインタプリタ名に続く1つのオプション引数、プログラム名、コマンド引数(もしあれば)の順で構成される。 |
| preter for the program. The shell executes the specified interpreter on operating systems that
| |
| do not handle this executable format themselves. The arguments to the interpreter consist of a
| |
| single optional argument following the interpreter name on the first line of the program, fol‐
| |
| lowed by the name of the program, followed by the command arguments, if any.
| |
|
| |
|
| == COMMAND EXECUTION ENVIRONMENT == | | == COMMAND EXECUTION ENVIRONMENT == |
| The shell has an execution environment, which consists of the following:
| | シェルは以下の実行環境を持つ: |
| | |
| • open files inherited by the shell at invocation, as modified by redirections supplied to
| |
| the exec builtin
| |
| | |
| • the current working directory as set by cd, pushd, or popd, or inherited by the shell at
| |
| invocation
| |
| | |
| • the file creation mode mask as set by umask or inherited from the shell's parent
| |
| | |
| • current traps set by trap
| |
| | |
| • shell parameters that are set by variable assignment or with set or inherited from the
| |
| shell's parent in the environment
| |
|
| |
|
| • shell functions defined during execution or inherited from the shell's parent in the envi‐
| | * 起動時にシェルに継承されるオープンファイル、および exec 組み込み関数に供給されるリダイレクションによって変更されるオープンファイル。 |
| ronment
| | * cd、pushd、または popd によって設定されるか、起動時にシェルによって継承されるカレント作業ディレクトリ。 |
| | umaskによって設定されるか、シェルの親から継承されるファイル作成モードマスク |
| | * trapによって設定される現在のトラップ |
| | * 変数代入またはsetで設定された、またはシェルの親から継承された 環境中のシェルパラメータ |
| | * 実行中に定義された、またはシェル親環境から継承されたシェル関数 |
| | * (デフォルトまたはコマンドライン引数で)起動時に有効化されるオプション、 または set で有効化されるオプション。 |
| | * shoptで有効になるオプション |
| | * aliasで定義されたシェルのエイリアス |
| | * バックグラウンド・ジョブ、$$の値、PPIDの値を含む様々なプロセスID |
|
| |
|
| • options enabled at invocation (either by default or with command-line arguments) or by set
| | 組み込み関数やシェル関数以外の単純なコマンドを実行する場合、そのコマンドは、以下から構成 される別の実行環境で起動される。 特に断りのない限り、値はシェルから継承される。 |
|
| |
|
| • options enabled by shopt
| | * シェルの開いているファイルと、コマンドへのリダイレクトによって指定された変更と追加。 |
| | * 現在の作業ディレクトリ |
| | * ファイル作成モードのマスク |
| | * コマンド用にエクスポートされた変数と一緒に、エクスポート用にマークされたシェル変数と関数が環境で渡される。 |
| | * シェルによって捕捉されたトラップは、シェルの親から継承された値にリセットされ、シェルによって無視されたトラップは無視される。 |
|
| |
|
| • shell aliases defined with alias
| | この別の環境で起動されたコマンドは、シェルの実行環境に影響を与えることはできない。 |
|
| |
|
| • various process IDs, including those of background jobs, the value of $$, and the value of
| | コマンド置換、括弧でグループ化されたコマンド、および非同期コマンドは、シェルによって捕捉されたトラップが、シェルが起動時に親から継承した値にリセットされることを除いて、シェル環境の複製であるサブシェル環境で起動される。 |
| PPID
| | パイプラインの一部として呼び出される組み込みコマンドも、サブシェル環境で実行される。 サブシェル環境に加えられた変更は、シェルの実行環境に影響しない。 |
|
| |
|
| When a simple command other than a builtin or shell function is to be executed, it is invoked in
| | コマンド置換を実行するために生成されたサブシェルは、親シェルから -e オプションの値を継承する。 posix モードでない場合、bash はそのようなサブシェルで -e オプションをクリアする。 |
| a separate execution environment that consists of the following. Unless otherwise noted, the
| |
| values are inherited from the shell.
| |
|
| |
|
| • the shell's open files, plus any modifications and additions specified by redirections to
| | コマンドの後に&が続き、ジョブ制御がアクティブでない場合、コマンドのデフォルト標準入力は空のファイル<u>/dev/null</u>になる。 それ以外の場合、呼び出されたコマンドは、リダイレクトによって変更された呼び出し元のシェルのファイル記述子を継承する。 |
| the command
| |
| | |
| • the current working directory
| |
| | |
| • the file creation mode mask
| |
| | |
| • shell variables and functions marked for export, along with variables exported for the
| |
| command, passed in the environment
| |
| | |
| • traps caught by the shell are reset to the values inherited from the shell's parent, and
| |
| traps ignored by the shell are ignored
| |
| | |
| A command invoked in this separate environment cannot affect the shell's execution environment.
| |
| | |
| Command substitution, commands grouped with parentheses, and asynchronous commands are invoked in
| |
| a subshell environment that is a duplicate of the shell environment, except that traps caught by
| |
| the shell are reset to the values that the shell inherited from its parent at invocation.
| |
| Builtin commands that are invoked as part of a pipeline are also executed in a subshell environ‐
| |
| ment. Changes made to the subshell environment cannot affect the shell's execution environment.
| |
| | |
| Subshells spawned to execute command substitutions inherit the value of the -e option from the
| |
| parent shell. When not in posix mode, bash clears the -e option in such subshells.
| |
| | |
| If a command is followed by a & and job control is not active, the default standard input for the
| |
| command is the empty file /dev/null. Otherwise, the invoked command inherits the file descrip‐
| |
| tors of the calling shell as modified by redirections.
| |
|
| |
|
| == ENVIRONMENT == | | == ENVIRONMENT == |
| When a program is invoked it is given an array of strings called the environment. This is a list
| | プログラムが起動されると、環境と呼ばれる文字列の配列が与えられる。 これはname=valueという形式の名前と値のペアのリストである。 |
| of name-value pairs, of the form name=value.
| |
|
| |
|
| The shell provides several ways to manipulate the environment. On invocation, the shell scans
| | シェルは環境を操作するいくつかの方法を提供する。 起動時にシェルは自身の環境をスキャンし、見つかった名前ごとにパラメータを作成し、子プロセスにエクスポートするように自動的にマークする。 実行されたコマンドは環境を継承する。 exportコマンドとdeclare -xコマンドにより、パラメータや関数を環境に追加したり、環境から削除したりすることができる。 環境内のパラメータの値が変更されると、新しい値が環境の一部となり、古い値を置き換える。 実行されたコマンドによって継承される環境は、シェルの初期環境からなり、その値はシェルで変更することができ、unsetコマンドで削除されたペアと、exportコマンドとdeclare -xコマンドで追加されたペアが含まれる。 |
| its own environment and creates a parameter for each name found, automatically marking it for ex‐
| |
| port to child processes. Executed commands inherit the environment. The export and declare -x
| |
| commands allow parameters and functions to be added to and deleted from the environment. If the
| |
| value of a parameter in the environment is modified, the new value becomes part of the environ‐
| |
| ment, replacing the old. The environment inherited by any executed command consists of the
| |
| shell's initial environment, whose values may be modified in the shell, less any pairs removed by
| |
| the unset command, plus any additions via the export and declare -x commands.
| |
|
| |
|
| The environment for any simple command or function may be augmented temporarily by prefixing it
| | 単純なコマンドや関数の環境は、上記の[[#PARAMETERS|PARAMETERS ]]で説明されているように、パラメータ割り当てを前に置くことで一時的に拡張することができる。 これらの代入文は、そのコマンドが見る環境だけに影響する。 |
| with parameter assignments, as described above in PARAMETERS. These assignment statements affect
| |
| only the environment seen by that command.
| |
|
| |
|
| If the -k option is set (see the set builtin command below), then all parameter assignments are
| | <nowiki>-k</nowiki>オプションが設定されている場合(後述のset builtinコマンドを参照)、コマンド名の前にあるものだけでなく、すべてのパラメータ割り当てがコマンドの環境に置かれる。 |
| placed in the environment for a command, not just those that precede the command name.
| |
|
| |
|
| When bash invokes an external command, the variable _ is set to the full filename of the command
| | bashが外部コマンドを呼び出すと、変数_にコマンドの完全なファイル名が設定され、そのコマンドの環境に渡される。 |
| and passed to that command in its environment.
| |
|
| |
|
| == EXIT STATUS == | | == EXIT STATUS == |
| The exit status of an executed command is the value returned by the waitpid system call or equiv‐
| | 実行されたコマンドの終了ステータスは、waitpidシステムコールまたは同等の関数が返す値である。 終了ステータスは0から255の間であるが、以下で説明するように、シェルは特別に125以上の値を使用することがある。 シェル組み込み関数と複合コマンドの終了ステータスもこの範囲に制限される。 特定の状況下では、シェルは特定の失敗モードを示すために特別な値を使用する。 |
| alent function. Exit statuses fall between 0 and 255, though, as explained below, the shell may
| |
| use values above 125 specially. Exit statuses from shell builtins and compound commands are also
| |
| limited to this range. Under certain circumstances, the shell will use special values to indi‐
| |
| cate specific failure modes.
| |
|
| |
|
| For the shell's purposes, a command which exits with a zero exit status has succeeded. An exit
| | シェルの目的上、終了ステータスが0で終了するコマンドは成功したことになる。 ゼロの終了ステータスは成功を示す。 ゼロ以外の終了ステータスは失敗を示す。 致命的シグナルNでコマンドが終了する場合、bashは128+Nの値を終了ステータスとして使用する。 |
| status of zero indicates success. A non-zero exit status indicates failure. When a command ter‐
| |
| minates on a fatal signal N, bash uses the value of 128+N as the exit status.
| |
|
| |
|
| If a command is not found, the child process created to execute it returns a status of 127. If a
| | コマンドが見つからない場合、そのコマンドを実行するために作成された子プロセスは127のステータスを返す。 コマンドは見つかったが実行できない場合、ステータスは126となる。 |
| command is found but is not executable, the return status is 126.
| |
|
| |
|
| If a command fails because of an error during expansion or redirection, the exit status is
| | 展開中またはリダイレクト中のエラーによりコマンドが失敗した場合、終了ステータスは0より大きくなる。 |
| greater than zero.
| |
|
| |
|
| Shell builtin commands return a status of 0 (true) if successful, and non-zero (false) if an er‐
| | シェル組み込みコマンドは、成功すれば0(真)のステータスを返し、実行中にエラーが発生すれば0以外(偽)のステータスを返す。 すべての組み込みコマンドは、不正な使用(通常は無効なオプションや引数の欠落)を示す終了ステータス2を返す。 |
| ror occurs while they execute. All builtins return an exit status of 2 to indicate incorrect us‐
| |
| age, generally invalid options or missing arguments.
| |
|
| |
|
| Bash itself returns the exit status of the last command executed, unless a syntax error occurs,
| | Bash自身は、構文エラーが発生しない限り、最後に実行したコマンドの終了ステータスを返し、その場合はゼロ以外の値で終了する。 以下のexit組み込みコマンドも参照のこと。 |
| in which case it exits with a non-zero value. See also the exit builtin command below.
| |
|
| |
|
| == SIGNALS == | | == SIGNALS == |
| When bash is interactive, in the absence of any traps, it ignores SIGTERM (so that kill 0 does
| | bashが対話型の場合、トラップがなければSIGTERMは無視され(kill 0が対話型シェルを殺すことはない)、'''SIGINT'''はキャッチされて処理される(wait組み込み関数が割り込み可能になる)。 すべての場合において、bashは'''SIGQUIT'''を無視する。 ジョブ制御が有効な場合、bash は '''SIGTTIN'''、'''SIGTTOU'''、'''SIGTSTP''' を無視する。 |
| not kill an interactive shell), and SIGINT is caught and handled (so that the wait builtin is in‐
| |
| terruptible). In all cases, bash ignores SIGQUIT. If job control is in effect, bash ignores
| |
| SIGTTIN, SIGTTOU, and SIGTSTP.
| |
|
| |
|
| Non-builtin commands run by bash have signal handlers set to the values inherited by the shell
| | bashが実行する非ビルティン・コマンドのシグナル・ハンドラは、シェルが親から継承した値に設定される。 ジョブ制御が有効でない場合、非同期コマンドは、これらの継承されたハンドラに加え、'''SIGINT'''と'''SIGQUIT'''も無視する。 コマンド置換の結果として実行されるコマンドは、キーボードから生成されるジョブ制御シグナル'''SIGTTIN'''、'''SIGTTOU'''、'''SIGTSTP'''を無視する。 |
| from its parent. When job control is not in effect, asynchronous commands ignore SIGINT and
| |
| SIGQUIT in addition to these inherited handlers. Commands run as a result of command substitu‐
| |
| tion ignore the keyboard-generated job control signals SIGTTIN, SIGTTOU, and SIGTSTP.
| |
|
| |
|
| The shell exits by default upon receipt of a SIGHUP. Before exiting, an interactive shell re‐
| | シェルはデフォルトでは'''SIGHUP'''を受け取ると終了する。 終了する前に、対話型シェルは実行中または停止中のすべてのジョブに '''SIGHUP''' を再送する。 停止しているジョブは、'''SIGHUP''' を確実に受信するために '''SIGCONT''' が送られる。 シェルが特定のジョブにシグナルを送らないようにするには、 disown 組み込み関数でジョブテーブルからそのジョブを削除するか(後述の [[#SHELL BUILTIN COMMANDS|SHELL BUILTIN COMMANDS ]] を参照)、 disown -h を使って '''SIGHUP''' を受け取らないようにマークする必要がある。 |
| sends the SIGHUP to all jobs, running or stopped. Stopped jobs are sent SIGCONT to ensure that
| |
| they receive the SIGHUP. To prevent the shell from sending the signal to a particular job, it
| |
| should be removed from the jobs table with the disown builtin (see SHELL BUILTIN COMMANDS below)
| |
| or marked to not receive SIGHUP using disown -h.
| |
|
| |
|
| If the huponexit shell option has been set with shopt, bash sends a SIGHUP to all jobs when an
| | shoptでhuponexitシェルオプションが設定されている場合、対話型ログインシェルが終了すると、bashはすべてのジョブに'''SIGHUP'''を送信する。 |
| interactive login shell exits.
| |
|
| |
|
| If bash is waiting for a command to complete and receives a signal for which a trap has been set,
| | bashがコマンドの完了を待っているときに、トラップが設定されているシグナルを受信すると、コマンドが完了するまでトラップは実行されない。 bash が wait 組み込み関数で非同期コマンドを待機している場合、トラップが設定されたシグナルを受信すると、wait 組み込み関数は直ちに 128 より大きい終了ステータスで戻り、その直後にトラップが実行される。 |
| the trap will not be executed until the command completes. When bash is waiting for an asynchro‐
| |
| nous command via the wait builtin, the reception of a signal for which a trap has been set will
| |
| cause the wait builtin to return immediately with an exit status greater than 128, immediately
| |
| after which the trap is executed.
| |
|
| |
|
| == JOB CONTROL == | | == JOB CONTROL == |
| Job control refers to the ability to selectively stop (suspend) the execution of processes and
| | ジョブ制御とは、プロセスの実行を選択的に停止(サスペンド)し、後の時点で実行を継続(レジューム)する機能のことである。 ユーザーは通常、オペレーティング・システム・カーネルのターミナル・ドライバとbashが共同で提供する対話型インターフェースを介してこの機能を使用する。 |
| continue (resume) their execution at a later point. A user typically employs this facility via
| |
| an interactive interface supplied jointly by the operating system kernel's terminal driver and
| |
| bash.
| |
|
| |
|
| The shell associates a job with each pipeline. It keeps a table of currently executing jobs,
| | シェルは各パイプラインにジョブを関連付ける。 シェルは現在実行中のジョブのテーブルを保持し、jobsコマンドで一覧できる。 bashがジョブを非同期(バックグラウンド)で開始すると、次のような行が表示される: |
| which may be listed with the jobs command. When bash starts a job asynchronously (in the back‐
| |
| ground), it prints a line that looks like:
| |
|
| |
|
| [1] 25647
| | :<nowiki>[1] 25647</nowiki> |
|
| |
|
| indicating that this job is job number 1 and that the process ID of the last process in the pipe‐
| | このジョブがジョブ番号 1 であり、このジョブに関連付けられたパイプラインの最後のプロセスのプロセス ID が 25647 であることを示す。 1つのパイプライン内のすべてのプロセスは同じジョブのメンバーである。 Bashはジョブ制御の基礎としてジョブ抽象化を使用する。 |
| line associated with this job is 25647. All of the processes in a single pipeline are members of
| |
| the same job. Bash uses the job abstraction as the basis for job control.
| |
|
| |
|
| To facilitate the implementation of the user interface to job control, the operating system main‐
| | ジョブ制御に対するユーザーインターフェースの実装を容易にするために、オペレーティングシステムは現在の端末プロセスグループIDという概念を保持している。 このプロセスグループのメンバー(プロセスグループIDが現在の端末プロセスグループIDと等しいプロセス)は、'''SIGINT'''のようなキーボードが生成するシグナルを受け取る。 これらのプロセスはフォアグラウンドにあると言われる。 バックグランドプロセスとは、プロセスグループIDが端末のものと異なるプロセスのことで、このようなプロセスはキーボードが生成するシグナルを受けない。 フォアグラウンド・プロセスだけが、端末からの読み取りや、 stty tostopでユーザーが指定した場合の端末への書き込みを許可される。 ターミナルからの読み込み(stty tostopが有効な場合はターミナルへの書き込み)を試みるバックグラウンド・プロセスは、カーネルのターミナル・ドライバによって'''SIGTTIN'''('''SIGTTOU''')シグナルが送られ、キャッチされない限り、プロセスは一時停止される。 |
| tains the notion of a current terminal process group ID. Members of this process group (pro‐
| |
| cesses whose process group ID is equal to the current terminal process group ID) receive key‐
| |
| board-generated signals such as SIGINT. These processes are said to be in the foreground. Back‐
| |
| ground processes are those whose process group ID differs from the terminal's; such processes are
| |
| immune to keyboard-generated signals. Only foreground processes are allowed to read from or, if
| |
| the user so specifies with stty tostop, write to the terminal. Background processes which at‐
| |
| tempt to read from (write to when stty tostop is in effect) the terminal are sent a SIGTTIN
| |
| (SIGTTOU) signal by the kernel's terminal driver, which, unless caught, suspends the process.
| |
|
| |
|
| If the operating system on which bash is running supports job control, bash contains facilities
| | bashが動作しているオペレーティング・システムがジョブ制御をサポートしている場合、bashにはジョブ制御を使用するための機能が含まれている。 プロセスの実行中にサスペンド文字(通常は^Z、Control-Z)を入力すると、そのプロセスが停止し、制御がbashに戻る。 遅延サスペンド文字(通常は^Y、Control-Y)を入力すると、ターミナルから入力を読み込もうとしたときにプロセスが停止し、制御がbashに戻る。 その後、ユーザーはこのジョブの状態を操作することができ、 bgコマンドを使ってバックグラウンドで継続させたり、fgコマンドを使ってフォアグラウンドで継続させたり、 killコマンドを使って終了させたりすることができる。 Zは即座に有効になり、保留中の出力とtypeaheadが破棄されるという副次的な効果もある。 |
| to use it. Typing the suspend character (typically ^Z, Control-Z) while a process is running
| |
| causes that process to be stopped and returns control to bash. Typing the delayed suspend char‐
| |
| acter (typically ^Y, Control-Y) causes the process to be stopped when it attempts to read input
| |
| from the terminal, and control to be returned to bash. The user may then manipulate the state of
| |
| this job, using the bg command to continue it in the background, the fg command to continue it in
| |
| the foreground, or the kill command to kill it. A ^Z takes effect immediately, and has the addi‐
| |
| tional side effect of causing pending output and typeahead to be discarded.
| |
|
| |
|
| There are a number of ways to refer to a job in the shell. The character % introduces a job
| | シェルでジョブを参照する方法はいくつかある。 文字 % は、ジョブ仕様 (jobspec) を示す。 ジョブ番号nは%nと呼ばれる。 また、ジョブの開始時に使用される名前の接頭辞を使用したり、コマンドラインに現れる部分文字列を使用してジョブを参照することもできる。 例えば、%ce は、コマンド名が ce で始まる停止したジョブを指す。 接頭辞が複数のジョブにマッチした場合、bashはエラーを報告する。 一方、%?ceを使うと、コマンドラインにceという文字列を含むジョブを指す。 この部分文字列が複数のジョブにマッチすると、bashはエラーを報告する。 記号%%と%+は、シェルが考える現在のジョブ(フォアグラウンドまたはバックグラウンドで起動中に停止した最後のジョブ)を指す。 前のジョブは %- を使って参照できる。 ジョブが1つしかない場合、%+と%-の両方がそのジョブを指すのに使われる。 ジョブに関する出力(例えばjobsコマンドの出力)では、現在のジョブには常に+、前のジョブには-が付けられる。 |
| specification (jobspec). Job number n may be referred to as %n. A job may also be referred to
| |
| using a prefix of the name used to start it, or using a substring that appears in its command
| |
| line. For example, %ce refers to a stopped job whose command name begins with ce. If a prefix
| |
| matches more than one job, bash reports an error. Using %?ce, on the other hand, refers to any
| |
| job containing the string ce in its command line. If the substring matches more than one job,
| |
| bash reports an error. The symbols %% and %+ refer to the shell's notion of the current job,
| |
| which is the last job stopped while it was in the foreground or started in the background. The
| |
| previous job may be referenced using %-. If there is only a single job, %+ and %- can both be
| |
| used to refer to that job. In output pertaining to jobs (e.g., the output of the jobs command),
| |
| the current job is always flagged with a +, and the previous job with a -. A single % (with no
| |
| accompanying job specification) also refers to the current job.
| |
|
| |
|
| Simply naming a job can be used to bring it into the foreground: %1 is a synonym for ``fg %1'',
| | 1 は ``fg %1'' の同義語で、バックグラウンドにあるジョブ 1 をフォアグラウンドにする。 同様に、%1 &''はジョブ1をバックグラウンドで再開し、`bg %1''と等価である。 |
| bringing job 1 from the background into the foreground. Similarly, ``%1 &'' resumes job 1 in the
| |
| background, equivalent to ``bg %1''.
| |
|
| |
|
| The shell learns immediately whenever a job changes state. Normally, bash waits until it is
| | シェルはジョブの状態が変わるとすぐにそれを知る。 通常、bashは他の出力を中断しないように、ジョブのステータスの変更を報告する前にプロンプトを表示するまで待つ。 set組み込みコマンドの-bオプションを有効にすると、bashはそのような変更を直ちに報告する。 '''SIGCHLD'''に対するトラップは、終了する子プロセスごとに実行される。 |
| about to print a prompt before reporting changes in a job's status so as to not interrupt any
| |
| other output. If the -b option to the set builtin command is enabled, bash reports such changes
| |
| immediately. Any trap on SIGCHLD is executed for each child that exits.
| |
|
| |
|
| If an attempt to exit bash is made while jobs are stopped (or, if the checkjobs shell option has
| | ジョブが停止中(または shopt 組み込みコマンドを使用して checkjobs シェル・オプションが有効になっている場合は実行中)に bash を終了しようとすると、シェルは警告メッセージを表示し、checkjobs オプションが有効になっている場合は、ジョブとそのステータスを一覧表示する。 その後、jobsコマンドを使用してステータスを調べることができる。 コマンドを介さずに2回目の終了が試みられた場合、シェルは警告を再度表示せず、停止しているジョブはすべて終了される。 |
| been enabled using the shopt builtin, running), the shell prints a warning message, and, if the
| |
| checkjobs option is enabled, lists the jobs and their statuses. The jobs command may then be
| |
| used to inspect their status. If a second attempt to exit is made without an intervening com‐
| |
| mand, the shell does not print another warning, and any stopped jobs are terminated.
| |
|
| |
|
| When the shell is waiting for a job or process using the wait builtin, and job control is en‐
| | シェルがwait組み込み関数を使用してジョブまたはプロセスを待機しており、ジョブ制御が有効になっている場合、waitはジョブの状態が変化したときに戻る。fオプションを付けると、waitはジョブまたはプロセスが終了するまで待ってから戻るようになる。 |
| abled, wait will return when the job changes state. The -f option causes wait to wait until the
| |
| job or process terminates before returning.
| |
|
| |
|
| == PROMPTING == | | == PROMPTING == |
| When executing interactively, bash displays the primary prompt PS1 when it is ready to read a
| | 対話的に実行する場合、bashはコマンドを読み込む準備ができたときにプライマリプロンプトPS1を表示し、コマンドを完了するためにさらに入力が必要なときにセカンダリプロンプトPS2を表示する。 Bashはコマンドを読み込んだ後、実行する前にPS0を表示する。 Bashは、-xオプションが有効な場合、各コマンドをトレースする前に上記のようにPS4を表示する。 Bashでは、バックスラッシュでエスケープされた特殊文字を挿入することで、これらのプロンプト文字列をカスタマイズすることができる: |
| command, and the secondary prompt PS2 when it needs more input to complete a command. Bash dis‐
| | ;\a |
| plays PS0 after it reads a command but before executing it. Bash displays PS4 as described above
| | :ASCIIのベル文字(07) |
| before tracing each command when the -x option is enabled. Bash allows these prompt strings to
| | ;\d |
| be customized by inserting a number of backslash-escaped special characters that are decoded as
| | :"Weekday Month Date"形式の日付(例:"Tue May 26") |
| follows:
| | ;\D{format} |
| \a an ASCII bell character (07)
| | :formatは'''[https://manpages.debian.org/unstable/manpages-dev/strftime.3.en.html strftime]'''(3)に渡され、その結果がプロンプト文字列に挿入される。 中括弧は必須である。 |
| \d the date in "Weekday Month Date" format (e.g., "Tue May 26")
| | ;\e |
| \D{format}
| | :ASCIIエスケープ文字(033)である。 |
| the format is passed to strftime(3) and the result is inserted into the prompt
| | ;\h |
| string; an empty format results in a locale-specific time representation. The
| | :最初の`.'までのホスト名 |
| braces are required
| | ;\H |
| \e an ASCII escape character (033)
| | :ホスト名 |
| \h the hostname up to the first `.'
| | ;\j |
| \H the hostname
| | :shell が現在管理しているジョブ数 |
| \j the number of jobs currently managed by the shell
| | ;\l |
| \l the basename of the shell's terminal device name
| | :シェルの端末デバイス名のベースネーム |
| \n newline
| | ;\n |
| \r carriage return
| | :改行する |
| \s the name of the shell, the basename of $0 (the portion following the final slash)
| | ;\r |
| \t the current time in 24-hour HH:MM:SS format
| | :キャリッジリターン |
| \T the current time in 12-hour HH:MM:SS format
| | ;\s |
| \@ the current time in 12-hour am/pm format
| | :shell の名前、$0 のベースネーム(最後のスラッシュに続く部分) |
| \A the current time in 24-hour HH:MM format
| | ;\t |
| \u the username of the current user
| | :現在の時刻をHH:MM:SSの24時間形式で表示する。 |
| \v the version of bash (e.g., 2.00)
| | ;\T |
| \V the release of bash, version + patch level (e.g., 2.00.0)
| | :現在の時刻を12時間HH:MM:SS形式で表示する。 |
| \w the current working directory, with $HOME abbreviated with a tilde (uses the value
| | ;\@ |
| of the PROMPT_DIRTRIM variable)
| | :現在時刻を12時間表示のam/pmで表示する。 |
| \W the basename of the current working directory, with $HOME abbreviated with a tilde
| | ;\A |
| \! the history number of this command
| | :現在時刻を24時間表示する。 |
| \# the command number of this command
| | ;\u |
| \$ if the effective UID is 0, a #, otherwise a $
| | :現在のユーザーのユーザー名 |
| \nnn the character corresponding to the octal number nnn
| | ;\v |
| \\ a backslash
| | :bash のバージョン(例:2.00) |
| \[ begin a sequence of non-printing characters, which could be used to embed a termi‐
| | ;\V |
| nal control sequence into the prompt
| | :bash のリリース、バージョン+パッチレベル(例:2.00.0) |
| \] end a sequence of non-printing characters
| | ;\w |
| | :$HOME をチルダで省略した現在の作業ディレクトリ ('''PROMPT_DIRTRIM''' 変数の値を使用する) |
| | ;\W |
| | :現在の作業ディレクトリのベースネーム |
| | ;\! |
| | :このコマンドの履歴番号 |
| | ;\# |
| | :このコマンドのコマンド番号 |
| | ;\$ |
| | :有効UIDが0の場合は#、それ以外は$である |
| | ;\nnn |
| | :8進数のnnnに対応する文字。 |
| | ;\\ |
| | :バックスラッシュ |
| | ;<nowiki>\[</nowiki> |
| | :プロンプトに端末制御シーケンスを埋め込むために最初につける |
| | ;<nowiki>\]</nowiki> |
| | :印字しない文字のシーケンスを終了する。 |
|
| |
|
| The command number and the history number are usually different: the history number of a command
| | コマンド番号とヒストリ番号は通常異なる。コマンドのヒストリ番号はヒストリリスト内の位置で、ヒストリファイルから復元されたコマンドを含むことがある(下記の[[#HISTORY|HISTORY ]]を参照)。 文字列はデコードされた後、promptvarsシェルオプションの値に従って、パラメータ展開、コマンド置換、算術展開、引用符除去によって展開される(以下の[[#SHELL BUILTIN COMMANDS|SHELL BUILTIN COMMANDS ]]のshoptコマンドの説明を参照のこと)。 これは、文字列のエスケープされた部分がコマンド置換の中に現れたり、単語展開に特殊な文字を含んでいたりすると、望ましくない副作用をもたらす可能性がある。 |
| is its position in the history list, which may include commands restored from the history file
| |
| (see HISTORY below), while the command number is the position in the sequence of commands exe‐
| |
| cuted during the current shell session. After the string is decoded, it is expanded via parame‐
| |
| ter expansion, command substitution, arithmetic expansion, and quote removal, subject to the
| |
| value of the promptvars shell option (see the description of the shopt command under SHELL
| |
| BUILTIN COMMANDS below). This can have unwanted side effects if escaped portions of the string
| |
| appear within command substitution or contain characters special to word expansion.
| |
|
| |
|
| == READLINE == | | == READLINE == |
| This is the library that handles reading input when using an interactive shell, unless the
| | シェル起動時に--noeditingオプションが指定されていない限り、対話型シェル使用時に入力を読み込む処理を行うライブラリである。 行編集は、read組み込み関数に-eオプションを指定した場合にも使用される。 デフォルトでは、行編集コマンドはEmacsのものと似ている。Viスタイルの行編集インターフェースも利用できる。 行編集は、set 組み込み関数の -o emacs または -o vi オプションを使用することで、いつでも有効にすることができる(後述の「シェル組み込みコマンド」を参照)。 シェルの実行後に行編集をオフにするには、set ビルトインの +o emacs または +o vi オプションを使用する。 |
| --noediting option is given at shell invocation. Line editing is also used when using the -e op‐
| |
| tion to the read builtin. By default, the line editing commands are similar to those of Emacs.
| |
| A vi-style line editing interface is also available. Line editing can be enabled at any time us‐
| |
| ing the -o emacs or -o vi options to the set builtin (see SHELL BUILTIN COMMANDS below). To turn
| |
| off line editing after the shell is running, use the +o emacs or +o vi options to the set
| |
| builtin.
| |
|
| |
|
| === Readline Notation === | | === Readline Notation === |
| In this section, the Emacs-style notation is used to denote keystrokes. Control keys are denoted
| | このセクションでは、Emacs流の表記法でキーストロークを表す。 例えば、C-nはControl-Nを意味する。 同様に、メタ・キーはM-keyで表記されるので、M-xはMeta-Xを意味する。 (メタキーのないキーボードでは、M-xはESC x、つまりEscapeキーを押してからxキーを押すことを意味する)。 つまり、Escapeキーを押してからxキーを押す。 M-C-xの組み合わせはESC-Control-xを意味し、つまりEscapeキーを押してからControlキーを押しながらxキーを押す)。 |
| by C-key, e.g., C-n means Control-N. Similarly, meta keys are denoted by M-key, so M-x means
| |
| Meta-X. (On keyboards without a meta key, M-x means ESC x, i.e., press the Escape key then the x
| |
| key. This makes ESC the meta prefix. The combination M-C-x means ESC-Control-x, or press the
| |
| Escape key then hold the Control key while pressing the x key.)
| |
|
| |
|
| Readline commands may be given numeric arguments, which normally act as a repeat count. Some‐
| | Readlineコマンドには数値引数を与えることができ、通常は繰り返し回数として機能する。 しかし、引数の符号が重要な意味を持つこともある。 順方向に動作するコマンド(例えば、kill-line)に負の引数を渡すと、そのコマンドは逆方向に動作する。 引数による動作がこれと異なるコマンドを以下に記す。 |
| times, however, it is the sign of the argument that is significant. Passing a negative argument
| |
| to a command that acts in the forward direction (e.g., kill-line) causes that command to act in a
| |
| backward direction. Commands whose behavior with arguments deviates from this are noted below.
| |
|
| |
|
| When a command is described as killing text, the text deleted is saved for possible future re‐
| | あるコマンドがテキストを殺すと記述されている場合、削除されたテキストは将来取り出せるように保存される(yanking)。 キルされたテキストはキルリングに保存される。 連続してキルされると、テキストは1つのユニットに蓄積され、一度にすべてヤンクすることができる。 テキストをキルしないコマンドは、キルリング上のテキストの塊を分離する。 |
| trieval (yanking). The killed text is saved in a kill ring. Consecutive kills cause the text to
| |
| be accumulated into one unit, which can be yanked all at once. Commands which do not kill text
| |
| separate the chunks of text on the kill ring.
| |
|
| |
|
| === Readline Initialization === | | === Readline Initialization === |
| Readline is customized by putting commands in an initialization file (the inputrc file). The
| | Readlineは、初期化ファイル(inputrcファイル)にコマンドを入れることでカスタマイズされる。 このファイル名はINPUTRC変数の値から取られる。 この変数が設定されていない場合、デフォルトは~/.inputrcである。 そのファイルが存在しないか、読み込めない場合、最終的なデフォルトは/etc/inputrcとなる。 readlineライブラリを使用するプログラムが起動すると、初期化ファイルが読み込まれ、キーバインドと変数が設定される。 readline初期化ファイルには、いくつかの基本的な構文しか許されない。 空白行は無視される。 で始まる行はコメントである。 で始まる行は条件分岐を示す。 その他の行は、キーバインドと変数設定を示す。 |
| name of this file is taken from the value of the INPUTRC variable. If that variable is unset,
| |
| the default is ~/.inputrc. If that file does not exist or cannot be read, the ultimate default
| |
| is /etc/inputrc. When a program which uses the readline library starts up, the initialization
| |
| file is read, and the key bindings and variables are set. There are only a few basic constructs
| |
| allowed in the readline initialization file. Blank lines are ignored. Lines beginning with a #
| |
| are comments. Lines beginning with a $ indicate conditional constructs. Other lines denote key
| |
| bindings and variable settings.
| |
|
| |
|
| The default key-bindings may be changed with an inputrc file. Other programs that use this li‐
| | デフォルトのキーバインディングはinputrcファイルで変更できる。 このライブラリを使用する他のプログラムは、独自のコマンドやバインディングを追加することができる。 |
| brary may add their own commands and bindings.
| |
|
| |
|
| For example, placing
| | :たとえば、 |
|
| |
|
| M-Control-u: universal-argument
| | ::M-Control-u: universal-argument |
| or
| | :または、 |
| C-Meta-u: universal-argument
| | ::C-Meta-u: universal-argument |
| into the inputrc would make M-C-u execute the readline command universal-argument.
| | ::を入力すると、M-C-uはreadlineコマンドのuniversal-argumentを実行する。 |
|
| |
|
| The following symbolic character names are recognized: RUBOUT, DEL, ESC, LFD, NEWLINE, RET, RE‐
| | 以下の記号文字名が認識される: RUBOUT、DEL、ESC、LFD、NEWLINE、RET、RETURN、SPC、SPACE、TABである。 |
| TURN, SPC, SPACE, and TAB.
| |
|
| |
|
| In addition to command names, readline allows keys to be bound to a string that is inserted when
| | コマンド名に加えて、readlineでは、キーを押したときに挿入される文字列(マクロ)にキーをバインドすることができる。 |
| the key is pressed (a macro).
| |
|
| |
|
| === Readline Key Bindings === | | === Readline Key Bindings === |
| The syntax for controlling key bindings in the inputrc file is simple. All that is required is
| | inputrcファイルでキーバインドを制御する構文は簡単である。 必要なのは、コマンド名またはマクロのテキストと、それをバインドするキー配列だけである。 |
| the name of the command or the text of a macro and a key sequence to which it should be bound.
| | 名前は2つの方法で指定できる。1つはシンボリックなキー名で、Meta-またはControl-という接頭辞をつけることもできるし、もう1つはキー配列である。 |
| The name may be specified in one of two ways: as a symbolic key name, possibly with Meta- or Con‐
| |
| trol- prefixes, or as a key sequence.
| |
|
| |
|
| When using the form keyname:function-name or macro, keyname is the name of a key spelled out in
| | keyname:function-nameまたはmacroという形式を使う場合、keynameは英語で綴られたキーの名前である。 例えば: |
| English. For example:
| |
|
| |
|
| | <syntaxhighlight lang="bash"> |
| Control-u: universal-argument | | Control-u: universal-argument |
| Meta-Rubout: backward-kill-word | | Meta-Rubout: backward-kill-word |
| Control-o: "> output" | | Control-o: "> output" |
| | </syntaxhighlight> |
|
| |
|
| In the above example, C-u is bound to the function universal-argument, M-DEL is bound to the
| | 上記の例では、C-uは関数universal-argumentに、M-DELは関数backward-kill-wordに、C-oは右辺で表現されたマクロを実行する(つまり、テキスト``> output''を行に挿入する)ためにバインドされている。 |
| function backward-kill-word, and C-o is bound to run the macro expressed on the right hand side
| |
| (that is, to insert the text ``> output'' into the line).
| |
|
| |
|
| In the second form, "keyseq":function-name or macro, keyseq differs from keyname above in that
| | 2番目の形式である "keyseq":function-nameまたはmacroでは、keyseqは上記のkeynameとは異なり、キーシーケンス全体を表す文字列を二重引用符で囲んで指定することができる。 以下の例のように、GNU Emacsスタイルのキーエスケープを使うことができるが、記号文字名は認識されない。 |
| strings denoting an entire key sequence may be specified by placing the sequence within double
| |
| quotes. Some GNU Emacs style key escapes can be used, as in the following example, but the sym‐
| |
| bolic character names are not recognized.
| |
|
| |
|
| | <syntaxhighlight lang="bash"> |
| "\C-u": universal-argument | | "\C-u": universal-argument |
| "\C-x\C-r": re-read-init-file | | "\C-x\C-r": re-read-init-file |
| "\e[11~": "Function Key 1" | | "\e[11~": "Function Key 1" |
| | </syntaxhighlight> |
|
| |
|
| In this example, C-u is again bound to the function universal-argument. C-x C-r is bound to the
| | この例では、C-uは再び関数universal-argumentにバインドされている。 C-x C-rは関数re-read-init-fileに束縛され、<nowiki>ESC [ 1 1 ~</nowiki>はテキスト``Function Key 1''を挿入するために束縛される。 |
| function re-read-init-file, and ESC [ 1 1 ~ is bound to insert the text ``Function Key 1''.
| |
|
| |
|
| The full set of GNU Emacs style escape sequences is
| | GNU Emacsスタイルのエスケープシーケンス一式は以下の通りである。 |
| | <syntaxhighlight lang="bash"> |
| \C- control prefix | | \C- control prefix |
| \M- meta prefix | | \M- meta prefix |
Line 1,674: |
Line 1,373: |
| \" literal " | | \" literal " |
| \' literal ' | | \' literal ' |
| | </syntaxhighlight> |
|
| |
|
| In addition to the GNU Emacs style escape sequences, a second set of backslash escapes is avail‐
| | GNU Emacsスタイルのエスケープシーケンスに加えて、2つ目のバックスラッシュエスケープのセットが利用できる: |
| able:
| | <syntaxhighlight lang="bash"> |
| \a alert (bell) | | \a alert (bell) |
| \b backspace | | \b backspace |
Line 1,686: |
Line 1,386: |
| \v vertical tab | | \v vertical tab |
| \nnn the eight-bit character whose value is the octal value nnn (one to three digits) | | \nnn the eight-bit character whose value is the octal value nnn (one to three digits) |
| \xHH the eight-bit character whose value is the hexadecimal value HH (one or two hex | | \xHH the eight-bit character whose value is the hexadecimal value HH (one or two hex digits) |
| digits)
| | </syntaxhighlight> |
|
| |
|
| When entering the text of a macro, single or double quotes must be used to indicate a macro defi‐
| | マクロのテキストを入力する際には、マクロ定義を示すために一重引用符または二重引用符を使用しなければならない。 引用符で囲まれていないテキストは関数名とみなされる。 マクロ本文では、前述のバックスラッシュエスケープが展開される。 バックスラッシュは、" や ' を含め、マクロテキスト内の他の文字を引用符で囲む。 |
| nition. Unquoted text is assumed to be a function name. In the macro body, the backslash es‐
| |
| capes described above are expanded. Backslash will quote any other character in the macro text,
| |
| including " and '.
| |
|
| |
|
| Bash allows the current readline key bindings to be displayed or modified with the bind builtin
| | Bashでは、bind組み込みコマンドを使用して、現在のreadlineキーバインディングを表示または変更できる。 編集モードは、set builtinコマンドの-oオプションを使用することで、インタラクティブな使用中に切り替えることができる(後述の「[[#SHELL BUILTIN COMMANDS|SHELL BUILTIN COMMANDS ]]」を参照)。 |
| command. The editing mode may be switched during interactive use by using the -o option to the
| |
| set builtin command (see SHELL BUILTIN COMMANDS below).
| |
|
| |
|
| === Readline Variables === | | === Readline Variables === |
| Readline has variables that can be used to further customize its behavior. A variable may be set
| | Readlineには、その動作をさらにカスタマイズするために使用できる変数がある。 変数は、inputrcファイルに次のような形式で設定することができる。 |
| in the inputrc file with a statement of the form
| | :set variable-name value |
| | またはbind組み込みコマンドを使用する(下記の「[[#SHELL BUILTIN COMMANDS|SHELL BUILTIN COMMANDS ]]」を参照)。 |
|
| |
|
| set variable-name value
| | 注意書きがある場合を除き、readline変数は(大文字小文字を区別せずに)OnまたはOffの値を取ることができる。認識できない変数名は無視される。 変数の値が読み込まれるとき、空またはヌル値、"on"(大文字小文字を区別しない)、"1 "は On と等価である。 その他の値はすべて Off と同じである。変数とそのデフォルト値は以下の通りである: |
| or using the bind builtin command (see SHELL BUILTIN COMMANDS below).
| |
|
| |
|
| Except where noted, readline variables can take the values On or Off (without regard to case).
| | ;bell-style (audible) |
| Unrecognized variable names are ignored. When a variable value is read, empty or null values,
| | :readlineが端末のベルを鳴らそうとするときの動作を制御する。 noneに設定すると、readlineはベルを鳴らさない。 visible に設定すると、readline はベルがあればそれを使う。 audibleに設定すると、readlineは端末のベルを鳴らそうとする。 |
| "on" (case-insensitive), and "1" are equivalent to On. All other values are equivalent to Off.
| | ;bind-tty-special-chars (On) |
| The variables and their default values are:
| | :Onに設定すると、readlineは、カーネルの端末ドライバで特別に扱われる制御文字を、readlineに相当する文字にバインドしようとする。 |
| | | ;blink-matching-paren (Off) |
| bell-style (audible)
| | :Onに設定すると、readlineは、閉じ括弧が挿入されたときに、カーソルを開始括弧に短時間移動させようとする。 |
| Controls what happens when readline wants to ring the terminal bell. If set to none,
| | ;colored-completion-prefix (Off) |
| readline never rings the bell. If set to visible, readline uses a visible bell if one is
| | :Onに設定すると、補完候補を一覧表示する際に、readlineは補完候補の共通接頭辞を別の色で表示する。 色の定義は'''LS_COLORS'''環境変数の値から取られる。 |
| available. If set to audible, readline attempts to ring the terminal's bell.
| | ;colored-stats (Off) |
| bind-tty-special-chars (On)
| | :Onに設定すると、readlineは、ファイルの種類を示すために、可能性のある補完を異なる色で表示する。 色の定義は、'''LS_COLORS'''環境変数の値から取られる。 |
| If set to On, readline attempts to bind the control characters treated specially by the
| | ;comment-begin (``#'') |
| kernel's terminal driver to their readline equivalents.
| | :readline insert-commentコマンド実行時に挿入される文字列。 このコマンドはemacsモードではM-#に、viコマンドモードでは#にバインドされる。 |
| blink-matching-paren (Off)
| | ;completion-display-width (-1) |
| If set to On, readline attempts to briefly move the cursor to an opening parenthesis when
| | :補完を実行するときに、マッチする可能性のあるものを表示するために使われる画面の列数。この値が 0 より小さいか、端末の画面幅より大きい場合は無視される。 0を指定すると、マッチは1行に1つずつ表示される。 デフォルト値は -1 である。 |
| a closing parenthesis is inserted.
| | ;completion-ignore-case (Off) |
| colored-completion-prefix (Off)
| | :Onに設定すると、readlineは大文字小文字を区別せずにファイル名のマッチングと補完を行う。 |
| If set to On, when listing completions, readline displays the common prefix of the set of
| | ;completion-map-case (Off) |
| possible completions using a different color. The color definitions are taken from the
| | :Onに設定し、補完-大文字小文字を区別しないを有効にすると、大文字小文字を区別しないファイル名のマッチングと補完を行う際に、readlineはハイフン(-)とアンダースコア(_)を等価なものとして扱う。 |
| value of the LS_COLORS environment variable.
| | ;completion-prefix-display-length (0) |
| colored-stats (Off)
| | :補完可能リストをそのまま表示する場合の、共通接頭辞の文字数。 ゼロより大きい値に設定すると、この値より長い共通接頭辞は、可能な補完を表示する際に省略記号に置き換えられる。 |
| If set to On, readline displays possible completions using different colors to indicate
| | ;completion-query-items (100) |
| their file type. The color definitions are taken from the value of the LS_COLORS environ‐
| | :これは、possible-completionsコマンドによって生成された可能な完了の数の表示について、ユーザーに問い合わせがあったときに決定する。 0以上の任意の整数値を設定することができる。 可能な補完の数がこの変数の値以上であれば、readlineはユーザーがそれらを表示したいかどうかを尋ねる。 |
| ment variable.
| | ;convert-meta (On) |
| comment-begin (``#'')
| | :Onに設定すると、readlineは8ビット目が設定された文字をASCIIキーシーケンスに変換し、8ビット目を除去してエスケープ文字を先頭に付ける(事実上、エスケープをメタプレフィックスとして使用する)。 デフォルトはOnであるが、ロケールに8ビット文字が含まれている場合、readlineはこれをOffに設定する。 |
| The string that is inserted when the readline insert-comment command is executed. This
| | ;disable-completion (Off) |
| command is bound to M-# in emacs mode and to # in vi command mode.
| | :Onに設定すると、readlineは単語の補完を禁止する。 補完文字は、あたかも自己挿入にマップされているかのように行に挿入される。 |
| completion-display-width (-1)
| | ;echo-control-characters (On) |
| The number of screen columns used to display possible matches when performing completion.
| | :Onに設定すると、サポートしていることを示すオペレーティング・システム上で、readlineはキーボードから生成された信号に対応する文字をエコーする。 |
| The value is ignored if it is less than 0 or greater than the terminal screen width. A
| | ;editing-mode (emacs) |
| value of 0 will cause matches to be displayed one per line. The default value is -1.
| | :editing-modeはemacsかviのどちらかに設定できる。 |
| completion-ignore-case (Off)
| | ;emacs-mode-string (@) |
| If set to On, readline performs filename matching and completion in a case-insensitive
| | :show-mode-in-prompt変数が有効な場合、emacs編集モードが有効なとき、この文字列はプライマリプロンプトの最終行の直前に表示される。 この値はキーバインディングのように展開されるので、標準的なメタプレフィックスとコントロールプレフィックス、バックスラッシュエスケープシーケンスのセットが利用できる。 印刷されない文字のシーケンスの開始と終了には、"emacs1 "と "emacs2 "エスケープを使用し、端末制御シーケンスをモード文字列に埋め込むことができる。 |
| fashion.
| | ;enable-bracketed-paste (On) |
| completion-map-case (Off)
| | :Onに設定すると、readlineは、ペーストされた各文字をキーボードから読み込んだものとして扱うのではなく、1つの文字列として編集バッファに挿入できるように端末を設定する。 これにより、ペーストされた文字が編集コマンドとして解釈されるのを防ぐことができる。 |
| If set to On, and completion-ignore-case is enabled, readline treats hyphens (-) and un‐
| | ;enable-keypad (Off) |
| derscores (_) as equivalent when performing case-insensitive filename matching and comple‐
| | :Onに設定すると、readlineが呼び出されたときに、アプリケーションのキーパッドを有効にしようとする。システムによっては、矢印キーを有効にするためにこれが必要である。 |
| tion.
| | ;enable-meta-key (On) |
| completion-prefix-display-length (0)
| | :Onに設定すると、readlineが呼び出されたときに、端末がサポートしていると主張するメタ修飾キーを有効にしようとする。 多くの端末では、メタ・キーは8ビット文字の送信に使われる。 |
| The length in characters of the common prefix of a list of possible completions that is
| | ;expand-tilde (Off) |
| displayed without modification. When set to a value greater than zero, common prefixes
| | :Onに設定すると、readlineが単語補完を試みる際にチルダ展開が行われる。 |
| longer than this value are replaced with an ellipsis when displaying possible completions.
| | ;history-preserve-point (Off) |
| completion-query-items (100)
| | :Onに設定されている場合、ヒストリーコードは、previous-historyまたはnext-historyで検索された各ヒストリー行の同じ位置にポイントを配置しようとする。 |
| This determines when the user is queried about viewing the number of possible completions
| | ;history-size (unset) |
| generated by the possible-completions command. It may be set to any integer value greater
| | :履歴リストに保存される履歴エントリーの最大数を設定する。 ゼロに設定した場合、既存の履歴エントリーはすべて削除され、 新しいエントリーは保存されない。 ゼロ未満の値を設定すると、ヒストリエントリの数は制限されない。 デフォルトでは、ヒストリエントリ数はシェル変数HISTSIZEの値に設定される。 history-sizeに数値以外の値を設定しようとすると、ヒストリエントリの最大数は500に設定される。 |
| than or equal to zero. If the number of possible completions is greater than or equal to
| | ;horizontal-scroll-mode (Off) |
| the value of this variable, readline will ask whether or not the user wishes to view them;
| | :Onに設定すると、readlineは1行で表示するようになり、入力が画面幅より長くなると、改行するのではなく、画面1行で水平方向にスクロールするようになる。 この設定は、高さ1の端末では自動的に有効になる。 |
| otherwise they are simply listed on the terminal.
| | ;input-meta (Off) |
| convert-meta (On)
| | :Onに設定された場合、readlineは8ビット入力を有効にする(つまり、読み取った文字から8ビット目を取り除かない)。meta-flagという名前は、この変数の同義語である。 デフォルトはOffであるが、ロケールに8ビット文字が含まれている場合、readlineはこれをOnに設定する。 |
| If set to On, readline will convert characters with the eighth bit set to an ASCII key se‐
| | ;isearch-terminators <nowiki>(``C-[C-J'')</nowiki> |
| quence by stripping the eighth bit and prefixing an escape character (in effect, using es‐
| | :その文字をコマンドとして実行せずにインクリメンタルサーチを終了させる文字列。 この変数に値が与えられていない場合、文字 ESC と C-J がインクリメンタルサーチを終了する。 |
| cape as the meta prefix). The default is On, but readline will set it to Off if the lo‐
| | ;keymap (emacs) |
| cale contains eight-bit characters.
| | :現在のreadlineキーマップを設定する。 有効なキーマップ名は、emacs、emacs-standard、 emacs-meta、emacs-ctlx、vi、vi-command、vi-insertである。 デフォルト値はemacsである。editing-modeの値はデフォルトのキーマップにも影響する。 |
| disable-completion (Off)
| | ;keyseq-timeout (500) |
| If set to On, readline will inhibit word completion. Completion characters will be in‐
| | :曖昧なキーシーケンス(これまでに読み込まれた入力を使って完全なキーシーケンスを形成できるもの、または、より長いキーシーケンスを完成させるために追加入力を必要とするもの)を読み込む際に、readlineが文字を待つ時間を指定する。 タイムアウト時間内に入力がない場合、readlineは短いが完全なキーシーケンスを使用する。 値はミリ秒単位で指定されるので、1000という値は、readlineが追加入力を1秒待つことを意味する。 この変数に0以下の値、または数値以外の値が設定された場合、readlineは他のキーが押されるまで待ち、どのキーシーケンスを完了させるかを決定する。 |
| serted into the line as if they had been mapped to self-insert.
| | ;mark-directories (On) |
| echo-control-characters (On)
| | :Onに設定すると、完成したディレクトリ名にスラッシュが付加される。 |
| When set to On, on operating systems that indicate they support it, readline echoes a
| | ;mark-modified-lines (Off) |
| character corresponding to a signal generated from the keyboard.
| | :Onに設定すると、変更されたヒストリー行は、その前にアスタリスク(*)をつけて表示される。 |
| editing-mode (emacs)
| | ;mark-symlinked-directories (Off) |
| Controls whether readline begins with a set of key bindings similar to Emacs or vi. edit‐
| | :Onに設定すると、ディレクトリへのシンボリックリンクである完了した名前にスラッシュが付加される(mark-directoriesの値に従う)。 |
| ing-mode can be set to either emacs or vi.
| | ;match-hidden-files (On) |
| emacs-mode-string (@)
| | :この変数を On に設定すると、readline がファイル名補完を行うときに、ファイル名が `.' で始まるファイル (隠しファイル) にマッチするようになる。 Offに設定すると、補完するファイル名の先頭の `.' はユーザーが与えなければならない。 |
| If the show-mode-in-prompt variable is enabled, this string is displayed immediately be‐
| | ;menu-complete-display-prefix (Off) |
| fore the last line of the primary prompt when emacs editing mode is active. The value is
| | :Onに設定すると、メニュー補完は、リストを循環する前に、補完可能なリストの共通接頭辞(空でもよい)を表示する。 |
| expanded like a key binding, so the standard set of meta- and control prefixes and back‐
| | ;output-meta (Off) |
| slash escape sequences is available. Use the \1 and \2 escapes to begin and end sequences
| | :Onに設定すると、readlineはメタ接頭辞付きエスケープシーケンスとしてではなく、8ビット目が直接設定された文字を表示する。 デフォルトはOffであるが、ロケールに8ビット文字が含まれている場合、readlineはこれをOnに設定する。 |
| of non-printing characters, which can be used to embed a terminal control sequence into
| | ;page-completions (On) |
| the mode string.
| | :Onに設定すると、readlineは内部のmore-likeページャーを使って、一度に画面いっぱいの完了候補を表示する。 |
| enable-bracketed-paste (On)
| | ;print-completions-horizontally (Off) |
| When set to On, readline will configure the terminal in a way that will enable it to in‐
| | :Onに設定すると、readlineは、マッチした選手を画面の下ではなく、アルファベット順に水平にソートして表示する。 |
| sert each paste into the editing buffer as a single string of characters, instead of
| | ;revert-all-at-newline (Off) |
| treating each character as if it had been read from the keyboard. This can prevent pasted
| | :Onに設定すると、readlineはaccept-lineが実行されたときに戻る前に、履歴行のすべての変更を取り消す。 デフォルトでは、履歴行は変更される可能性があり、readlineの呼び出しにまたがって個々の取り消しリストを保持する。 |
| characters from being interpreted as editing commands.
| | ;show-all-if-ambiguous (Off) |
| enable-keypad (Off)
| | :これは補完関数のデフォルトの動作を変更する。 Onに設定すると、複数の補完候補がある単語は、ベルを鳴らす代わりに、マッチした単語を即座にリストアップする。 |
| When set to On, readline will try to enable the application keypad when it is called.
| | ;show-all-if-unmodified (Off) |
| Some systems need this to enable the arrow keys.
| | :これはshow-all-if-ambiguousに似た方法で、補完関数のデフォルトの動作を変更する。 Onに設定すると、部分補完の可能性がなく(補完の可能性が共通の接頭辞を持たない)、複数の補完の可能性がある単語は、ベルを鳴らす代わりに、マッチした単語を即座にリストアップする。 |
| enable-meta-key (On)
| | ;show-mode-in-prompt (Off) |
| When set to On, readline will try to enable any meta modifier key the terminal claims to
| | :Onに設定された場合、編集モードを示す文字列をプロンプトの先頭に追加する: emacs、viコマンド、vi挿入。 モード文字列は、ユーザー設定可能である(例えば、emacs-mode-string)。 |
| support when it is called. On many terminals, the meta key is used to send eight-bit
| | ;skip-completed-text (Off) |
| characters.
| | :Onに設定すると、単一一致を行に挿入する際のデフォルトの補完動作を変更する。 単語の途中で補完を行う場合にのみ有効である。 有効にすると、readlineは補完された文字が、補完された単語内のポイント以降の文字にマッチしても挿入しないので、カーソルに続く単語の一部が重複しない。 |
| expand-tilde (Off)
| | ;vi-cmd-mode-string ((cmd)) |
| If set to On, tilde expansion is performed when readline attempts word completion.
| | :show-mode-in-prompt変数が有効な場合、この文字列は、vi編集モードが有効でコマンドモードのとき、プライマリプロンプトの最終行の直前に表示される。 この値は、キーバインディングのように展開されるので、標準的なメタとコントロールの接頭辞とバックスラッシュエスケープシーケンスのセットが利用できる。 非印字文字のシーケンスの開始と終了には、"˶1 "と"˶2 "エスケープを使用する。"˶1 "と"˶2 "エスケープは、端末制御シーケンスをモード文字列に埋め込むために使用できる。 |
| history-preserve-point (Off)
| | ;vi-ins-mode-string ((ins)) |
| If set to On, the history code attempts to place point at the same location on each his‐
| | :show-mode-in-prompt変数が有効な場合、この文字列は、vi編集モードが有効で挿入モードのとき、主プロンプトの最終行の直前に表示される。 この値は、キーバインディングのように展開されるので、標準的なメタとコント ロール接頭辞のセットとバックスラッシュ・エスケープ・シーケンスが利用できる。 非印字文字のシーケンスの開始と終了には、ⅳ1とⅳ2エスケープを使用する。 |
| tory line retrieved with previous-history or next-history.
| | ;visible-stats (Off) |
| history-size (unset)
| | :On に設定すると、 [https://manpages.debian.org/unstable/manpages-dev/stat.2.en.html stat](2) が報告するファイルのタイプを示す文字が、 補完の可能性をリストする際にファイル名に付加される。 |
| Set the maximum number of history entries saved in the history list. If set to zero, any
| |
| existing history entries are deleted and no new entries are saved. If set to a value less
| |
| than zero, the number of history entries is not limited. By default, the number of his‐
| |
| tory entries is set to the value of the HISTSIZE shell variable. If an attempt is made to
| |
| set history-size to a non-numeric value, the maximum number of history entries will be set
| |
| to 500.
| |
| horizontal-scroll-mode (Off)
| |
| When set to On, makes readline use a single line for display, scrolling the input horizon‐
| |
| tally on a single screen line when it becomes longer than the screen width rather than
| |
| wrapping to a new line. This setting is automatically enabled for terminals of height 1.
| |
| input-meta (Off)
| |
| If set to On, readline will enable eight-bit input (that is, it will not strip the eighth
| |
| bit from the characters it reads), regardless of what the terminal claims it can support.
| |
| The name meta-flag is a synonym for this variable. The default is Off, but readline will
| |
| set it to On if the locale contains eight-bit characters.
| |
| isearch-terminators (``C-[C-J'')
| |
| The string of characters that should terminate an incremental search without subsequently
| |
| executing the character as a command. If this variable has not been given a value, the
| |
| characters ESC and C-J will terminate an incremental search.
| |
| keymap (emacs)
| |
| Set the current readline keymap. The set of valid keymap names is emacs, emacs-standard,
| |
| emacs-meta, emacs-ctlx, vi, vi-command, and vi-insert. vi is equivalent to vi-command;
| |
| emacs is equivalent to emacs-standard. The default value is emacs; the value of edit‐
| |
| ing-mode also affects the default keymap.
| |
| keyseq-timeout (500)
| |
| Specifies the duration readline will wait for a character when reading an ambiguous key
| |
| sequence (one that can form a complete key sequence using the input read so far, or can
| |
| take additional input to complete a longer key sequence). If no input is received within
| |
| the timeout, readline will use the shorter but complete key sequence. The value is speci‐
| |
| fied in milliseconds, so a value of 1000 means that readline will wait one second for ad‐
| |
| ditional input. If this variable is set to a value less than or equal to zero, or to a
| |
| non-numeric value, readline will wait until another key is pressed to decide which key se‐
| |
| quence to complete.
| |
| mark-directories (On)
| |
| If set to On, completed directory names have a slash appended.
| |
| mark-modified-lines (Off)
| |
| If set to On, history lines that have been modified are displayed with a preceding aster‐
| |
| isk (*).
| |
| mark-symlinked-directories (Off)
| |
| If set to On, completed names which are symbolic links to directories have a slash ap‐
| |
| pended (subject to the value of mark-directories).
| |
| match-hidden-files (On)
| |
| This variable, when set to On, causes readline to match files whose names begin with a `.'
| |
| (hidden files) when performing filename completion. If set to Off, the leading `.' must
| |
| be supplied by the user in the filename to be completed.
| |
| menu-complete-display-prefix (Off)
| |
| If set to On, menu completion displays the common prefix of the list of possible comple‐
| |
| tions (which may be empty) before cycling through the list.
| |
| output-meta (Off)
| |
| If set to On, readline will display characters with the eighth bit set directly rather
| |
| than as a meta-prefixed escape sequence. The default is Off, but readline will set it to
| |
| On if the locale contains eight-bit characters.
| |
| page-completions (On)
| |
| If set to On, readline uses an internal more-like pager to display a screenful of possible
| |
| completions at a time.
| |
| print-completions-horizontally (Off)
| |
| If set to On, readline will display completions with matches sorted horizontally in alpha‐
| |
| betical order, rather than down the screen.
| |
| revert-all-at-newline (Off)
| |
| If set to On, readline will undo all changes to history lines before returning when ac‐
| |
| cept-line is executed. By default, history lines may be modified and retain individual
| |
| undo lists across calls to readline.
| |
| show-all-if-ambiguous (Off)
| |
| This alters the default behavior of the completion functions. If set to On, words which
| |
| have more than one possible completion cause the matches to be listed immediately instead
| |
| of ringing the bell.
| |
| show-all-if-unmodified (Off)
| |
| This alters the default behavior of the completion functions in a fashion similar to
| |
| show-all-if-ambiguous. If set to On, words which have more than one possible completion
| |
| without any possible partial completion (the possible completions don't share a common
| |
| prefix) cause the matches to be listed immediately instead of ringing the bell.
| |
| show-mode-in-prompt (Off)
| |
| If set to On, add a string to the beginning of the prompt indicating the editing mode:
| |
| emacs, vi command, or vi insertion. The mode strings are user-settable (e.g.,
| |
| emacs-mode-string).
| |
| skip-completed-text (Off)
| |
| If set to On, this alters the default completion behavior when inserting a single match
| |
| into the line. It's only active when performing completion in the middle of a word. If
| |
| enabled, readline does not insert characters from the completion that match characters af‐
| |
| ter point in the word being completed, so portions of the word following the cursor are
| |
| not duplicated.
| |
| vi-cmd-mode-string ((cmd))
| |
| If the show-mode-in-prompt variable is enabled, this string is displayed immediately be‐
| |
| fore the last line of the primary prompt when vi editing mode is active and in command
| |
| mode. The value is expanded like a key binding, so the standard set of meta- and control
| |
| prefixes and backslash escape sequences is available. Use the \1 and \2 escapes to begin
| |
| and end sequences of non-printing characters, which can be used to embed a terminal con‐
| |
| trol sequence into the mode string.
| |
| vi-ins-mode-string ((ins))
| |
| If the show-mode-in-prompt variable is enabled, this string is displayed immediately be‐
| |
| fore the last line of the primary prompt when vi editing mode is active and in insertion
| |
| mode. The value is expanded like a key binding, so the standard set of meta- and control
| |
| prefixes and backslash escape sequences is available. Use the \1 and \2 escapes to begin
| |
| and end sequences of non-printing characters, which can be used to embed a terminal con‐
| |
| trol sequence into the mode string.
| |
| visible-stats (Off)
| |
| If set to On, a character denoting a file's type as reported by stat(2) is appended to the
| |
| filename when listing possible completions.
| |
|
| |
|
| === Readline Conditional Constructs === | | === Readline Conditional Constructs === |
| Readline implements a facility similar in spirit to the conditional compilation features of the C
| | Readlineは、Cプリプロセッサの条件付きコンパイル機能に似た機能を実装しており、テストの結果としてキーバインディングや変数設定を実行することができる。 使用されるパーサ・ディレクティブは4つある。 |
| preprocessor which allows key bindings and variable settings to be performed as the result of
| |
| tests. There are four parser directives used.
| |
|
| |
|
| $if The $if construct allows bindings to be made based on the editing mode, the terminal being
| | ;$if |
| used, or the application using readline. The text of the test, after any comparison oper‐
| | :$if構文では、編集モード、使用中の端末、readlineを使用するアプリケーションに 基づいてバインディングを行うことができる。 比較演算子の後のテスト・テキストは行末まで続く。 |
| ator,
| |
| extends to the end of the line; unless otherwise noted, no characters are required to
| |
| isolate it.
| |
|
| |
|
| mode The mode= form of the $if directive is used to test whether readline is in emacs or
| | :;mode |
| vi mode. This may be used in conjunction with the set keymap command, for in‐
| | ::ifディレクティブのmode=は、readlineがemacsモードかviモードかをテストするために使われる。 これは、例えば、readlineがemacsモードで起動している場合にのみ、emacs-standardとemacs-ctlxのキーマップのバインディングを設定するために、set keymapコマンドと組み合わせて使用することができる。 |
| stance, to set bindings in the emacs-standard and emacs-ctlx keymaps only if read‐
| |
| line is starting out in emacs mode.
| |
|
| |
|
| term The term= form may be used to include terminal-specific key bindings, perhaps to
| | :;term |
| bind the key sequences output by the terminal's function keys. The word on the
| | ::term=形式は、端末固有のキーバインディングを含めるために使用される。おそらく、 端末のファンクションキーが出力するキーシーケンスをバインドするためであろう。 の右側の単語は、端末のフルネームと、端末名の最初の - より前の部分の両方に対してテストされる。 これにより、例えばsunはsunとsun-cmdの両方にマッチする。 |
| right side of the = is tested against both the full name of the terminal and the
| |
| portion of the terminal name before the first -. This allows sun to match both sun
| |
| and sun-cmd, for instance.
| |
|
| |
|
| version
| | :;version |
| The version test may be used to perform comparisons against specific readline ver‐
| | ::バージョン・テストは、特定のリードライン・バージョンとの比較を実行するために使用することができる。 バージョンは現在のリードラインバージョンに展開される。 比較演算子のセットには、=、(と==)、<nowiki>!=、<=、>=、<、></nowiki>がある。 演算子の右側に与えられるバージョン番号は、メジャーバージョン番号、オプションの小数点、オプションのマイナーバージョン(例えば、7.1)から構成される。マイナーバージョンが省略された場合、それは0であると仮定される。演算子は、文字列バージョンと空白によってバージョン番号の引数から分離することができる。 |
| sions. The version expands to the current readline version. The set of comparison
| |
| operators includes =, (and ==), !=, <=, >=, <, and >. The version number supplied
| |
| on the right side of the operator consists of a major version number, an optional
| |
| decimal point, and an optional minor version (e.g., 7.1). If the minor version is
| |
| omitted, it is assumed to be 0. The operator may be separated from the string ver‐
| |
| sion and from the version number argument by whitespace.
| |
| | |
| application
| |
| The application construct is used to include application-specific settings. Each
| |
| program using the readline library sets the application name, and an initialization
| |
| file can test for a particular value. This could be used to bind key sequences to
| |
| functions useful for a specific program. For instance, the following command adds
| |
| a key sequence that quotes the current or previous word in bash:
| |
|
| |
|
| | :;application |
| | ::アプリケーション構文は、アプリケーション固有の設定を含めるために使用される。 readlineライブラリを使用する各プログラムはアプリケーション名を設定し、初期化ファイルは特定の値をテストすることができる。 これを利用して、キー・シーケンスを特定のプログラムにとって有用な関数にバインドすることができる。 例えば、次のコマンドは、bashで現在または前の単語を引用するキーシーケンスを追加する: |
| | <syntaxhighlight lang="bash"> |
| $if Bash | | $if Bash |
| # Quote the current or previous word | | # Quote the current or previous word |
| "\C-xq": "\eb\"\ef\"" | | "\C-xq": "\eb\"\ef\"" |
| $endif | | $endif |
| | </syntaxhighlight> |
|
| |
|
| variable
| | :;variable |
| The variable construct provides simple equality tests for readline variables and
| | ::変数構文は、readline変数と値の簡単な等値テストを提供する。 変数名と比較演算子は空白で区切られ、演算子と右辺の値は空白で区切ることができる。 文字列変数もブーリアン変数もテストすることができる。ブール変数は、onとoffの値に対してテストされなければならない。 |
| values. The permitted comparison operators are =, ==, and !=. The variable name
| |
| must be separated from the comparison operator by whitespace; the operator may be
| |
| separated from the value on the right hand side by whitespace. Both string and
| |
| boolean variables may be tested. Boolean variables must be tested against the val‐
| |
| ues on and off.
| |
| | |
| $endif This command, as seen in the previous example, terminates an $if command.
| |
|
| |
|
| $else Commands in this branch of the $if directive are executed if the test fails.
| | ;$endif |
| | :このコマンドは、前の例で見たように、$ifコマンドを終了させる。 |
|
| |
|
| $include
| | ;$else |
| This directive takes a single filename as an argument and reads commands and bindings from
| | :$ifディレクティブのこのブランチにあるコマンドは、テストが失敗した場合に実行される。 |
| that file. For example, the following directive would read /etc/inputrc:
| |
|
| |
|
| | ;$include |
| | :このディレクティブは1つのファイル名を引数として取り、そのファイルからコマンドとバインディングを読み込む。 例えば、以下のディレクティブは/etc/inputrcを読み込む: |
| | <syntaxhighlight lang="bash"> |
| $include /etc/inputrc | | $include /etc/inputrc |
| | </syntaxhighlight> |
|
| |
|
| === Searching === | | === Searching === |
| Readline provides commands for searching through the command history (see HISTORY below) for
| | Readlineは、指定した文字列を含む行をコマンド履歴(下記の[[#HISTORY|HISTORY ]]を参照)から検索するためのコマンドを提供する。 インクリメンタルとノンインクリメンタルという2つの検索モードがある。 |
| lines containing a specified string. There are two search modes: incremental and non-incremen‐
| |
| tal.
| |
|
| |
|
| Incremental searches begin before the user has finished typing the search string. As each char‐
| | インクリメンタル検索は、ユーザーが検索文字列を入力し終わる前に開始される。 検索文字列が1文字入力されるごとに、readlineは、これまでに入力された文字列と一致する履歴の次のエントリーを表示する。 インクリメンタルサーチでは、目的の履歴項目を見つけるのに必要な文字数だけ検索を行う。 isearch-terminators変数の値に含まれる文字は、インクリメンタルサーチを終了するために使われる。 この変数に値が割り当てられていない場合、EscapeとControl-J文字がインクリメンタルサーチを終了させる。 Control-G はインクリメンタルサーチを中止し、元の行に戻す。 検索が終了すると、検索文字列を含むヒストリエントリがカレント行になる。 |
| acter of the search string is typed, readline displays the next entry from the history matching
| |
| the string typed so far. An incremental search requires only as many characters as needed to
| |
| find the desired history entry. The characters present in the value of the isearch-terminators
| |
| variable are used to terminate an incremental search. If that variable has not been assigned a
| |
| value the Escape and Control-J characters will terminate an incremental search. Control-G will
| |
| abort an incremental search and restore the original line. When the search is terminated, the
| |
| history entry containing the search string becomes the current line.
| |
|
| |
|
| To find other matching entries in the history list, type Control-S or Control-R as appropriate.
| | ヒストリリストで他の一致するエントリを検索するには、Control-SまたはControl-Rを入力する。これにより、ヒストリを後方または前方に検索し、これまでに入力された検索文字列に一致する次のエントリーを探す。 リードラインコマンドにバインドされている他のキー・シーケンスは、検索を終了し、そのコマンドを実行する。 例えば、改行は検索を終了し、その行を受け入れ、履歴リストからコマンドを実行する。 |
| This will search backward or forward in the history for the next entry matching the search string
| |
| typed so far. Any other key sequence bound to a readline command will terminate the search and
| |
| execute that command. For instance, a newline will terminate the search and accept the line,
| |
| thereby executing the command from the history list.
| |
|
| |
|
| Readline remembers the last incremental search string. If two Control-Rs are typed without any
| | Readlineは最後のインクリメンタルな検索文字列を記憶している。 新しい検索文字列を定義する文字を挟まずにControl-Rが2つ入力された場合、記憶された検索文字列が使用される。 |
| intervening characters defining a new search string, any remembered search string is used.
| |
|
| |
|
| Non-incremental searches read the entire search string before starting to search for matching
| | 非インクリメンタル検索では、一致する履歴行の検索を開始する前に、検索文字列全体を読み込む。 検索文字列は、ユーザーが入力することもできるし、現在の行の内容の一部であることもできる。 |
| history lines. The search string may be typed by the user or be part of the contents of the cur‐
| |
| rent line.
| |
|
| |
|
| === Readline Command Names === | | === Readline Command Names === |
| The following is a list of the names of the commands and the default key sequences to which they
| | 以下は、コマンド名と、それらがバインドされるデフォルトのキー配列のリストである。 キー・シーケンスが付属していないコマンド名は、デフォルトではバインドされていない。 以下の説明では、pointは現在のカーソル位置を指し、markはset-markコマンドによって保存されたカーソル位置を指す。 ポイントとマークの間のテキストは領域と呼ばれる。 |
| are bound. Command names without an accompanying key sequence are unbound by default. In the
| |
| following descriptions, point refers to the current cursor position, and mark refers to a cursor
| |
| position saved by the set-mark command. The text between the point and mark is referred to as
| |
| the region.
| |
|
| |
|
| Commands for Moving
| | 移動のためのコマンド |
| beginning-of-line (C-a)
| | ;beginning-of-line (C-a) |
| Move to the start of the current line.
| | :現在の行の先頭に移動する。 |
| end-of-line (C-e)
| | ;end-of-line (C-e) |
| Move to the end of the line.
| | :最後尾に移動する。 |
| forward-char (C-f)
| | ;forward-char (C-f) |
| Move forward a character.
| | :キャラクターを進める。 |
| backward-char (C-b)
| | ;backward-char (C-b) |
| Move back a character.
| | :キャラクターを後退させる。 |
| forward-word (M-f)
| | ;forward-word (M-f) |
| Move forward to the end of the next word. Words are composed of alphanumeric characters
| | :次の単語の最後に進む。 単語は英数字で構成される (letters and digits). |
| (letters and digits).
| | ;backward-word (M-b) |
| backward-word (M-b)
| | :現在または前の単語の先頭に戻る。 単語は英数字(文字と数字)で構成される。 |
| Move back to the start of the current or previous word. Words are composed of alphanu‐
| | ;shell-forward-word |
| meric characters (letters and digits).
| | :次の単語の最後に進む。 単語は引用符で囲まれていないシェルのメタ文字で区切られる。 |
| shell-forward-word
| | ;shell-backward-word |
| Move forward to the end of the next word. Words are delimited by non-quoted shell
| | :現在または前の単語の先頭に戻る。 単語は引用符で囲まれていないシェルのメタ文字で区切られる。 |
| metacharacters.
| | ;previous-screen-line |
| shell-backward-word
| | :pointを、前の物理的画面行の同じ物理的画面列に移動しようとする。これは、現在のReadline行が1行以上の物理的な行を占めない場合や、 pointがプロンプトの長さにスクリーンの幅を加えた長さより大きくない場合には、望ましい効果をもたらさない。 |
| Move back to the start of the current or previous word. Words are delimited by non-quoted
| | ;next-screen-line |
| shell metacharacters.
| | :次の物理的なスクリーン行の同じ物理的なスクリーン列に点を移動しようとする。これは、現在の行が1行以上の物理的な行を占めない場合や、現在の行の長さがプロンプトの長さに画面の幅を足した長さより大きくない場合には、望ましい効果をもたらさない。 |
| previous-screen-line
| | ;clear-display (M-C-l) |
| Attempt to move point to the same physical screen column on the previous physical screen
| | :画面と、可能なら端末のスクロールバックバッファをクリアし、現在の行を画面の一番上に残して再描画する。 |
| line. This will not have the desired effect if the current Readline line does not take up
| | ;clear-screen (C-l) |
| more than one physical line or if point is not greater than the length of the prompt plus
| | :画面をクリアし、現在の行を画面の一番上に残して再描画する。 引数を指定すると、画面をクリアせずに現在の行を更新する。 |
| the screen width.
| | ;redraw-current-line |
| next-screen-line
| | :現在の行を更新する。 |
| Attempt to move point to the same physical screen column on the next physical screen line.
| |
| This will not have the desired effect if the current Readline line does not take up more
| |
| than one physical line or if the length of the current Readline line is not greater than
| |
| the length of the prompt plus the screen width.
| |
| clear-display (M-C-l)
| |
| Clear the screen and, if possible, the terminal's scrollback buffer, then redraw the cur‐
| |
| rent line, leaving the current line at the top of the screen.
| |
| clear-screen (C-l)
| |
| Clear the screen, then redraw the current line, leaving the current line at the top of the
| |
| screen. With an argument, refresh the current line without clearing the screen.
| |
| redraw-current-line
| |
| Refresh the current line.
| |
|
| |
|
| === Commands for Manipulating the History === | | === Commands for Manipulating the History === |
| accept-line (Newline, Return)
| | ;accept-line (Newline, Return) |
| Accept the line regardless of where the cursor is. If this line is non-empty, add it to
| | :カーソルがどこにあっても、その行を受け入れる。 この行が空行でない場合は、HISTCONTROL変数の状態に従って履歴リストに追加する。 その行が変更された履歴行であれば、履歴行を元の状態に戻す。 |
| the history list according to the state of the HISTCONTROL variable. If the line is a
| | ;previous-history (C-p) |
| modified history line, then restore the history line to its original state.
| | :履歴リストから前のコマンドを取得し、リスト内に戻る。 |
| previous-history (C-p)
| | ;next-history (C-n) |
| Fetch the previous command from the history list, moving back in the list.
| | :履歴リストから次のコマンドを取得し、リストを進める。 |
| next-history (C-n)
| | ;beginning-of-history <nowiki>(M-<)</nowiki> |
| Fetch the next command from the history list, moving forward in the list.
| | :履歴の最初の行に移動する。 |
| beginning-of-history (M-<)
| | ;end-of-history <nowiki>(M->)</nowiki> |
| Move to the first line in the history.
| | :入力履歴の最後、つまり現在入力中の行に移動する。 |
| end-of-history (M->)
| | ;reverse-search-history (C-r) |
| Move to the end of the input history, i.e., the line currently being entered.
| | :現在の行から後方へ検索し、必要に応じて履歴を「上」へ移動する。 This is an incremental search. |
| reverse-search-history (C-r)
| | ;forward-search-history (C-s) |
| Search backward starting at the current line and moving `up' through the history as neces‐
| | :現在の行から前方へ検索を開始し、必要に応じて履歴を`下へ'移動する。 これはインクリメンタルサーチである。 |
| sary. This is an incremental search.
| | ;non-incremental-reverse-search-history (M-p) |
| forward-search-history (C-s)
| | :ユーザーが指定した文字列を非インクリメンタルサーチで検索し、現在の行から始まる履歴を後方へ検索する。 |
| Search forward starting at the current line and moving `down' through the history as nec‐
| | ;non-incremental-forward-search-history (M-n) |
| essary. This is an incremental search.
| | :ユーザーが指定した文字列を非インクリメンタル検索で履歴から前方に検索する。 |
| non-incremental-reverse-search-history (M-p)
| | ;history-search-forward |
| Search backward through the history starting at the current line using a non-incremental
| | :現在の行の先頭からポイントまでの文字列を履歴から前方に検索する。 これは非インクリメンタルサーチである。 |
| search for a string supplied by the user.
| | ;history-search-backward |
| non-incremental-forward-search-history (M-n)
| | :現在の行の先頭からポイントまでの間の文字列を、履歴を遡って検索する。 これは非インクリメンタルサーチである。 |
| Search forward through the history using a non-incremental search for a string supplied by
| | ;history-substring-search-backward |
| the user.
| | :現在の行の先頭から現在のカーソル位置(ポイント)までの間の文字列を、ヒストリを後方に検索する。 検索文字列はヒストリ行のどこにマッチしてもよい。 これは非インクリメンタルサーチである。 |
| history-search-forward
| | ;history-substring-search-forward |
| Search forward through the history for the string of characters between the start of the
| | :現在の行の先頭からポイントまでの間の文字列を、履歴の前方から検索する。 検索文字列は、履歴行のどこにマッチしてもよい。 これは非インクリメンタルサーチである。 |
| current line and the point. This is a non-incremental search.
| | ;yank-nth-arg (M-C-y) |
| history-search-backward
| | :前のコマンドの最初の引数(通常は前の行の2番目の単語)を point に挿入する。 引数nで、前のコマンドからn番目の単語を挿入する(前のコマンドの単語は単語0から始まる)。 負の引数を指定すると、前のコマンドの最後からn番目の単語が挿入される。 引数nが計算されると、"!n "履歴展開が指定されたかのように、引数が抽出される。 |
| Search backward through the history for the string of characters between the start of the
| | ;yank-last-arg (M-., M-_) |
| current line and the point. This is a non-incremental search.
| | :直前のコマンドの最後の引数(直前の履歴エントリーの最後の単語)を挿入する。 数値引数では、yank-nth-argとまったく同じように動作する。 yank-last-argを連続して呼び出すと、履歴リスト内を遡り、各行の最後の単語(または最初の呼び出しの引数で指定された単語)を順番に挿入する。 これらの連続した呼び出しに与えられる数値引数は、履歴を進む方向を決定する。負の引数は、履歴を進む方向(戻るまたは進む)を切り替える。 ヒストリ展開機能は、"!$"ヒストリ展開が指定されたかのように、最後の単語を抽出するために使用される。 |
| history-substring-search-backward
| | ;shell-expand-line (M-C-e) |
| Search backward through the history for the string of characters between the start of the
| | :シェルが行うように行を展開する。 これは、シェルのすべての単語展開と同様に、エイリアス展開とヒストリ展開を行う。 ヒストリ展開の説明については、後述の [[#HISTORY EXPANSION|HISTORY EXPANSION ]] を参照のこと。 |
| current line and the current cursor position (the point). The search string may match
| | ;history-expand-line (M-^) |
| anywhere in a history line. This is a non-incremental search.
| | :現在の行のヒストリ拡張を行う。 ヒストリ拡張の説明については、以下の「ヒストリ拡張」を参照のこと。 |
| history-substring-search-forward
| | ;magic-space |
| Search forward through the history for the string of characters between the start of the
| | :現在の行にヒストリ拡張を行い、スペースを挿入する。 ヒストリ展開の説明については、以下の「[[#HISTORY EXPANSION|HISTORY EXPANSION ]]」を参照のこと。 |
| current line and the point. The search string may match anywhere in a history line. This
| | ;alias-expand-line |
| is a non-incremental search.
| | :現在の行でエイリアスの展開を行う。 エイリアスの展開については、上記のALIASESを参照のこと。 |
| yank-nth-arg (M-C-y)
| | ;history-and-alias-expand-line |
| Insert the first argument to the previous command (usually the second word on the previous
| | :現在の行の履歴とエイリアスの展開を行う。 |
| line) at point. With an argument n, insert the nth word from the previous command (the
| | ;insert-last-argument (M-., M-_) |
| words in the previous command begin with word 0). A negative argument inserts the nth
| | :yank-last-argの同義語。 |
| word from the end of the previous command. Once the argument n is computed, the argument
| | ;operate-and-get-next (C-o) |
| is extracted as if the "!n" history expansion had been specified.
| | :現在行を受け取って実行し、現在行に相対する次の行をヒストリから取得して編集する。 数値引数が与えられていれば、現在行の代わりに使用する履歴エントリを指定する。 |
| yank-last-arg (M-., M-_)
| | ;edit-and-execute-command (C-x C-e) |
| Insert the last argument to the previous command (the last word of the previous history
| | :現在のコマンドラインでエディタを起動し、その結果をシェルコマンドとして実行する。Bashは、$VISUAL、$EDITOR、emacsの順にエディタとして起動しようとする。 |
| entry). With a numeric argument, behave exactly like yank-nth-arg. Successive calls to
| |
| yank-last-arg move back through the history list, inserting the last word (or the word
| |
| specified by the argument to the first call) of each line in turn. Any numeric argument
| |
| supplied to these successive calls determines the direction to move through the history.
| |
| A negative argument switches the direction through the history (back or forward). The
| |
| history expansion facilities are used to extract the last word, as if the "!$" history ex‐
| |
| pansion had been specified.
| |
| shell-expand-line (M-C-e)
| |
| Expand the line as the shell does. This performs alias and history expansion as well as
| |
| all of the shell word expansions. See HISTORY EXPANSION below for a description of his‐
| |
| tory expansion.
| |
| history-expand-line (M-^)
| |
| Perform history expansion on the current line. See HISTORY EXPANSION below for a descrip‐
| |
| tion of history expansion.
| |
| magic-space
| |
| Perform history expansion on the current line and insert a space. See HISTORY EXPANSION
| |
| below for a description of history expansion.
| |
| alias-expand-line
| |
| Perform alias expansion on the current line. See ALIASES above for a description of alias
| |
| expansion.
| |
| history-and-alias-expand-line
| |
| Perform history and alias expansion on the current line.
| |
| insert-last-argument (M-., M-_)
| |
| A synonym for yank-last-arg.
| |
| operate-and-get-next (C-o)
| |
| Accept the current line for execution and fetch the next line relative to the current line
| |
| from the history for editing. A numeric argument, if supplied, specifies the history en‐
| |
| try to use instead of the current line.
| |
| edit-and-execute-command (C-x C-e)
| |
| Invoke an editor on the current command line, and execute the result as shell commands.
| |
| Bash attempts to invoke $VISUAL, $EDITOR, and emacs as the editor, in that order.
| |
|
| |
|
| === Commands for Changing Text === | | === Commands for Changing Text === |
| end-of-file (usually C-d)
| | ;end-of-file (usually C-d) |
| The character indicating end-of-file as set, for example, by ``stty''. If this character
| | :’’stty''などで設定されているファイル終了を示す文字である。 行に文字がなく、pointが行頭にあるときにこの文字が読み込まれると、 Readlineはこれを入力の終わりと解釈し、EOFを返す。 |
| is read when there are no characters on the line, and point is at the beginning of the
| | ;delete-char (C-d) |
| line, Readline interprets it as the end of input and returns EOF.
| | :pointの文字を削除する。 C-dが一般的であるように、この関数がttyのEOF文字と同じ文字にバインドされている場合、その影響については上記を参照のこと。 |
| delete-char (C-d)
| | ;backward-delete-char (Rubout) |
| Delete the character at point. If this function is bound to the same character as the tty
| | :カーソルの後ろの文字を削除する。 数値引数が与えられた場合、削除したテキストをキルリングに保存する。 |
| EOF character, as C-d commonly is, see above for the effects.
| | ;forward-backward-delete-char |
| backward-delete-char (Rubout)
| | :カーソルが行末にある場合を除き、カーソルの下にある文字を削除する。 |
| Delete the character behind the cursor. When given a numeric argument, save the deleted
| | ;quoted-insert (C-q, C-v) |
| text on the kill ring.
| | :入力された次の文字をそのまま行に追加する。 これは、例えばC-qのような文字を挿入する方法である。 |
| forward-backward-delete-char
| | ;tab-insert (C-v TAB) |
| Delete the character under the cursor, unless the cursor is at the end of the line, in
| | :タブ文字を挿入する。 |
| which case the character behind the cursor is deleted.
| | ;self-insert (a, b, A, 1, !, ...) |
| quoted-insert (C-q, C-v)
| | :入力された文字を挿入する。 |
| Add the next character typed to the line verbatim. This is how to insert characters like
| | ;transpose-chars (C-t) |
| C-q, for example.
| | :pointの前の文字をpointの文字の上にドラッグし、pointも前に移動させる。 pointが行末にある場合、pointの前の2文字を転置する。 負の引数は効果がない。 |
| tab-insert (C-v TAB)
| | ;transpose-words (M-t) |
| Insert a tab character.
| | :pointの前の単語をドラッグして、pointの後の単語の上にpointを移動させる。pointが行末にある場合は、行末の2つの単語を入れ替える。 |
| self-insert (a, b, A, 1, !, ...)
| | ;upcase-word (M-u) |
| Insert the character typed.
| | :現在の(またはそれに続く)単語を大文字にする。 負の引数を指定すると、前の単語を大文字にするが、pointは移動しない。 |
| transpose-chars (C-t)
| | ;downcase-word (M-l) |
| Drag the character before point forward over the character at point, moving point forward
| | :現在の(またはそれに続く)単語を小文字にする。 負の引数を指定すると、前の単語を小文字にするが、pointは移動しない。 |
| as well. If point is at the end of the line, then this transposes the two characters be‐
| | ;capitalize-word (M-c) |
| fore point. Negative arguments have no effect.
| | :現在の(または次の)単語を大文字にする。 否定引数では、前の単語を大文字にするが、pointは動かさない。 |
| transpose-words (M-t)
| | ;overwrite-mode |
| Drag the word before point past the word after point, moving point over that word as well.
| | :上書きモードを切り替える。 明示的な正の数値引数を指定すると、上書きモードに切り替わる。 正でない数値引数を指定すると、挿入モードに切り替わる。 このコマンドはemacsモードにのみ影響する。 readline()の各呼び出しは、insertモードで始まる。 overwriteモードでは、self-insertに束縛された文字は、テキストを右に押し出すのではなく、その位置でテキストを置き換える。 backward-delete-charにバインドされた文字は、pointの前の文字をスペースに置き換える。 デフォルトでは、このコマンドはバインドされていない。 |
| If point is at the end of the line, this transposes the last two words on the line.
| |
| upcase-word (M-u)
| |
| Uppercase the current (or following) word. With a negative argument, uppercase the previ‐
| |
| ous word, but do not move point.
| |
| downcase-word (M-l)
| |
| Lowercase the current (or following) word. With a negative argument, lowercase the previ‐
| |
| ous word, but do not move point.
| |
| capitalize-word (M-c)
| |
| Capitalize the current (or following) word. With a negative argument, capitalize the pre‐
| |
| vious word, but do not move point.
| |
| overwrite-mode
| |
| Toggle overwrite mode. With an explicit positive numeric argument, switches to overwrite
| |
| mode. With an explicit non-positive numeric argument, switches to insert mode. This com‐
| |
| mand affects only emacs mode; vi mode does overwrite differently. Each call to readline()
| |
| starts in insert mode. In overwrite mode, characters bound to self-insert replace the
| |
| text at point rather than pushing the text to the right. Characters bound to back‐
| |
| ward-delete-char replace the character before point with a space. By default, this com‐
| |
| mand is unbound.
| |
|
| |
|
| === Killing and Yanking === | | === Killing and Yanking === |
| kill-line (C-k)
| | ;kill-line (C-k) |
| Kill the text from point to the end of the line.
| | :pointから行末までのテキストをキルする。 |
| backward-kill-line (C-x Rubout)
| | ;backward-kill-line (C-x Rubout) |
| Kill backward to the beginning of the line.
| | :ラインの先頭までキルバックする。 |
| unix-line-discard (C-u)
| | ;unix-line-discard (C-u) |
| Kill backward from point to the beginning of the line. The killed text is saved on the
| | :pointから行頭まで後方にキルする。 キルされたテキストはキルリングに保存される。 |
| kill-ring.
| | ;kill-whole-line |
| kill-whole-line
| | :現在行のすべての文字を、ポイントがどこであろうと殺す。 |
| Kill all characters on the current line, no matter where point is.
| | ;kill-word (M-d) |
| kill-word (M-d)
| | :pointから現在の単語の終わりまで、または単語と単語の間の場合は次の単語の終わりまでをキルする。 単語の境界はforward-wordで使われるものと同じである。 |
| Kill from point to the end of the current word, or if between words, to the end of the
| | ;backward-kill-word (M-Rubout) |
| next word. Word boundaries are the same as those used by forward-word.
| | :後ろの単語を殺す。 単語の境界線はbackward-wordで使われるものと同じである。 |
| backward-kill-word (M-Rubout)
| | ;shell-kill-word |
| Kill the word behind point. Word boundaries are the same as those used by backward-word.
| | :pointから現在の単語の終わりまで、または単語と単語の間の場合は次の単語の終わりまでをキルする。 単語の境界は、shell-forward-wordで使われるものと同じである。 |
| shell-kill-word
| | ;shell-backward-kill-word |
| Kill from point to the end of the current word, or if between words, to the end of the
| | :pointの後ろの単語を消す。 単語の境界はshell-backward-wordで使われるものと同じである。 |
| next word. Word boundaries are the same as those used by shell-forward-word.
| | ;unix-word-rubout (C-w) |
| shell-backward-kill-word
| | :空白を単語の境界として、pointの後ろの単語を殺す。 キルされたテキストはキルリングに保存される。 |
| Kill the word behind point. Word boundaries are the same as those used by shell-back‐
| | ;unix-filename-rubout |
| ward-word.
| | :空白文字とスラッシュ文字を単語の境界として、pointの後ろの単語を消す。 キルされたテキストはキルリングに保存される。 |
| unix-word-rubout (C-w)
| | ;delete-horizontal-space (M-\) |
| Kill the word behind point, using white space as a word boundary. The killed text is
| | :pointの周りのスペースとタブをすべて削除する。 |
| saved on the kill-ring.
| | ;kill-region |
| unix-filename-rubout
| | :現在の領域のテキストを消す。 |
| Kill the word behind point, using white space and the slash character as the word bound‐
| | ;copy-region-as-kill |
| aries. The killed text is saved on the kill-ring.
| | :領域内のテキストをキルバッファにコピーする。 |
| delete-horizontal-space (M-\)
| | ;copy-backward-word |
| Delete all spaces and tabs around point.
| | :point前のワードをキルバッファにコピーする。 ワード境界はバックワードワードと同じである。 |
| kill-region
| | ;copy-forward-word |
| Kill the text in the current region.
| | :ワードに続く点をキルバッファにコピーする。 ワード境界はforward-wordと同じである。 |
| copy-region-as-kill
| | ;yank (C-y) |
| Copy the text in the region to the kill buffer.
| | :キリング上部をバッファーの中に引き込む。 |
| copy-backward-word
| | ;yank-pop (M-y) |
| Copy the word before point to the kill buffer. The word boundaries are the same as back‐
| | :キルリングを回転させ、新しいトップをヤンクする。 ヤンクまたはヤンクポップに続いてのみ機能する。 |
| ward-word.
| |
| copy-forward-word
| |
| Copy the word following point to the kill buffer. The word boundaries are the same as
| |
| forward-word.
| |
| yank (C-y)
| |
| Yank the top of the kill ring into the buffer at point.
| |
| yank-pop (M-y)
| |
| Rotate the kill ring, and yank the new top. Only works following yank or yank-pop.
| |
|
| |
|
| === Numeric Arguments === | | === Numeric Arguments === |
| digit-argument (M-0, M-1, ..., M--)
| | ;digit-argument (M-0, M-1, ..., M--) |
| Add this digit to the argument already accumulating, or start a new argument. M-- starts
| | :既に蓄積されている引数にこの桁を追加するか、新しい引数を開始する。 M--負の引数を開始する。 |
| a negative argument.
| | ;universal-argument |
| universal-argument
| | :これは、引数を指定するもう1つの方法である。 このコマンドの後に1桁以上の数字が続き、オプションで先頭にマイナス記号が付く場合、その数字が引数を定義する。 このコマンドの後に数字が続く場合、再度universal-argumentを実行すると数値引数は終了するが、それ以外は無視される。 特殊なケースとして、このコマンドの直後に数字でもマイナス記号でもない文字が続く場合、次のコマンドの引数カウントは4倍になる。 引数カウントは最初は1なので、この関数を1回目に実行すると引数カウントは4となり、2回目に実行すると引数カウントは16となる。 |
| This is another way to specify an argument. If this command is followed by one or more
| |
| digits, optionally with a leading minus sign, those digits define the argument. If the
| |
| command is followed by digits, executing universal-argument again ends the numeric argu‐
| |
| ment, but is otherwise ignored. As a special case, if this command is immediately fol‐
| |
| lowed by a character that is neither a digit nor minus sign, the argument count for the
| |
| next command is multiplied by four. The argument count is initially one, so executing
| |
| this function the first time makes the argument count four, a second time makes the argu‐
| |
| ment count sixteen, and so on.
| |
|
| |
|
| === Completing === | | === Completing === |
| complete (TAB)
| | ;complete (TAB) |
| Attempt to perform completion on the text before point. Bash attempts completion treating
| | :point前のテキストに対して補完を試みる。 Bashは、テキストを変数(テキストが$で始まる場合)、ユーザー名(テキストが~で始まる場合)、ホスト名(テキストが@で始まる場合)、コマンド(エイリアスや関数を含む)として順番に扱い、補完を試みる。 どれもマッチしない場合は、ファイル名補完を試みる。 |
| the text as a variable (if the text begins with $), username (if the text begins with ~),
| | ;possible-completions (M-?) |
| hostname (if the text begins with @), or command (including aliases and functions) in
| | :pointの前に、テキストの可能な完成形を列挙する。 |
| turn. If none of these produces a match, filename completion is attempted.
| | ;insert-completions (M-*) |
| possible-completions (M-?)
| | :possible-completionsによって生成されたであろう、pointの前のテキストのすべての補完を挿入する。 |
| List the possible completions of the text before point.
| | ;menu-complete |
| insert-completions (M-*)
| | :completeと似ているが、補完される単語を、補完可能リストからマッチする単語1つに置き換える。 menu-completeを繰り返し実行することで、補完可能な単語リストに順番にマッチする単語を挿入していく。 補完のリストが終わると、ベルが鳴らされ(ベルスタイルの設定に従う)、元のテキストに戻る。 引数nを指定すると、マッチのリストがn個前に進む。 このコマンドはTABにバインドされることを意図しているが、デフォルトではバインドされていない。 |
| Insert all completions of the text before point that would have been generated by possi‐
| | ;menu-complete-backward |
| ble-completions.
| | :menu-completeと同じだが、あたかもmenu-completeに負の引数を与えたかのように、補完可能なリストを後方に移動する。 このコマンドはデフォルトではバインドされていない。 |
| menu-complete
| | ;delete-char-or-list |
| Similar to complete, but replaces the word to be completed with a single match from the
| | :行頭または行末でない場合、カーソルの下にある文字を削除する(delete-charと同じ)。 行末にある場合は、可能補完と同じ動作をする。このコマンドはデフォルトではバインドされていない。 |
| list of possible completions. Repeated execution of menu-complete steps through the list
| | ;complete-filename (M-/) |
| of possible completions, inserting each match in turn. At the end of the list of comple‐
| | :pointより前のテキストでファイル名の補完を試みる。 |
| tions, the bell is rung (subject to the setting of bell-style) and the original text is
| | ;possible-filename-completions (C-x /) |
| restored. An argument of n moves n positions forward in the list of matches; a negative
| | :pointの前のテキストをファイル名として扱い、可能な補完を列挙する。 |
| argument may be used to move backward through the list. This command is intended to be
| | ;complete-username (M-~) |
| bound to TAB, but is unbound by default.
| | :pointより前のテキストをユーザー名として扱い、補完を試みる。 |
| menu-complete-backward
| | ;possible-username-completions (C-x ~) |
| Identical to menu-complete, but moves backward through the list of possible completions,
| | :point前のテキストをユーザー名として扱い、可能な補完を列挙する。 |
| as if menu-complete had been given a negative argument. This command is unbound by de‐
| | ;complete-variable (M-$) |
| fault.
| | :point前のテキストをシェル変数として扱い、補完を試みる。 |
| delete-char-or-list
| | ;possible-variable-completions (C-x $) |
| Deletes the character under the cursor if not at the beginning or end of the line (like
| | :シェル変数として扱い、pointの前にあるテキストの可能な補完を列挙する。 |
| delete-char). If at the end of the line, behaves identically to possible-completions.
| | ;complete-hostname (M-@) |
| This command is unbound by default.
| | :pointより前のテキストをホスト名として扱い、補完を試みる。 |
| complete-filename (M-/)
| | ;possible-hostname-completions (C-x @) |
| Attempt filename completion on the text before point.
| | :pointの前のテキストをホスト名として扱い、可能な補完を列挙する。 |
| possible-filename-completions (C-x /)
| | ;complete-command (M-!) |
| List the possible completions of the text before point, treating it as a filename.
| | :pointより前のテキストをコマンド名として扱い、補完を試みる。 コマンド補完は、エイリアス、予約語、シェル関数、シェル組み込み関数、そして最後に実行ファイル名の順に、テキストとのマッチングを試みる。 |
| complete-username (M-~)
| | ;possible-command-completions (C-x !) |
| Attempt completion on the text before point, treating it as a username.
| | :pointの前のテキストをコマンド名として扱い、可能な補完を列挙する。 |
| possible-username-completions (C-x ~)
| | ;dynamic-complete-history (M-TAB) |
| List the possible completions of the text before point, treating it as a username.
| | :point前のテキストに対して補完を試み、補完にマッチする可能性のある履歴リストの行とテキストを比較する。 |
| complete-variable (M-$)
| | ;dabbrev-expand |
| Attempt completion on the text before point, treating it as a shell variable.
| | :point前のテキストに対してメニュー補完を試み、補完にマッチする可能性のある履歴リストの行とテキストを比較する。 |
| possible-variable-completions (C-x $)
| | ;complete-into-braces (M-{) |
| List the possible completions of the text before point, treating it as a shell variable.
| | :ファイル名の補完を実行し、可能な補完のリストを中括弧で囲んで挿入し、シェルがそのリストを利用できるようにする(上記の[[#Brace Expansion|Brace Expansion ]]を参照)。 |
| complete-hostname (M-@)
| |
| Attempt completion on the text before point, treating it as a hostname.
| |
| possible-hostname-completions (C-x @)
| |
| List the possible completions of the text before point, treating it as a hostname.
| |
| complete-command (M-!)
| |
| Attempt completion on the text before point, treating it as a command name. Command com‐
| |
| pletion attempts to match the text against aliases, reserved words, shell functions, shell
| |
| builtins, and finally executable filenames, in that order.
| |
| possible-command-completions (C-x !)
| |
| List the possible completions of the text before point, treating it as a command name.
| |
| dynamic-complete-history (M-TAB)
| |
| Attempt completion on the text before point, comparing the text against lines from the
| |
| history list for possible completion matches.
| |
| dabbrev-expand
| |
| Attempt menu completion on the text before point, comparing the text against lines from
| |
| the history list for possible completion matches.
| |
| complete-into-braces (M-{)
| |
| Perform filename completion and insert the list of possible completions enclosed within
| |
| braces so the list is available to the shell (see Brace Expansion above).
| |
|
| |
|
| === Keyboard Macros === | | === Keyboard Macros === |
| start-kbd-macro (C-x ()
| | ;start-kbd-macro (C-x () |
| Begin saving the characters typed into the current keyboard macro.
| | :現在のキーボードマクロに入力された文字の保存を開始する。 |
| end-kbd-macro (C-x ))
| | ;end-kbd-macro (C-x )) |
| Stop saving the characters typed into the current keyboard macro and store the definition.
| | :現在のキーボードマクロに入力された文字の保存を停止し、定義を保存する。 |
| call-last-kbd-macro (C-x e)
| | ;call-last-kbd-macro (C-x e) |
| Re-execute the last keyboard macro defined, by making the characters in the macro appear
| | :最後に定義したキーボードマクロを再実行し、マクロ内の文字をキーボードで入力したように表示させる。 |
| as if typed at the keyboard.
| | ;print-last-kbd-macro () |
| print-last-kbd-macro ()
| | :最後に定義されたキーボードマクロを inputrc ファイルに適した形式で表示する。 |
| Print the last keyboard macro defined in a format suitable for the inputrc file.
| |
|
| |
|
| === Miscellaneous === | | === Miscellaneous === |
| re-read-init-file (C-x C-r)
| | ;re-read-init-file (C-x C-r) |
| Read in the contents of the inputrc file, and incorporate any bindings or variable assign‐
| | :inputrcファイルの内容を読み込み、そこで見つかったバインディングや変数の割り当てを取り込む。 |
| ments found there.
| | ;abort (C-g) |
| abort (C-g)
| | :現在の編集コマンドを中止し、端末のベルを鳴らす(ベルスタイルの設定に従う)。 |
| Abort the current editing command and ring the terminal's bell (subject to the setting of
| | ;do-lowercase-version (M-A, M-B, M-x, ...) |
| bell-style).
| | :メタファー化された文字xが大文字の場合、対応するメタファー化された小文字にバインドされたコマンドを実行する。 xがすでに小文字である場合の動作は未定義である。 |
| do-lowercase-version (M-A, M-B, M-x, ...)
| | ;prefix-meta (ESC) |
| If the metafied character x is uppercase, run the command that is bound to the correspond‐
| | :次に入力された文字をメタファイする。 ESC fはMeta-fと等価である。 |
| ing metafied lowercase character. The behavior is undefined if x is already lowercase.
| | ;undo (C-_, C-x C-u) |
| prefix-meta (ESC)
| | :行ごとに個別に記憶されるインクリメンタルなアンドゥ。 |
| Metafy the next character typed. ESC f is equivalent to Meta-f.
| | ;revert-line (M-r) |
| undo (C-_, C-x C-u)
| | :この行に加えられたすべての変更を元に戻す。 これは、行を初期状態に戻すのに十分な回数、undoコマンドを実行するようなものだ。 |
| Incremental undo, separately remembered for each line.
| | ;tilde-expand (M-&) |
| revert-line (M-r)
| | :現在の単語にチルダ展開を行う。 |
| Undo all changes made to this line. This is like executing the undo command enough times
| | ;set-mark (C-@, M-<space>) |
| to return the line to its initial state.
| | :マークをポイントに設定する。 数値引数が与えられると、マークはその位置に設定される。 |
| tilde-expand (M-&)
| | ;exchange-point-and-mark (C-x C-x) |
| Perform tilde expansion on the current word.
| | :ポイントとマークを入れ替える。 現在のカーソル位置が保存された位置に設定され、古いカーソル位置がマークとして保存される。 |
| set-mark (C-@, M-<space>)
| | ;character-search (C-]) |
| Set the mark to the point. If a numeric argument is supplied, the mark is set to that po‐
| | :文字が読み込まれ、ポイントはその文字の次の出現箇所に移動する。 負のカウントは、前の出現を検索する。 |
| sition.
| | ;character-search-backward (M-C-]) |
| exchange-point-and-mark (C-x C-x)
| | :文字が読み込まれ、その文字の前にポイントが移動する。 負のカウントは、それ以降の出現を検索する。 |
| Swap the point with the mark. The current cursor position is set to the saved position,
| | ;skip-csi-sequence |
| and the old cursor position is saved as the mark.
| | :HomeやEndのようなキーに定義されているようなマルチキーシーケンス を消費するのに十分な文字を読む。 このシーケンスが<nowiki>"\["</nowiki>にバインドされている場合、このようなシーケンスを生成するキーは、編集バッファーに迷子文字を挿入する代わりに、readlineコマンドに明示的にバインドされない限り、何の効果も持たない。 これはデフォルトではバインドされていないが、通常は <nowiki>ESC-[</nowiki> にバインドされている。 |
| character-search (C-])
| | ;insert-comment (M-#) |
| A character is read and point is moved to the next occurrence of that character. A nega‐
| | :数値引数がない場合、readline comment-begin変数の値が現在の行の先頭に挿入される。 行頭の文字がcomment-beginの値と一致しない場合、その値が挿入され、一致しない場合、行頭からcomment-beginの文字が削除される。 どちらの場合も、行は改行がタイプされたものとして受け入れられる。comment-beginのデフォルト値は、現在の行をシェルコメントにする。 数値引数によってコメント文字が削除されると、その行はシェルによって実行される。 |
| tive count searches for previous occurrences.
| | ;glob-complete-word (M-g) |
| character-search-backward (M-C-])
| | :pointの前の単語は、パス名展開のパターンとして扱われ、暗黙的にアスタリスクが付加される。 このパターンは、可能な補完のために、マッチするファイル名のリストを生成するために使われる。 |
| A character is read and point is moved to the previous occurrence of that character. A
| | ;glob-expand-word (C-x *) |
| negative count searches for subsequent occurrences.
| | :pointの前の単語は、パス名展開のパターンとして扱われ、一致する ファイル名のリストが、単語を置き換えて挿入される。 数値引数が与えられると、パス名展開の前にアスタリスクが付加される。 |
| skip-csi-sequence
| | ;glob-list-expansions (C-x g) |
| Read enough characters to consume a multi-key sequence such as those defined for keys like
| | :glob-expand-wordによって生成されたであろう展開のリストが表示され、行が再描画される。 数値引数が与えられると、パス名展開の前にアスタリスクが付加される。 |
| Home and End. Such sequences begin with a Control Sequence Indicator (CSI), usually
| | ;dump-functions |
| ESC-[. If this sequence is bound to "\[", keys producing such sequences will have no ef‐
| | :すべての関数とそのキーバインディングをreadline出力ストリームに出力する。 数値引数が与えられた場合、出力は inputrc ファイルの一部となるようにフォーマットされる。 |
| fect unless explicitly bound to a readline command, instead of inserting stray characters
| | ;dump-variables |
| into the editing buffer. This is unbound by default, but usually bound to ESC-[.
| | :設定可能なすべての readline 変数とその値を readline 出力ストリームに出力する。 数値引数が与えられた場合、出力は inputrc ファイルの一部となるようにフォーマットされる。 |
| insert-comment (M-#)
| | ;dump-macros |
| Without a numeric argument, the value of the readline comment-begin variable is inserted
| | :マクロにバインドされているすべてのreadlineキーシーケンスと、それらが出力する文字列を表示する。 数値引数が与えられた場合、出力は inputrc ファイルの一部となるようにフォーマットされる。 |
| at the beginning of the current line. If a numeric argument is supplied, this command
| | ;display-shell-version (C-x C-v) |
| acts as a toggle: if the characters at the beginning of the line do not match the value of
| | :現在のbashインスタンスのバージョン情報を表示する。 |
| comment-begin, the value is inserted, otherwise the characters in comment-begin are
| |
| deleted from the beginning of the line. In either case, the line is accepted as if a new‐
| |
| line had been typed. The default value of comment-begin causes this command to make the
| |
| current line a shell comment. If a numeric argument causes the comment character to be
| |
| removed, the line will be executed by the shell.
| |
| glob-complete-word (M-g)
| |
| The word before point is treated as a pattern for pathname expansion, with an asterisk im‐
| |
| plicitly appended. This pattern is used to generate a list of matching filenames for pos‐
| |
| sible completions.
| |
| glob-expand-word (C-x *)
| |
| The word before point is treated as a pattern for pathname expansion, and the list of
| |
| matching filenames is inserted, replacing the word. If a numeric argument is supplied, an
| |
| asterisk is appended before pathname expansion.
| |
| glob-list-expansions (C-x g)
| |
| The list of expansions that would have been generated by glob-expand-word is displayed,
| |
| and the line is redrawn. If a numeric argument is supplied, an asterisk is appended be‐
| |
| fore pathname expansion.
| |
| dump-functions
| |
| Print all of the functions and their key bindings to the readline output stream. If a nu‐
| |
| meric argument is supplied, the output is formatted in such a way that it can be made part
| |
| of an inputrc file.
| |
| dump-variables
| |
| Print all of the settable readline variables and their values to the readline output
| |
| stream. If a numeric argument is supplied, the output is formatted in such a way that it
| |
| can be made part of an inputrc file.
| |
| dump-macros
| |
| Print all of the readline key sequences bound to macros and the strings they output. If a
| |
| numeric argument is supplied, the output is formatted in such a way that it can be made
| |
| part of an inputrc file.
| |
| display-shell-version (C-x C-v)
| |
| Display version information about the current instance of bash.
| |
|
| |
|
| === Programmable Completion === | | === Programmable Completion === |
| When word completion is attempted for an argument to a command for which a completion specifica‐
| | complete組み込み関数(後述の「[[#SHELL BUILTIN COMMANDS|SHELL BUILTIN COMMANDS ]]」を参照)を使用して補完指定(compspec)が定義されているコマンドの引数に対して単語補完を行おうとすると、プログラム可能な補完機能が呼び出される。 |
| tion (a compspec) has been defined using the complete builtin (see SHELL BUILTIN COMMANDS below),
| |
| the programmable completion facilities are invoked.
| |
|
| |
|
| First, the command name is identified. If the command word is the empty string (completion at‐
| | まず、コマンド名が特定される。 コマンドワードが空文字列の場合(空行の先頭で補完が試みられる)、completeの-Eオプションで定義されたcompspecが使用される。 そのコマンドに対してcompspecが定義されている場合は、そのcompspecを使用して、その単語に対して可能な補完のリストを生成する。 コマンドの単語がフルパス名の場合、フルパス名に対するcompspecが最初に検索される。 完全なパス名に対応するcompspecが見つからない場合は、最後のスラッシュに続く部分のcompspecを検索する。 これらの検索の結果、compspecが見つからなかった場合、 completeの-Dオプションで定義されたcompspecがデフォルトとして使用される。 デフォルトのcompspecがない場合、bashは最終手段としてコマンド語のエイリアス展開を試み、成功した展開からコマンド語のcompspecを見つけようとする。 |
| tempted at the beginning of an empty line), any compspec defined with the -E option to complete
| |
| is used. If a compspec has been defined for that command, the compspec is used to generate the
| |
| list of possible completions for the word. If the command word is a full pathname, a compspec
| |
| for the full pathname is searched for first. If no compspec is found for the full pathname, an
| |
| attempt is made to find a compspec for the portion following the final slash. If those searches
| |
| do not result in a compspec, any compspec defined with the -D option to complete is used as the
| |
| default. If there is no default compspec, bash attempts alias expansion on the command word as a
| |
| final resort, and attempts to find a compspec for the command word from any successful expansion.
| |
|
| |
|
| Once a compspec has been found, it is used to generate the list of matching words. If a compspec
| | compspecが見つかると、それを使用して一致する単語のリストを生成する。 compspecが見つからなかった場合は、上記の「補完」で説明したデフォルトのbash補完が実行される。 |
| is not found, the default bash completion as described above under Completing is performed.
| |
|
| |
|
| First, the actions specified by the compspec are used. Only matches which are prefixed by the
| | まず、compspecで指定されたアクションが使用される。 補完される単語の接頭辞を持つマッチのみが返される。 ファイル名またはディレクトリ名の補完に -f または -d オプションが使用されている場合、シェル変数 FIGNORE がマッチのフィルタリングに使用される。 |
| word being completed are returned. When the -f or -d option is used for filename or directory
| |
| name completion, the shell variable FIGNORE is used to filter the matches.
| |
|
| |
|
| Any completions specified by a pathname expansion pattern to the -G option are generated next.
| | Gオプションのパス名展開パターンで指定された補完が次に生成される。パターンによって生成される単語は、補完される単語と一致する必要はない。 GLOBIGNOREシェル変数はマッチのフィルタリングには使われず、FIGNORE変数が使われる。 |
| The words generated by the pattern need not match the word being completed. The GLOBIGNORE shell
| |
| variable is not used to filter the matches, but the FIGNORE variable is used.
| |
|
| |
|
| Next, the string specified as the argument to the -W option is considered. The string is first
| | 次に、-Wオプションの引数として指定された文字列が検討される。 文字列はまず、IFS特殊変数の文字を区切り文字として使って分割される。 シェル引用符付けは尊重される。 |
| split using the characters in the IFS special variable as delimiters. Shell quoting is honored.
| | 次に、上記の「EXPANSION」で説明したように、波括弧展開、チルダ展開、 パラメータ展開、変数展開、コマンド置換、算術展開を使って各単語が展開される。 その結果は、上記の「単語の分割」で説明したルールで分割される。 展開の結果は、補完される単語と前方一致され、一致した単語が可能な補完となる。 |
| Each word is then expanded using brace expansion, tilde expansion, parameter and variable expan‐
| |
| sion, command substitution, and arithmetic expansion, as described above under EXPANSION. The
| |
| results are split using the rules described above under Word Splitting. The results of the ex‐
| |
| pansion are prefix-matched against the word being completed, and the matching words become the
| |
| possible completions.
| |
|
| |
|
| After these matches have been generated, any shell function or command specified with the -F and
| | これらのマッチが生成された後、-Fおよび-Cオプションで指定されたシェル関数またはコマンドが呼び出される。 コマンドまたは関数が呼び出されると、COMP_LINE、COMP_POINT、COMP_KEY、COMP_TYPE 変数には、前述の「シェル変数」で説明した値が代入される。 |
| -C options is invoked. When the command or function is invoked, the COMP_LINE, COMP_POINT,
| | シェル関数が呼び出される場合、COMP_WORDS 変数と COMP_CWORD 変数も設定される。 関数またはコマンドが呼び出されると、第1引数($1)は補完される引数のコマンド名、第2引数($2)は補完される単語、第3引数($3)は現在のコマンド行で補完される単語の前にある単語である。 生成された補完語を補完される単語と照合するフィルタリングは行われない。 |
| COMP_KEY, and COMP_TYPE variables are assigned values as described above under Shell Variables.
| |
| If a shell function is being invoked, the COMP_WORDS and COMP_CWORD variables are also set. When
| |
| the function or command is invoked, the first argument ($1) is the name of the command whose ar‐
| |
| guments are being completed, the second argument ($2) is the word being completed, and the third
| |
| argument ($3) is the word preceding the word being completed on the current command line. No
| |
| filtering of the generated completions against the word being completed is performed; the func‐
| |
| tion or command has complete freedom in generating the matches.
| |
|
| |
|
| Any function specified with -F is invoked first. The function may use any of the shell facili‐
| | Fで指定された関数は最初に呼び出される。 この関数は、後述の compgen 組み込み関数を含む、シェルのどの機能を使ってもマッチを生成できる。 この関数は、COMPREPLY配列変数に、配列の要素ごとに1つずつ、可能な補完を入れなければならない。 |
| ties, including the compgen builtin described below, to generate the matches. It must put the
| |
| possible completions in the COMPREPLY array variable, one per array element.
| |
|
| |
|
| Next, any command specified with the -C option is invoked in an environment equivalent to command
| | 次に、-Cオプションで指定されたコマンドが、コマンド置換と同等の環境で起動される。 このコマンドは、1行に1つずつ、補完候補のリストを標準出力に出力する。必要であれば、バックスラッシュを使って改行をエスケープすることもできる。 |
| substitution. It should print a list of completions, one per line, to the standard output.
| |
| Backslash may be used to escape a newline, if necessary.
| |
|
| |
|
| After all of the possible completions are generated, any filter specified with the -X option is
| | すべての補完候補が生成された後、-Xオプションで指定されたフィルターがリストに適用される。 フィルターとは、パス名展開に使われるパターンである。パターン中の&は、補完される単語のテキストに置き換えられる。 リテラル&は、バックスラッシュでエスケープすることができる。バックスラッシュは、マッチを試みる前に取り除かれる。 パターンにマッチした補完はすべてリストから削除される。 この場合、パターンにマッチしない補完はすべて削除される。 nocasematchシェルオプションが有効な場合、アルファベットの大文字小文字を区別せずにマッチが行われる。 |
| applied to the list. The filter is a pattern as used for pathname expansion; a & in the pattern
| |
| is replaced with the text of the word being completed. A literal & may be escaped with a back‐
| |
| slash; the backslash is removed before attempting a match. Any completion that matches the pat‐
| |
| tern will be removed from the list. A leading ! negates the pattern; in this case any completion
| |
| not matching the pattern will be removed. If the nocasematch shell option is enabled, the match
| |
| is performed without regard to the case of alphabetic characters.
| |
|
| |
|
| Finally, any prefix and suffix specified with the -P and -S options are added to each member of
| | 最後に、-P と -S オプションで指定された接頭辞と接尾辞が補完リストの各メンバーに追加され、その結果が可能な補完のリストとして readline 補完コードに返される。 |
| the completion list, and the result is returned to the readline completion code as the list of
| |
| possible completions.
| |
|
| |
|
| If the previously-applied actions do not generate any matches, and the -o dirnames option was
| | 先に適用されたアクションがマッチを生成せず、compspec の定義時に -o dirnames オプションが補完のために指定されていた場合、ディレクトリ名の補完が試みられる。 |
| supplied to complete when the compspec was defined, directory name completion is attempted.
| |
|
| |
|
| If the -o plusdirs option was supplied to complete when the compspec was defined, directory name
| | compspec の定義時に -o plusdirs オプションが指定されていた場合、 ディレクトリ名の補完が試行され、マッチした場合は他のアクションの結果に追加される。 |
| completion is attempted and any matches are added to the results of the other actions.
| |
|
| |
|
| By default, if a compspec is found, whatever it generates is returned to the completion code as
| | デフォルトでは、compspecが見つかった場合、そのcompspecが生成するものはすべて、可能な補完のフルセットとして補完コードに返される。 デフォルトのbash補完は試行されず、readlineデフォルトのファイル名補完は無効になる。 compspec の定義時に -o bashdefault オプションが指定されていた場合、compspec がマッチを生成しなかった場合は bash のデフォルト補完が試行される。 compspec 定義時に -o default オプションを指定して補完を行なった場合、compspec (および試行された場合はデフォルトの bash 補完) がマッチしない場合、readline のデフォルト補完が実行される。 |
| the full set of possible completions. The default bash completions are not attempted, and the
| |
| readline default of filename completion is disabled. If the -o bashdefault option was supplied
| |
| to complete when the compspec was defined, the bash default completions are attempted if the
| |
| compspec generates no matches. If the -o default option was supplied to complete when the comp‐
| |
| spec was defined, readline's default completion will be performed if the compspec (and, if at‐
| |
| tempted, the default bash completions) generate no matches.
| |
|
| |
|
| When a compspec indicates that directory name completion is desired, the programmable completion
| | compspecでディレクトリ名の補完が必要だと指定された場合、プログラム可能な補完関数は、mark-symlinked-directories readline変数の設定に関係なく、mark-directories readline変数の値に従って、ディレクトリへのシンボリックリンクである補完された名前にスラッシュを付加する。 |
| functions force readline to append a slash to completed names which are symbolic links to direc‐
| |
| tories, subject to the value of the mark-directories readline variable, regardless of the setting
| |
| of the mark-symlinked-directories readline variable.
| |
|
| |
|
| There is some support for dynamically modifying completions. This is most useful when used in
| | 補完を動的に変更するサポートもある。 これは、complete -Dで指定されたデフォルトの補完と組み合わせて使用する場合に最も便利である。 補完ハンドラとして実行されるシェル関数は、終了ステータス124を返すことで、補完を再試行すべきであることを示すことができる。 シェル関数が124を返し、(関数が実行されたときに最初の引数として与えられた)補完を試みているコマンドに関連するcompspecを変更した場合、プログラマブル補完は、そのコマンドの新しいcompspecを見つけようとして、最初からやり直す。 これにより、一度にすべてを読み込むのではなく、補完を試みるたびに動的に補完セットを構築することができる。 |
| combination with a default completion specified with complete -D. It's possible for shell func‐
| |
| tions executed as completion handlers to indicate that completion should be retried by returning
| |
| an exit status of 124. If a shell function returns 124, and changes the compspec associated with
| |
| the command on which completion is being attempted (supplied as the first argument when the func‐
| |
| tion is executed), programmable completion restarts from the beginning, with an attempt to find a
| |
| new compspec for that command. This allows a set of completions to be built dynamically as com‐
| |
| pletion is attempted, rather than being loaded all at once.
| |
|
| |
|
| For instance, assuming that there is a library of compspecs, each kept in a file corresponding to
| | 例えば、コンプスペックのライブラリーがあり、それぞれがコマンド名に対応するファイルに保存されていると仮定すると、次のようなデフォルトの補完関数が補完を動的にロードすることになる: |
| the name of the command, the following default completion function would load completions dynami‐
| |
| cally:
| |
|
| |
|
| | <syntaxhighlight lang="bash"> |
| _completion_loader() | | _completion_loader() |
| { | | { |
Line 2,452: |
Line 1,821: |
| } | | } |
| complete -D -F _completion_loader -o bashdefault -o default | | complete -D -F _completion_loader -o bashdefault -o default |
| | </syntaxhighlight> |
|
| |
|
| == HISTORY == | | == HISTORY == |
| When the -o history option to the set builtin is enabled, the shell provides access to the com‐
| | set 組み込み関数の -o history オプションを有効にすると、シェルはコマンド履歴(以前に入力したコマンドのリスト)にアクセスできるようになる。 '''HISTSIZE''' 変数の値は、履歴リストに保存するコマンドの数として使用される。 最後のHISTSIZEコマンド(デフォルト500)のテキストが保存される。 シェルは、パラメータと変数の拡張(上記のEXPANSIONを参照)の前に、ヒストリ拡張が実行された後に、シェル変数'''HISTIGNORE'''と'''HISTCONTROL'''の値に従って、各コマンドをヒストリリストに保存する。 |
| mand history, the list of commands previously typed. The value of the HISTSIZE variable is used
| |
| as the number of commands to save in a history list. The text of the last HISTSIZE commands (de‐
| |
| fault 500) is saved. The shell stores each command in the history list prior to parameter and
| |
| variable expansion (see EXPANSION above) but after history expansion is performed, subject to the
| |
| values of the shell variables HISTIGNORE and HISTCONTROL.
| |
| | |
| On startup, the history is initialized from the file named by the variable HISTFILE (default
| |
| ~/.bash_history). The file named by the value of HISTFILE is truncated, if necessary, to contain
| |
| no more than the number of lines specified by the value of HISTFILESIZE. If HISTFILESIZE is un‐
| |
| set, or set to null, a non-numeric value, or a numeric value less than zero, the history file is
| |
| not truncated. When the history file is read, lines beginning with the history comment character
| |
| followed immediately by a digit are interpreted as timestamps for the following history line.
| |
| These timestamps are optionally displayed depending on the value of the HISTTIMEFORMAT variable.
| |
| When a shell with history enabled exits, the last $HISTSIZE lines are copied from the history
| |
| list to $HISTFILE. If the histappend shell option is enabled (see the description of shopt under
| |
| SHELL BUILTIN COMMANDS below), the lines are appended to the history file, otherwise the history
| |
| file is overwritten. If HISTFILE is unset, or if the history file is unwritable, the history is
| |
| not saved. If the HISTTIMEFORMAT variable is set, time stamps are written to the history file,
| |
| marked with the history comment character, so they may be preserved across shell sessions. This
| |
| uses the history comment character to distinguish timestamps from other history lines. After
| |
| saving the history, the history file is truncated to contain no more than HISTFILESIZE lines. If
| |
| HISTFILESIZE is unset, or set to null, a non-numeric value, or a numeric value less than zero,
| |
| the history file is not truncated.
| |
|
| |
|
| The builtin command fc (see SHELL BUILTIN COMMANDS below) may be used to list or edit and re-exe‐
| | 起動時に、履歴は変数'''HISTFILE'''で指定されたファイル(デフォルトは~/.bash_history)から初期化される。 '''HISTFILE'''の値で指定されたファイルは、必要に応じて'''HISTFILESIZE'''の値で指定された行数以下に切り詰められる。 '''HISTFILESIZE'''が未設定、またはNULL、非数値、0未満の数値に設定されている場合、 履歴ファイルは切り捨てられない。 ヒストリファイルが読み込まれると、ヒストリコメント文字の直後に数字が続く行は、次のヒストリ行のタイムスタンプとして解釈される。これらのタイムスタンプは、変数'''HISTTIMEFORMAT'''の値に応じてオプションで表示される。 |
| cute a portion of the history list. The history builtin may be used to display or modify the
| | 履歴を有効にしたシェルが終了すると、最後の $HISTSIZE 行が履歴リストから $HISTFILE にコピーされる。 histappend シェル・オプションが有効な場合 (以下の [[#SHELL BUILTIN COMMANDS|SHELL BUILTIN COMMANDS ]] の shopt の説明を参照のこと)、その行はヒストリ・ファイルに追加される。 HISTFILEが設定されていない場合、または履歴ファイルが書き込み不可能な場合、履歴は保存されない。 '''HISTTIMEFORMA'''T変数が設定されている場合、履歴ファイルにタイムスタンプが書き込まれ、履歴コメント文字でマークされる。 これは、タイムスタンプを他のヒストリ行と区別するためにヒストリコメント文字を使用する。 ヒストリを保存した後、ヒストリファイルは'''HISTFILESIZE'''行以下に切り詰められる。 '''HISTFILESIZE'''が設定されていないか、NULL、数値以外、または0未満の数値に設定されている場合、ヒストリファイルは切り捨てられない。 |
| history list and manipulate the history file. When using command-line editing, search commands
| |
| are available in each editing mode that provide access to the history list.
| |
|
| |
|
| The shell allows control over which commands are saved on the history list. The HISTCONTROL and
| | 組み込みコマンドfc(後述の「[[#SHELL BUILTIN COMMANDS|SHELL BUILTIN COMMANDS ]]」を参照)を使用して、ヒストリリストの一部を一覧表示または編集して再実行することができる。 history組み込みコマンドは、履歴リストの表示や変更、履歴ファイルの操作に使用できる。 コマンドライン編集を使用する場合、各編集モードで履歴リストにアクセスできる検索コマンドが利用できる。 |
| HISTIGNORE variables may be set to cause the shell to save only a subset of the commands entered.
| | シェルでは、どのコマンドを履歴リストに保存するかを制御できる。 '''HISTCONTROL''' 変数と HISTIGNORE 変数を設定することで、入力されたコマンドの一部だけをシェルに保存させることができる。 |
| The cmdhist shell option, if enabled, causes the shell to attempt to save each line of a multi-
| | cmdhist シェル・オプションを有効にすると、シェルは複数行のコマンドの各行を同じ履歴エントリに保存しようとし、構文の正しさを保つために必要な場合はセミコロンを追加する。 lithist シェル・オプションは、セミコロンの代わりに改行を埋め込んでコマンドを保存するようにする。 シェル・オプションの設定と解除については、後述の「[[#SHELL BUILTIN COMMANDS|SHELL BUILTIN COMMANDS ]]」の shopt 組み込みコマンドの説明を参照のこと。 |
| line command in the same history entry, adding semicolons where necessary to preserve syntactic
| |
| correctness. The lithist shell option causes the shell to save the command with embedded new‐
| |
| lines instead of semicolons. See the description of the shopt builtin below under SHELL BUILTIN
| |
| COMMANDS for information on setting and unsetting shell options.
| |
|
| |
|
| == HISTORY EXPANSION == | | == HISTORY EXPANSION == |
| The shell supports a history expansion feature that is similar to the history expansion in csh.
| | シェルは、cshのヒストリ展開に似たヒストリ展開機能をサポートしている。 |
| This section describes what syntax features are available. This feature is enabled by default
| | このセクションでは、どのような構文機能が利用できるかを説明する。 この機能は対話型シェルではデフォルトで有効になっており、set builtin コマンドの +H オプションを使用して無効にすることができる(後述の「SHELL BUILTIN COMMANDS」を参照)。 非対話型シェルは、デフォルトではヒストリ展開を行わない。 |
| for interactive shells, and can be disabled using the +H option to the set builtin command (see
| |
| SHELL BUILTIN COMMANDS below). Non-interactive shells do not perform history expansion by de‐
| |
| fault.
| |
|
| |
|
| History expansions introduce words from the history list into the input stream, making it easy to
| | ヒストリ拡張は、ヒストリリストから単語を入力ストリームに導入し、コマンドを繰り返したり、前のコマンドの引数を現在の入力行に挿入したり、前のコマンドのエラーを素早く修正したりすることを容易にする。 |
| repeat commands, insert the arguments to a previous command into the current input line, or fix
| |
| errors in previous commands quickly.
| |
|
| |
|
| History expansion is performed immediately after a complete line is read, before the shell breaks
| | ヒストリ展開は、完全な行が読み込まれた直後、シェルがそれを単語に分割する前に実行され、前の行のクォートを考慮することなく、各行に対して個別に実行される。 これは2つの部分に分かれて行われる。 1つ目は、置換時に履歴リストからどの行を使用するかを決定することである。 もうひとつは、その行の一部を現在の行に含めるために選択することである。 履歴から選択された行がイベントであり、その行の一部が単語となる。 選択された単語を操作するために、さまざまな修飾子が利用できる。 行は入力を読むときと同じ方法で単語に分割され、引用符で囲まれたメタ文字で区切られた複数の単語は1つの単語とみなされる。 ヒストリ拡張は、ヒストリ拡張文字(デフォルトでは! ヒストリ展開文字を引用符で囲むことができるのは、バックスラッシュ( \ )と一重引用符だけであるが、二重引用符で囲んだ文字列の閉じ二重引用符の直前にヒストリ展開文字がある場合も、引用符で囲んだものとして扱われる。 |
| it into words, and is performed on each line individually without taking quoting on previous
| |
| lines into account. It takes place in two parts. The first is to determine which line from the
| |
| history list to use during substitution. The second is to select portions of that line for in‐
| |
| clusion into the current one. The line selected from the history is the event, and the portions
| |
| of that line that are acted upon are words. Various modifiers are available to manipulate the
| |
| selected words. The line is broken into words in the same fashion as when reading input, so that
| |
| several metacharacter-separated words surrounded by quotes are considered one word. History ex‐
| |
| pansions are introduced by the appearance of the history expansion character, which is ! by de‐
| |
| fault. Only backslash (\) and single quotes can quote the history expansion character, but the
| |
| history expansion character is also treated as quoted if it immediately precedes the closing dou‐
| |
| ble quote in a double-quoted string.
| |
|
| |
|
| Several characters inhibit history expansion if found immediately following the history expansion
| | extglobシェル・オプションが有効な場合、()も展開を抑制する。 |
| character, even if it is unquoted: space, tab, newline, carriage return, and =. If the extglob
| |
| shell option is enabled, ( will also inhibit expansion.
| |
|
| |
|
| Several shell options settable with the shopt builtin may be used to tailor the behavior of his‐
| | shopt 組み込み関数で設定可能ないくつかのシェル・オプションを使用して、ヒストリ展開の動作を調整することができる。 histverify シェル・オプションが有効で(後述の [[#SHELL BUILTIN COMMANDS|SHELL BUILTIN COMMANDS ]]の説明を参照)、readline が使用されている場合、ヒストリ置換はシェル・パーサにすぐには渡されない。 その代わりに、展開された行はreadline編集バッファに再ロードされ、さらに修正される。 readlineが使用されていて、histreeditシェルオプションが有効になっている場合、失敗したヒストリ置換は修正のためにreadline編集バッファにリロードされる。 |
| tory expansion. If the histverify shell option is enabled (see the description of the shopt
| | history 組み込みコマンドの -p オプションを使用すると、ヒストリ拡張を使用する前に、その拡張が何をするかを確認することができる。 history組み込みコマンドの-sオプションは、コマンドを実際に実行することなく、履歴リストの最後に追加するために使用される。 |
| builtin below), and readline is being used, history substitutions are not immediately passed to
| |
| the shell parser. Instead, the expanded line is reloaded into the readline editing buffer for
| |
| further modification. If readline is being used, and the histreedit shell option is enabled, a
| |
| failed history substitution will be reloaded into the readline editing buffer for correction.
| |
| The -p option to the history builtin command may be used to see what a history expansion will do
| |
| before using it. The -s option to the history builtin may be used to add commands to the end of
| |
| the history list without actually executing them, so that they are available for subsequent re‐
| |
| call.
| |
|
| |
|
| The shell allows control of the various characters used by the history expansion mechanism (see
| | シェルでは、ヒストリ展開メカニズムで使用されるさまざまな文字を制御できる(上記の「[[#Shell Variables|Shell Variables ]]」の「histchars」の説明を参照のこと)。 シェルはヒストリファイルを書き込む際に、ヒストリのタイムスタンプをマークするためにヒストリコメント文字を使用する。 |
| the description of histchars above under Shell Variables). The shell uses the history comment
| |
| character to mark history timestamps when writing the history file.
| |
|
| |
|
| === Event Designators === | | === Event Designators === |
| An event designator is a reference to a command line entry in the history list. Unless the ref‐
| | イベント・デジグネーターは、ヒストリーリスト内のコマンドラインエントリーの参照である。 参照が絶対的でない限り、イベントはヒストリーリストの現在の位置からの相対的なものである。 |
| erence is absolute, events are relative to the current position in the history list.
| | ;! |
| | | :空白、改行、キャリッジリターン、=、または ( shopt 組み込み関数で extglob シェルオプションが有効になっている場合) が続く場合を除き、履歴置換を開始する。 |
| ! Start a history substitution, except when followed by a blank, newline, carriage return, =
| | ;!n |
| or ( (when the extglob shell option is enabled using the shopt builtin).
| | :コマンドラインnを参照のこと。 |
| !n Refer to command line n.
| | ;!-n |
| !-n Refer to the current command minus n.
| | :現在のコマンドマイナスnを参照。 |
| !! Refer to the previous command. This is a synonym for `!-1'.
| | ;!! |
| !string
| | :前のコマンドを参照のこと。 これは `!-1' と同意語である。 |
| Refer to the most recent command preceding the current position in the history list start‐
| | ;!string |
| ing with string.
| | :文字列で始まる履歴リストで、現在の位置より前にある最新のコマンドを参照する。 |
| !?string[?]
| | ;!?string<nowiki>[?]</nowiki> |
| Refer to the most recent command preceding the current position in the history list con‐
| | :stringを含む履歴リストで、現在の位置より前にある最新のコマンドを参照する。 stringの直後に改行が続く場合、末尾の ? は省略できる。 stringがない場合、最新の検索文字列が使われる。以前の検索文字列がない場合はエラーとなる。 |
| taining string. The trailing ? may be omitted if string is followed immediately by a new‐
| | ;^string1^string2^ |
| line. If string is missing, the string from the most recent search is used; it is an er‐
| | :素早く置換する。 文字列1を文字列2に置き換えて、前のコマンドを繰り返す。 (以下の[[#Modifiers|Modifiers ]]を参照のこと)。 |
| ror if there is no previous search string.
| | ;!# |
| ^string1^string2^
| | :これまでに入力されたコマンドライン全体。 |
| Quick substitution. Repeat the previous command, replacing string1 with string2. Equiva‐
| |
| lent to ``!!:s^string1^string2^'' (see Modifiers below).
| |
| !# The entire command line typed so far.
| |
|
| |
|
| === Word Designators === | | === Word Designators === |
| Word designators are used to select desired words from the event. A : separates the event speci‐
| | 単語指定子は、イベントから必要な単語を選択するために使用される。 は、イベントの指定と単語指示子を区切る。 単語指定子が^、$、*、-、%で始まる場合は省略できる。 単語は行頭から順に番号付けされ、最初の単語は0(ゼロ)で示される。 単語は、現在の行に半角スペースで区切って挿入される。 |
| fication from the word designator. It may be omitted if the word designator begins with a ^, $,
| |
| *, -, or %. Words are numbered from the beginning of the line, with the first word being denoted
| |
| by 0 (zero). Words are inserted into the current line separated by single spaces.
| |
|
| |
|
| 0 (zero)
| | ;0 (zero) |
| The zeroth word. For the shell, this is the command word.
| | :番目の単語。 シェルでは、これはコマンドワードである。 |
| n The nth word.
| | ;n |
| ^ The first argument. That is, word 1.
| | :The nth word. |
| $ The last word. This is usually the last argument, but will expand to the zeroth word if
| | ;^ |
| there is only one word in the line.
| | :最初の引数。 つまり単語1である。 |
| % The first word matched by the most recent `?string?' search, if the search string begins
| | ;$ |
| with a character that is part of a word.
| | :最後の単語。 これは通常最後の引数だが、行に単語が1つしかない場合は0番目の単語に展開される。 |
| x-y A range of words; `-y' abbreviates `0-y'.
| | ;% |
| * All of the words but the zeroth. This is a synonym for `1-$'. It is not an error to use
| | :検索文字列が単語の一部である文字で始まっている場合、直近の `?string?' 検索でマッチした最初の単語。 |
| * if there is just one word in the event; the empty string is returned in that case.
| | ;x-y |
| x* Abbreviates x-$.
| | :'-y'は'0-y'を省略したものである。 |
| x- Abbreviates x-$ like x*, but omits the last word. If x is missing, it defaults to 0.
| | ;* |
| | :0番目以外のすべての単語。 これは `1-$' と同意語である。 その場合は空文字列が返される。 |
| | ;x* |
| | :Abbreviates x-$. |
| | ;x- |
| | :x*のようにx-$を省略するが、最後の単語は省略する。 xがない場合、デフォルトは0になる。 |
|
| |
|
| If a word designator is supplied without an event specification, the previous command is used as
| | イベント指定なしで単語指定子を与えた場合、前のコマンドがイベントとして使用される。 |
| the event.
| |
|
| |
|
| === Modifiers === | | === Modifiers === |
| After the optional word designator, there may appear a sequence of one or more of the following
| | オプションの単語指示子の後には、それぞれ`:'で始まる1つ以上の修飾子が現れる。 これらは、履歴イベントから選択された単語を修正する。 |
| modifiers, each preceded by a `:'. These modify, or edit, the word or words selected from the
| |
| history event.
| |
|
| |
|
| h Remove a trailing filename component, leaving only the head.
| | ;h |
| t Remove all leading filename components, leaving the tail.
| | :末尾のファイル名コンポーネントを削除し、先頭だけを残す。 |
| r Remove a trailing suffix of the form .xxx, leaving the basename.
| | ;t |
| e Remove all but the trailing suffix.
| | :ファイル名の先頭をすべて削除し、末尾を残す。 |
| p Print the new command but do not execute it.
| | ;r |
| q Quote the substituted words, escaping further substitutions.
| | :.xxx 形式の末尾のサフィックスを削除し、ベース名を残す。 |
| x Quote the substituted words as with q, but break into words at blanks and newlines. The q
| | ;e |
| and x modifiers are mutually exclusive; the last one supplied is used.
| | :末尾の接尾辞以外はすべて削除する。 |
| s/old/new/
| | ;p |
| Substitute new for the first occurrence of old in the event line. Any character may be
| | :新しいコマンドを表示するが、実行はしない。 |
| used as the delimiter in place of /. The final delimiter is optional if it is the last
| | ;q |
| character of the event line. The delimiter may be quoted in old and new with a single
| | :置換された単語を引用し、それ以上の置換を避ける。 |
| backslash. If & appears in new, it is replaced by old. A single backslash will quote the
| | ;x |
| &. If old is null, it is set to the last old substituted, or, if no previous history sub‐
| | :qと同様に置換された単語を引用するが、空白と改行で単語を区切る。 q修飾子とx修飾子は互いに排他的であり、最後に与えられたものが使われる。 |
| stitutions took place, the last string in a !?string[?] search. If new is null, each
| | ;s/old/new/ |
| matching old is deleted.
| | :イベント行で最初に出現するoldをnewに置き換える。 最後のデリミタは、イベント行の最後の文字であれば任意である。 デリミタは、バックスラッシュ1つでoldとnewで引用することができる。 もし&がnewに現れた場合、それはoldに置き換えられる。 シングル・バックスラッシュは&を引用符で囲む。 oldがNULLの場合、最後に置換されたoldに設定され、それ以前に履歴の置換が行われなかった場合は、!?string[?]検索の最後の文字列に設定される。 newがNULLの場合、一致するoldはすべて削除される。 |
| & Repeat the previous substitution.
| | ;& |
| g Cause changes to be applied over the entire event line. This is used in conjunction with
| | :前の置換を繰り返す。 |
| `:s' (e.g., `:gs/old/new/') or `:&'. If used with `:s', any delimiter can be used in
| | ;g |
| place of /, and the final delimiter is optional if it is the last character of the event
| | :変更をイベント行全体に適用する。 これは `:s' (例えば `:gs/old/new/') または `:&' と組み合わせて使う。 s' と一緒に使う場合、/の代わりにどんな区切り文字でも使うことができ、最後の区切り文字がイベント行の最後の文字であれば省略可能である。 gの同義語としてaを使うこともできる。 |
| line. An a may be used as a synonym for g.
| | ;G |
| G Apply the following `s' or `&' modifier once to each word in the event line.
| | :以下の`s'または`&'修飾子をイベント行の各単語に1回ずつ適用する。 |
|
| |
|
| == SHELL BUILTIN COMMANDS == | | == SHELL BUILTIN COMMANDS == |
| Unless otherwise noted, each builtin command documented in this section as accepting options pre‐
| | 特に断りのない限り、このセクションでオプションを受け付けるとして文書化されている各 組み込みコマンドは、オプションの終わりを示す -- を受け付ける。 test/[、true、false、test/[ 組み込み関数はオプションを受け付けず、 -- を特別に扱わない。 exit、logout、return、break、continue、let、shift 組み込み関数は、-- を必要とせずに - で始まる引数を受け入れ処理する。 |
| ceded by - accepts -- to signify the end of the options. The :, true, false, and test/[ builtins
| | 引数を受け付けるがオプションを受け付けるように指定されていない他の組み込み関数は、 - で始まる引数を無効なオプションとして解釈し、この解釈を防ぐために -- を要求する。 |
| do not accept options and do not treat -- specially. The exit, logout, return, break, continue,
| | ;<nowiki>: [arguments]</nowiki> |
| let, and shift builtins accept and process arguments beginning with - without requiring --.
| | :コマンドは引数を展開し、指定されたリダイレクションを実行するだけで、何もしない。 リターンステータスは0である。 |
| Other builtins that accept arguments but are not specified as accepting options interpret argu‐
| |
| ments beginning with - as invalid options and require -- to prevent this interpretation.
| |
| : [arguments]
| |
| No effect; the command does nothing beyond expanding arguments and performing any speci‐
| |
| fied redirections. The return status is zero.
| |
| | |
| . filename [arguments]
| |
| source filename [arguments]
| |
| Read and execute commands from filename in the current shell environment and return the
| |
| exit status of the last command executed from filename. If filename does not contain a
| |
| slash, filenames in PATH are used to find the directory containing filename. The file
| |
| searched for in PATH need not be executable. When bash is not in posix mode, the current
| |
| directory is searched if no file is found in PATH. If the sourcepath option to the shopt
| |
| builtin command is turned off, the PATH is not searched. If any arguments are supplied,
| |
| they become the positional parameters when filename is executed. Otherwise the positional
| |
| parameters are unchanged. If the -T option is enabled, source inherits any trap on DEBUG;
| |
| if it is not, any DEBUG trap string is saved and restored around the call to source, and
| |
| source unsets the DEBUG trap while it executes. If -T is not set, and the sourced file
| |
| changes the DEBUG trap, the new value is retained when source completes. The return sta‐
| |
| tus is the status of the last command exited within the script (0 if no commands are exe‐
| |
| cuted), and false if filename is not found or cannot be read.
| |
|
| |
|
| alias [-p] [name[=value] ...]
| | ;<nowiki>. filename [arguments]</nowiki> |
| Alias with no arguments or with the -p option prints the list of aliases in the form alias
| | ;<nowiki>source filename [arguments]</nowiki> |
| name=value on standard output. When arguments are supplied, an alias is defined for each
| | :現在のシェル環境で filename からコマンドを読み込んで実行し、 filename から最後に実行されたコマンドの終了ステータスを返す。 filename にスラッシュが含まれていない場合、PATH 内のファイル名を使用して filename を含むディレクトリを検索する。 PATHで検索されるファイルは実行可能である必要はない。 bashがposixモードでない場合、PATHにファイルが見つからなければ、カレント・ディレクトリが検索される。 shopt組み込みコマンドのsourcepathオプションがオフの場合、PATHは検索されない。 引数が与えられている場合、それらは filename が実行されるときの位置パラメーターとなる。 それ以外の場合、位置パラメーターは変更されない。 -Tオプションが有効な場合、sourceはDEBUGのトラップを継承する。有効でない場合、DEBUGトラップ文字列はsourceへの呼び出しの周囲に保存および復元され、sourceは実行中にDEBUGトラップの設定を解除する。 Tが設定されておらず、ソース・ファイルがDEBUGトラップを変更した場合、ソースが完了すると新しい値が保持される。 戻りステータスは、スクリプト内で最後に終了したコマンドのステータス(コマンドが実行されていない場合は0)であり、filenameが見つからないか読み取れない場合はfalseである。 |
| name whose value is given. A trailing space in value causes the next word to be checked
| |
| for alias substitution when the alias is expanded. For each name in the argument list for
| |
| which no value is supplied, the name and value of the alias is printed. Alias returns
| |
| true unless a name is given for which no alias has been defined.
| |
|
| |
|
| bg [jobspec ...]
| | ;<nowiki>alias [-p] [name[=value] ...]</nowiki> |
| Resume each suspended job jobspec in the background, as if it had been started with &. If
| | :引数なし、または-pオプションを指定したAliasは、alias name=valueという形式でエイリアスのリストを標準出力に表示する。 引数が与えられると、値が与えられる各名称に対してエイリアスが定義される。 valueの末尾に空白があると、エイリアスが展開されるときに、次の単語でエイリアスの置換がチェックされる。 値が与えられていない引数リストの各名に対して、エイリアスの名前と値が表示される。 エイリアスが定義されていない名前が与えられない限り、Aliasは真を返す。 |
| jobspec is not present, the shell's notion of the current job is used. bg jobspec returns
| |
| 0 unless run when job control is disabled or, when run with job control enabled, any spec‐
| |
| ified jobspec was not found or was started without job control.
| |
|
| |
|
| bind [-m keymap] [-lpsvPSVX]
| | ;<nowiki>bg [jobspec ...]</nowiki> |
| bind [-m keymap] [-q function] [-u function] [-r keyseq]
| | :中断された各 jobspec をバックグラウンドで再開する。 jobspecが存在しない場合、シェルの現在のジョブの概念が使用される。 bg jobspecは、ジョブ制御が無効になっているときに実行されない限り0を返し、ジョブ制御が有効になっているときに実行された場合は、指定されたjobspecが見つからないか、ジョブ制御なしで開始された。 |
| bind [-m keymap] -f filename
| |
| bind [-m keymap] -x keyseq:shell-command
| |
| bind [-m keymap] keyseq:function-name
| |
| bind [-m keymap] keyseq:readline-command
| |
| Display current readline key and function bindings, bind a key sequence to a readline
| |
| function or macro, or set a readline variable. Each non-option argument is a command as
| |
| it would appear in .inputrc, but each binding or command must be passed as a separate ar‐
| |
| gument; e.g., '"\C-x\C-r": re-read-init-file'. Options, if supplied, have the following
| |
| meanings:
| |
| -m keymap
| |
| Use keymap as the keymap to be affected by the subsequent bindings. Acceptable
| |
| keymap names are emacs, emacs-standard, emacs-meta, emacs-ctlx, vi, vi-move,
| |
| vi-command, and vi-insert. vi is equivalent to vi-command (vi-move is also a syn‐
| |
| onym); emacs is equivalent to emacs-standard.
| |
| -l List the names of all readline functions.
| |
| -p Display readline function names and bindings in such a way that they can be re-
| |
| read.
| |
| -P List current readline function names and bindings.
| |
| -s Display readline key sequences bound to macros and the strings they output in such
| |
| a way that they can be re-read.
| |
| -S Display readline key sequences bound to macros and the strings they output.
| |
| -v Display readline variable names and values in such a way that they can be re-read.
| |
| -V List current readline variable names and values.
| |
| -f filename
| |
| Read key bindings from filename.
| |
| -q function
| |
| Query about which keys invoke the named function.
| |
| -u function
| |
| Unbind all keys bound to the named function.
| |
| -r keyseq
| |
| Remove any current binding for keyseq.
| |
| -x keyseq:shell-command
| |
| Cause shell-command to be executed whenever keyseq is entered. When shell-command
| |
| is executed, the shell sets the READLINE_LINE variable to the contents of the read‐
| |
| line line buffer and the READLINE_POINT and READLINE_MARK variables to the current
| |
| location of the insertion point and the saved insertion point (the mark), respec‐
| |
| tively. If the executed command changes the value of any of READLINE_LINE, READ‐
| |
| LINE_POINT, or READLINE_MARK, those new values will be reflected in the editing
| |
| state.
| |
| -X List all key sequences bound to shell commands and the associated commands in a
| |
| format that can be reused as input.
| |
|
| |
|
| The return value is 0 unless an unrecognized option is given or an error occurred.
| | ;<nowiki>bind [-m keymap] [-lpsvPSVX]</nowiki> |
| | ;<nowiki>bind [-m keymap] [-q function] [-u function] [-r keyseq]</nowiki> |
| | ;<nowiki>bind [-m keymap] -f filename</nowiki> |
| | ;<nowiki>bind [-m keymap] -x keyseq:shell-command</nowiki> |
| | ;<nowiki>bind [-m keymap] keyseq:function-name</nowiki> |
| | ;<nowiki>bind [-m keymap] keyseq:readline-command</nowiki> |
| | :現在の readline キーと関数のバインディングを表示したり、キーシーケンスを readline 関数やマクロにバインドしたり、readline 変数を設定したりする。 オプション以外の各引数は、.inputrcに表示されるコマンドであるが、各バインディングまたはコマンドは、別の引数として渡されなければならない;例えば、'"˶-xC-r": re-read-init-file'. オプションが与えられた場合、以下の意味を持つ: |
| | ::;-m keymap |
| | :::後続のバインディングの影響を受けるキーマップとしてkeymapを使う。 使用可能なキーマップ名は、emacs、emacs-standard、 emacs-meta、emacs-ctlx、vi、vi-move、vi-command、vi-insertである。 viはvi-commandと等価であり(vi-moveも同義語である)、emacsは emacs-standardと等価である。 |
| | ::;-l |
| | :::すべてのreadline関数の名前を列挙する。 |
| | ::;-p |
| | :::readlineの関数名とバインディングを、再読込できるように表示する。 |
| | ::;-P |
| | :::現在のreadline関数名とバインディングをリストアップする。 |
| | ::;-s |
| | :::マクロにバインドされたreadlineキーシーケンスと、それらが出力する文字列を、再読み取りできるように表示する。 |
| | ::;-S |
| | :::マクロにバインドされたreadlineキーシーケンスと、それらが出力する文字列を表示する。 |
| | ::;-v |
| | :::リードラインの変数名と値を再読込できるように表示する。 |
| | ::;-V |
| | :::現在のリードライン変数の名前と値をリストアップする。 |
| | ::;-f filename |
| | :::ファイル名からキーバインディングを読み込む。 |
| | ::;-q function |
| | :::どのキーが指定された関数を呼び出すかを問い合わせる。 |
| | ::;-u function |
| | :::指定された関数にバインドされているすべてのキーをアンバインドする。 |
| | ::;-r keyseq |
| | :::keyseqの現在のバインディングを削除する。 |
| | ::;-x keyseq:shell-command |
| | :::keyseqが入力されるたびにシェルコマンドを実行させる。 shell-commandが実行されると、シェルは'''READLINE_LINE'''変数に読み取り行バッファの内容を設定し、'''READLINE_POINT'''変数と'''READLINE_MARK'''変数にそれぞれ現在の挿入位置と保存された挿入位置(マーク)を設定する。 実行されたコマンドが'''READLINE_LINE'''、'''READLINE_POINT'''、'''READLINE_MARK'''のいずれかの値を変更した場合、それらの新しい値は編集状態に反映される。 |
| | ::;-X |
| | :::シェルコマンドにバインドされているすべてのキーシーケンスと、関連するコマンドを、入力として再利用できる形式でリストアップする。 |
|
| |
|
| break [n]
| | :認識できないオプションが与えられるか、エラーが発生しない限り、戻り値は0である。 |
| Exit from within a for, while, until, or select loop. If n is specified, break n levels.
| |
| n must be ≥ 1. If n is greater than the number of enclosing loops, all enclosing loops
| |
| are exited. The return value is 0 unless n is not greater than or equal to 1.
| |
|
| |
|
| builtin shell-builtin [arguments]
| | ;break [n] |
| Execute the specified shell builtin, passing it arguments, and return its exit status.
| | :for、while、until、selectループの中で終了する。 nが指定された場合、nレベルブレークする。nは1以上でなければならない。 nがループの数より大きい場合、すべてのループが終了する。 nが1以上でなければ、戻り値は0である。 |
| This is useful when defining a function whose name is the same as a shell builtin, retain‐
| |
| ing the functionality of the builtin within the function. The cd builtin is commonly re‐
| |
| defined this way. The return status is false if shell-builtin is not a shell builtin com‐
| |
| mand.
| |
|
| |
|
| caller [expr]
| | ;<nowiki>builtin shell-builtin [arguments]</nowiki> |
| Returns the context of any active subroutine call (a shell function or a script executed
| | :指定されたシェル組み込み関数に引数を渡して実行し、その終了ステータスを返す。これは、シェル組み込み関数と同じ名前の関数を定義し、関数内で組み込み関数の機能を保持する場合に便利である。 cd 組み込み関数は一般的にこの方法で再定義される。 shell-builtin がシェル組み込みコマンドでない場合、戻り値は false となる。 |
| with the . or source builtins). Without expr, caller displays the line number and source
| |
| filename of the current subroutine call. If a non-negative integer is supplied as expr,
| |
| caller displays the line number, subroutine name, and source file corresponding to that
| |
| position in the current execution call stack. This extra information may be used, for ex‐
| |
| ample, to print a stack trace. The current frame is frame 0. The return value is 0 un‐
| |
| less the shell is not executing a subroutine call or expr does not correspond to a valid
| |
| position in the call stack.
| |
|
| |
|
| cd [-L|[-P [-e]] [-@]] [dir]
| | ;<nowiki>caller [expr]</nowiki> |
| Change the current directory to dir. if dir is not supplied, the value of the HOME shell
| | :アクティブなサブルーチン呼び出し(シェル関数、.または source 組み込み関数で実行されるスクリプト)のコンテキストを返す。 expr を指定しないと、呼び出し元は現在のサブルーチン呼び出しの行番号とソースファイル名を表示する。 exprとして負でない整数が指定された場合、呼び出し元は、現在の実行呼び出しスタックのその位置に対応する行番号、サブルーチン名、およびソースファイルを表示する。 この追加情報は、スタックトレースを表示する場合などに使用できる。 シェルがサブルーチン呼び出しを実行していないか、exprがコールスタックの有効な位置に対応していない場合を除き、戻り値は0である。 |
| variable is the default. Any additional arguments following dir are ignored. The vari‐
| |
| able CDPATH defines the search path for the directory containing dir: each directory name
| |
| in CDPATH is searched for dir. Alternative directory names in CDPATH are separated by a
| |
| colon (:). A null directory name in CDPATH is the same as the current directory, i.e.,
| |
| ``.''. If dir begins with a slash (/), then CDPATH is not used. The -P option causes cd
| |
| to use the physical directory structure by resolving symbolic links while traversing dir
| |
| and before processing instances of .. in dir (see also the -P option to the set builtin
| |
| command); the -L option forces symbolic links to be followed by resolving the link after
| |
| processing instances of .. in dir. If .. appears in dir, it is processed by removing the
| |
| immediately previous pathname component from dir, back to a slash or the beginning of dir.
| |
| If the -e option is supplied with -P, and the current working directory cannot be success‐
| |
| fully determined after a successful directory change, cd will return an unsuccessful sta‐
| |
| tus. On systems that support it, the -@ option presents the extended attributes associ‐
| |
| ated with a file as a directory. An argument of - is converted to $OLDPWD before the di‐
| |
| rectory change is attempted. If a non-empty directory name from CDPATH is used, or if -
| |
| is the first argument, and the directory change is successful, the absolute pathname of
| |
| the new working directory is written to the standard output. The return value is true if
| |
| the directory was successfully changed; false otherwise.
| |
|
| |
|
| command [-pVv] command [arg ...]
| | ;<nowiki>cd [-L|[-P [-e]] [-@]] [dir]</nowiki> |
| Run command with args suppressing the normal shell function lookup. Only builtin commands
| | :dirが与えられない場合、'''HOME'''シェル変数の値が デフォルトとなる。 dirに続く追加の引数は無視される。 変数'''CDPATH'''は、dirを含むディレクトリの検索パスを定義する。 '''CDPATH'''内の代替ディレクトリ名は、コロン(:)で区切られる。 '''CDPATH'''内のディレクトリ名がNULLの場合、カレントディレクトリと同じ、つまり ``. dirがスラッシュ(/)で始まる場合、'''CDPATH'''は使われない。 -Pオプションをつけると、cdはdirを走査している間、dir中の...のインスタンスを処理する前にシンボリックリンクを解決して物理的なディレクトリ構造を使用するようになる(set組み込みコマンドの-Pオプションも参照のこと)。 .がdirに現れた場合、dirから直前のパス名コンポーネントを削除し、スラッシュまたはdirの先頭に戻して処理される。-Pとともに-eオプションが与えられ、ディレクトリ変更に成功した後にカレント作業ディレクトリを正しく決定できない場合、cdは失敗ステータスを返す。 これをサポートするシステムでは、-@オプションは、ファイルに関連する拡張属性をディレクトリとして表示する。 引数-は、ディレクトリの変更を試みる前に$OLDPWDに変換される。 '''CDPATH'''から空でないディレクトリ名が使用された場合、または - が最初の引数で、ディレクトリ変更が成功した場合、 新しい作業ディレクトリの絶対パス名が標準出力に書き出される。 戻り値は、ディレクトリの変更が成功した場合は真、そうでない場合は偽である。 |
| or commands found in the PATH are executed. If the -p option is given, the search for
| |
| command is performed using a default value for PATH that is guaranteed to find all of the
| |
| standard utilities. If either the -V or -v option is supplied, a description of command
| |
| is printed. The -v option causes a single word indicating the command or filename used to
| |
| invoke command to be displayed; the -V option produces a more verbose description. If the
| |
| -V or -v option is supplied, the exit status is 0 if command was found, and 1 if not. If
| |
| neither option is supplied and an error occurred or command cannot be found, the exit sta‐
| |
| tus is 127. Otherwise, the exit status of the command builtin is the exit status of com‐
| |
| mand.
| |
|
| |
|
| compgen [option] [word]
| | ;<nowiki>command [-pVv] command [arg ...]</nowiki> |
| Generate possible completion matches for word according to the options, which may be any
| | :通常のシェル関数検索を抑制して、argsでコマンドを実行する。 組み込みコマンドまたは '''PATH''' で見つかったコマンドのみが実行される。 -pオプションが与えられると、標準ユーティリティがすべて見つかることが保証されている'''PATH'''のデフォルト値を用いてコマンドの検索が行われる。 -Vまたは-vオプションが与えられると、コマンドの説明が表示される。 -vオプションを指定すると、コマンドを呼び出すために使用されたコマンドまたはファイル名を示す単一の単語が表示される。 -Vまたは-vオプションが指定された場合、コマンドが見つかれば終了ステータスは0になり、見つからなければ1になる。 どちらのオプションも指定されず、エラーが発生したかコマンドが見つからなかった場合、終了ステータスは127となる。 それ以外の場合は、コマンド組み込み関数の終了ステータスが command の終了ステータスになる。 |
| option accepted by the complete builtin with the exception of -p and -r, and write the
| |
| matches to the standard output. When using the -F or -C options, the various shell vari‐
| |
| ables set by the programmable completion facilities, while available, will not have useful
| |
| values.
| |
|
| |
|
| The matches will be generated in the same way as if the programmable completion code had
| | ;<nowiki>compgen [option] [word]</nowiki> |
| generated them directly from a completion specification with the same flags. If word is
| | :-pと-rを除く、complete組み込み関数が受け付けるどのオプションでもよい。 -F または -C オプションを使用する場合、プログラム可能な補完機能によって設定されるさまざまなシェル変数は使用可能であるが、有用な値を持たない。 |
| specified, only those completions matching word will be displayed.
| |
|
| |
|
| The return value is true unless an invalid option is supplied, or no matches were gener‐
| | :マッチは、プログラマブル補完コードが同じフラグを持つ補完指定から直接生成したのと同じ方法で生成される。 wordが指定された場合、wordにマッチする補完のみが表示される。 |
| ated.
| |
|
| |
|
| complete [-abcdefgjksuv] [-o comp-option] [-DEI] [-A action] [-G globpat] [-W wordlist]
| | :無効なオプションが与えられるか、マッチが生成されない限り、戻り値は真である。 |
| [-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] name [name ...]
| |
| complete -pr [-DEI] [name ...]
| |
| Specify how arguments to each name should be completed. If the -p option is supplied, or
| |
| if no options are supplied, existing completion specifications are printed in a way that
| |
| allows them to be reused as input. The -r option removes a completion specification for
| |
| each name, or, if no names are supplied, all completion specifications. The -D option in‐
| |
| dicates that other supplied options and actions should apply to the ``default'' command
| |
| completion; that is, completion attempted on a command for which no completion has previ‐
| |
| ously been defined. The -E option indicates that other supplied options and actions
| |
| should apply to ``empty'' command completion; that is, completion attempted on a blank
| |
| line. The -I option indicates that other supplied options and actions should apply to
| |
| completion on the initial non-assignment word on the line, or after a command delimiter
| |
| such as ; or |, which is usually command name completion. If multiple options are sup‐
| |
| plied, the -D option takes precedence over -E, and both take precedence over -I. If any
| |
| of -D, -E, or -I are supplied, any other name arguments are ignored; these completions
| |
| only apply to the case specified by the option.
| |
|
| |
|
| The process of applying these completion specifications when word completion is attempted
| | ;<nowiki>complete [-abcdefgjksuv] [-o comp-option] [-DEI] [-A action] [-G globpat] [-W wordlist]</nowiki> |
| is described above under Programmable Completion.
| | :;<nowiki>[-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] name [name ...]</nowiki> |
| | ;<nowiki>complete -pr [-DEI] [name ...]</nowiki> |
| | :各名前に対する引数をどのように補完するかを指定する。 -pオプションが与えられている場合、またはオプションが与えられていない場合、既存の補完指定が入力として再利用できるような形で出力される。 rオプションは、各名前の補完指定を削除し、名前が与えられていない場合は、すべての補完指定を削除する。 -Dオプションは、他のオプションやアクションが``default''コマンドの 補完に適用されることを示す。 -Eオプションは他のオプションやアクションが``empty''コマンド補完に適用されることを示す。 -Iオプションは、他のオプションやアクションが、その行の最初の非割り当ての単語、またはコマンドの区切り文字(;や|など)の後の補完に適用されることを示す。 複数のオプションが指定された場合、-Dオプションは-Eよりも優先され、両者は-Iよりも優先される。 -D、-E、-Iのいずれかを指定すると、他の名前引数は無視される。 |
|
| |
|
| Other options, if specified, have the following meanings. The arguments to the -G, -W,
| | :これらの補完は、オプションで指定された場合にのみ適用される。単語補完が試みられたときにこれらの補完指定を適用する処理については、上記の「プログラム可能な補完」で説明されている。 |
| and -X options (and, if necessary, the -P and -S options) should be quoted to protect them
| |
| from expansion before the complete builtin is invoked.
| |
| -o comp-option
| |
| The comp-option controls several aspects of the compspec's behavior beyond the
| |
| simple generation of completions. comp-option may be one of:
| |
| bashdefault
| |
| Perform the rest of the default bash completions if the compspec generates
| |
| no matches.
| |
| default Use readline's default filename completion if the compspec generates no
| |
| matches.
| |
| dirnames
| |
| Perform directory name completion if the compspec generates no matches.
| |
| filenames
| |
| Tell readline that the compspec generates filenames, so it can perform any
| |
| filename-specific processing (like adding a slash to directory names,
| |
| quoting special characters, or suppressing trailing spaces). Intended to
| |
| be used with shell functions.
| |
| noquote Tell readline not to quote the completed words if they are filenames
| |
| (quoting filenames is the default).
| |
| nosort Tell readline not to sort the list of possible completions alphabetically.
| |
| nospace Tell readline not to append a space (the default) to words completed at
| |
| the end of the line.
| |
| plusdirs
| |
| After any matches defined by the compspec are generated, directory name
| |
| completion is attempted and any matches are added to the results of the
| |
| other actions.
| |
| -A action
| |
| The action may be one of the following to generate a list of possible completions:
| |
| alias Alias names. May also be specified as -a.
| |
| arrayvar
| |
| Array variable names.
| |
| binding Readline key binding names.
| |
| builtin Names of shell builtin commands. May also be specified as -b.
| |
| command Command names. May also be specified as -c.
| |
| directory
| |
| Directory names. May also be specified as -d.
| |
| disabled
| |
| Names of disabled shell builtins.
| |
| enabled Names of enabled shell builtins.
| |
| export Names of exported shell variables. May also be specified as -e.
| |
| file File names. May also be specified as -f.
| |
| function
| |
| Names of shell functions.
| |
| group Group names. May also be specified as -g.
| |
| helptopic
| |
| Help topics as accepted by the help builtin.
| |
| hostname
| |
| Hostnames, as taken from the file specified by the HOSTFILE shell vari‐
| |
| able.
| |
| job Job names, if job control is active. May also be specified as -j.
| |
| keyword Shell reserved words. May also be specified as -k.
| |
| running Names of running jobs, if job control is active.
| |
| service Service names. May also be specified as -s.
| |
| setopt Valid arguments for the -o option to the set builtin.
| |
| shopt Shell option names as accepted by the shopt builtin.
| |
| signal Signal names.
| |
| stopped Names of stopped jobs, if job control is active.
| |
| user User names. May also be specified as -u.
| |
| variable
| |
| Names of all shell variables. May also be specified as -v.
| |
| -C command
| |
| command is executed in a subshell environment, and its output is used as the pos‐
| |
| sible completions.
| |
| -F function
| |
| The shell function function is executed in the current shell environment. When
| |
| the function is executed, the first argument ($1) is the name of the command whose
| |
| arguments are being completed, the second argument ($2) is the word being com‐
| |
| pleted, and the third argument ($3) is the word preceding the word being completed
| |
| on the current command line. When it finishes, the possible completions are re‐
| |
| trieved from the value of the COMPREPLY array variable.
| |
| -G globpat
| |
| The pathname expansion pattern globpat is expanded to generate the possible com‐
| |
| pletions.
| |
| -P prefix
| |
| prefix is added at the beginning of each possible completion after all other op‐
| |
| tions have been applied.
| |
| -S suffix
| |
| suffix is appended to each possible completion after all other options have been
| |
| applied.
| |
| -W wordlist
| |
| The wordlist is split using the characters in the IFS special variable as delim‐
| |
| iters, and each resultant word is expanded. Shell quoting is honored within
| |
| wordlist, in order to provide a mechanism for the words to contain shell metachar‐
| |
| acters or characters in the value of IFS. The possible completions are the mem‐
| |
| bers of the resultant list which match the word being completed.
| |
| -X filterpat
| |
| filterpat is a pattern as used for pathname expansion. It is applied to the list
| |
| of possible completions generated by the preceding options and arguments, and each
| |
| completion matching filterpat is removed from the list. A leading ! in filterpat
| |
| negates the pattern; in this case, any completion not matching filterpat is re‐
| |
| moved.
| |
|
| |
|
| The return value is true unless an invalid option is supplied, an option other than -p or
| | :その他のオプションが指定されている場合は、以下の意味を持つ。 G、-W、-Xオプションの引数(必要であれば-Pと-Sオプションも) は、組み込み関数が起動する前に展開されないように引用符で囲む。 |
| -r is supplied without a name argument, an attempt is made to remove a completion specifi‐
| | :;-o comp-option |
| cation for a name for which no specification exists, or an error occurs adding a comple‐
| | ::comp-optionは、単純な補完の生成だけでなく、compspecの動作のいくつかの側面を制御する: |
| tion specification.
| | :::bashdefault |
| | ::::compspecがマッチを生成しなかった場合、残りのデフォルトのbash補完を実行する。 |
| | :::default |
| | ::::compspecがマッチを生成しない場合、readlineのデフォルトのファイル名補完を使用する。 |
| | :::dirnames |
| | ::::compspecがマッチを生成しない場合、ディレクトリ名の補完を行う。 |
| | :::filenames |
| | ::::readlineに、compspecがファイル名を生成することを伝え、ファイル名固有の処理(ディレクトリ名にスラッシュを追加したり、特殊文字を引用したり、末尾の空白を抑えたり)を実行できるようにする。 シェル関数と一緒に使うことを意図している。 |
| | :::noquote |
| | ::::readlineに、完了した単語がファイル名の場合は引用しないように指示する(ファイル名を引用するのがデフォルト)。 |
| | :::nosort |
| | ::::readlineに、補完可能リストをアルファベット順に並べ替えないように指示する。 |
| | :::nospace |
| | ::::readlineに、行末で完了した単語にスペース(デフォルト)を追加しないように指示する。 |
| | :::plusdirs |
| | ::::compspecで定義されたマッチが生成された後、ディレクトリ名の補完が試みられ、マッチしたものは他のアクションの結果に追加される。 |
| | :;-A action |
| | ::アクションは以下のいずれかであり、可能性のある完了のリストを生成する: |
| | :::alias |
| | ::::エイリアス名。 -aとして指定することもできる。 |
| | :::arrayvar |
| | ::::配列変数名。 |
| | :::binding |
| | ::::キーバインディング名を読み込む。 |
| | :::builtin |
| | ::::シェル組み込みコマンドの名前。 -bとしても指定できる。 |
| | :::command |
| | ::::コマンド名。 -cとしても指定できる。 |
| | :::directory |
| | ::::ディレクトリ名。 dとしても指定できる。 |
| | :::disabled |
| | ::::無効化されたシェルビルトインの名前。 |
| | :::enabled |
| | ::::使用可能なシェルビルトインの名前。 |
| | :::export |
| | ::::エクスポートされるシェル変数の名前。 -e として指定することもできる。 |
| | :::file |
| | ::::ファイル名。 -fを指定することもできる。 |
| | :::function |
| | ::::シェル関数の名前。 |
| | :::group |
| | ::::グループ名。 -gとしても指定できる。 |
| | :::helptopic |
| | ::::helpビルトインが受け付けるヘルプトピック。 |
| | :::hostname |
| | ::::HOSTFILEシェル変数で指定されたファイルから取られたホスト名。 |
| | :::job |
| | ::::ジョブ制御が有効な場合は、ジョブ名。 -jとしても指定できる。 |
| | :::keyword |
| | ::::シェル予約語。 -kとしても指定できる。 |
| | :::running |
| | ::::ジョブ制御が有効な場合、実行中のジョブの名前。 |
| | :::service |
| | ::::サービス名。 -sとしても指定できる。 |
| | :::setopt |
| | ::::set 組み込み関数に対する -o オプションの有効な引数。 |
| | :::shopt |
| | ::::shopt 組み込み関数が受け付けるシェルオプション名。 |
| | :::signal |
| | ::::シグナルの名前。 |
| | :::stopped |
| | ::::ジョブ制御が有効な場合、停止しているジョブの名前。 |
| | :::user |
| | ::::ユーザー名。 -uとしても指定できる。 |
| | :::variable |
| | ::::すべてのシェル変数の名前。 v として指定することもできる。 |
| | :;-C command |
| | ::コマンドはサブシェル環境で実行され、その出力が可能な補完として使われる。 |
| | :;-F function |
| | ::シェル関数関数は、現在のシェル環境で実行される。 この関数が実行されると、第1引数($1)は補完される引数のコマンド名、第2引数($2)は補完される単語、第3引数($3)は現在のコマンド行で補完される単語の前の単語である。 終了すると、COMPREPLY配列変数の値から可能な補完が検索される。 |
| | :;-G globpat |
| | ::パス名展開パターンglobpatが展開され、可能な補完が生成される。 |
| | :;-P prefix |
| | ::接頭辞は、他のすべてのオプションが適用された後、各完了候補の先頭に追加される。 |
| | :;-S suffix |
| | ::サフィックスは、他のすべてのオプションが適用された後、各完了可能なものに付加される。 |
| | :;-W wordlist |
| | ::ワードリストは特殊変数IFSの文字を区切り文字として分割され、各単語が展開される。 単語の中にシェルのメタ文字やIFSの値に含まれる文字があってもよいように、単語リスト内ではシェル引用符で囲む。 可能な補完は、補完される単語にマッチする結果リストのメンバーである。 |
| | :;-X filterpat |
| | ::filterpatはパス名展開に使われるパターンである。 これは、直前のオプションと引数で生成された補完候補のリストに適用され、 filterpatにマッチする補完がリストから取り除かれる。 filterpat の先頭の ! はパターンを否定する。この場合、 filterpat にマッチしない補完はすべて取り除かれる。 |
|
| |
|
| compopt [-o option] [-DEI] [+o option] [name]
| | :無効なオプションが指定された場合、-pまたは-r以外のオプションが name引数なしで指定された場合、指定が存在しない名前の補完指定を削除しようとした場合、または補完指定の追加エラーが発生した場合を除き、戻り値は真である。 |
| Modify completion options for each name according to the options, or for the currently-ex‐
| |
| ecuting completion if no names are supplied. If no options are given, display the comple‐
| |
| tion options for each name or the current completion. The possible values of option are
| |
| those valid for the complete builtin described above. The -D option indicates that other
| |
| supplied options should apply to the ``default'' command completion; that is, completion
| |
| attempted on a command for which no completion has previously been defined. The -E option
| |
| indicates that other supplied options should apply to ``empty'' command completion; that
| |
| is, completion attempted on a blank line. The -I option indicates that other supplied op‐
| |
| tions should apply to completion on the initial non-assignment word on the line, or after
| |
| a command delimiter such as ; or |, which is usually command name completion.
| |
|
| |
|
| The return value is true unless an invalid option is supplied, an attempt is made to mod‐
| | ;<nowiki>compopt [-o option] [-DEI] [+o option] [name]</nowiki> |
| ify the options for a name for which no completion specification exists, or an output er‐
| | :オプションにしたがって各名称の補完オプションを変更するか、名前が与えられていない場合は現在実行中の補完オプションを変更する。 オプションが与えられない場合は、各名前または現在実行中の補完の補完オプションを表示する。 optionに指定できる値は、前述の完全組み込み関数で有効な値である。 Dオプションは、他のオプションが ``デフォルト'' コマンド補完に適用されることを示す。 Eオプションは、他のオプションが``empty''コマンド補完に適用される ことを示す。 Iオプションは、他のオプションが、その行の最初の非割り当ての単語、またはコマンドの区切り文字である;や|の後の補完に適用されることを示す。 |
| ror occurs.
| |
|
| |
|
| continue [n]
| | :無効なオプションが与えられるか、補完指定が存在しない名前のオプションを変更しようとするか、出力エラーが発生しない限り、戻り値は真である。 |
| Resume the next iteration of the enclosing for, while, until, or select loop. If n is
| |
| specified, resume at the nth enclosing loop. n must be ≥ 1. If n is greater than the
| |
| number of enclosing loops, the last enclosing loop (the ``top-level'' loop) is resumed.
| |
| The return value is 0 unless n is not greater than or equal to 1.
| |
|
| |
|
| declare [-aAfFgiIlnrtux] [-p] [name[=value] ...]
| | ;<nowiki>continue [n]</nowiki> |
| typeset [-aAfFgiIlnrtux] [-p] [name[=value] ...]
| | :for、while、until、またはselectループの次の反復を再開する。 nが指定された場合、n番目のループで再開する。 nがループの数より大きい場合、最後のループ(``トップレベル''ループ)が再開される。nが1以上でなければ、戻り値は0である。 |
| Declare variables and/or give them attributes. If no names are given then display the
| |
| values of variables. The -p option will display the attributes and values of each name.
| |
| When -p is used with name arguments, additional options, other than -f and -F, are ig‐
| |
| nored. When -p is supplied without name arguments, it will display the attributes and
| |
| values of all variables having the attributes specified by the additional options. If no
| |
| other options are supplied with -p, declare will display the attributes and values of all
| |
| shell variables. The -f option will restrict the display to shell functions. The -F op‐
| |
| tion inhibits the display of function definitions; only the function name and attributes
| |
| are printed. If the extdebug shell option is enabled using shopt, the source file name
| |
| and line number where each name is defined are displayed as well. The -F option implies
| |
| -f. The -g option forces variables to be created or modified at the global scope, even
| |
| when declare is executed in a shell function. It is ignored in all other cases. The -I
| |
| option causes local variables to inherit the attributes (except the nameref attribute) and
| |
| value of any existing variable with the same name at a surrounding scope. If there is no
| |
| existing variable, the local variable is initially unset. The following options can be
| |
| used to restrict output to variables with the specified attribute or to give variables at‐
| |
| tributes:
| |
| -a Each name is an indexed array variable (see Arrays above).
| |
| -A Each name is an associative array variable (see Arrays above).
| |
| -f Use function names only.
| |
| -i The variable is treated as an integer; arithmetic evaluation (see ARITHMETIC EVALU‐
| |
| ATION above) is performed when the variable is assigned a value.
| |
| -l When the variable is assigned a value, all upper-case characters are converted to
| |
| lower-case. The upper-case attribute is disabled.
| |
| -n Give each name the nameref attribute, making it a name reference to another vari‐
| |
| able. That other variable is defined by the value of name. All references, as‐
| |
| signments, and attribute modifications to name, except those using or changing the
| |
| -n attribute itself, are performed on the variable referenced by name's value. The
| |
| nameref attribute cannot be applied to array variables.
| |
| -r Make names readonly. These names cannot then be assigned values by subsequent as‐
| |
| signment statements or unset.
| |
| -t Give each name the trace attribute. Traced functions inherit the DEBUG and RETURN
| |
| traps from the calling shell. The trace attribute has no special meaning for vari‐
| |
| ables.
| |
| -u When the variable is assigned a value, all lower-case characters are converted to
| |
| upper-case. The lower-case attribute is disabled.
| |
| -x Mark names for export to subsequent commands via the environment.
| |
|
| |
|
| Using `+' instead of `-' turns off the attribute instead, with the exceptions that +a and
| | ;<nowiki>declare [-aAfFgiIlnrtux] [-p] [name[=value] ...]</nowiki> |
| +A may not be used to destroy array variables and +r will not remove the readonly attri‐
| | ;<nowiki>typeset [-aAfFgiIlnrtux] [-p] [name[=value] ...]</nowiki> |
| bute. When used in a function, declare and typeset make each name local, as with the lo‐
| | :変数を宣言したり、属性を与えたりする。 名前が与えられていない場合は、変数の値を表示する。 -pオプションは、それぞれの名前の属性と値を表示する。-pが名前引数とともに使われた場合、-fと-F以外の追加オプションは無視される。 名前引数なしで -p を指定すると、追加オプションで指定された属性を持つすべての変数の属性と値が表示される。 他のオプションが -p とともに与えられない場合、 declare はすべてのシェル変数の属性と値を表示する。 -f オプションは、表示をシェル関数に限定する。 -F オプションは関数定義の表示を禁止し、関数名と属性のみが表示される。 shoptを使用してextdebugシェル・オプションを有効にすると、各名称が定義されているソース・ファイル名と行番号も表示される。 -F オプションは -f を意味する。 gオプションは、declareがシェル関数の中で実行された場合でも、変数をグローバル・スコープで作成または変更することを強制する。 それ以外の場合は無視される。 -Iオプションは、ローカル変数の属性(nameref属性を除く)と値を、周囲のスコープに存在する同名の変数に継承させる。 既存の変数がない場合、ローカル変数は初期状態で設定されない。 以下のオプションを使うと、指定した属性を持つ変数に出力を制限したり、変数に属性を与えたりすることができる: |
| cal command, unless the -g option is supplied. If a variable name is followed by =value,
| | :;-a |
| the value of the variable is set to value. When using -a or -A and the compound assign‐
| | :::各名称はインデックス付き配列変数である(上記の「[[#Arrays|Arrays ]]」を参照)。 |
| ment syntax to create array variables, additional attributes do not take effect until sub‐
| | :;-A |
| sequent assignments. The return value is 0 unless an invalid option is encountered, an
| | ::それぞれの名前は連想配列変数である(上記の「[[#Arrays|Arrays ]]」を参照)。 |
| attempt is made to define a function using ``-f foo=bar'', an attempt is made to assign a
| | :;-f |
| value to a readonly variable, an attempt is made to assign a value to an array variable
| | ::関数名のみを使用する。 |
| without using the compound assignment syntax (see Arrays above), one of the names is not a
| | :;-i |
| valid shell variable name, an attempt is made to turn off readonly status for a readonly
| | ::変数は整数として扱われ、変数に値が代入されると算術評価(上記のARITHMETIC EVALUATIONを参照)が行われる。 |
| variable, an attempt is made to turn off array status for an array variable, or an attempt
| | :;-l |
| is made to display a non-existent function with -f.
| | ::変数に値が代入されると、大文字はすべて小文字に変換される。 大文字属性は無効になる。 |
| | :;-n |
| | ::それぞれのnameにnameref属性を与え、別の変数への名前参照とする。 その別の変数は name の値によって定義される。 nameに対するすべての参照、代入、属性の変更は、-n属性そのものを使用または変更するものを除き、nameの値によって参照される変数に対して実行される。 nameref属性は配列変数には適用できない。 |
| | :;-r |
| | ::名前を読み取り専用にする。 これらの名前は、その後の代入文やアンセットによって値を代入することはできない。 |
| | :;-t |
| | ::それぞれの名前に trace 属性を与える。 トレースされた関数は、呼び出し元のシェルから DEBUG と RETURN トラップを継承する。 trace 属性は変数に対して特別な意味を持たない。 |
| | :;-u |
| | ::変数に値が代入されると、小文字はすべて大文字に変換される。 小文字属性は無効になる。 |
| | :;-x |
| | ::環境を通して後続のコマンドにエクスポートする名前をマークする。 |
|
| |
|
| dirs [-clpv] [+n] [-n]
| | :ただし、+aや+Aは配列変数を破棄するのに使ってはならず、+rはreadonly属性を削除しない。 関数内で使用する場合、-gオプションが与えられていない限り、declareとtypesetはlocalコマンドと同様に各変数名をローカルにする。 変数名の後に=valueが続くと、その変数の値がvalueに設定される。 -a または -A と複合代入構文を使用して配列変数を作成する場合、追加の属性はそれ以降の代入まで有効にならない。 無効なオプションに出会った場合、``-f foo=bar''を使って関数を定義しようとした場合、 読み取り専用変数に値を代入しようとした場合、複合代入構文を使わずに配列変数に 値を代入しようとした場合(上記の配列を参照)を除いて、戻り値は0である、 名前のいずれかが有効なシェル変数名でない、読み取り専用変数の読み取りステータスをオフにしようとした、配列変数の配列ステータスをオフにしようとした、存在しない関数を -f で表示しようとした。 |
| Without options, displays the list of currently remembered directories. The default dis‐
| |
| play is on a single line with directory names separated by spaces. Directories are added
| |
| to the list with the pushd command; the popd command removes entries from the list. The
| |
| current directory is always the first directory in the stack.
| |
| -c Clears the directory stack by deleting all of the entries.
| |
| -l Produces a listing using full pathnames; the default listing format uses a tilde to
| |
| denote the home directory.
| |
| -p Print the directory stack with one entry per line.
| |
| -v Print the directory stack with one entry per line, prefixing each entry with its
| |
| index in the stack.
| |
| +n Displays the nth entry counting from the left of the list shown by dirs when in‐
| |
| voked without options, starting with zero.
| |
| -n Displays the nth entry counting from the right of the list shown by dirs when in‐
| |
| voked without options, starting with zero.
| |
|
| |
|
| The return value is 0 unless an invalid option is supplied or n indexes beyond the end of
| | ;<nowiki>dirs [-clpv] [+n] [-n]</nowiki> |
| the directory stack.
| | :オプションなしで、現在記憶しているディレクトリのリストを表示する。 デフォルトでは、ディレクトリ名をスペースで区切って1行で表示する。 ディレクトリは pushd コマンドでリストに追加され、 popd コマンドはリストからエントリを削除する。 カレント・ディレクトリは常にスタックの最初のディレクトリである。 |
| | :;-c |
| | ::すべてのエントリを削除してディレクトリスタックをクリアする。 |
| | :;-l |
| | ::デフォルトのリスト形式では、ホームディレクトリを示すためにチルダを使用する。 |
| | :;-p |
| | ::ディレクトリスタックを1行1エントリで表示する。 |
| | :;-v |
| | ::各エントリの先頭にスタック内のインデックスを付けて、1行に1エントリずつディレクトリスタックを表示する。 |
| | :;+n |
| | ::オプションなしで起動した場合、dirsが表示するリストの左から数えてn番目のエントリーを、ゼロから順に表示する。 |
| | :;-n |
| | ::オプションなしで起動した場合、dirsが表示するリストの右から数えてn番目のエントリーを、ゼロから順に表示する。 |
|
| |
|
| disown [-ar] [-h] [jobspec ... | pid ... ]
| | :無効なオプションが与えられるか、n個のインデックスがディレクトリスタッ クの末尾を超えない限り、戻り値は0である。 |
| Without options, remove each jobspec from the table of active jobs. If jobspec is not
| |
| present, and neither the -a nor the -r option is supplied, the current job is used. If
| |
| the -h option is given, each jobspec is not removed from the table, but is marked so that
| |
| SIGHUP is not sent to the job if the shell receives a SIGHUP. If no jobspec is supplied,
| |
| the -a option means to remove or mark all jobs; the -r option without a jobspec argument
| |
| restricts operation to running jobs. The return value is 0 unless a jobspec does not
| |
| specify a valid job.
| |
|
| |
|
| echo [-neE] [arg ...]
| | ;<nowiki>disown [-ar] [-h] [jobspec ... | pid ... ]</nowiki> |
| Output the args, separated by spaces, followed by a newline. The return status is 0 un‐
| | :オプションを指定しない場合、アクティブなジョブのテーブルから各 jobspec を削除する。 jobspec が存在せず、-a オプションも -r オプションも与えられない場合、 現在のジョブが使用される。 h オプションが指定された場合、各 jobspec はテーブルから削除されないが、 シェルが SIGHUP を受信してもそのジョブに SIGHUP が送られないようにマークされる。 jobspec が与えられない場合、-a オプションはすべてのジョブを削除またはマークすることを意味する。jobspec 引数なしの -r オプションは、実行中のジョブに操作を制限する。 jobspec が有効なジョブを指定しない限り、戻り値は 0 である。 |
| less a write error occurs. If -n is specified, the trailing newline is suppressed. If
| |
| the -e option is given, interpretation of the following backslash-escaped characters is
| |
| enabled. The -E option disables the interpretation of these escape characters, even on
| |
| systems where they are interpreted by default. The xpg_echo shell option may be used to
| |
| dynamically determine whether or not echo expands these escape characters by default.
| |
| echo does not interpret -- to mean the end of options. echo interprets the following es‐
| |
| cape sequences:
| |
| \a alert (bell)
| |
| \b backspace
| |
| \c suppress further output
| |
| \e
| |
| \E an escape character
| |
| \f form feed
| |
| \n new line
| |
| \r carriage return
| |
| \t horizontal tab
| |
| \v vertical tab
| |
| \\ backslash
| |
| \0nnn the eight-bit character whose value is the octal value nnn (zero to three octal
| |
| digits)
| |
| \xHH the eight-bit character whose value is the hexadecimal value HH (one or two hex
| |
| digits)
| |
| \uHHHH the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value HHHH
| |
| (one to four hex digits)
| |
| \UHHHHHHHH
| |
| the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value HHHHHHHH
| |
| (one to eight hex digits)
| |
|
| |
|
| enable [-a] [-dnps] [-f filename] [name ...]
| | ;<nowiki>echo [-neE] [arg ...]</nowiki> |
| Enable and disable builtin shell commands. Disabling a builtin allows a disk command
| | :空白で区切られた引数を出力し、その後に改行する。 書き込みエラーが発生しない限り、リターン・ステータスは0である。 nを指定すると、末尾の改行が抑制される。 eオプションを指定すると、以下のバックスラッシュ・エスケープ文字の解釈が有効になる。 Eオプションを指定すると、これらのエスケープ文字がデフォルトで解釈されるシステムでも、その解釈を無効にする。 xpg_echo シェルオプションを使用すると、echo がデフォルトでこれらのエスケープ文字を展開するかどうかを動的に決定することができる。 echo は -- をオプションの終わりと解釈しない: |
| which has the same name as a shell builtin to be executed without specifying a full path‐
| | :;\a |
| name, even though the shell normally searches for builtins before disk commands. If -n is
| | ::アラート (ベル) |
| used, each name is disabled; otherwise, names are enabled. For example, to use the test
| | :;\b |
| binary found via the PATH instead of the shell builtin version, run ``enable -n test''.
| | ::バックスペース |
| The -f option means to load the new builtin command name from shared object filename, on
| | :;\c |
| systems that support dynamic loading. The -d option will delete a builtin previously
| | ::それ以上の出力を抑制する |
| loaded with -f. If no name arguments are given, or if the -p option is supplied, a list
| | :;\e |
| of shell builtins is printed. With no other option arguments, the list consists of all
| | :;\E |
| enabled shell builtins. If -n is supplied, only disabled builtins are printed. If -a is
| | ::エスケープキャラクター |
| supplied, the list printed includes all builtins, with an indication of whether or not
| | :;\f |
| each is enabled. If -s is supplied, the output is restricted to the POSIX special
| | ::フォームフィード |
| builtins. The return value is 0 unless a name is not a shell builtin or there is an error
| | :;\n |
| loading a new builtin from a shared object.
| | ::改行 |
| | :;\r |
| | ::キャリッジリターン |
| | :;\t |
| | ::水平タブ |
| | :;\v |
| | ::垂直タブ |
| | :;\\ |
| | ::バックスラッシュ |
| | :;\0nnn |
| | ::値が8進数値nnn(0~3桁の8進数)である8ビット文字 |
| | :;\xHH |
| | ::値が16進数HH(1桁または2桁の16進数)である8ビット文字 |
| | :;\uHHHH |
| | ::ユニコード(ISO/IEC 10646)文字で、その値は16進数値HHHH(1桁から4桁の16進数)である。 |
| | :;\UHHHHHHHH |
| | ::ユニコード(ISO/IEC 10646)文字で、その値が16進数のHHHHHHHHH(1~8桁の16進数)である。 |
|
| |
|
| eval [arg ...]
| | ;<nowiki>enable [-a] [-dnps] [-f filename] [name ...]</nowiki> |
| The args are read and concatenated together into a single command. This command is then
| | :シェル組み込みコマンドを有効/無効にする。 組み込みコマンドを無効にすると、シェルは通常ディスクコマンドの前に組み込みコマンドを検索するにもかかわらず、シェル組み込みコマンドと同じ名前のディスクコマンドをフルパス名を指定せずに実行できるようになる。 n を使用すると、各名称は無効になり、それ以外の場合は有効になる。 例えば、シェルのビルトインバージョンの代わりに PATH 経由で見つかった test バイナリを使うには、``enable -n test'' を実行する。fオプションは、動的ロードをサポートしているシステムでは、共有オブジェクトファイル名から新しい組み込みコマンド名をロードすることを意味する。 dオプションは-fでロードした組み込みコマンドを削除する。 name 引数が与えられないか、または -p オプションが与えられると、 シェル組み込みコマンドのリストが表示される。 他のオプション引数を指定しない場合、リストは有効なシェル組み込み関数すべてから構成される。 n を指定すると、無効な組み込み関数だけが表示される。 a を指定すると、すべての組み込み関数が出力され、それぞれが有効かどうかも表示される。 s を指定すると、出力は POSIX 特殊組み込み関数に制限される。 戻り値は、名前がシェル組み込み関数でないか、共有オブジェクトからの新規組み込み関数のロードにエラーがない限り 0 である。 |
| read and executed by the shell, and its exit status is returned as the value of eval. If
| |
| there are no args, or only null arguments, eval returns 0.
| |
|
| |
|
| exec [-cl] [-a name] [command [arguments]]
| | ;<nowiki>eval [arg ...]</nowiki> |
| If command is specified, it replaces the shell. No new process is created. The arguments
| | :引数が読み込まれ、1つのコマンドに連結される。 このコマンドはシェルによって読み込まれ実行され、その終了ステータスがevalの値として返される。 引数がない場合、あるいはnullの引数しかない場合、evalは0を返す。 |
| become the arguments to command. If the -l option is supplied, the shell places a dash at
| |
| the beginning of the zeroth argument passed to command. This is what login(1) does. The
| |
| -c option causes command to be executed with an empty environment. If -a is supplied, the
| |
| shell passes name as the zeroth argument to the executed command. If command cannot be
| |
| executed for some reason, a non-interactive shell exits, unless the execfail shell option
| |
| is enabled. In that case, it returns failure. An interactive shell returns failure if
| |
| the file cannot be executed. A subshell exits unconditionally if exec fails. If command
| |
| is not specified, any redirections take effect in the current shell, and the return status
| |
| is 0. If there is a redirection error, the return status is 1.
| |
|
| |
|
| exit [n]
| | ;exec [-cl] [-a name] [command [arguments]] |
| Cause the shell to exit with a status of n. If n is omitted, the exit status is that of
| | :commandが指定された場合、シェルを置き換える。 新しいプロセスは作られない。 引数は command の引数になる。 l オプションが与えられた場合、シェルは command に渡された引数の 0 番目の先頭にダッシュを置く。 これは login(1) が行うことである。 c オプションを指定すると、コマンドは空の環境で実行される。 a が与えられると、シェルは実行されるコマンドの 0 番目の引数として name を渡す。 何らかの理由でコマンドが実行できなかった場合、execfail シェルオプションが有効になっていない限り、非対話型シェルは終了する。 その場合は失敗を返す。 ファイルを実行できない場合、対話型シェルは失敗を返す。 サブシェルは、execが失敗すると無条件に終了する。 commandが指定されていない場合、リダイレクトは現在のシェルで有効になり、リターン・ステータスは0になる。リダイレクト・エラーがある場合、リターン・ステータスは1になる。 |
| the last command executed. A trap on EXIT is executed before the shell terminates.
| |
|
| |
|
| export [-fn] [name[=word]] ...
| | ;exit [n] |
| export -p
| | :nが省略された場合、終了ステータスは最後に実行されたコマンドのステータスとなる。 EXIT のトラップは、シェルが終了する前に実行される。 |
| The supplied names are marked for automatic export to the environment of subsequently exe‐
| |
| cuted commands. If the -f option is given, the names refer to functions. If no names are
| |
| given, or if the -p option is supplied, a list of names of all exported variables is
| |
| printed. The -n option causes the export property to be removed from each name. If a
| |
| variable name is followed by =word, the value of the variable is set to word. export re‐
| |
| turns an exit status of 0 unless an invalid option is encountered, one of the names is not
| |
| a valid shell variable name, or -f is supplied with a name that is not a function.
| |
|
| |
|
| fc [-e ename] [-lnr] [first] [last]
| | ;<nowiki>export [-fn] [name[=word]] ...</nowiki> |
| fc -s [pat=rep] [cmd]
| | ;export -p |
| The first form selects a range of commands from first to last from the history list and
| | :指定された名前は、その後に実行されるコマンドの環境に自動的にエクスポートされるようにマークされる。 -fオプションが指定された場合、名前は関数を参照する。 名前が指定されない場合、または -p オプションが指定された場合は、エクスポートされたすべての変数名のリストが表示される。 -n オプションを指定すると、各名称からエクスポート・プロパティが削除される。 変数名の後に=wordが続くと、その変数の値がwordに設定される。exportは、無効なオプションに遭遇するか、名前の1つが有効なシェル変数名でないか、-fに関数でない名前が指定されない限り、終了ステータス0を返す。 |
| displays or edits and re-executes them. First and last may be specified as a string (to
| |
| locate the last command beginning with that string) or as a number (an index into the his‐
| |
| tory list, where a negative number is used as an offset from the current command number).
| |
| When listing, a first or last of 0 is equivalent to -1 and -0 is equivalent to the current
| |
| command (usually the fc command); otherwise 0 is equivalent to -1 and -0 is invalid. If
| |
| last is not specified, it is set to the current command for listing (so that ``fc -l -10''
| |
| prints the last 10 commands) and to first otherwise. If first is not specified, it is set
| |
| to the previous command for editing and -16 for listing.
| |
|
| |
|
| The -n option suppresses the command numbers when listing. The -r option reverses the or‐
| | ;<nowiki>fc [-e ename] [-lnr] [first] [last]</nowiki> |
| der of the commands. If the -l option is given, the commands are listed on standard out‐
| | ;<nowiki>fc -s [pat=rep] [cmd]</nowiki> |
| put. Otherwise, the editor given by ename is invoked on a file containing those commands.
| | :最初の形式は、履歴リストから最初のコマンドから最後のコマンドまでの範囲を選択し、それらを表示または編集して再実行する。 firstとlastは、文字列(その文字列で始まる最後のコマンドを探す)または数値(履歴リストへのインデックス、負の数は現在のコマンド番号からのオフセットとして使われる)で指定することができる。リストを表示する場合、firstまたはlastに0を指定すると-1となり、-0を指定すると現在のコマンド(通常はfcコマンド)となる。 もしlastが指定されなければ、リストアップのために現在のコマンドに設定され (``fc -l -10'' は最後の10個のコマンドを表示する)、そうでなければfirstに設定される。 もしfirstが指定されなければ、編集の場合は前のコマンドに、リストアップの場合は-16に設定される。 |
| If ename is not given, the value of the FCEDIT variable is used, and the value of EDITOR
| |
| if FCEDIT is not set. If neither variable is set, vi is used. When editing is complete,
| |
| the edited commands are echoed and executed.
| |
|
| |
|
| In the second form, command is re-executed after each instance of pat is replaced by rep.
| | :-nオプションは、一覧表示時にコマンド番号を表示しない。 -rオプションはコマンドの順序を逆にする。 -lオプションを指定すると、コマンドは標準出力にリストされる。 それ以外の場合、enameで指定されたエディタが、それらのコマンドを含む ファイルに対して起動される。enameが与えられていない場合、変数FCEDITの値が使われ、 FCEDITが設定されていない場合、EDITORの値が使われる。 どちらの変数も設定されていなければ、viが使われる。 編集が完了すると、編集されたコマンドがエコーされて実行される。 |
| Command is interpreted the same as first above. A useful alias to use with this is
| |
| ``r="fc -s"'', so that typing ``r cc'' runs the last command beginning with ``cc'' and
| |
| typing ``r'' re-executes the last command.
| |
|
| |
|
| If the first form is used, the return value is 0 unless an invalid option is encountered
| | :第二の形式では、patの各インスタンスがrepに置き換えられた後、コマンドが再実行される。コマンドは上記の最初のものと同じように解釈される。 r="fc-s"」と入力すると、「cc」で始まる最後のコマンドが実行され、「r」と入力すると最後のコマンドが再実行される。 |
| or first or last specify history lines out of range. If the -e option is supplied, the
| |
| return value is the value of the last command executed or failure if an error occurs with
| |
| the temporary file of commands. If the second form is used, the return status is that of
| |
| the command re-executed, unless cmd does not specify a valid history line, in which case
| |
| fc returns failure.
| |
|
| |
|
| fg [jobspec]
| | :最初の形式を使用した場合、無効なオプションに遭遇するか、最初または最後の指定行が範囲外でない限り、戻り値は0である。 eオプションが与えられた場合、戻り値は最後に実行されたコマンドの値か、コマンドの一時ファイルでエラーが発生した場合は失敗となる。 2番目の形式が使われた場合、cmdが有効なヒストリ行を指定しない限り、戻り値は再実行されたコマンドのステータスとなり、その場合fcは失敗を返す。 |
| Resume jobspec in the foreground, and make it the current job. If jobspec is not present,
| |
| the shell's notion of the current job is used. The return value is that of the command
| |
| placed into the foreground, or failure if run when job control is disabled or, when run
| |
| with job control enabled, if jobspec does not specify a valid job or jobspec specifies a
| |
| job that was started without job control.
| |
|
| |
|
| getopts optstring name [arg ...]
| | ;fg [jobspec] |
| getopts is used by shell procedures to parse positional parameters. optstring contains
| | :jobspec をフォアグラウンドで再開し、現在のジョブにする。 jobspec が存在しない場合、シェルの現在のジョブの概念が使用される。 戻り値は、フォアグラウンドに配置されたコマンドの値であり、ジョブ制御が無効なときに実行された場合は失敗となる。ジョブ制御が有効なときに実行された場合は、jobspecが有効なジョブを指定していないか、ジョブ制御なしで開始されたジョブを指定している。 |
| the option characters to be recognized; if a character is followed by a colon, the option
| |
| is expected to have an argument, which should be separated from it by white space. The
| |
| colon and question mark characters may not be used as option characters. Each time it is
| |
| invoked, getopts places the next option in the shell variable name, initializing name if
| |
| it does not exist, and the index of the next argument to be processed into the variable
| |
| OPTIND. OPTIND is initialized to 1 each time the shell or a shell script is invoked.
| |
| When an option requires an argument, getopts places that argument into the variable OP‐
| |
| TARG. The shell does not reset OPTIND automatically; it must be manually reset between
| |
| multiple calls to getopts within the same shell invocation if a new set of parameters is
| |
| to be used.
| |
|
| |
|
| When the end of options is encountered, getopts exits with a return value greater than
| | ;getopts optstring name [arg ...] |
| zero. OPTIND is set to the index of the first non-option argument, and name is set to ?.
| | :optstringには、認識すべきオプション文字が含まれる。ある文字の後にコロンが続く場合、そのオプションは引数を持つことが期待され、その引数は空白で区切らなければならない。 コロンとクエスチョンマークはオプション文字としては使えない。 getoptsは起動されるたびに、次のオプションをシェル変数nameに入れ、nameが存在しない場合は初期化し、次に処理される引数のインデックスを変数OPTINDに入れる。 OPTINDは、シェルまたはシェルスクリプトが起動されるたびに1に初期化される。オプションが引数を必要とする場合、getopts はその引数を変数 OPTARG に入れる。 シェルは OPTIND を自動的にリセットしないので、新しいパラメータセットを使用する場合は、同じシェル呼び出し内で getopts を複数回呼び出す間に手動でリセットする必要がある。 |
|
| |
|
| getopts normally parses the positional parameters, but if more arguments are supplied as
| | :オプションの終了に遭遇すると、getoptsは0より大きい戻り値で終了する。 OPTINDには、最初の非オプション引数のインデックスが設定され、 nameには?をセットする。 |
| arg values, getopts parses those instead.
| |
|
| |
|
| getopts can report errors in two ways. If the first character of optstring is a colon,
| | :getoptsは通常、位置パラメータを解析するが、arg値としてさらに引数が与えられると、getoptsはそれらを代わりに解析する。 |
| silent error reporting is used. In normal operation, diagnostic messages are printed when
| |
| invalid options or missing option arguments are encountered. If the variable OPTERR is
| |
| set to 0, no error messages will be displayed, even if the first character of optstring is
| |
| not a colon.
| |
|
| |
|
| If an invalid option is seen, getopts places ? into name and, if not silent, prints an er‐
| | :getoptsは2つの方法でエラーを報告することができる。 optstringの最初の文字がコロンの場合、サイレントエラー報告が使用される。 通常の操作では、無効なオプションやオプション引数の欠落に遭遇すると、診断メッセージが表示される。 変数 OPTERR を 0 に設定すると、optstring の最初の文字がコロンでなくても、エラーメッセージは表示されない。 |
| ror message and unsets OPTARG. If getopts is silent, the option character found is placed
| |
| in OPTARG and no diagnostic message is printed.
| |
|
| |
|
| If a required argument is not found, and getopts is not silent, a question mark (?) is
| | :無効なオプションが見つかった場合、getopts は name に ? を入れ、無音でなければエラーメッセージを表示して OPTARG の設定を解除する。 getopts が沈黙している場合、見つかったオプション文字は OPTARG に置かれ、診断メッセージは出力されない。 |
| placed in name, OPTARG is unset, and a diagnostic message is printed. If getopts is
| |
| silent, then a colon (:) is placed in name and OPTARG is set to the option character
| |
| found.
| |
|
| |
|
| getopts returns true if an option, specified or unspecified, is found. It returns false
| | :必須引数が見つからず、getoptsがサイレントでない場合、nameにクエスチョンマーク(?) getoptsが無音の場合、nameにコロン(:)が置かれ、OPTARGには見つかったオプション文字が設定される。 |
| if the end of options is encountered or an error occurs.
| |
|
| |
|
| hash [-lr] [-p filename] [-dt] [name]
| | :getoptsは、指定または未指定のオプションが見つかれば真を返す。 オプションの末尾にぶつかったり、エラーが発生した場合は偽を返す。 |
| Each time hash is invoked, the full pathname of the command name is determined by search‐
| |
| ing the directories in $PATH and remembered. Any previously-remembered pathname is dis‐
| |
| carded. If the -p option is supplied, no path search is performed, and filename is used
| |
| as the full filename of the command. The -r option causes the shell to forget all remem‐
| |
| bered locations. The -d option causes the shell to forget the remembered location of each
| |
| name. If the -t option is supplied, the full pathname to which each name corresponds is
| |
| printed. If multiple name arguments are supplied with -t, the name is printed before the
| |
| hashed full pathname. The -l option causes output to be displayed in a format that may be
| |
| reused as input. If no arguments are given, or if only -l is supplied, information about
| |
| remembered commands is printed. The return status is true unless a name is not found or
| |
| an invalid option is supplied.
| |
|
| |
|
| help [-dms] [pattern]
| | ;<nowiki>hash [-lr] [-p filename] [-dt] [name]</nowiki> |
| Display helpful information about builtin commands. If pattern is specified, help gives
| | :hashが起動されるたびに、コマンド名のフルパス名が$PATH内のディレクトリを検索して決定され、記憶される。 以前に記憶されたパス名は破棄される。 -pオプションが与えられると、パス検索は行われず、 filenameがコマンドの完全なファイル名として使われる。 -rオプションを付けると、シェルは記憶していた場所をすべて忘れる。 -dオプションを指定すると、シェルは各名称の記憶された場所を忘れる。 -t オプションを指定すると、各名前が対応する完全なパス名が表示される。 複数の name 引数が -t とともに与えられた場合、 name はハッシュされたフルパス名の前に出力される。 -lオプションを指定すると、入力として再利用できる形式で出力が表示される。 引数が与えられないか、-lだけが与えられると、記憶されたコマンドに関する情報が表示される。 名前が見つからないか、無効なオプションが与えられない限り、戻り値は真である。 |
| detailed help on all commands matching pattern; otherwise help for all the builtins and
| |
| shell control structures is printed.
| |
| -d Display a short description of each pattern
| |
| -m Display the description of each pattern in a manpage-like format
| |
| -s Display only a short usage synopsis for each pattern
| |
|
| |
|
| The return status is 0 unless no command matches pattern.
| | ;<nowiki>help [-dms] [pattern]</nowiki> |
| | :組み込みコマンドに関する有用な情報を表示する。 pattern が指定されていれば、help は pattern にマッチするすべてのコマンドに関する詳細なヘルプを表示する。そうでなければ、すべての組み込みコマンドとシェル制御構造に関するヘルプを表示する。 |
| | :;-d |
| | ::各パターンの簡単な説明を表示する |
| | :;-m |
| | ::各パターンの説明をマンページのような形式で表示する |
| | :;-s |
| | ::各パターンについて、短い使用法の概要のみを表示する |
|
| |
|
| history [n]
| | :パターンにマッチするコマンドがなければ、リターンステータスは0である。 |
| history -c
| |
| history -d offset
| |
| history -d start-end
| |
| history -anrw [filename]
| |
| history -p arg [arg ...]
| |
| history -s arg [arg ...]
| |
| With no options, display the command history list with line numbers. Lines listed with a
| |
| * have been modified. An argument of n lists only the last n lines. If the shell vari‐
| |
| able HISTTIMEFORMAT is set and not null, it is used as a format string for strftime(3) to
| |
| display the time stamp associated with each displayed history entry. No intervening blank
| |
| is printed between the formatted time stamp and the history line. If filename is sup‐
| |
| plied, it is used as the name of the history file; if not, the value of HISTFILE is used.
| |
| Options, if supplied, have the following meanings:
| |
| -c Clear the history list by deleting all the entries.
| |
| -d offset
| |
| Delete the history entry at position offset. If offset is negative, it is inter‐
| |
| preted as relative to one greater than the last history position, so negative in‐
| |
| dices count back from the end of the history, and an index of -1 refers to the cur‐
| |
| rent history -d command.
| |
| -d start-end
| |
| Delete the history entries between positions start and end, inclusive. Positive
| |
| and negative values for start and end are interpreted as described above.
| |
| -a Append the ``new'' history lines to the history file. These are history lines en‐
| |
| tered since the beginning of the current bash session, but not already appended to
| |
| the history file.
| |
| -n Read the history lines not already read from the history file into the current his‐
| |
| tory list. These are lines appended to the history file since the beginning of the
| |
| current bash session.
| |
| -r Read the contents of the history file and append them to the current history list.
| |
| -w Write the current history list to the history file, overwriting the history file's
| |
| contents.
| |
| -p Perform history substitution on the following args and display the result on the
| |
| standard output. Does not store the results in the history list. Each arg must be
| |
| quoted to disable normal history expansion.
| |
| -s Store the args in the history list as a single entry. The last command in the his‐
| |
| tory list is removed before the args are added.
| |
|
| |
|
| If the HISTTIMEFORMAT variable is set, the time stamp information associated with each
| | ;<nowiki>history [n]</nowiki> |
| history entry is written to the history file, marked with the history comment character.
| | ;history -c |
| When the history file is read, lines beginning with the history comment character followed
| | ;history -d offset |
| immediately by a digit are interpreted as timestamps for the following history entry. The
| | ;history -d start-end |
| return value is 0 unless an invalid option is encountered, an error occurs while reading
| | ;<nowiki>history -anrw [filename]</nowiki> |
| or writing the history file, an invalid offset is supplied as an argument to -d, or the
| | ;<nowiki>history -p arg [arg ...]</nowiki> |
| history expansion supplied as an argument to -p fails.
| | ;<nowiki>history -s arg [arg ...]</nowiki> |
| | :オプションなしで、コマンド履歴リストを行番号付きで表示する。 の付いた行は変更されている。 引数 n は、最後の n 行だけをリストする。 シェル変数 '''HISTTIMEFORMAT''' が NULL ではなく設定されている場合、 [https://manpages.debian.org/unstable/manpages-dev/strftime.3.en.html strftime](3) のフォーマット文字列として使用され、 表示された各履歴エントリに関連付けられたタイムスタンプが表示される。 フォーマットされたタイムスタンプと履歴行の間には、空白は表示されない。 filename が指定された場合、それが履歴ファイル名として使用される。オプションが与えられた場合、以下の意味を持つ: |
| | :;-c |
| | ::すべてのエントリーを削除して履歴リストを消去する。 |
| | :;-d offset |
| | ::位置 offset のヒストリエントリを削除する。 offsetが負の場合、最後のヒストリ位置より1つ大きい位置からの相対値として解釈されるため、負のインデックスはヒストリの終わりからさかのぼってカウントされ、-1のインデックスは現在のヒストリ-dコマンドを指す。 |
| | :;-d start-end |
| | ::開始位置と終了位置の間の履歴エントリを削除する。 startとendの正の値と負の値は、上記のように解釈される。 |
| | :;-a |
| | ::''新しい''ヒストリ行をヒストリファイルに追加する。 これらの行は現在のbashセッションの開始以降に入力されたヒストリで、まだヒストリファイルに追加されていない行である。 |
| | :;-n |
| | ::ヒストリファイルからまだ読み込まれていないヒストリ行を現在のヒストリリストに読み込む。 これらは、現在のbashセッションの開始以降にヒストリファイルに追加された行である。 |
| | :;-r |
| | ::履歴ファイルの内容を読み込み、現在の履歴リストに追加する。 |
| | :;-w |
| | ::現在の履歴リストを履歴ファイルに書き込み、履歴ファイルの内容を上書きする。 |
| | :;-p |
| | ::以下の引数に対してヒストリ置換を行い、結果を標準出力に表示する。 ヒストリリストには結果を保存しない。 通常のヒストリ展開を無効にするには、各argを引用符で囲む必要がある。 |
| | :;-s |
| | ::履歴リストに引数を1つのエントリーとして保存する。 履歴リストの最後のコマンドは、引数が追加される前に削除される。 |
|
| |
|
| jobs [-lnprs] [ jobspec ... ]
| | :'''HISTTIMEFORMAT'''変数が設定されている場合、各履歴エントリーに関連するタイムスタンプ情報は、履歴コメント文字でマークされた履歴ファイルに書き込まれる。ヒストリファイルが読み込まれると、ヒストリコメント文字の直後に数字が続く行は、次のヒストリエントリのタイムスタンプとして解釈される。 無効なオプションに遭遇するか、ヒストリファイルの読み込みまたは書き込み中にエラーが発生するか、-dの引数として無効なオフセットが与えられるか、-pの引数として与えられたヒストリ展開が失敗しない限り、戻り値は0である。 |
| jobs -x command [ args ... ]
| |
| The first form lists the active jobs. The options have the following meanings:
| |
| -l List process IDs in addition to the normal information.
| |
| -n Display information only about jobs that have changed status since the user was
| |
| last notified of their status.
| |
| -p List only the process ID of the job's process group leader.
| |
| -r Display only running jobs.
| |
| -s Display only stopped jobs.
| |
|
| |
|
| If jobspec is given, output is restricted to information about that job. The return sta‐
| | ;<nowiki>jobs [-lnprs] [ jobspec ... ]</nowiki> |
| tus is 0 unless an invalid option is encountered or an invalid jobspec is supplied.
| | ;<nowiki>jobs -x command [ args ... ]</nowiki> |
| | :最初のフォームは、アクティブなジョブの一覧を表示する。 オプションの意味は以下の通りである: |
| | :;-l |
| | ::通常の情報に加えて、プロセスIDをリストアップする。 |
| | :;-n |
| | ::ユーザーが最後にステータスを通知されてからステータスが変更されたジョブに関する情報のみを表示する。 |
| | :;-p |
| | ::ジョブのプロセスグループリーダーのプロセスIDのみをリストする。 |
| | :;-r |
| | ::実行中のジョブのみを表示する。 |
| | :;-s |
| | ::停止したジョブのみを表示する。 |
|
| |
|
| If the -x option is supplied, jobs replaces any jobspec found in command or args with the
| | :jobspec が与えられた場合、出力はそのジョブに関する情報に制限される。 無効なオプションに遭遇するか、無効なjobspecが与えられない限り、戻りステータスは0である。 |
| corresponding process group ID, and executes command passing it args, returning its exit
| |
| status.
| |
|
| |
|
| kill [-s sigspec | -n signum | -sigspec] [pid | jobspec] ...
| | :-xオプションが与えられた場合、jobsはcommandまたはargsで見つかったjobspecを対応するプロセスグループIDに置き換え、argsを渡してコマンドを実行し、その終了ステータスを返す。 |
| kill -l|-L [sigspec | exit_status]
| |
| Send the signal named by sigspec or signum to the processes named by pid or jobspec.
| |
| sigspec is either a case-insensitive signal name such as SIGKILL (with or without the SIG
| |
| prefix) or a signal number; signum is a signal number. If sigspec is not present, then
| |
| SIGTERM is assumed. An argument of -l lists the signal names. If any arguments are sup‐
| |
| plied when -l is given, the names of the signals corresponding to the arguments are
| |
| listed, and the return status is 0. The exit_status argument to -l is a number specifying
| |
| either a signal number or the exit status of a process terminated by a signal. The -L op‐
| |
| tion is equivalent to -l. kill returns true if at least one signal was successfully sent,
| |
| or false if an error occurs or an invalid option is encountered.
| |
|
| |
|
| let arg [arg ...]
| | ;<nowiki>kill [-s sigspec | -n signum | -sigspec] [pid | jobspec] ...</nowiki> |
| Each arg is an arithmetic expression to be evaluated (see ARITHMETIC EVALUATION above).
| | ;<nowiki>kill -l|-L [sigspec | exit_status]</nowiki> |
| If the last arg evaluates to 0, let returns 1; 0 is returned otherwise.
| | :sigspec は '''SIGKILL''' のような大文字小文字を区別しないシグナル名 (SIG 接頭辞の有無は問わない) かシグナル番号であり、 signum はシグナル番号である。 sigspecが存在しない場合は、SIGTERMが想定される。 引数 -l は、シグナル名の一覧を示す。 lを指定する際に引数が指定された場合、引数に対応するシグナル名が列挙され、 戻りステータスは0となる。-lの引数exit_statusは、シグナル番号またはシグナルによって 終了したプロセスの終了ステータスを指定する数値である。 killは、少なくとも1つのシグナルが正常に送信された場合は真を返し、 エラーが発生した場合や無効なオプションに遭遇した場合は偽を返す。 |
|
| |
|
| local [option] [name[=value] ... | - ]
| | ;<nowiki>let arg [arg ...]</nowiki> |
| For each argument, a local variable named name is created, and assigned value. The option
| | :各argは評価される算術式である(上記の[[#ARITHMETIC EVALUATION|ARITHMETIC EVALUATION ]]を参照)。最後のargが0と評価された場合、letは1を返し、そうでない場合は0が返される。 |
| can be any of the options accepted by declare. When local is used within a function, it
| |
| causes the variable name to have a visible scope restricted to that function and its chil‐
| |
| dren. If name is -, the set of shell options is made local to the function in which local
| |
| is invoked: shell options changed using the set builtin inside the function are restored
| |
| to their original values when the function returns. The restore is effected as if a se‐
| |
| ries of set commands were executed to restore the values that were in place before the
| |
| function. With no operands, local writes a list of local variables to the standard out‐
| |
| put. It is an error to use local when not within a function. The return status is 0 un‐
| |
| less local is used outside a function, an invalid name is supplied, or name is a readonly
| |
| variable.
| |
|
| |
|
| logout Exit a login shell.
| | ;<nowiki>local [option] [name[=value] ... | - ]</nowiki> |
| | :各引数に対して、nameという名前のローカル変数が作成され、値が代入される。 オプションは、declareが受け付けるオプションのいずれかである。 localが関数内で使われると、変数名はその関数とその子関数に限定された可視スコープを持つようになる。 nameが-である場合、シェルオプションのセットは、localが呼び出された関数のローカルになる。関数内でset組み込み関数を使って変更されたシェルオプションは、関数が戻ったときに元の値に復元される。 このリストアは、あたかも一連のsetコマンドを実行して、関数を実行する前の値をリストアしたかのように行われる。 オペランドがない場合、localはローカル変数のリストを標準出力に書き出す。 関数内以外でlocalを使用するのはエラーである。 localが関数外で使用されているか、無効な名前が与えられているか、nameが読み取り専用変数でない限り、戻りステータスは0である。 |
|
| |
|
| mapfile [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [ar‐
| | ;logout |
| ray]
| | :ログインシェルを終了する。 |
| readarray [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum]
| |
| [array]
| |
| Read lines from the standard input into the indexed array variable array, or from file de‐
| |
| scriptor fd if the -u option is supplied. The variable MAPFILE is the default array. Op‐
| |
| tions, if supplied, have the following meanings:
| |
| -d The first character of delim is used to terminate each input line, rather than new‐
| |
| line. If delim is the empty string, mapfile will terminate a line when it reads a
| |
| NUL character.
| |
| -n Copy at most count lines. If count is 0, all lines are copied.
| |
| -O Begin assigning to array at index origin. The default index is 0.
| |
| -s Discard the first count lines read.
| |
| -t Remove a trailing delim (default newline) from each line read.
| |
| -u Read lines from file descriptor fd instead of the standard input.
| |
| -C Evaluate callback each time quantum lines are read. The -c option specifies quan‐
| |
| tum.
| |
| -c Specify the number of lines read between each call to callback.
| |
|
| |
|
| If -C is specified without -c, the default quantum is 5000. When callback is evaluated,
| | ;<nowiki>mapfile [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [array]</nowiki> |
| it is supplied the index of the next array element to be assigned and the line to be as‐
| | ;<nowiki>readarray [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [array]</nowiki> |
| signed to that element as additional arguments. callback is evaluated after the line is
| | :標準入力からインデックス付き配列変数arrayに、または-uオプションが与えられている場合はファイルディスクリプタfdから行を読み込む。 変数'''MAPFILE'''はデフォルトの配列である。 オプションが与えられた場合の意味は以下の通りである。: |
| read but before the array element is assigned.
| | :;-d |
| | ::delimの最初の文字は、改行ではなく、各入力行を終了するために使われる。 delimが空文字列の場合、mapfileはNUL文字を読んだ時点で行を終了する。 |
| | :;-n |
| | ::最大で count 行コピーする。 countが0の場合、すべての行がコピーされる。 |
| | :;-O |
| | ::インデックスを原点として配列への代入を開始する。 デフォルトのインデックスは0である。 |
| | :;-s |
| | ::最初に読んだカウント行は破棄する。 |
| | :;-t |
| | ::読み込んだ各行から末尾の区切り文字(デフォルトは改行)を取り除く。 |
| | :;-u |
| | ::標準入力の代わりにファイル・ディスクリプタfdから行を読む。 |
| | :;-C |
| | ::量子行が読み込まれるたびにコールバックを評価する。 -cオプションで量子を指定する。 |
| | :;-c |
| | ::コールバックを呼び出すたびに読み込む行数を指定する。 |
|
| |
|
| If not supplied with an explicit origin, mapfile will clear array before assigning to it.
| | :-cを指定せずに-Cを指定した場合、デフォルトの量子は5000である。 callbackが評価されるとき、追加引数として、次に代入される配列要素のインデックスと、その要素に代入される行が与えられる。 |
|
| |
|
| mapfile returns successfully unless an invalid option or option argument is supplied, ar‐
| | :明示的に原点が与えられない場合、mapfileはその原点に代入する前に配列をクリアする。 |
| ray is invalid or unassignable, or if array is not an indexed array.
| |
|
| |
|
| popd [-n] [+n] [-n]
| | :mapfileは、無効なオプションやオプション引数が与えられていないか、配列が無効か割り当て不可能でないか、配列がインデックス付き配列でない場合を除き、正常に戻る。 |
| Removes entries from the directory stack. With no arguments, removes the top directory
| |
| from the stack, and performs a cd to the new top directory. Arguments, if supplied, have
| |
| the following meanings:
| |
| -n Suppresses the normal change of directory when removing directories from the stack,
| |
| so that only the stack is manipulated.
| |
| +n Removes the nth entry counting from the left of the list shown by dirs, starting
| |
| with zero. For example: ``popd +0'' removes the first directory, ``popd +1'' the
| |
| second.
| |
| -n Removes the nth entry counting from the right of the list shown by dirs, starting
| |
| with zero. For example: ``popd -0'' removes the last directory, ``popd -1'' the
| |
| next to last.
| |
|
| |
|
| If the popd command is successful, a dirs is performed as well, and the return status is
| | ;<nowiki>popd [-n] [+n] [-n]</nowiki> |
| 0. popd returns false if an invalid option is encountered, the directory stack is empty,
| | :ディレクトリスタックからエントリを削除する。 引数がない場合、スタックからトップディレクトリを削除し、新しいトップディレクトリへの cd を実行する。 引数が与えられた場合、以下の意味を持つ。: |
| a non-existent directory stack entry is specified, or the directory change fails.
| | :;-n |
| | ::スタックからディレクトリを削除する際に、通常のディレクトリの変更を抑制し、スタックのみが操作されるようにする。 |
| | :;+n |
| | ::dirs で示されるリストの左から 0 から数えて n 番目のエントリを削除する。 例えば: ``popd +0'' は最初のディレクトリを削除し、 ``popd +1'' は2番目のディレクトリを削除する。 |
| | :;-n |
| | ::dirs で示されるリストの右から 0 から数えて n 番目のエントリを削除する。 例えば、 ``popd -0'' は最後のディレクトリを削除し、 ``popd -1'' はその次を削除する。 |
|
| |
|
| printf [-v var] format [arguments]
| | :popdコマンドが成功した場合、dirsも実行され、戻りステータスは0である。無効なオプションに遭遇した場合、ディレクトリスタックが空である場合、存在しないディレクトリスタックエントリが指定された場合、またはディレクトリの変更が失敗した場合、popdは偽を返す。 |
| Write the formatted arguments to the standard output under the control of the format. The
| |
| -v option causes the output to be assigned to the variable var rather than being printed
| |
| to the standard output.
| |
|
| |
|
| The format is a character string which contains three types of objects: plain characters,
| | ;<nowiki>printf [-v var] format [arguments]</nowiki> |
| which are simply copied to standard output, character escape sequences, which are con‐
| | :フォーマットされた引数を、フォーマットの制御下で標準出力に書き出す。 vオプションを付けると、出力は標準出力に出力されるのではなく、変数varに代入される。 |
| verted and copied to the standard output, and format specifications, each of which causes
| |
| printing of the next successive argument. In addition to the standard printf(1) format
| |
| specifications, printf interprets the following extensions:
| |
| %b causes printf to expand backslash escape sequences in the corresponding argument in
| |
| the same way as echo -e.
| |
| %q causes printf to output the corresponding argument in a format that can be reused
| |
| as shell input.
| |
| %(datefmt)T
| |
| causes printf to output the date-time string resulting from using datefmt as a for‐
| |
| mat string for strftime(3). The corresponding argument is an integer representing
| |
| the number of seconds since the epoch. Two special argument values may be used: -1
| |
| represents the current time, and -2 represents the time the shell was invoked. If
| |
| no argument is specified, conversion behaves as if -1 had been given. This is an
| |
| exception to the usual printf behavior.
| |
|
| |
|
| The %b, %q, and %T directives all use the field width and precision arguments from the
| | :すなわち、単純に標準出力にコピーされるプレーン文字、変換されて標準出力にコピーされる文字エスケープシーケンス、および次の連続する引数の印刷を引き起こす各フォーマット指定である。 標準の[[/usr/bin/printf|printf]](1)フォーマット指定に加えて、printfは以下の拡張を解釈する: |
| format specification and write that many bytes from (or use that wide a field for) the ex‐
| | :;%b |
| panded argument, which usually contains more characters than the original.
| | ::printfは、echo -eと同じように、対応する引数のバックスラッシュ・エスケープ・シーケンスを展開する。 |
| | :;%q |
| | ::printfは、対応する引数をシェル入力として再利用できる形式で出力する。 |
| | :;%(datefmt)T |
| | ::'''[https://manpages.debian.org/bookworm/manpages-dev/strftime.3.en.html strftime]'''(3) のフォーマット文字列として datefmt を使用した結果の日付時刻文字列を printf に出力させる。 対応する引数は、エポックからの秒数を表す整数である。 2つの特別な引数値を使うことができる: -1 は現在時刻を表し、-2 はシェルが起動された時刻を表す。 引数が指定されない場合、変換は-1が与えられたかのように動作する。 これは、通常のprintfの動作の例外である。 |
|
| |
|
| Arguments to non-string format specifiers are treated as C constants, except that a lead‐
| | :b、%q、%Tディレクティブはすべて、書式指定のフィールド幅と精度の引数を使用し、拡張された引数からそのバイト数を書き込む(あるいは、その幅のフィールドを使用する)。 |
| ing plus or minus sign is allowed, and if the leading character is a single or double
| |
| quote, the value is the ASCII value of the following character.
| |
|
| |
|
| The format is reused as necessary to consume all of the arguments. If the format requires
| | :文字列以外の書式指定子への引数は、Cの定数として扱われる。ただし、先頭のプラス記号またはマイナス記号は許容され、先頭の文字がシングルクォートまたはダブルクォートの場合、値はそれに続く文字のASCII値となる。 |
| more arguments than are supplied, the extra format specifications behave as if a zero
| |
| value or null string, as appropriate, had been supplied. The return value is zero on suc‐
| |
| cess, non-zero on failure.
| |
|
| |
|
| pushd [-n] [+n] [-n]
| | :書式は、すべての引数を消費するために必要に応じて再利用される。 その書式が,与えられた引数よりも多くの引数を必要とする場合,余分な書式指定は,適切な場合には,ゼロ値またはヌル文字列が与えられたかのように振る舞う。 戻り値は、成功した場合はゼロ、失敗した場合はゼロ以外である。 |
| pushd [-n] [dir]
| |
| Adds a directory to the top of the directory stack, or rotates the stack, making the new
| |
| top of the stack the current working directory. With no arguments, pushd exchanges the
| |
| top two directories and returns 0, unless the directory stack is empty. Arguments, if
| |
| supplied, have the following meanings:
| |
| -n Suppresses the normal change of directory when rotating or adding directories to
| |
| the stack, so that only the stack is manipulated.
| |
| +n Rotates the stack so that the nth directory (counting from the left of the list
| |
| shown by dirs, starting with zero) is at the top.
| |
| -n Rotates the stack so that the nth directory (counting from the right of the list
| |
| shown by dirs, starting with zero) is at the top.
| |
| dir Adds dir to the directory stack at the top, making it the new current working di‐
| |
| rectory as if it had been supplied as the argument to the cd builtin.
| |
|
| |
|
| If the pushd command is successful, a dirs is performed as well. If the first form is
| | ;<nowiki>pushd [-n] [+n] [-n]</nowikI> |
| used, pushd returns 0 unless the cd to dir fails. With the second form, pushd returns 0
| | ;<nowiki>pushd [-n] [dir]</nowiki> |
| unless the directory stack is empty, a non-existent directory stack element is specified,
| | :ディレクトリ・スタックの先頭にディレクトリを追加するか、スタックを回転させ、 新しいスタックの先頭を現在の作業ディレクトリにする。 引数がない場合、pushd はディレクトリスタックが空でない限り、上位 2 つのディレクトリを交換し、0 を返す。 引数が与えられた場合、以下の意味を持つ: |
| or the directory change to the specified new current directory fails.
| | :;-n |
| | ::スタックを回転したり、スタックにディレクトリを追加したりするときに、通常のディレクトリの変更を抑制し、スタックだけを操作するようにする。 |
| | :;+n |
| | ::スタックを回転させ、n番目のディレクトリ(dirsで示されるリストの左から数えて、ゼロから始まる)が一番上に来るようにする。 |
| | :;-n |
| | ::スタックを回転させ、n番目のディレクトリ(dirsで示されるリストの右から数えて、ゼロから始まる)が一番上に来るようにする。 |
| | :;dir |
| | ::dirをディレクトリスタックの先頭に追加し、あたかもcd組み込み関数の引数として与えられたかのように、新しいカレント作業ディレクトリとする。 |
|
| |
|
| pwd [-LP]
| | :pushdコマンドが成功した場合、dirsも実行される。 最初の形式を使用した場合、dir への cd が失敗しない限り、pushd は 0 を返す。 2番目の形式では、ディレクトリ・スタックが空であるか、存在しないディレクトリ・スタック要素が指定されるか、指定された新しいカレント・ディレクトリへのディレクトリ変更が失敗しない限り、pushdは0を返す。 |
| Print the absolute pathname of the current working directory. The pathname printed con‐
| |
| tains no symbolic links if the -P option is supplied or the -o physical option to the set
| |
| builtin command is enabled. If the -L option is used, the pathname printed may contain
| |
| symbolic links. The return status is 0 unless an error occurs while reading the name of
| |
| the current directory or an invalid option is supplied.
| |
|
| |
|
| read [-ers] [-a aname] [-d delim] [-i text] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u
| | ;<nowiki>pwd [-LP]</nowiki> |
| fd] [name ...]
| | :現在の作業ディレクトリの絶対パス名を表示する。 Pオプションが指定されているか、set組み込みコマンドの -o物理オプションが有効になっている場合、出力されるパス名にはシンボリックリンクは含まれない。 Lオプションを使用すると、シンボリックリンクを含むパス名が出力される。 カレントディレクトリ名の読み込み中にエラーが発生するか、無効なオプションが指定されない限り、戻りステータスは 0 である。 |
| One line is read from the standard input, or from the file descriptor fd supplied as an
| |
| argument to the -u option, split into words as described above under Word Splitting, and
| |
| the first word is assigned to the first name, the second word to the second name, and so
| |
| on. If there are more words than names, the remaining words and their intervening delim‐
| |
| iters are assigned to the last name. If there are fewer words read from the input stream
| |
| than names, the remaining names are assigned empty values. The characters in IFS are used
| |
| to split the line into words using the same rules the shell uses for expansion (described
| |
| above under Word Splitting). The backslash character (\) may be used to remove any spe‐
| |
| cial meaning for the next character read and for line continuation. Options, if supplied,
| |
| have the following meanings:
| |
| -a aname
| |
| The words are assigned to sequential indices of the array variable aname, starting
| |
| at 0. aname is unset before any new values are assigned. Other name arguments are
| |
| ignored.
| |
| -d delim
| |
| The first character of delim is used to terminate the input line, rather than new‐
| |
| line. If delim is the empty string, read will terminate a line when it reads a NUL
| |
| character.
| |
| -e If the standard input is coming from a terminal, readline (see READLINE above) is
| |
| used to obtain the line. Readline uses the current (or default, if line editing
| |
| was not previously active) editing settings, but uses Readline's default filename
| |
| completion.
| |
| -i text
| |
| If readline is being used to read the line, text is placed into the editing buffer
| |
| before editing begins.
| |
| -n nchars
| |
| read returns after reading nchars characters rather than waiting for a complete
| |
| line of input, but honors a delimiter if fewer than nchars characters are read be‐
| |
| fore the delimiter.
| |
| -N nchars
| |
| read returns after reading exactly nchars characters rather than waiting for a com‐
| |
| plete line of input, unless EOF is encountered or read times out. Delimiter char‐
| |
| acters encountered in the input are not treated specially and do not cause read to
| |
| return until nchars characters are read. The result is not split on the characters
| |
| in IFS; the intent is that the variable is assigned exactly the characters read
| |
| (with the exception of backslash; see the -r option below).
| |
| -p prompt
| |
| Display prompt on standard error, without a trailing newline, before attempting to
| |
| read any input. The prompt is displayed only if input is coming from a terminal.
| |
| -r Backslash does not act as an escape character. The backslash is considered to be
| |
| part of the line. In particular, a backslash-newline pair may not then be used as
| |
| a line continuation.
| |
| -s Silent mode. If input is coming from a terminal, characters are not echoed.
| |
| -t timeout
| |
| Cause read to time out and return failure if a complete line of input (or a speci‐
| |
| fied number of characters) is not read within timeout seconds. timeout may be a
| |
| decimal number with a fractional portion following the decimal point. This option
| |
| is only effective if read is reading input from a terminal, pipe, or other special
| |
| file; it has no effect when reading from regular files. If read times out, read
| |
| saves any partial input read into the specified variable name. If timeout is 0,
| |
| read returns immediately, without trying to read any data. The exit status is 0 if
| |
| input is available on the specified file descriptor, non-zero otherwise. The exit
| |
| status is greater than 128 if the timeout is exceeded.
| |
| -u fd Read input from file descriptor fd.
| |
|
| |
|
| If no names are supplied, the line read, without the ending delimiter but otherwise unmod‐
| | ;<nowiki>read [-ers] [-a aname] [-d delim] [-i text] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u fd] [name ...]</nowiki> |
| ified, is assigned to the variable REPLY. The exit status is zero, unless end-of-file is
| | :標準入力、または-uオプションの引数として与えられたファイル・ディスクリプタfdから1行が読み込まれ、上記の「単語の分割」で説明したように単語に分割され、最初の単語が最初の名前に、2番目の単語が2番目の名前に、といった具合に割り当てられる。 単語が名前より多い場合は、残りの単語とその間の区切り文字が最後の名前に割り当てられる。 入力ストリームから読み込まれた単語の数が名前の数より少ない場合、残りの名前には空の値が割り当てられる。 IFSの文字は、シェルが展開に使用するのと同じ規則を使用して行を単語に分割する ために使用される(上記の「単語の分割」で説明)。 バックスラッシュ文字( \)は、次に読み込まれる文字と行の継続のための特別な意味を取り除くために使用される。 オプションが与えられた場合、以下の意味を持つ: |
| encountered, read times out (in which case the status is greater than 128), a variable as‐
| | :;-a aname |
| signment error (such as assigning to a readonly variable) occurs, or an invalid file de‐
| | ::新しい値が代入される前に、anameはアンセットされる。 他の名前引数は無視される。 |
| scriptor is supplied as the argument to -u.
| | :;-d delim |
| | ::delimの最初の文字は、改行ではなく、入力行を終了するために使われる。 delimが空文字列の場合、readはNUL文字を読んだ時点で行を終了する。 |
| | :;-e |
| | ::標準入力がターミナルからの場合、行を取得するためにreadline(上記の[[#READLINE|READLINE ]]を参照)が使用される。 Readlineは、現在の(または行編集が以前にアクティブでなかった場合はデフォルトの)編集設定を使用するが、Readlineのデフォルトのファイル名補完を使用する。 |
| | :;-i text |
| | ::行の読み取りにreadlineが使われている場合、テキストは編集が始まる前に編集バッファに置かれる。 |
| | :;-n nchars |
| | ::readは、入力の完全な行を待つのではなく、nchars文字を読んだ後に戻るが、区切り文字の前にnchars文字より少ない文字が読み込まれた場合は、区切り文字を尊重する。 |
| | :;-N nchars |
| | ::readは、EOFに遭遇するかreadがタイムアウトしない限り、入力の完全な行を待つのではなく、正確にnchars文字を読んだ後に戻る。 入力中の区切り文字は特別に扱われず、nchars文字が読み込まれるまでreadが戻ることはない。 その意図は、読み込まれた文字がそのまま変数に代入されることである(バックスラッシュを除く。) |
| | :;-p prompt |
| | ::入力を読み込む前に、標準エラーにプロンプトを表示する。 プロンプトは、入力がターミナルから来た場合にのみ表示される。 |
| | :;-r |
| | ::バックスラッシュはエスケープ文字としては機能しない。 バックスラッシュは行の一部とみなされる。 特に、バックスラッシュと改行のペアを行の続きとして使用してはならない。 |
| | :;-s |
| | ::サイレントモード。 端末からの入力の場合、文字はエコーされない。 |
| | :;-t timeout |
| | ::timeout秒以内に入力の完全な行(または指定された文字数)が読み込まれなかった場合、readをタイムアウトさせ、失敗を返すようにする。timeoutには、小数点以下の端数を含む10進数を指定することができる。 このオプションは、readがターミナル、パイプ、その他の特殊なファイルから入力を読み込む場合にのみ有効で、通常のファイルから読み込む場合には効果がない。 readがタイムアウトした場合、readは読み込んだ入力の一部を指定した変数名に保存する。 タイムアウトが0の場合、readはデータの読み込みを試みずに直ちに戻る。 終了ステータスは、指定されたファイル記述子で入力が利用可能であれば0、そうでなければ0以外である。 タイムアウトを超えると、終了ステータスは128より大きくなる。 |
| | :;-u fd |
| | ::ファイルディスクリプタfdから入力を読み込む。 |
|
| |
|
| readonly [-aAf] [-p] [name[=word] ...]
| | :名前が与えられない場合、読み込まれた行は、終端デリミタなしで、それ以外は変更されずに、変数 REPLY に代入される。 終了ステータスは、ファイル終了に遭遇するか、読み込みがタイムアウトするか(この場合、ステータスは128より大きくなる)、変数代入エラー(読み取り専用変数への代入など)が発生するか、無効なファイル記述子が-uの引数として与えられない限り、0である。 |
| The given names are marked readonly; the values of these names may not be changed by sub‐
| |
| sequent assignment. If the -f option is supplied, the functions corresponding to the
| |
| names are so marked. The -a option restricts the variables to indexed arrays; the -A op‐
| |
| tion restricts the variables to associative arrays. If both options are supplied, -A
| |
| takes precedence. If no name arguments are given, or if the -p option is supplied, a list
| |
| of all readonly names is printed. The other options may be used to restrict the output to
| |
| a subset of the set of readonly names. The -p option causes output to be displayed in a
| |
| format that may be reused as input. If a variable name is followed by =word, the value of
| |
| the variable is set to word. The return status is 0 unless an invalid option is encoun‐
| |
| tered, one of the names is not a valid shell variable name, or -f is supplied with a name
| |
| that is not a function.
| |
|
| |
|
| return [n]
| | ;<nowiki>readonly [-aAf] [-p] [name[=word] ...]</nowiki> |
| Causes a function to stop executing and return the value specified by n to its caller. If
| | :指定された名前には読み取り専用マークが付けられ、以後の代入によってこれらの名前の値が変更されることはない。-f オプションを指定すると、その名前に対応する関数がそのようにマークされる。 -aオプションは変数を添字配列に制限し、-Aオプションは変数を連想配列に制限する。 両方のオプションが指定された場合は、-Aが優先される。 name 引数が与えられていない場合、または -p オプションが与えられている場合は、すべての読み取り専用名のリストが表示される。 他のオプションを使って、出力を読み取り専用名のサブセットに制限することができる。 pオプションを指定すると、入力として再利用できる形式で出力が表示される。 変数名の後に=wordが続くと、その変数の値がwordに設定される。 無効なオプションに遭遇した場合、名前の1つが有効なシェル変数名でない場合、または -f に関数でない名前が指定された場合を除き、戻り値は 0 である。 |
| n is omitted, the return status is that of the last command executed in the function body.
| |
| If return is executed by a trap handler, the last command used to determine the status is
| |
| the last command executed before the trap handler. If return is executed during a DEBUG
| |
| trap, the last command used to determine the status is the last command executed by the
| |
| trap handler before return was invoked. If return is used outside a function, but during
| |
| execution of a script by the . (source) command, it causes the shell to stop executing
| |
| that script and return either n or the exit status of the last command executed within the
| |
| script as the exit status of the script. If n is supplied, the return value is its least
| |
| significant 8 bits. The return status is non-zero if return is supplied a non-numeric ar‐
| |
| gument, or is used outside a function and not during execution of a script by . or source.
| |
| Any command associated with the RETURN trap is executed before execution resumes after the
| |
| function or script.
| |
|
| |
|
| set [--abefhkmnptuvxBCEHPT] [-o option-name] [arg ...]
| | ;<nowiki>return [n]</nowiki> |
| set [+abefhkmnptuvxBCEHPT] [+o option-name] [arg ...]
| | :関数の実行を停止し、nで指定された値を呼び出し元に返す。 nが省略された場合、returnのステータスは、関数本体内で最後に実行されたコマンドのステータスとなる。return がトラップハンドラによって実行される場合、ステータスを決定するために使用される最後のコマンドは、トラップハンドラの前に実行された最後のコマンドである。 returnがDEBUGトラップ中に実行された場合、ステータスを決定するために使用される最後のコマンドは、returnが呼び出される前にトラップハンドラによって実行された最後のコマンドである。 returnが関数の外で、.(ソース)コマンドによるスクリプトの実行中に使用された場合、そのスクリプトの実行をシェルに停止させ、nまたはスクリプト内で最後に実行されたコマンドの終了ステータスのいずれかをスクリプトの終了ステータスとして返す。 n が指定された場合、戻り値はその最下位 8 ビットである。 returnに数値以外の引数が指定された場合、または.やsourceによるスクリプトの実行中ではなく関数の外部で使用された場合、戻り値は0以外のステータスになる。RETURNトラップに関連付けられたコマンドは、関数またはスクリプトの実行後に実行が再開される前に実行される。 |
| Without options, the name and value of each shell variable are displayed in a format that
| |
| can be reused as input for setting or resetting the currently-set variables. Read-only
| |
| variables cannot be reset. In posix mode, only shell variables are listed. The output is
| |
| sorted according to the current locale. When options are specified, they set or unset
| |
| shell attributes. Any arguments remaining after option processing are treated as values
| |
| for the positional parameters and are assigned, in order, to $1, $2, ... $n. Options, if
| |
| specified, have the following meanings:
| |
| -a Each variable or function that is created or modified is given the export attri‐
| |
| bute and marked for export to the environment of subsequent commands.
| |
| -b Report the status of terminated background jobs immediately, rather than before
| |
| the next primary prompt. This is effective only when job control is enabled.
| |
| -e Exit immediately if a pipeline (which may consist of a single simple command), a
| |
| list, or a compound command (see SHELL GRAMMAR above), exits with a non-zero sta‐
| |
| tus. The shell does not exit if the command that fails is part of the command
| |
| list immediately following a while or until keyword, part of the test following
| |
| the if or elif reserved words, part of any command executed in a && or || list ex‐
| |
| cept the command following the final && or ||, any command in a pipeline but the
| |
| last, or if the command's return value is being inverted with !. If a compound
| |
| command other than a subshell returns a non-zero status because a command failed
| |
| while -e was being ignored, the shell does not exit. A trap on ERR, if set, is
| |
| executed before the shell exits. This option applies to the shell environment and
| |
| each subshell environment separately (see COMMAND EXECUTION ENVIRONMENT above),
| |
| and may cause subshells to exit before executing all the commands in the subshell.
| |
|
| |
|
| If a compound command or shell function executes in a context where -e is being
| | ;<nowiki>set [--abefhkmnptuvxBCEHPT] [-o option-name] [arg ...]</nowiki> |
| ignored, none of the commands executed within the compound command or function
| | ;<nowiki>set [+abefhkmnptuvxBCEHPT] [+o option-name] [arg ...]</nowiki> |
| body will be affected by the -e setting, even if -e is set and a command returns a
| | :オプションがなければ、各シェル変数の名前と値が、現在設定されている変数を設定またはリセットするための入力として再利用できる形式で表示される。 読み取り専用の変数はリセットできない。 posix モードでは、シェル変数のみが一覧表示される。 出力は、現在のロケールに従ってソートされる。 オプションが指定されると、シェル属性を設定または解除する。 オプション処理後に残った引数は、位置パラメータの値として扱われ、 $1, $2, ... $n の順に代入される。 オプションが指定された場合、以下の意味を持つ: |
| failure status. If a compound command or shell function sets -e while executing
| | :;-a |
| in a context where -e is ignored, that setting will not have any effect until the
| | ::作成または変更された各変数や関数にはexport属性が与えられ、後続のコマンドの環境にエクスポートされるようにマークされる。 |
| compound command or the command containing the function call completes.
| | :;-b |
| -f Disable pathname expansion.
| | ::終了したバックグラウンドジョブのステータスを、次のプライマリプロンプトの前ではなく、直ちに報告する。 これは、ジョブ制御が有効な場合にのみ有効である。 |
| -h Remember the location of commands as they are looked up for execution. This is
| | :;-e |
| enabled by default.
| | ::パイプライン(単一の単純なコマンドで構成される)、リスト、または複合コマンド(上記の [[#SHELL GRAMMAR|SHELL GRAMMAR ]]を参照)がゼロ以外のステータスで終了した場合、直ちに終了する。 失敗したコマンドが、whileまたはuntilキーワードの直後のコマンドリストの一部、ifまたはelif予約語に続くテストの一部、最後の&&または||に続くコマンドを除く&&または||リストで実行されるコマンドの一部、パイプラインの最後のコマンド以外のコマンド、コマンドの戻り値が! eが無視されている間にコマンドが失敗したため、サブシェル以外の複合コマンドがゼロ以外のステータスを返した場合、シェルは終了しない。 ERRのトラップが設定されている場合は、シェルが終了する前に実行される。 このオプションは、シェル環境と各サブシェル環境に個別に適用され (上記の「 [[#COMMAND EXECUTION ENVIRONMENT|COMMAND EXECUTION ENVIRONMENT ]]」を参照)、サブシェル内のすべてのコマンドを実行する前にサブシェルが終了することがある。 |
| -k All arguments in the form of assignment statements are placed in the environment
| |
| for a command, not just those that precede the command name.
| |
| -m Monitor mode. Job control is enabled. This option is on by default for interac‐
| |
| tive shells on systems that support it (see JOB CONTROL above). All processes run
| |
| in a separate process group. When a background job completes, the shell prints a
| |
| line containing its exit status.
| |
| -n Read commands but do not execute them. This may be used to check a shell script
| |
| for syntax errors. This is ignored by interactive shells.
| |
| -o option-name
| |
| The option-name can be one of the following:
| |
| allexport
| |
| Same as -a.
| |
| braceexpand
| |
| Same as -B.
| |
| emacs Use an emacs-style command line editing interface. This is enabled by de‐
| |
| fault when the shell is interactive, unless the shell is started with the
| |
| --noediting option. This also affects the editing interface used for read
| |
| -e.
| |
| errexit Same as -e.
| |
| errtrace
| |
| Same as -E.
| |
| functrace
| |
| Same as -T.
| |
| hashall Same as -h.
| |
| histexpand
| |
| Same as -H.
| |
| history Enable command history, as described above under HISTORY. This option is
| |
| on by default in interactive shells.
| |
| ignoreeof
| |
| The effect is as if the shell command ``IGNOREEOF=10'' had been executed
| |
| (see Shell Variables above).
| |
| keyword Same as -k.
| |
| monitor Same as -m.
| |
| noclobber
| |
| Same as -C.
| |
| noexec Same as -n.
| |
| noglob Same as -f.
| |
| nolog Currently ignored.
| |
| notify Same as -b.
| |
| nounset Same as -u.
| |
| onecmd Same as -t.
| |
| physical
| |
| Same as -P.
| |
| pipefail
| |
| If set, the return value of a pipeline is the value of the last (right‐
| |
| most) command to exit with a non-zero status, or zero if all commands in
| |
| the pipeline exit successfully. This option is disabled by default.
| |
| posix Change the behavior of bash where the default operation differs from the
| |
| POSIX standard to match the standard (posix mode). See SEE ALSO below for
| |
| a reference to a document that details how posix mode affects bash's be‐
| |
| havior.
| |
| privileged
| |
| Same as -p.
| |
| verbose Same as -v.
| |
| vi Use a vi-style command line editing interface. This also affects the
| |
| editing interface used for read -e.
| |
| xtrace Same as -x.
| |
| If -o is supplied with no option-name, the values of the current options are
| |
| printed. If +o is supplied with no option-name, a series of set commands to
| |
| recreate the current option settings is displayed on the standard output.
| |
| -p Turn on privileged mode. In this mode, the $ENV and $BASH_ENV files are not pro‐
| |
| cessed, shell functions are not inherited from the environment, and the SHELLOPTS,
| |
| BASHOPTS, CDPATH, and GLOBIGNORE variables, if they appear in the environment, are
| |
| ignored. If the shell is started with the effective user (group) id not equal to
| |
| the real user (group) id, and the -p option is not supplied, these actions are
| |
| taken and the effective user id is set to the real user id. If the -p option is
| |
| supplied at startup, the effective user id is not reset. Turning this option off
| |
| causes the effective user and group ids to be set to the real user and group ids.
| |
| -t Exit after reading and executing one command.
| |
| -u Treat unset variables and parameters other than the special parameters "@" and "*"
| |
| as an error when performing parameter expansion. If expansion is attempted on an
| |
| unset variable or parameter, the shell prints an error message, and, if not inter‐
| |
| active, exits with a non-zero status.
| |
| -v Print shell input lines as they are read.
| |
| -x After expanding each simple command, for command, case command, select command, or
| |
| arithmetic for command, display the expanded value of PS4, followed by the command
| |
| and its expanded arguments or associated word list.
| |
| -B The shell performs brace expansion (see Brace Expansion above). This is on by de‐
| |
| fault.
| |
| -C If set, bash does not overwrite an existing file with the >, >&, and <> redirect‐
| |
| ion operators. This may be overridden when creating output files by using the re‐
| |
| direction operator >| instead of >.
| |
| -E If set, any trap on ERR is inherited by shell functions, command substitutions,
| |
| and commands executed in a subshell environment. The ERR trap is normally not in‐
| |
| herited in such cases.
| |
| -H Enable ! style history substitution. This option is on by default when the shell
| |
| is interactive.
| |
| -P If set, the shell does not resolve symbolic links when executing commands such as
| |
| cd that change the current working directory. It uses the physical directory
| |
| structure instead. By default, bash follows the logical chain of directories when
| |
| performing commands which change the current directory.
| |
| -T If set, any traps on DEBUG and RETURN are inherited by shell functions, command
| |
| substitutions, and commands executed in a subshell environment. The DEBUG and RE‐
| |
| TURN traps are normally not inherited in such cases.
| |
| -- If no arguments follow this option, then the positional parameters are unset.
| |
| Otherwise, the positional parameters are set to the args, even if some of them be‐
| |
| gin with a -.
| |
| - Signal the end of options, cause all remaining args to be assigned to the posi‐
| |
| tional parameters. The -x and -v options are turned off. If there are no args,
| |
| the positional parameters remain unchanged.
| |
|
| |
|
| The options are off by default unless otherwise noted. Using + rather than - causes these
| | ::-eが無視されるコンテキストで複合コマンドまたはシェル関数が実行される場合、-eが設定されているコマンドで失敗ステータスが返されたとしても、複合コマンドまたは関数本体内で実行されるコマンドはいずれも-e設定の影響を受けない。 -eが無視されるコンテキストで実行中に複合コマンドまたはシェル関数が-eを設定した場合、複合コマンドまたは関数呼び出しを含むコマンドが完了するまで、その設定は影響を及ぼさない。 |
| options to be turned off. The options can also be specified as arguments to an invocation
| | :;-f |
| of the shell. The current set of options may be found in $-. The return status is always
| | ::Disable pathname expansion. |
| true unless an invalid option is encountered.
| | :;-h |
| | ::コマンドを実行するために検索する際に、コマンドの場所を記憶する。 これはデフォルトで有効になっている。 |
| | :;-k |
| | ::コマンド名の前にある引数だけでなく、代入文の形をしたすべての引数がコマンドの環境に置かれる。 |
| | :;-m |
| | ::モニターモード。 ジョブ制御が有効になっている。 このオプションは、対話型シェルをサポートしているシステムではデフォルトでオンになっている(上記の [[#JOB CONTROL|JOB CONTROL ]]を参照)。 すべてのプロセスは別々のプロセスグループで実行される。 バックグラウンド・ジョブが完了すると、シェルは終了ステータスを含む行を表示する。 |
| | :;-n |
| | ::コマンドを読むが実行はしない。 これは、シェルスクリプトの構文エラーをチェックするために使用される。 対話型シェルでは無視される。 |
| | :;-o option-name |
| | ::オプション名は以下のいずれかである: |
| | ::allexport |
| | :::-aと同じ |
| | ::braceexpand |
| | :::-Bと同じ |
| | ::emacs |
| | :::emacsスタイルのコマンドライン編集インターフェイスを使用する。 これはデフォルトで有効になっている。ただし、 --noeditingオプションを指定してシェルを起動した場合はこの限りではない。 これは、read -eで使用される編集インターフェースにも影響する。 |
| | ::errexit |
| | :::-eと同じ |
| | ::errtrace |
| | :::-Eと同じ |
| | ::functrace |
| | :::-Tと同じ |
| | ::hashall |
| | :::-hと同じ |
| | ::histexpand |
| | :::-Hと同じ |
| | ::history |
| | :::上記の「 [[#HISTORY|HISTORY ]]」で説明したように、コマンドヒストリーを有効にする。 このオプションは対話型シェルではデフォルトでオンになっている。 |
| | ::ignoreeof |
| | :::あたかもシェルコマンド ``IGNOREEOF=10'' が実行されたかのような効果がある(上記のシェル変数を参照)。 |
| | ::keyword |
| | :::-kと同じ |
| | ::monitor |
| | :::-mと同じ |
| | ::noclobber |
| | :::-Cと同じ |
| | ::noexec |
| | :::-nと同じ |
| | ::noglob |
| | :::-fと同じ |
| | ::nolog |
| | :::現在は無視されている。 |
| | ::notify |
| | :::-bと同じ |
| | ::nounset |
| | :::-uと同じ |
| | ::onecmd |
| | :::-tと同じ |
| | ::physical |
| | :::-Pと同じ |
| | ::pipefail |
| | :::設定されている場合、パイプラインの戻り値は、0以外のステータスで終了した最後の(最も右側の)コマンドの値、またはパイプライン内のすべてのコマンドが正常に終了した場合は0になる。 このオプションはデフォルトでは無効になっている。 |
| | ::posix |
| | :::デフォルトの動作がPOSIX標準と異なるbashの動作を、標準に合わせるように変更する(posixモード)。 posixモードがbashの動作にどのような影響を与えるかを詳しく説明したドキュメントへのリファレンスは、以下のSEE ALSOを参照のこと。 |
| | ::privileged |
| | :::-pと同じ |
| | ::verbose |
| | :::-vと同じ |
| | ::vi |
| | :::Viスタイルのコマンドライン編集インターフェイスを使用する。 これは、read -eで使用される編集インターフェースにも影響する。 |
| | ::xtrace |
| | :::Same as -x. |
| | ::option-name なしで -o を指定すると、現在のオプションの値が表示される。 option-name なしで +o を指定すると、現在のオプション設定を再現する一連の set コマンドが標準出力に表示される。 |
| | :;-p |
| | ::特権モードをオンにする。 このモードでは、$ENV と $BASH_ENV ファイルは処理されず、シェル関数は環境から継承されず、 SHELLOPTS、BASHOPTS、CDPATH、GLOBIGNORE 変数が環境にある場合は無視される。 実効ユーザー(グループ)IDが実ユーザー(グループ)IDに等しくない状態でシェルが起動され、-pオプションが与えられなかった場合、これらのアクションが実行され、実効ユーザーIDが実ユーザーIDに設定される。 起動時に-pオプションが指定された場合、実効ユーザーIDはリセットされない。 このオプションをオフにすると、実効ユーザーIDとグループIDが実際のユーザーIDとグループIDに設定される。 |
| | :;-t |
| | ::コマンドを1つ読んで実行したら終了する。 |
| | :;-u |
| | ::特殊パラメータ "@" と "*" 以外の未設定の変数とパラメータを、パラメータ展開の際にエラーとして扱う。 未設定の変数やパラメータを展開しようとした場合、シェルはエラーメッセージを表示し、対話的でない場合は0以外のステータスで終了する。 |
| | :;-v |
| | ::シェルの入力行が読み込まれると、それを表示する。 |
| | :;-x |
| | ::各単純コマンド、forコマンド、caseコマンド、selectコマンド、または算術コマンドを展開した後、PS4の展開値を表示し、その後にコマンドとその展開された引数、または関連する単語リストを表示する。 |
| | :;-B |
| | ::シェルはブレース展開を行う(上記のブレース展開を参照)。 これはデフォルトでオンになっている。 |
| | :;-C |
| | ::設定すると、bashは既存のファイルを>、>&、<>リダイレクト演算子で上書きしない。 この設定は、出力ファイルを作成するときに > の代わりに >| というリダイレクト演算子を使うことで上書きすることができる。 |
| | :;-E |
| | ::設定されている場合、ERRのトラップはすべて、シェル関数、コマンド置換、サブシェル環境で実行されるコマンドに継承される。 このような場合、ERRトラップは通常継承されない。 |
| | :;-H |
| | ::スタイルの履歴置換を有効にする。 このオプションは、シェルが対話型の場合、デフォルトでオンになる。 |
| | :;-P |
| | ::設定されていると、カレント作業ディレクトリを変更するcdなどのコマンドを実行するときに、シェルはシンボリックリンクを解決しない。 代わりに物理的なディレクトリ構造を使用する。 デフォルトでは、カレント・ディレクトリを変更するコマンドを実行するとき、bashはディレクトリの論理的な連鎖に従う。 |
| | :;-T |
| | ::設定されている場合、DEBUGとRETURNのトラップは、シェル関数、コマンド置換、サブシェル環境で実行されるコマンドに継承される。 DEBUGとRETURNのトラップは通常、このような場合には継承されない。 |
| | :;-- |
| | ::このオプションの後に引数が続かない場合、位置パラメーターは設定されない。そうでない場合、位置パラメーターは引数に設定され、たとえ引数の一部が-で始まるとしても、位置パラメーターは引数に設定される。 |
| | :;- |
| | ::オプションの終了を合図し、残りのすべての引数を位置パラメーターに代入させる。 xと-vオプションはオフになる。 引数がない場合、位置パラメーターは変更されない。 |
|
| |
|
| shift [n]
| | :特に断りのない限り、オプションはデフォルトでオフになっている。 ではなく+を使用すると、これらのオプションはオフになる。 オプションは、シェルを起動する際の引数として指定することもできる。 現在のオプションのセットは $- にある。 無効なオプションに遭遇しない限り、戻り値は常に真である。 |
| The positional parameters from n+1 ... are renamed to $1 .... Parameters represented by
| |
| the numbers $# down to $#-n+1 are unset. n must be a non-negative number less than or
| |
| equal to $#. If n is 0, no parameters are changed. If n is not given, it is assumed to
| |
| be 1. If n is greater than $#, the positional parameters are not changed. The return
| |
| status is greater than zero if n is greater than $# or less than zero; otherwise 0.
| |
|
| |
|
| shopt [-pqsu] [-o] [optname ...]
| | ;<nowiki>shift [n]</nowiki> |
| Toggle the values of settings controlling optional shell behavior. The settings can be
| | :n+1 ...までの位置パラメーターは$1 ...に改名される。 nは、$#以下の非負の数でなければならない。 nが0の場合、パラメーターは変更されない。 nが与えられない場合、1とみなされる。 nが$#より大きい場合、位置パラメーターは変更されない。 戻り値は、nが$#より大きいか0より小さい場合は0より大きく、それ以外は0である。 |
| either those listed below, or, if the -o option is used, those available with the -o op‐
| |
| tion to the set builtin command. With no options, or with the -p option, a list of all
| |
| settable options is displayed, with an indication of whether or not each is set; if opt‐
| |
| names are supplied, the output is restricted to those options. The -p option causes out‐
| |
| put to be displayed in a form that may be reused as input. Other options have the follow‐
| |
| ing meanings:
| |
| -s Enable (set) each optname.
| |
| -u Disable (unset) each optname.
| |
| -q Suppresses normal output (quiet mode); the return status indicates whether the opt‐
| |
| name is set or unset. If multiple optname arguments are given with -q, the return
| |
| status is zero if all optnames are enabled; non-zero otherwise.
| |
| -o Restricts the values of optname to be those defined for the -o option to the set
| |
| builtin.
| |
|
| |
|
| If either -s or -u is used with no optname arguments, shopt shows only those options which
| | ;<nowiki>shopt [-pqsu] [-o] [optname ...]</nowiki> |
| are set or unset, respectively. Unless otherwise noted, the shopt options are disabled
| | :オプションのシェル動作を制御する設定の値を切り替える。 設定値は、以下に列挙するものか、-o オプションを使用した場合は set 組み込みコマンドの -o オプションで使用可能なものである。 オプションなし、または -p オプションを指定すると、設定可能なすべてのオプションのリストが表示され、それぞれが設定されているかどうかが示される。 -pオプションを指定すると、入力として再利用できる形式で出力が表示される。 その他のオプションの意味は以下のとおりである: |
| (unset) by default.
| | :;-s |
| | ::それぞれのoptnameを有効にする(設定する)。 |
| | :;-u |
| | ::各 optname を無効にする(設定解除する)。 |
| | :;-q |
| | ::通常の出力を抑制する(クワイエットモード)。戻り値は、optnameが設定されているか否かを示す。 複数のoptname引数を-qで指定した場合、すべてのoptnameが有効になっていれば戻り値は0であり、そうでなければ0ではない。 |
| | :;-o |
| | ::optnameの値を、setビルトインの-oオプションで定義された値に制限する。 |
|
| |
|
| The return status when listing options is zero if all optnames are enabled, non-zero oth‐
| | :optname引数を指定せずに-sまたは-uを使用した場合、shoptはそれぞれ設定または未設定のオプションのみを表示する。 特に断りのない限り、shoptのオプションはデフォルトで無効(未設定)になっている。 |
| erwise. When setting or unsetting options, the return status is zero unless an optname is
| |
| not a valid shell option.
| |
|
| |
|
| The list of shopt options is:
| | :オプションを一覧表示するときの戻りステータスは、すべての optname が有効な場合は 0 であり、そうでない場合は 0 以外である。 オプションを設定または解除する場合、optnameが有効なシェルオプションでない場合を除き、戻り値は0である。 |
|
| |
|
| assoc_expand_once
| | :ショップオプションのリストは以下の通り: |
| If set, the shell suppresses multiple evaluation of associative array subscripts
| |
| during arithmetic expression evaluation, while executing builtins that can perform
| |
| variable assignments, and while executing builtins that perform array dereferenc‐
| |
| ing.
| |
| autocd If set, a command name that is the name of a directory is executed as if it were
| |
| the argument to the cd command. This option is only used by interactive shells.
| |
| cdable_vars
| |
| If set, an argument to the cd builtin command that is not a directory is assumed
| |
| to be the name of a variable whose value is the directory to change to.
| |
| cdspell If set, minor errors in the spelling of a directory component in a cd command will
| |
| be corrected. The errors checked for are transposed characters, a missing charac‐
| |
| ter, and one character too many. If a correction is found, the corrected filename
| |
| is printed, and the command proceeds. This option is only used by interactive
| |
| shells.
| |
| checkhash
| |
| If set, bash checks that a command found in the hash table exists before trying to
| |
| execute it. If a hashed command no longer exists, a normal path search is per‐
| |
| formed.
| |
| checkjobs
| |
| If set, bash lists the status of any stopped and running jobs before exiting an
| |
| interactive shell. If any jobs are running, this causes the exit to be deferred
| |
| until a second exit is attempted without an intervening command (see JOB CONTROL
| |
| above). The shell always postpones exiting if any jobs are stopped.
| |
| checkwinsize
| |
| If set, bash checks the window size after each external (non-builtin) command and,
| |
| if necessary, updates the values of LINES and COLUMNS. This option is enabled by
| |
| default.
| |
| cmdhist If set, bash attempts to save all lines of a multiple-line command in the same
| |
| history entry. This allows easy re-editing of multi-line commands. This option
| |
| is enabled by default, but only has an effect if command history is enabled, as
| |
| described above under HISTORY.
| |
| compat31
| |
| compat32
| |
| compat40
| |
| compat41
| |
| compat42
| |
| compat43
| |
| compat44
| |
| These control aspects of the shell's compatibility mode (see SHELL COMPATIBILITY
| |
| MODE below).
| |
|
| |
|
| complete_fullquote
| | :;assoc_expand_once |
| If set, bash quotes all shell metacharacters in filenames and directory names when
| | ::設定されている場合、シェルは、算術式評価中、変数代入を実行できるビルドイン実行中、および配列の再参照を実行するビルドイン実行中に、連想配列添え字の多重評価を抑制する。 |
| performing completion. If not set, bash removes metacharacters such as the dollar
| | :;autocd |
| sign from the set of characters that will be quoted in completed filenames when
| | ::設定された場合、ディレクトリ名であるコマンド名は、あたかもcdコマンドの引数であるかのように実行される。 このオプションは対話型シェルでのみ使用される。 |
| these metacharacters appear in shell variable references in words to be completed.
| | ;;cdable_vars |
| This means that dollar signs in variable names that expand to directories will not
| | ::設定された場合、ディレクトリでないcd組み込みコマンドの引数は、変更先のディレクトリを値とする変数名とみなされる。 |
| be quoted; however, any dollar signs appearing in filenames will not be quoted,
| | :;cdspell |
| either. This is active only when bash is using backslashes to quote completed
| | ::設定された場合、cdコマンドのディレクトリ構成要素のスペルにおける軽微なエラーが修正される。 チェックされる誤りは、文字が入れ替わっている、文字が欠けている、 1文字多い、などである。 修正が見つかった場合、修正されたファイル名が表示され、コマンドは続行される。 このオプションは対話型シェルでのみ使用される。 |
| filenames. This variable is set by default, which is the default bash behavior in
| | :;checkhash |
| versions through 4.2.
| | ::セットされていると、bashはハッシュ・テーブルで見つかったコマンドを実行しようとする前に、そのコマンドが存在するかどうかをチェックする。 ハッシュ化されたコマンドがもはや存在しない場合は、通常のパス検索が実行される。 |
| | :;checkjobs |
| | ::設定されている場合、bashは対話型シェルを終了する前に、停止中および実行中のジョブのステータスを一覧表示する。 実行中のジョブがある場合、コマンドを介さずに2回目の終了を試みるまで終了が延期される(上記の[[#JOB CONTROL|JOB CONTROL ]]を参照)。 停止中のジョブがある場合、シェルは常に終了を延期する。 |
| | :;checkwinsize |
| | ::このオプションを設定すると、bashは外部(ビルトインでない)コマンドを実行するたびにウィンドウ・サイズをチェックし、必要に応じてLINESとCOLUMNSの値を更新する。 このオプションはデフォルトで有効になっている。 |
| | :;cmdhist |
| | ::これを設定すると、bashは複数行コマンドのすべての行を同じ履歴エントリに保存しようとする。 これにより、複数行コマンドの再編集が容易になる。 このオプションはデフォルトで有効になっているが、上記の「[[#HISTORY|HISTORY ]]」で説明したように、コマンドヒストリが有効になっている場合にのみ効果がある。 |
| | :;compat31 |
| | :;compat32 |
| | :;compat40 |
| | :;compat41 |
| | :;compat42 |
| | :;compat43 |
| | :;compat44 |
| | ::これらは、シェルの互換モードの側面を制御する(以下の「[[#SHELL COMPATIBILITY MODE|SHELL COMPATIBILITY MODE ]]」を参照)。 |
| | :;complete_fullquote |
| | ::設定されている場合、bashは補完を実行するときにファイル名とディレクトリ名に含まれるすべてのシェル・メタ文字を引用符で囲む。 設定されていない場合、補完されるファイル名のシェル変数参照にドル記号のようなメタキャラクタがあると、bashはそのメタキャラクタを引用符で囲む文字から除外する。つまり、ディレクトリに展開される変数名のドル記号は引用されないが、ファイル名に現れるドル記号も引用されない。 これは、bashがバックスラッシュを使って補完されたファイル名を引用している場合にのみ有効である。 この変数はデフォルトで設定されており、これは4.2までのバージョンにおけるbashのデフォルトの動作である。 |
|
| |
|
| direxpand
| | :;direxpand |
| If set, bash replaces directory names with the results of word expansion when per‐
| | ::これを設定すると、bashはファイル名の補完を実行するときに、ディレクトリ名を単語展開の結果に置き換える。 これにより、readline編集バッファの内容が変更される。 設定されていない場合、bashはユーザーが入力した内容を保持しようとする。 |
| forming filename completion. This changes the contents of the readline editing
| |
| buffer. If not set, bash attempts to preserve what the user typed.
| |
|
| |
|
| dirspell
| | :;dirspell |
| If set, bash attempts spelling correction on directory names during word comple‐
| | ::設定すると、最初に与えられたディレクトリ名が存在しない場合、bashは単語補完時にディレクトリ名のスペル修正を試みる。 |
| tion if the directory name initially supplied does not exist.
| |
|
| |
|
| dotglob If set, bash includes filenames beginning with a `.' in the results of pathname
| | :;dotglob |
| expansion. The filenames ``.'' and ``..'' must always be matched explicitly,
| | ::.'で始まるファイル名をパス名の展開結果に含める。 ドットグロブがセットされていても、ファイル名 ``.'' と ``...'' は常に明示的にマッチさせる必要がある。 |
| even if dotglob is set.
| |
|
| |
|
| execfail
| | :;execfail |
| If set, a non-interactive shell will not exit if it cannot execute the file speci‐
| | ::設定された場合、非対話型シェルは、exec 組み込みコマンドの引数として指定されたファイルを実行できなくても終了しない。 対話型シェルは、exec に失敗しても終了しない。 |
| fied as an argument to the exec builtin command. An interactive shell does not
| |
| exit if exec fails.
| |
|
| |
|
| expand_aliases
| | :;expand_aliases |
| If set, aliases are expanded as described above under ALIASES. This option is en‐
| | ::設定されている場合、エイリアスは上記の ALIASES で説明されているように展開される。 このオプションは対話型シェルではデフォルトで有効になっている。 |
| abled by default for interactive shells.
| |
|
| |
|
| extdebug
| | :;extdebug |
| If set at shell invocation, or in a shell startup file, arrange to execute the de‐
| | ::シェル起動時、またはシェル起動ファイルに設定すると、 --debuggerオプションと同じように、シェル起動前にデバッガ・プロファイルを実行するようにアレンジする。 起動後に設定すると、デバッガが使用することを意図した動作が有効になる: |
| bugger profile before the shell starts, identical to the --debugger option. If
| |
| set after invocation, behavior intended for use by debuggers is enabled:
| |
|
| |
|
| 1. The -F option to the declare builtin displays the source file name and line
| | :::1. declareビルトインの-Fオプションは、引数として与えられた各関数名に対応するソースファイル名と行番号を表示する。 |
| number corresponding to each function name supplied as an argument.
| |
|
| |
|
| 2. If the command run by the DEBUG trap returns a non-zero value, the next
| | :::2. DEBUGトラップによって実行されたコマンドがゼロ以外の値を返した場合、次のコマンドはスキップされ実行されない。 |
| command is skipped and not executed.
| |
|
| |
|
| 3. If the command run by the DEBUG trap returns a value of 2, and the shell is
| | :::3. DEBUGトラップによって実行されたコマンドが値2を返し、シェルがサブルーチン(シェル関数または.NETやソース・ビルトインによって実行されるシェル・スクリプト)で実行されている場合、シェルはreturnの呼び出しをシミュレートする。 |
| executing in a subroutine (a shell function or a shell script executed by
| |
| the . or source builtins), the shell simulates a call to return.
| |
|
| |
|
| 4. BASH_ARGC and BASH_ARGV are updated as described in their descriptions
| | :::4. BASH_ARGCとBASH_ARGVは、上記の説明に従って更新される。 |
| above.
| |
|
| |
|
| 5. Function tracing is enabled: command substitution, shell functions, and
| | :::5. コマンド置換、シェル関数、および ( コマンド ) で呼び出されるサブシェルは、DEBUG および RETURN トラップを継承する。 |
| subshells invoked with ( command ) inherit the DEBUG and RETURN traps.
| |
|
| |
|
| 6. Error tracing is enabled: command substitution, shell functions, and sub‐
| | :::6. コマンド置換、シェル関数、および ( コマンド ) で呼び出されたサブシェルは、ERR トラップを継承する。 |
| shells invoked with ( command ) inherit the ERR trap.
| |
|
| |
|
| extglob If set, the extended pattern matching features described above under Pathname Ex‐
| | :;extglob |
| pansion are enabled.
| | ::設定すると、上記の「パス名の拡張」で説明した拡張パターンマッチング機能が有効になる。 |
|
| |
|
| extquote
| | :;extquote |
| If set, $'string' and $"string" quoting is performed within ${parameter} expan‐
| | ::設定すると、${parameter}を二重引用符で囲んだ展開の中で、$'string'と$"string "の引用符付けが行われる。 このオプションはデフォルトで有効になっている。 |
| sions enclosed in double quotes. This option is enabled by default.
| |
|
| |
|
| failglob
| | :;failglob |
| If set, patterns which fail to match filenames during pathname expansion result in
| | ::設定すると、パス名展開時にファイル名にマッチしないパターンは展開エラーとなる。 |
| an expansion error.
| |
|
| |
|
| force_fignore
| | :;force_fignore |
| If set, the suffixes specified by the FIGNORE shell variable cause words to be ig‐
| | ::設定されていると、FIGNOREシェル変数で指定された接尾辞は、単語補完を実行するときに、無視された単語が唯一の可能な補完であっても無視される。 FIGNOREについての説明は上記の[[#SHELL VARIABLES|SHELL VARIABLES ]]を参照のこと。 このオプションはデフォルトで有効になっている。 |
| nored when performing word completion even if the ignored words are the only pos‐
| |
| sible completions. See SHELL VARIABLES above for a description of FIGNORE. This
| |
| option is enabled by default.
| |
|
| |
|
| globasciiranges
| | :;globasciiranges |
| If set, range expressions used in pattern matching bracket expressions (see Pat‐
| | ::これを設定すると、パターンマッチングの括弧式で使用される範囲式(上記の [[#Pattern Matching|Pattern Matching ]]を参照)は、比較を実行するときに従来のCロケールのように 動作する。 つまり、現在のロケールの照合順序は考慮されないので、 bはAとBの間で照合されず、大文字と小文字のASCII文字は一緒に照合される。 |
| tern Matching above) behave as if in the traditional C locale when performing com‐
| |
| parisons. That is, the current locale's collating sequence is not taken into ac‐
| |
| count, so b will not collate between A and B, and upper-case and lower-case ASCII
| |
| characters will collate together.
| |
|
| |
|
| globstar
| | :;globstar |
| If set, the pattern ** used in a pathname expansion context will match all files
| | ::設定されている場合、パス名展開コンテキストで使われるパターン ** は、すべてのファイルと0個以上のディレクトリとサブディレクトリにマッチする。 パターンの後に/が続くと、ディレクトリとサブディレクトリにのみマッチする。 |
| and zero or more directories and subdirectories. If the pattern is followed by a
| |
| /, only directories and subdirectories match.
| |
|
| |
|
| gnu_errfmt
| | :;gnu_errfmt |
| If set, shell error messages are written in the standard GNU error message format.
| | ::設定すると、シェルのエラーメッセージは標準のGNUエラーメッセージ形式で書かれる。 |
|
| |
|
| histappend
| | :;histappend |
| If set, the history list is appended to the file named by the value of the HIST‐
| | ::設定された場合、シェルの終了時に、履歴リストはファイルを上書きするのではなく、HISTFILE変数の値で指定されたファイルに追加される。 |
| FILE variable when the shell exits, rather than overwriting the file.
| |
|
| |
|
| histreedit
| | :;histreedit |
| If set, and readline is being used, a user is given the opportunity to re-edit a
| | ::readlineが設定され、かつreadlineが使用されている場合、失敗した履歴の置換を再編集する機会がユーザーに与えられる。 |
| failed history substitution.
| |
|
| |
|
| histverify
| | :;histverify |
| If set, and readline is being used, the results of history substitution are not
| | ::セットされていてreadlineが使用されている場合、ヒストリ置換の結果はすぐにシェル・パーサーに渡されない。 その代わりに、結果の行がreadline編集バッファにロードされ、さらに修正できるようになる。 |
| immediately passed to the shell parser. Instead, the resulting line is loaded
| |
| into the readline editing buffer, allowing further modification.
| |
|
| |
|
| hostcomplete
| | :;hostcomplete |
| If set, and readline is being used, bash will attempt to perform hostname comple‐
| | ::readlineが使用されている場合、@を含む単語が補完されると、bashはホスト名の補完を試みる(上記のREADLINEでの補完を参照)。 これはデフォルトで有効になっている。 |
| tion when a word containing a @ is being completed (see Completing under READLINE
| |
| above). This is enabled by default.
| |
|
| |
|
| huponexit
| | :;huponexit |
| If set, bash will send SIGHUP to all jobs when an interactive login shell exits.
| | ::設定すると、対話型ログイン・シェルが終了したときに、bashはすべてのジョブにSIGHUPを送信する。 |
|
| |
|
| inherit_errexit
| | :;inherit_errexit |
| If set, command substitution inherits the value of the errexit option, instead of
| | ::このオプションを設定すると、サブシェル環境でerrexitオプショ ンを設定解除する代わりに、コマンド置換がerrexitオプションの値を継承する。 このオプションは、posixモードが有効な場合に有効になる。 |
| unsetting it in the subshell environment. This option is enabled when posix mode
| |
| is enabled.
| |
|
| |
|
| interactive_comments
| | :;interactive_comments |
| If set, allow a word beginning with # to cause that word and all remaining charac‐
| | ::このオプションが設定されている場合、#で始まる単語を許可すると、その単語とその行の残りのすべての文字が対話型シェルで無視される(上記の[[#COMMENTS|COMMENTS ]]を参照)。このオプションはデフォルトで有効になっている。 |
| ters on that line to be ignored in an interactive shell (see COMMENTS above).
| |
| This option is enabled by default.
| |
|
| |
|
| lastpipe
| | :;lastpipe |
| If set, and job control is not active, the shell runs the last command of a pipe‐
| | ::設定され、ジョブ制御がアクティブでない場合、シェルは、現在のシェル環境でバックグラウンドで実行されていないパイプラインの最後のコマンドを実行する。 |
| line not executed in the background in the current shell environment.
| |
|
| |
|
| lithist If set, and the cmdhist option is enabled, multi-line commands are saved to the
| | :;lithist |
| history with embedded newlines rather than using semicolon separators where possi‐
| | ::cmdhist オプションが有効な場合、複数行のコマンドは可能な限りセミコロン区切りではなく、改行を埋め込んで履歴に保存される。 |
| ble.
| |
|
| |
|
| localvar_inherit
| | :;localvar_inherit |
| If set, local variables inherit the value and attributes of a variable of the same
| | ::設定されている場合、ローカル変数は、新しい値が代入される前に、前のスコープに存在する同名の変数の値と属性を継承する。 nameref属性は継承されない。 |
| name that exists at a previous scope before any new value is assigned. The
| |
| nameref attribute is not inherited.
| |
|
| |
|
| localvar_unset
| | :;localvar_unset |
| If set, calling unset on local variables in previous function scopes marks them so
| | ::セットされている場合、以前の関数スコープにあるローカル変数に対してunsetを呼び出すと、その関数が返されるまでの間、後続のルックアップでunsetが見つかるようにマークされる。これは、現在の関数スコープでローカル変数をアンセットしたときの動作と同じである。 |
| subsequent lookups find them unset until that function returns. This is identical
| |
| to the behavior of unsetting local variables at the current function scope.
| |
|
| |
|
| login_shell
| | :;login_shell |
| The shell sets this option if it is started as a login shell (see INVOCATION
| | ::シェルは、ログイン・シェルとして起動する場合、このオプションを設定する(上記の[[#INVOCATION|INVOCATION ]]を参照)。 この値は変更できない。 |
| above). The value may not be changed.
| |
|
| |
|
| mailwarn
| | :;mailwarn |
| If set, and a file that bash is checking for mail has been accessed since the last
| | ::もしセットされていて、bashがメールをチェックしているファイルが前回チェックしたときからアクセスされていた場合、``The mailfile has been read''というメッセージが表示される。 |
| time it was checked, the message ``The mail in mailfile has been read'' is dis‐
| |
| played.
| |
|
| |
|
| no_empty_cmd_completion
| | :;no_empty_cmd_completion |
| If set, and readline is being used, bash will not attempt to search the PATH for
| | ::readlineが使用されている場合、空の行で補完を試みても、PATHを検索して補完を試みることはない。 |
| possible completions when completion is attempted on an empty line.
| |
|
| |
|
| nocaseglob
| | :;nocaseglob |
| If set, bash matches filenames in a case-insensitive fashion when performing path‐
| | ::設定すると、bashはパス名展開(上記の[[#Pathname Expansion|Pathname Expansion ]]を参照)の際に、大文字と小文字を区別せずにファイル名をマッチングする。 |
| name expansion (see Pathname Expansion above).
| |
|
| |
|
| nocasematch
| | :;nocasematch |
| If set, bash matches patterns in a case-insensitive fashion when performing match‐
| | ::設定されていると、bashは大文字小文字を区別せずにパターンをマッチングする。大文字小文字や<nowiki>[[</nowiki> 条件付きコマンドの実行中にマッチングを行う場合、パターン置換の単語展開を行う場合、プログラム可能な補完の一部として可能な補完をフィルタリングする場合などである。 |
| ing while executing case or [[ conditional commands, when performing pattern sub‐
| |
| stitution word expansions, or when filtering possible completions as part of pro‐
| |
| grammable completion.
| |
|
| |
|
| nullglob
| | :;nullglob |
| If set, bash allows patterns which match no files (see Pathname Expansion above)
| | ::これを設定すると、bashはマッチするファイルがないパターン(上記の[[#Pathname Expansion|Pathname Expansion ]]を参照)を、それ自身ではなくNULL文字列に展開することができる。 |
| to expand to a null string, rather than themselves.
| |
|
| |
|
| progcomp
| | :;progcomp |
| If set, the programmable completion facilities (see Programmable Completion above)
| | ::設定されている場合、プログラマブル補完機能(上記の[[#Programmable Completion|Programmable Completion ]]を参照)が有効になる。 このオプションはデフォルトで有効になっている。 |
| are enabled. This option is enabled by default.
| |
|
| |
|
| progcomp_alias
| | :;progcomp_alias |
| If set, and programmable completion is enabled, bash treats a command name that
| | ::設定され、プログラム可能な補完が有効になっている場合、bashは補完を持たないコマンド名をエイリアスの可能性があるものとして扱い、エイリアスの展開を試みる。エイリアスを持っている場合、bashは展開されたエイリアスの結果のコマンドワードを使用してプログラマブル補完を試みる。 |
| doesn't have any completions as a possible alias and attempts alias expansion. If
| |
| it has an alias, bash attempts programmable completion using the command word re‐
| |
| sulting from the expanded alias.
| |
|
| |
|
| promptvars
| | :;promptvars |
| If set, prompt strings undergo parameter expansion, command substitution, arith‐
| | ::設定されている場合、プロンプト文字列は、上記のPROMPTINGで説明されているように 展開された後に、パラメータ展開、コマンド置換、算術展開、引用符除去を受ける。 このオプションはデフォルトで有効になっている。 |
| metic expansion, and quote removal after being expanded as described in PROMPTING
| |
| above. This option is enabled by default.
| |
|
| |
|
| restricted_shell
| | :;restricted_shell |
| The shell sets this option if it is started in restricted mode (see RESTRICTED
| | ::シェルが制限付きモードで起動した場合、このオプションが設定される(下記の[[#RESTRICTED SHELL|RESTRICTED SHELL ]]を参照)。 この値は変更できない。 これは起動ファイルが実行されてもリセットされないので、起動ファイルはシェルが制限されているかどうかを発見することができる。 |
| SHELL below). The value may not be changed. This is not reset when the startup
| |
| files are executed, allowing the startup files to discover whether or not a shell
| |
| is restricted.
| |
|
| |
|
| shift_verbose
| | :;shift_verbose |
| If set, the shift builtin prints an error message when the shift count exceeds the
| | ::設定されている場合、シフトカウントが位置パラメーターの数を超えると、shift 組み込み関数はエラーメッセージを表示する。 |
| number of positional parameters.
| |
|
| |
|
| sourcepath
| | :;sourcepath |
| If set, the source (.) builtin uses the value of PATH to find the directory con‐
| | ::このオプションを設定すると、source (.) 組み込み関数が PATH の値を使用して、 引数として指定されたファイルを含むディレクトリを検索する。 このオプションはデフォルトで有効になっている。 |
| taining the file supplied as an argument. This option is enabled by default.
| |
|
| |
|
| xpg_echo
| | :;xpg_echo |
| If set, the echo builtin expands backslash-escape sequences by default.
| | ::設定すると、echo組み込み関数はデフォルトでバックスラッシュ・エスケープ・シーケンスを展開する。 |
|
| |
|
| suspend [-f]
| | ;<nowikI>suspend [-f]</nowiki> |
| Suspend the execution of this shell until it receives a SIGCONT signal. A login shell
| | :SIGCONT シグナルを受け取るまで、このシェルの実行を一時停止する。 ログインシェルはサスペンドできない。-f オプションを使用すると、これを上書きして強制的にサスペンドできる。シェルがログイン・シェルで -f が指定されていない場合、またはジョブ制御が有効になっていない場合、戻り値は 0 である。 |
| cannot be suspended; the -f option can be used to override this and force the suspension.
| |
| The return status is 0 unless the shell is a login shell and -f is not supplied, or if job
| |
| control is not enabled.
| |
|
| |
|
| test expr
| | ;test expr |
| [ expr ]
| | ;<nowiki>[ expr ]</nowiki> |
| Return a status of 0 (true) or 1 (false) depending on the evaluation of the conditional
| | :条件式exprの評価に応じて、0(真)または1(偽)のステータスを返す。 各演算子とオペランドは別々の引数でなければならない。 testはいかなるオプションも受け付けないし、オプションの終了を意味する--という引数も受け付けず無視する。 |
| expression expr. Each operator and operand must be a separate argument. Expressions are
| |
| composed of the primaries described above under CONDITIONAL EXPRESSIONS. test does not
| |
| accept any options, nor does it accept and ignore an argument of -- as signifying the end
| |
| of options.
| |
|
| |
|
| Expressions may be combined using the following operators, listed in decreasing order of
| | :式は以下の演算子を使って組み合わせることができる。 評価は引数の数に依存する。 演算子の優先順位は、引数が5つ以上ある場合に使用される。 |
| precedence. The evaluation depends on the number of arguments; see below. Operator
| | :;! expr |
| precedence is used when there are five or more arguments.
| | ::exprがfalseなら真。 |
| ! expr True if expr is false.
| | :;( expr ) |
| ( expr )
| | ::expr の値を返す。 これは、演算子の通常の優先順位を上書きするために使われる。 |
| Returns the value of expr. This may be used to override the normal precedence of
| | :;expr1 -a expr2 |
| operators.
| | ::expr1とexpr2の両方が真なら真である。 |
| expr1 -a expr2
| | :;expr1 -o expr2 |
| True if both expr1 and expr2 are true.
| | ::expr1 または expr2 のどちらかが真なら真。 |
| expr1 -o expr2
| |
| True if either expr1 or expr2 is true.
| |
|
| |
|
| test and [ evaluate conditional expressions using a set of rules based on the number of
| | :testと<nowiki>[</nowiki> は、引数の数に基づく一連のルールを使って条件式を評価する。 |
| arguments.
| |
|
| |
|
| 0 arguments
| | :;0 arguments |
| The expression is false.
| | ::この表現は偽である。 |
| 1 argument
| | :;1 argument |
| The expression is true if and only if the argument is not null.
| | ::この式は、引数がNULLでない場合にのみ真となる。 |
| 2 arguments
| | :;2 arguments |
| If the first argument is !, the expression is true if and only if the second argu‐
| | ::最初の引数が! の場合、式は2番目の引数がNULLの場合のみ真となる。 最初の引数が、上記の「条件式」に列挙された単項条件演算子のいずれかである場合、単項テストが真であれば式は真となる。 最初の引数が有効な単項条件演算子でない場合、式は偽となる。 |
| ment is null. If the first argument is one of the unary conditional operators
| | :;3 arguments |
| listed above under CONDITIONAL EXPRESSIONS, the expression is true if the unary
| | ::以下の条件は、列挙された順序で適用される。 第2引数が、上記の「条件式」の項に列挙された二項条件演算子の1つである場合、式の結果は、第1引数と第3引数をオペランドとして使用した二項検定の結果となる。 a演算子と-o演算子は、3つの引数がある場合、二項演算子とみなされる。 第1引数が! の場合、値は、第2引数と第3引数を使った2引数テストの否定となる。 第1引数が正確に(かつ第3引数が正確に)である場合、結果は第2引数の1引数テストとなる。 そうでない場合、式は偽となる。 |
| test is true. If the first argument is not a valid unary conditional operator, the
| | :;4 arguments |
| expression is false.
| | ::最初の引数が!の場合、結果は残りの引数で構成される3つの引数式の否定となる。 そうでない場合、式はパースされ、上に挙げたルールを使って優先順位に従って評価される。 |
| 3 arguments
| | :;5 or more arguments |
| The following conditions are applied in the order listed. If the second argument
| | ::式はパースされ、上記の規則を用いて優先順位に従って評価される。 |
| is one of the binary conditional operators listed above under CONDITIONAL EXPRES‐
| |
| SIONS, the result of the expression is the result of the binary test using the
| |
| first and third arguments as operands. The -a and -o operators are considered bi‐
| |
| nary operators when there are three arguments. If the first argument is !, the
| |
| value is the negation of the two-argument test using the second and third argu‐
| |
| ments. If the first argument is exactly ( and the third argument is exactly ), the
| |
| result is the one-argument test of the second argument. Otherwise, the expression
| |
| is false.
| |
| 4 arguments
| |
| If the first argument is !, the result is the negation of the three-argument ex‐
| |
| pression composed of the remaining arguments. Otherwise, the expression is parsed
| |
| and evaluated according to precedence using the rules listed above.
| |
| 5 or more arguments
| |
| The expression is parsed and evaluated according to precedence using the rules
| |
| listed above.
| |
|
| |
|
| When used with test or [, the < and > operators sort lexicographically using ASCII order‐
| | :演算子 < と > は、test または [ と一緒に使われると、ASCIIの順序で辞書順にソートされる。 |
| ing.
| |
|
| |
|
| times Print the accumulated user and system times for the shell and for processes run from the
| | ;times |
| shell. The return status is 0.
| | :シェルおよびシェルから実行されたプロセスの累積ユーザー時間および累積システム時間を表示する。 戻り値は 0 である。 |
|
| |
|
| trap [-lp] [[arg] sigspec ...]
| | ;<nowiki>trap [-lp] [[arg] sigspec ...]</nowiki> |
| The command arg is to be read and executed when the shell receives signal(s) sigspec. If
| | :コマンド arg は、シェルがシグナル sigspec を受け取ったときに読み込まれ、実行される。 arg が存在しない場合 (sigspec が1つの場合) または - の場合、指定された各シグナルは元の値 (シェルに入ったときの値) にリセットされる。 arg が NULL 文字列の場合、各 sigspec で指定されたシグナルは、シェルおよびシェルが呼び出すコマンドによって無視される。 arg が存在せず、-p が供給された場合、各 sigspec に関連付けられたトラップコマンドが表示される。 引数がない場合、または -p だけが与えられた場合、 trap は各シグナルに関連付けられたコマンドのリストを表示する。 lオプションを指定すると、シェルはシグナル名とそれに対応する番号のリストを表示する。 各sigspecは、<signal.h>で定義されているシグナル名かシグナル番号である。 シグナル名は大文字と小文字を区別せず、接頭辞 SIG はオプションである。 |
| arg is absent (and there is a single sigspec) or -, each specified signal is reset to its
| |
| original disposition (the value it had upon entrance to the shell). If arg is the null
| |
| string the signal specified by each sigspec is ignored by the shell and by the commands it
| |
| invokes. If arg is not present and -p has been supplied, then the trap commands associ‐
| |
| ated with each sigspec are displayed. If no arguments are supplied or if only -p is
| |
| given, trap prints the list of commands associated with each signal. The -l option causes
| |
| the shell to print a list of signal names and their corresponding numbers. Each sigspec
| |
| is either a signal name defined in <signal.h>, or a signal number. Signal names are case
| |
| insensitive and the SIG prefix is optional.
| |
|
| |
|
| If a sigspec is EXIT (0) the command arg is executed on exit from the shell. If a sigspec
| | :sigspecがEXIT(0)の場合、コマンドargはシェルからの終了時に実行される。 sigspecがDEBUGの場合、コマンドargは、単純コマンド、forコマンド、caseコマンド、selectコマンド、すべての算術forコマンド、およびシェル関数内で最初のコマンドが実行される前に実行される(上記の[[#SHELL GRAMMAR|SHELL GRAMMAR ]]を参照)。 DEBUGトラップに対する効果の詳細については、shopt組み込みのextdebugオプションの説明を参照のこと。 sigspec が RETURN の場合、.source または source 組み込み関数で実行されたシェル関数またはスクリプトが実行を終了するたびに、コマンド arg が実行される。 |
| is DEBUG, the command arg is executed before every simple command, for command, case com‐
| |
| mand, select command, every arithmetic for command, and before the first command executes
| |
| in a shell function (see SHELL GRAMMAR above). Refer to the description of the extdebug
| |
| option to the shopt builtin for details of its effect on the DEBUG trap. If a sigspec is
| |
| RETURN, the command arg is executed each time a shell function or a script executed with
| |
| the . or source builtins finishes executing.
| |
|
| |
|
| If a sigspec is ERR, the command arg is executed whenever a pipeline (which may consist of
| | :sigspecがERRの場合、パイプライン(単一の単純なコマンドで構成されることもある)、リスト、または複合コマンドが、以下の条件に従って、ゼロ以外の終了ステータスを返すたびに、コマンドargが実行される。 ERR トラップは、失敗したコマンドが while または until キーワードの直後のコマンドリストの一部である場合、if 文のテストの一部である場合、最後の && または || に続くコマンド以外の && または || リストで実行されるコマンドの一部である場合、パイプラインの最後のコマンド以外のコマンドである場合、コマンドの戻り値が ! これらは、errexit (-e)オプションが従う条件と同じである。 |
| a single simple command), a list, or a compound command returns a non-zero exit status,
| |
| subject to the following conditions. The ERR trap is not executed if the failed command
| |
| is part of the command list immediately following a while or until keyword, part of the
| |
| test in an if statement, part of a command executed in a && or || list except the command
| |
| following the final && or ||, any command in a pipeline but the last, or if the command's
| |
| return value is being inverted using !. These are the same conditions obeyed by the er‐
| |
| rexit (-e) option.
| |
|
| |
|
| Signals ignored upon entry to the shell cannot be trapped or reset. Trapped signals that
| | :シェルに入ったときに無視されたシグナルは、トラップもリセットもできない。 無視されないトラップされたシグナルは、サブシェルまたはサブシェル環境が作成されると、元の値にリセットされる。 sigspecが無効な場合、戻りステータスはfalseになり、そうでなければtrapはtrueを返す。 |
| are not being ignored are reset to their original values in a subshell or subshell envi‐
| |
| ronment when one is created. The return status is false if any sigspec is invalid; other‐
| |
| wise trap returns true.
| |
|
| |
|
| type [-aftpP] name [name ...]
| | ;<nowiki>type [-aftpP] name [name ...]</nowiki> |
| With no options, indicate how each name would be interpreted if used as a command name.
| | :オプションがない場合は、それぞれの名前がコマンド名として使われた場合にどのように解釈されるかを示す。tオプションが使われると、typeは、nameがエイリアス、シェル予約語、関数、組み込み関数、ディスクファイルの場合、それぞれエイリアス、キーワード、関数、組み込み関数、ディスクファイルのいずれかの文字列を表示する。 名前が見つからない場合は何も表示されず、終了ステータスにfalseが返される。 -pオプションが使われた場合、typeはnameがコマンド名として指定された場合 に実行されるディスクファイルの名前を返すか、``type -t name''がfileを返さない場合は何も返さない。 -P オプションをつけると、``type -t name'' が file を返さない場合でも、それぞれの名前に対して PATH を検索する。 コマンドがハッシュ化されている場合、-p と -P はハッシュ化された値を表示するが、必ずしも PATH で最初に表示されるファイルとは限らない。 -aオプションが使われると、nameという名前の実行ファイルを含むすべての場所を表示する。 これには、-pオプションも使用されていない場合に限り、エイリアスや関数も含まれる。 aを使用する場合、ハッシュ化されたコマンドのテーブルは参照されない。 fオプションは、コマンド組み込み関数と同様にシェル関数の検索を抑制する。 typeは、すべての引数が見つかった場合はtrueを返し、見つからなかった場合はfalseを返す。 |
| If the -t option is used, type prints a string which is one of alias, keyword, function,
| |
| builtin, or file if name is an alias, shell reserved word, function, builtin, or disk
| |
| file, respectively. If the name is not found, then nothing is printed, and an exit status
| |
| of false is returned. If the -p option is used, type either returns the name of the disk
| |
| file that would be executed if name were specified as a command name, or nothing if ``type
| |
| -t name'' would not return file. The -P option forces a PATH search for each name, even
| |
| if ``type -t name'' would not return file. If a command is hashed, -p and -P print the
| |
| hashed value, which is not necessarily the file that appears first in PATH. If the -a op‐
| |
| tion is used, type prints all of the places that contain an executable named name. This
| |
| includes aliases and functions, if and only if the -p option is not also used. The table
| |
| of hashed commands is not consulted when using -a. The -f option suppresses shell func‐
| |
| tion lookup, as with the command builtin. type returns true if all of the arguments are
| |
| found, false if any are not found.
| |
|
| |
|
| ulimit [-HS] -a
| | ;<nowiki>ulimit [-HS] -a</nowiki> |
| ulimit [-HS] [-bcdefiklmnpqrstuvxPRT [limit]]
| | ;<nowiki>ulimit [-HS] [-bcdefiklmnpqrstuvxPRT [limit]]</nowiki> |
| Provides control over the resources available to the shell and to processes started by it,
| | :シェルやシェルによって起動されるプロセスが利用可能なリソースを制御する。-Hおよび-Sオプションは、指定されたリソースに対してハードリミットまたはソフトリミットを設定することを指定する。 ハードリミットは、一度設定されると非 root ユーザーが増やすことはできない。 Hも-Sも指定しない場合、ソフトリミットとハードリミットの両方が設定される。 limitの値には、リソースに指定された単位の数値を指定するか、特別な値hard、soft、unlimitedのいずれかを指定する。hardは現在のハードリミット、softは現在のソフトリミット、unlimitedはリミットなしをそれぞれ表す。 limitが省略された場合は、-Hオプションが与えられていない限り、リソースのソフトリミットの現在値が表示される。 複数のリソースを指定した場合は、値の前にリミット名と単位 (適切な場合) が表示される。 その他のオプションは、以下のように解釈される: |
| on systems that allow such control. The -H and -S options specify that the hard or soft
| | :;-a |
| limit is set for the given resource. A hard limit cannot be increased by a non-root user
| | ::すべての電流制限を報告する。 |
| once it is set; a soft limit may be increased up to the value of the hard limit. If nei‐
| | :;-b |
| ther -H nor -S is specified, both the soft and hard limits are set. The value of limit
| | ::ソケットバッファの最大サイズ |
| can be a number in the unit specified for the resource or one of the special values hard,
| | :;-c |
| soft, or unlimited, which stand for the current hard limit, the current soft limit, and no
| | ::作成されるコアファイルの最大サイズ |
| limit, respectively. If limit is omitted, the current value of the soft limit of the re‐
| | :;-d |
| source is printed, unless the -H option is given. When more than one resource is speci‐
| | プロセスのデータセグメントの最大サイズである。 |
| fied, the limit name and unit, if appropriate, are printed before the value. Other op‐
| | :;-e |
| tions are interpreted as follows:
| | スケジューリング優先度の最大値("nice")。 |
| -a All current limits are reported; no limits are set
| | :;-f |
| -b The maximum socket buffer size
| | シェルとその子プロセスが書き込むファイルの最大サイズである。 |
| -c The maximum size of core files created
| | :;-i |
| -d The maximum size of a process's data segment
| | ::pending シグナルの最大数 |
| -e The maximum scheduling priority ("nice")
| | :;-k |
| -f The maximum size of files written by the shell and its children
| | ::割り当て可能なkキューの最大数 |
| -i The maximum number of pending signals
| | :;-l |
| -k The maximum number of kqueues that may be allocated
| | ::メモリにロックできる最大サイズ |
| -l The maximum size that may be locked into memory
| | :;-m |
| -m The maximum resident set size (many systems do not honor this limit)
| | ::常駐セットの最大サイズ(多くのシステムはこの制限を守らない) |
| -n The maximum number of open file descriptors (most systems do not allow this value
| | :;-n |
| to be set)
| | ::開いているファイル記述子の最大数(多くのシステムはこの値の設定を許可しない) |
| -p The pipe size in 512-byte blocks (this may not be set)
| | :;-p |
| -q The maximum number of bytes in POSIX message queues
| | ::512バイトブロック単位のパイプサイズ(この値は設定できない場合がある) |
| -r The maximum real-time scheduling priority
| | :;-q |
| -s The maximum stack size
| | ::POSIXメッセージ・キューの最大バイト数 |
| -t The maximum amount of cpu time in seconds
| | :;-r |
| -u The maximum number of processes available to a single user
| | ::リアルタイム・スケジューリングの最大優先度 |
| -v The maximum amount of virtual memory available to the shell and, on some systems,
| | :;-s |
| to its children
| | ::最大スタックサイズ |
| -x The maximum number of file locks
| | :;-t |
| -P The maximum number of pseudoterminals
| | ::最大CPU時間(秒) |
| -R The maximum time a real-time process can run before blocking, in microseconds
| | :;-u |
| -T The maximum number of threads
| | ::1ユーザーが利用可能な最大プロセス数 |
| | :;-v |
| | ::シェルと、システムによってはその子シェルが利用可能な仮想メモリの最大量 |
| | :;-x |
| | ::ファイルロックの最大数 |
| | :;-P |
| | ::疑似端末の最大数 |
| | :;-R |
| | ::リアルタイムプロセスがブロックされるまでに実行できる最大時間(マイクロ秒単位 |
| | :;-T |
| | ::スレッドの最大数 |
|
| |
|
| If limit is given, and the -a option is not used, limit is the new value of the specified
| | :limitが与えられ、-aオプションが使われていない場合、 limitは指定されたリソースの新しい値になる。 オプションが与えられていない場合は、-fが仮定される。 ただし、-tは秒単位、-Rはマイクロ秒単位、-pは512バイトブロック単位、 -P、-T、-b、-k、-n、-uはスケールなし、 posixモードでは-cと-fは512バイト単位である。 無効なオプションや引数が与えられるか、新しいリミット値の設定中にエラーが発生しない限り、戻り値は0である。 |
| resource. If no option is given, then -f is assumed. Values are in 1024-byte increments,
| |
| except for -t, which is in seconds; -R, which is in microseconds; -p, which is in units of
| |
| 512-byte blocks; -P, -T, -b, -k, -n, and -u, which are unscaled values; and, when in posix
| |
| mode, -c and -f, which are in 512-byte increments. The return status is 0 unless an in‐
| |
| valid option or argument is supplied, or an error occurs while setting a new limit.
| |
|
| |
|
| umask [-p] [-S] [mode]
| | ;<nowiki>umask [-p] [-S] [mode]</nowiki> |
| The user file-creation mask is set to mode. If mode begins with a digit, it is inter‐
| | :ユーザーファイル作成マスクは mode に設定される。 mode が数字で始まる場合は、8進数として解釈される。そうでない場合は、 chmod(1) が受け付けるものと同様のシンボリック・モード・マスクとして解釈される。 modeが省略された場合、マスクの現在の値が表示される。-Sオプションを指定すると、マスクが記号形式で表示される。 -pオプションが与えられ、modeが省略された場合、入力として再利用可能な形式で出力される。 戻りステータスは、モードの変更に成功した場合、または mode 引数が与えられなかった場合は 0 であり、そうでない場合は false である。 |
| preted as an octal number; otherwise it is interpreted as a symbolic mode mask similar to
| |
| that accepted by chmod(1). If mode is omitted, the current value of the mask is printed.
| |
| The -S option causes the mask to be printed in symbolic form; the default output is an oc‐
| |
| tal number. If the -p option is supplied, and mode is omitted, the output is in a form
| |
| that may be reused as input. The return status is 0 if the mode was successfully changed
| |
| or if no mode argument was supplied, and false otherwise.
| |
|
| |
|
| unalias [-a] [name ...]
| | ;<nowiki>unalias [-a] [name ...]</nowiki> |
| Remove each name from the list of defined aliases. If -a is supplied, all alias defini‐
| | :定義されているエイリアスのリストからそれぞれの名前を削除する。 -aを指定すると、すべてのエイリアス定義が削除される。 与えられた名前が定義されたエイリアスでない限り、戻り値は真である。 |
| tions are removed. The return value is true unless a supplied name is not a defined
| |
| alias.
| |
|
| |
|
| unset [-fv] [-n] [name ...]
| | ;<nowiki>unset [-fv] [-n] [name ...]</nowiki> |
| For each name, remove the corresponding variable or function. If the -v option is given,
| | :それぞれの名前に対して、対応する変数または関数を削除する。 -vオプションが指定された場合、各名前はシェル変数を参照し、その変数が削除される。 読み取り専用の変数は設定解除できない。-f を指定すると、各名称はシェル関数を指し、その関数定義が削除される。-n オプションが指定され、name が nameref 属性を持つ変数である場合、name は参照先の変数ではなくアンセットされる。 -nオプションは、-fオプションが与えられている場合には何の効果もない。 その名前の変数がない場合、その名前の関数があればアンセットされる。 アンセットされた変数や関数は、後続のコマンドに渡される環境から取り除かれる。 '''BASH_ALIASES'''、'''BASH_ARGV0'''、'''BASH_CMDS'''、'''BASH_COMMAND'''、'''BASH_SUBSHELL'''、'''BASHPID'''、'''COMP_WORDBREAKS'''、'''DIRSTACK'''、'''EPOCHREALTIME'''、'''EPOCHSECONDS'''、'''FUNCNAME'''、'''GROUPS'''、'''HISTCMD'''、'''LINENO'''、'''RANDOM'''、'''SECONDS'''、'''SRANDOM'''のどれかがアンセットされると、たとえその後にリセットされたとしても、特別なプロパティは失われる。 名前が読み取り専用でない限り、終了ステータスは真である。 |
| each name refers to a shell variable, and that variable is removed. Read-only variables
| |
| may not be unset. If -f is specified, each name refers to a shell function, and the func‐
| |
| tion definition is removed. If the -n option is supplied, and name is a variable with the
| |
| nameref attribute, name will be unset rather than the variable it references. -n has no
| |
| effect if the -f option is supplied. If no options are supplied, each name refers to a
| |
| variable; if there is no variable by that name, a function with that name, if any, is un‐
| |
| set. Each unset variable or function is removed from the environment passed to subsequent
| |
| commands. If any of BASH_ALIASES, BASH_ARGV0, BASH_CMDS, BASH_COMMAND, BASH_SUBSHELL,
| |
| BASHPID, COMP_WORDBREAKS, DIRSTACK, EPOCHREALTIME, EPOCHSECONDS, FUNCNAME, GROUPS,
| |
| HISTCMD, LINENO, RANDOM, SECONDS, or SRANDOM are unset, they lose their special proper‐
| |
| ties, even if they are subsequently reset. The exit status is true unless a name is read‐
| |
| only.
| |
|
| |
|
| wait [-fn] [-p varname] [id ...]
| | ;<nowiki>wait [-fn] [-p varname] [id ...]</nowiki> |
| Wait for each specified child process and return its termination status. Each id may be a
| | :指定された各子プロセスを待ち、その終了ステータスを返す。 各idは、プロセスIDまたはジョブ指定である。ジョブ指定が与えられた場合、 そのジョブのパイプラインにある全てのプロセスが待たれる。 idが与えられない場合、waitは実行中のすべてのバックグラウンド・ジョブと、 最後に実行されたプロセス置換(そのプロセスidが$! -nオプションが与えられた場合、waitはidのリストから1つのジョブ、またはidが与えられない場合は任意のジョブの完了を待ち、その終了ステータスを返す。与えられた引数のどれもがシェルの子でない場合、または引数が与えられず、シェルに待機していない子がない場合、終了ステータスは127である。 -p オプションが与えられると、終了ステータスが返されたジョブのプロセスまたはジョブ識別子が、 オプション引数で指定された変数 varname に代入される。 この変数は、代入の前に初期状態では設定されていない。 これは、-n オプションが指定されている場合にのみ有効である。 ジョブ制御が有効になっているときに -f オプションを指定すると、id がステータスを変更したときに返すのではなく、id が終了するのを待ってからステータスを返すようになる。 idが存在しないプロセスまたはジョブを指定した場合、返されるステータスは127である。 それ以外の場合は、最後に待機したプロセスまたはジョブの終了ステータスが返される。 |
| process ID or a job specification; if a job spec is given, all processes in that job's
| |
| pipeline are waited for. If id is not given, wait waits for all running background jobs
| |
| and the last-executed process substitution, if its process id is the same as $!, and the
| |
| return status is zero. If the -n option is supplied, wait waits for a single job from the
| |
| list of ids or, if no ids are supplied, any job, to complete and returns its exit status.
| |
| If none of the supplied arguments is a child of the shell, or if no arguments are supplied
| |
| and the shell has no unwaited-for children, the exit status is 127. If the -p option is
| |
| supplied, the process or job identifier of the job for which the exit status is returned
| |
| is assigned to the variable varname named by the option argument. The variable will be
| |
| unset initially, before any assignment. This is useful only when the -n option is sup‐
| |
| plied. Supplying the -f option, when job control is enabled, forces wait to wait for id
| |
| to terminate before returning its status, instead of returning when it changes status. If
| |
| id specifies a non-existent process or job, the return status is 127. Otherwise, the re‐
| |
| turn status is the exit status of the last process or job waited for.
| |
|
| |
|
| == SHELL COMPATIBILITY MODE == | | == SHELL COMPATIBILITY MODE == |
| Bash-4.0 introduced the concept of a `shell compatibility level', specified as a set of options
| | Bash-4.0では「シェル互換性レベル」という概念が導入され、shopt組み込みのcompat31、compat32、compat40、compat41などに対するオプションのセットとして指定される。) 現在の互換性レベルは1つだけで、各オプションは相互に排他的である。 互換性レベルは、ユーザーが新しいバージョンと互換性のない旧バージョンの動作を選択できるようにするためのもので、スクリプトを移行して現在の機能と動作を使用できるようにするためのものである。これは一時的な解決策である。 |
| to the shopt builtin compat31, compat32, compat40, compat41, and so on). There is only one cur‐
| |
| rent compatibility level -- each option is mutually exclusive. The compatibility level is in‐
| |
| tended to allow users to select behavior from previous versions that is incompatible with newer
| |
| versions while they migrate scripts to use current features and behavior. It's intended to be a
| |
| temporary solution.
| |
|
| |
|
| This section does not mention behavior that is standard for a particular version (e.g., setting
| | このセクションでは、特定のバージョンで標準となっている動作については言及しない(例えば、compat32を設定することは、正規表現マッチング演算子のrhsを引用することで、単語内の特殊な正規表現文字を引用することを意味し、これはbash-3.2以上のデフォルトの動作である)。 |
| compat32 means that quoting the rhs of the regexp matching operator quotes special regexp charac‐
| |
| ters in the word, which is default behavior in bash-3.2 and above).
| |
|
| |
|
| If a user enables, say, compat32, it may affect the behavior of other compatibility levels up to
| | ユーザーが例えばcompat32を有効にすると、現在の互換性レベルまでの他の互換性レベルの動作に影響を与える可能性がある。 各互換性レベルは、そのバージョンのbashで変更された動作を制御するが、その動作は以前のバージョンにもあったかもしれないという考え方である。 例えば、[[ コマンドでロケール・ベースの比較を使用するようになったのはbash-4.1からで、それ以前のバージョンではASCIIベースの比較を使っていたため、compat32を有効にするとASCIIベースの比較も有効になる。 そのため、compat32を有効にすると、ASCIIベースの比較も有効になる。この細かさは、すべての用途に十分とは限らないので、ユーザーは互換性レベルを慎重に使用すべきである。 現在の動作を知るには、特定の機能のドキュメントを読むこと。 |
| and including the current compatibility level. The idea is that each compatibility level con‐
| |
| trols behavior that changed in that version of bash, but that behavior may have been present in
| |
| earlier versions. For instance, the change to use locale-based comparisons with the [[ command
| |
| came in bash-4.1, and earlier versions used ASCII-based comparisons, so enabling compat32 will
| |
| enable ASCII-based comparisons as well. That granularity may not be sufficient for all uses, and
| |
| as a result users should employ compatibility levels carefully. Read the documentation for a
| |
| particular feature to find out the current behavior.
| |
|
| |
|
| Bash-4.3 introduced a new shell variable: BASH_COMPAT. The value assigned to this variable (a
| | Bash-4.3は新しいシェル変数を導入した: BASH_COMPATである。 この変数に代入される値(4.2のような10進数のバージョン番号、または42のようなcompatNNオプションに対応する整数)が互換性レベルを決定する。 |
| decimal version number like 4.2, or an integer corresponding to the compatNN option, like 42) de‐
| |
| termines the compatibility level.
| |
|
| |
|
| Starting with bash-4.4, Bash has begun deprecating older compatibility levels. Eventually, the
| | bash-4.4から、Bashは古い互換性レベルを廃止し始めた。 最終的にはこのオプションは削除され、BASH_COMPATが使われるようになる。 |
| options will be removed in favor of BASH_COMPAT.
| |
|
| |
|
| Bash-5.0 is the final version for which there will be an individual shopt option for the previous
| | Bash-5.0は、以前のバージョンに対する個別のshoptオプションが存在する最後のバージョンである。ユーザーはbash-5.0以降のバージョンでBASH_COMPATを使うべきである。 |
| version. Users should use BASH_COMPAT on bash-5.0 and later versions.
| |
|
| |
|
| The following table describes the behavior changes controlled by each compatibility level set‐
| | 以下の表は、各互換性レベルの設定によって制御される動作の変更について説明したものである。 compatNNタグは、以下のメカニズムのいずれかを使用して互換性レベルをNNに設定するための省略記法として使用される。 bash-5.0より前のバージョンでは、対応するcompatNN shoptオプションを使用して互換性レベルを設定することができる。 bash-4.3およびそれ以降のバージョンでは、BASH_COMPAT変数を使用するのが望ましく、bash-5.1およびそれ以降のバージョンでは必須である。 |
| ting. The compatNN tag is used as shorthand for setting the compatibility level to NN using one
| |
| of the following mechanisms. For versions prior to bash-5.0, the compatibility level may be set
| |
| using the corresponding compatNN shopt option. For bash-4.3 and later versions, the BASH_COMPAT
| |
| variable is preferred, and it is required for bash-5.1 and later versions.
| |
|
| |
|
| compat31
| | ;compat31 |
| • quoting the rhs of the [[ command's regexp matching operator (=~) has no special
| | * コマンドの正規表現マッチング演算子(=~)のrhsを引用しても特別な効果はない。 |
| effect
| |
|
| |
|
| compat32
| | ;compat32 |
| • interrupting a command list such as "a ; b ; c" causes the execution of the next
| | * "a ; b ; c "のようなコマンドリストに割り込むと、リスト内の次のコマンドが実行される(bash-4.0以降のバージョンでは、シェルは割り込みを受け取ったかのように動作するため、リスト内の1つのコマンドに割り込むと、リスト全体の実行が中断される)。 |
| command in the list (in bash-4.0 and later versions, the shell acts as if it re‐
| |
| ceived the interrupt, so interrupting one command in a list aborts the execution of
| |
| the entire list)
| |
|
| |
|
| compat40
| | ;compat40 |
| • the < and > operators to the [[ command do not consider the current locale when
| | * コマンドの < と > 演算子は、文字列を比較するときに現在のロケールを考慮しない。 bash-4.1以前のバージョンでは、ASCII照合順序と[https://manpages.debian.org/unstable/manpages-dev/strcmp.3.en.html strcmp](3)を使用する。bash-4.1以降では、現在のロケールの照合順序と[https://manpages.debian.org/unstable/manpages-dev/strcoll.3.en.html strcoll](3)を使用する。 |
| comparing strings; they use ASCII ordering. Bash versions prior to bash-4.1 use
| |
| ASCII collation and strcmp(3); bash-4.1 and later use the current locale's colla‐
| |
| tion sequence and strcoll(3).
| |
|
| |
|
| compat41
| | ;compat41 |
| • in posix mode, time may be followed by options and still be recognized as a re‐
| | * posixモードでは、timeの後にオプションを付けても予約語として認識される(これはPOSIX解釈267)。 |
| served word (this is POSIX interpretation 267)
| | * posix モードでは、パーサーは二重引用符で囲まれたパラメータ展開の単語部分に偶数の一重引用符があることを要求し、一重引用符内の文字が引用符で囲まれたとみなされるように、それらを特別に扱う(これは POSIX 解釈 221 である)。 |
| • in posix mode, the parser requires that an even number of single quotes occur in
| |
| the word portion of a double-quoted parameter expansion and treats them specially,
| |
| so that characters within the single quotes are considered quoted (this is POSIX
| |
| interpretation 221)
| |
|
| |
|
| compat42
| | ;compat42 |
| • the replacement string in double-quoted pattern substitution does not undergo quote
| | * 二重引用符で囲まれたパターン置換の置換文字列は、bash-4.2以降のバージョンでは引用符の削除を行わない。 |
| removal, as it does in versions after bash-4.2
| | * posixモードでは、二重引用符で囲まれたパラメータ展開の単語部分を展開するとき、一重引用符は特別なものとみなされ、閉じ波括弧や他の特別な文字を引用するために使用できる(これはPOSIX解釈221の一部である)。 |
| • in posix mode, single quotes are considered special when expanding the word portion
| |
| of a double-quoted parameter expansion and can be used to quote a closing brace or
| |
| other special character (this is part of POSIX interpretation 221); in later ver‐
| |
| sions, single quotes are not special within double-quoted word expansions
| |
|
| |
|
| compat43
| | ;compat43 |
| • the shell does not print a warning message if an attempt is made to use a quoted
| | * シェルは、引用符で囲まれた複合代入をdeclareの引数として使おうとしても警告メッセージを表示しない(declare -a foo='(1 2)')。後のバージョンでは、この使い方が非推奨であることを警告する |
| compound assignment as an argument to declare (declare -a foo='(1 2)'). Later ver‐
| | * 単語展開エラーは、posixモードであっても、現在のコマンドを失敗させる非致命的エラーとみなされる(デフォルトの動作は、シェルを終了させる致命的エラーとなる)。 |
| sions warn that this usage is deprecated
| | * シェル関数を実行するとき、ループ状態(while/until/etc)はリセットされないため、その関数内でbreakやcontinueを行うと、呼び出し元のコンテキストでループが解除されたり継続されたりする。Bash-4.4以降では、ループ状態をリセットしてこれを防いでいる。 |
| • word expansion errors are considered non-fatal errors that cause the current com‐
| |
| mand to fail, even in posix mode (the default behavior is to make them fatal errors
| |
| that cause the shell to exit)
| |
| • when executing a shell function, the loop state (while/until/etc.) is not reset,
| |
| so break or continue in that function will break or continue loops in the calling
| |
| context. Bash-4.4 and later reset the loop state to prevent this
| |
|
| |
|
| compat44
| | ;compat44 |
| • the shell sets up the values used by BASH_ARGV and BASH_ARGC so they can expand to
| | * シェルがBASH_ARGVとBASH_ARGCで使用する値を設定し、拡張デバッグモードが有効になっていなくても、シェルの位置パラメーターに展開できるようにする。 |
| the shell's positional parameters even if extended debugging mode is not enabled
| | * サブシェルは親コンテキストからループを継承するため、breakやcontinueはサブシェルを終了させる。 Bash-5.0以降では、ループ状態をリセットして終了を防止する。 |
| • a subshell inherits loops from its parent context, so break or continue will cause
| | *シェルがposixモードでなくても、exportやreadonlyのような属性を設定する組み込み関数に先行する変数代入は、呼び出し環境の同じ名前の変数に影響を与え続ける。 |
| the subshell to exit. Bash-5.0 and later reset the loop state to prevent the exit
| |
| • variable assignments preceding builtins like export and readonly that set at‐
| |
| tributes continue to affect variables with the same name in the calling environment
| |
| even if the shell is not in posix mode
| |
|
| |
|
| compat50
| | ;compat50 |
| • Bash-5.1 changed the way $RANDOM is generated to introduce slightly more random‐
| | * Bash-5.1では、$RANDOMの生成方法が変更され、若干ランダム性が増した。 シェルの互換性レベルが50以下に設定されている場合、bash-5.0とそれ以前のバージョンの方法に戻るので、RANDOMに値を代入して乱数ジェネレーターをシードすると、bash-5.0と同じシーケンスが生成される。 |
| ness. If the shell compatibility level is set to 50 or lower, it reverts to the
| | * コマンド・ハッシュ・テーブルが空の場合、bash-5.1より前のバージョンのbashでは、入力として再利用できる出力を生成する場合でも、その旨の情報メッセージが表示された。Bash-5.1では、-lオプションが指定されると、このメッセージが表示されなくなる。 |
| method from bash-5.0 and previous versions, so seeding the random number generator
| |
| by assigning a value to RANDOM will produce the same sequence as in bash-5.0
| |
| • If the command hash table is empty, bash versions prior to bash-5.1 printed an in‐
| |
| formational message to that effect, even when producing output that can be reused
| |
| as input. Bash-5.1 suppresses that message when the -l option is supplied.
| |
|
| |
|
| == RESTRICTED SHELL == | | == RESTRICTED SHELL == |
| If bash is started with the name rbash, or the -r option is supplied at invocation, the shell be‐
| | bashをrbashという名前で起動するか、起動時に-rオプションを指定すると、シェルは制限付きになる。 制限付きシェルは、標準シェルよりも制御された環境を設定するために使用される。 動作はbashと同じだが、例外として以下のことが禁止または実行されない: |
| comes restricted. A restricted shell is used to set up an environment more controlled than the
| |
| standard shell. It behaves identically to bash with the exception that the following are disal‐
| |
| lowed or not performed:
| |
| | |
| • changing directories with cd
| |
| | |
| • setting or unsetting the values of SHELL, PATH, HISTFILE, ENV, or BASH_ENV
| |
| | |
| • specifying command names containing /
| |
| | |
| • specifying a filename containing a / as an argument to the . builtin command
| |
| | |
| • specifying a filename containing a slash as an argument to the history builtin command
| |
| | |
| • specifying a filename containing a slash as an argument to the -p option to the hash
| |
| builtin command
| |
| | |
| • importing function definitions from the shell environment at startup
| |
| | |
| • parsing the value of SHELLOPTS from the shell environment at startup
| |
| | |
| • redirecting output using the >, >|, <>, >&, &>, and >> redirection operators
| |
| | |
| • using the exec builtin command to replace the shell with another command
| |
| | |
| • adding or deleting builtin commands with the -f and -d options to the enable builtin com‐
| |
| mand
| |
| | |
| • using the enable builtin command to enable disabled shell builtins
| |
| | |
| • specifying the -p option to the command builtin command
| |
|
| |
|
| • turning off restricted mode with set +r or set +o restricted.
| | * cdでディレクトリを変更する |
| | * '''SHELL'''、'''PATH'''、'''HISTFILE'''、'''ENV'''、'''BASH_ENV'''の値を設定または解除する。 |
| | * / を含むコマンド名を指定する。 |
| | * .builtinコマンドの引数として、/を含むファイル名を指定する。 |
| | * スラッシュを含むファイル名をhistory組み込みコマンドの引数として指定する。 |
| | * hash組み込みコマンドの-pオプションの引数として、スラッシュを含むファイル名を指定する。 |
| | * 起動時にシェル環境から関数定義をインポートする。 |
| | * 起動時にシェル環境からSHELLOPTSの値を解析する。 |
| | * リダイレクト演算子 >, >|, <>, >&, &>, >> を使って出力をリダイレクトする。 |
| | * exec組み込みコマンドを使用して、シェルを別のコマンドに置き換える。 |
| | * enable 組み込みコマンドに -f および -d オプションをつけて、組み込みコマンドを追加または削除する。 |
| | * enable builtinコマンドを使用して、無効になっているシェル組み込みコマンドを有効にする。 |
| | * command組み込みコマンドに-pオプションを指定する。 |
| | * set +r または set +o restricted で制限モードをオフにする。 |
|
| |
|
| These restrictions are enforced after any startup files are read.
| | これらの制限は、起動ファイルが読み込まれた後に実行される。 |
|
| |
|
| When a command that is found to be a shell script is executed (see COMMAND EXECUTION above),
| | シェルスクリプトであることが判明したコマンドが実行されると(上記の[[#COMMAND EXECUTION|COMMAND EXECUTION ]]を参照)、rbashはスクリプトを実行するために生成されたシェルの制限をすべてオフにする。 |
| rbash turns off any restrictions in the shell spawned to execute the script.
| |
|
| |
|
| == SEE ALSO == | | == SEE ALSO == |