ksh93 コマンド

目的

拡張 Korn シェルを起動します。

構文

ksh93 [ + | - a b c C e f h i k m n o p r s t u v x BDP ] [+-R file] [ +-o Option ] [arg...].

注: - (負符号) の代わりに + (正符号) をフラグの前に付けると、 そのフラグがオフになります。

説明

ksh93 コマンドは拡張 Korn シェルを起動します。拡張 Korn シェルは対話式コマンド・ インタープリターであり、コマンド・プログラミング言語です。 このシェルはコマンドの実行を、対話式に端末キーボードから行うか、またはファイルから行います。

拡張 Korn シェルでは、デフォルトの Korn シェルにはない追加機能が使用できます。

注: ksh93 の待機用ビルトインは、親 wait サブルーチンと同様の方法で機能します。

フラグ

項目 説明
-B 中括弧パターン・フィールド生成、および中括弧グループ拡張を使用可能にします。これはデフォルトで設定されます。
-D スクリプトを実行しません。ただし、その結果、二重引用符内の出力ストリング・セットの前に $ が付きます。 これらのストリングは、さまざまな言語でスクリプトをローカライズするのに必要です。
-P -P または -o プロファイルが存在する場合、シェルはプロファイル・シェルと呼ばれます。
-a 定義されている後続のパラメーターをすべて自動的にエクスポートします。
-b バックグラウンド・ジョブが次のプロンプトを待つのではなく状態を変更すると同時に、ジョブ完了メッセージが表示されます。
-c コマンドが第 1 引数から読み取られるようにします。 残りの引数は、0 から始まる定位置パラメーターになります。
-C リダイレクト > が使用されるときに既存ファイルが切り捨てられない ようにします。O_EXCL モードは、ファイルを作成するために使用します。 -C オプションが使用されるときにファイルを切り捨てるには、>| が必要です。
-e || または && コマンド内に含まれているか、if while または until コマンドの後に続くか、または ! の後に続くパイプライン内にある場合を除いて、ERR トラップが設定されていればそれを実行し、コマンドの終了状況がゼロ以外の場合に終了します。このモードは、プロファイルの読み取り中は使用不可です。
-f ファイル名の生成を使用不可にします。
-h 各コマンドを、最初の読み取り時にトラックされた別名で指定します。
注: トラックされた別名の機能は現在では廃止されています。
-i シェルが対話式であることを示します。 シェルの入力と出力が端末 (ioctl サブルーチンで決定された) に接続される場合 にも、対話式シェルであることを示します。 この場合、(kill 0 コマンドが対話式シェルを消去しないようにするために) TERM 環境変数は無視されます。また、(待ち状態を割り込み可能にするために) INTR シグナルは捕そくされ無視されます。 どんな場合にも、QUIT シグナルはシェルに無視されます。
-k (廃止) コマンド名に先行する引数だけでなく、すべてのパラメーター指定引数をコマンドの環境に入れます。
-m バックグラウンド・ジョブを別々のプロセスで実行し、完了すると 1 行を印刷します。 バックグラウンド・ジョブの終了状況は、完了メッセージで報告されます。 ジョブ制御を行うシステムでは、対話式シェルの場合、このフラグは自動的にオンとなります。
-n コマンドを読み取って構文エラーを検査しますが、実行はしません。 対話式シェルの場合、このフラグは無視されます。
注: いくつかの構文について、ksh93 -n は警告メッセージを出力します。 これらのメッセージは警告です。 この警告が出されてもスクリプトの実行は変更されません。 下記は既知の警告メッセージです。
              `...` obsolete, use $(...).
              -a obsolete, use -e.
              '=' obsolete, use '=='.
              %s within [[...]] obsolete, use ((...)).
              set %s obsolete.
              `{' instead of `in' is obsolete.
              "obsolete -j must be 1 or 2.
-o オプション 引数を指定しない場合は、現在のオプション設定とエラー・メッセージを出力します。 このフラグを使用すると、以下のオプションをすべて使用可能にできます。
allexport
-a フラグと同じです。
errexit
-e フラグと同じです。
bgnice
すべてのバックグラウンド・ジョブをより低い優先順位で実行します。 これはデフォルトのモードです。
Braceexpand
-B フラグと同じです。
emacs
コマンド入力のために、emacs スタイルのインライン・エディターを開始します。
gmacs
コマンド入力のために、gmacs スタイルのインライン・エディターを開始します。
ignoreeof
ファイル終わり (EOF) 文字があっても、シェルを終了しません。 exit コマンドを使用するか、またはフラグをオーバーライドし、Ctrl-D キー・シーケンスを 12 回以上押して、シェルを終了します。
interactive
-i フラグと同じです。
keyword
-k フラグと同じです。
markdirs
ファイル名置換の結果であるすべてのディレクトリー名に / (スラッシュ) を追加します。
 
monitor
-m フラグと同じです。
multiline
標準装備のエディターは、画面の幅よりも長い複数行を画面で使用します。これは一部の端末で機能しない場合があります。
noclobber
-C フラグと同じです。
noexec
-n フラグと同じです。
noglob
-f フラグと同じです。
nolog
関数定義がヒストリー・ファイルに保管されないようにします。
 
notify
-b フラグと同じです。
nounset
-u フラグと同じです。
pipefail
パイプラインが完了するのは、そのパイプラインのすべてのコンポーネントが完了した後です。戻り値は、失敗する最後のコマンドの最後のゼロ以外の戻り値であり、すべての戻り値が 0 である場合は 0 です。
showme
; (セミコロン) が先行する単一のコマンドまたはパイプラインは、xtrace オプションが使用可能であった場合と同じように表示されますが、実行されません。それ以外の場合、先行する ; (セミコロン) は無視されます。
privileged
-p フラグと同じです。
 
verbose
-v フラグと同じです。
trackall
-h フラグと同じです。
vi
コマンド入力のために、vi スタイルのインライン・エディターは挿入モードになります。 エスケープ文字 033 を入力すると、エディターは移動モードになります。 リターンは行を送ります。
viraw
vi モードで入力された文字を 1 つずつ処理します。
xtrace
-x フラグと同じです。
1 つの ksh93 コマンド・ライン内に複数のオプションを設定できます。
-p $HOME/.profile ファイルを処理できないようにし、ENV ファイルの 代わりに /etc/suid_profile ファイルを使用します。 実効 UID (GID) が実 UID (GID) に等しくないときはいつも、このモードはオンです。 このモードをオフにすると、実効 UID と GID は実 UID と GID に設定されます。
-r 制限付きシェルを実行します。 制限付きシェルを使用する場合、以下は実行できません。
  • 現在の作業ディレクトリーの変更
  • SHELLENV、または PATH の各変数の値の設定
  • / (スラッシュ) を含むコマンドのパス名の指定
  • > (右脱字記号)、>| (右脱字記号、パイプ記号)、<> (左脱字記号、右脱字記号)、または >> (右脱字記号が 2 つ) が含まれるコマンドの出力をリダイレクトすること
項目 説明
-R File 相互参照データベースは、-R File オプションの使用時に生成 されます。このデータベースを使用して、個別ユーティリティーによる変数およびコマンド の定義および参照を検索します。
-s ksh93 コマンドに標準入力からコマンドを読み取らせます。 特殊コマンドの出力を除くシェル出力は、ファイル・ディスクリプター 2 に書き込まれます。 このパラメーターは、-c フラグまたは File[Parameter ] パラメーターと共に使うことはできません。
-t 1 つのコマンドを読み取り、実行した後、終了します。
-u 置換するときに、設定されていないパラメーターをエラーとして処理します。
-v シェル入力行を読み取りながら出力します。
-x 実行されたコマンドとその引数を出力します。

終了状況

項目 説明
0 正常終了。
>0 エラーが発生しました。

場所

/usr/bin/ksh93