本文に進む 日本−日本語
日本HPホーム 製品とサービス お客様サポート/ ダウンロード ソリューション ご購入の方法
≫ お問い合わせ
詳細検索オプション
日本HPホーム
HP-UX リファレンス: セクション 1 : ユーザーコマンド (N~Z) > s

shl(1)

HP-UX 11i Version 2: September 2004
≫ 

テクニカル ドキュメント

PDF版
フィードバック
ここから本文が始まります

 ≫ 目次

 ≫ 索引

名称

shl ― シェル階層マネージャ

構文

shl

説明

shl は、シェル階層を使って単一のターミナルから 複数のシェルと対話処理を行う方法です。 階層とは、仮想デバイスにバインドされているシェルです。 仮想デバイスは、 stty および ioctl() を使って実際のターミナルのように操作することができます ( stty(1) および ioctl(2) を参照)。 階層ごとに独自のプロセスグループ ID があります。 ユーザーは下記のコマンドを使ってこれらの階層を制御します。

現在の階層は、キーボードから入力を受け付けられる階層です。 キーボードから読み出そうとするその他の階層はブロックされます。 複数の階層からの出力はターミナルにマルチプレックスされます。 現在使用されていない階層の出力のブロックには、 stty オプション loblk を階層内で設定できます。

stty 文字 swtch ( NUL の場合は ^Z に設定) は、階層から shl に制御を切り換えるのに使用されます。 shl には、階層と区別するための独自のプロンプト >>> があります。

定義

name は、スペース、タブ、または改行文字によって区切られる文字列です。 最初の 8 文字だけが意味があります。 create, name などのコマンドへの引き数として与えられると、 name の形式は n または (n) にはできません ( n は 10 進数)。

コマンド

以下のコマンドを shl プロンプトレベルから発行できます。 任意の重複しないプレフィックスが受け付けられます。

create [-[name] | name [command]]
  

name という階層を作成して、それを現在の階層にします。 引き数を与えなければ、階層は形式 (n), の名前で作成されます。 n は内部テーブルにおける次の空きスロットの番号です。 この階層の将来の参照は、 小かっこを付けても付けなくても作成できます。 name の後にコマンドが続く場合、 そのコマンドはシェルではなく階層で実行されます。 - が最初の引き数ならば、「ログインシェル」が階層で作成されます。 シェルプロンプト変数 PS1 は階層とこの後にスペースが続いた名前に設定されます。

name [oldnamenewname
  

階層 oldnamenewname に名称変更します。 oldname を指定しなければ、現在の階層名が変更されます。

! [command] 

サブシェルを起動し、 command を実行します。 command を与えなければ、シェルは SHELL 環境変数に従って実行されます。

block name [name ...]
  

name ごとに、現在の階層ではないときに 対応する階層の出力をブロックします。 これは、階層内で stty の loblk オプションを設定するのと同じです。

delete name [name ...]
  

name ごとに、対応する階層を削除します。 階層のプロセスグループにおけるプロセスにはすべて SIGHUP シグナルが送信されます ( signal(5) を参照)。

help (または ?) 

shl コマンドの構文をプリントします。

layers [-l] [name ...]
  

name ごとに、階層名およびそのプロセスグループをリストします。 -l オプションは ps(1) と同じようなリストを作成します。 引き数を与えなければ、 情報はすべての既存の階層に対して示されます。

resume [name] 

name によって参照される階層のステータスを現在の階層のステータスに変更します。 引き数を与えなければ、最後の既存の現在の階層が変更されます。

toggle 

直前の現在の階層のステータスを、現在の階層のステータスに変更します。

unblock name [name ...]
  

name ごとに、現在の階層ではないときに 対応する階層の出力をブロックしません。 これは階層内で stty の -loblk オプションを設定するのと同じです。

quit 

shl を終了します。 階層にはすべて SIGHUP シグナルが送信されます。

name  

name によって参照される階層のステータスを現在の階層のステータスに変更します。 重複しない任意のプレフィックスが受け付けられます。

警告

コマンド

block および unblock shl の動作は、 SHELL 環境変数の設定が /usr/bin/csh ( csh(1) の場合) か /usr/bin/ksh ( ksh(1) の場合) であるとき、 または各コマンドがそのシェルから対話的に起動される前後に シェルが ( termio(7) で定義)tty 状態をセーブしてリストアするときには保証されません。 /usr/bin/csh/usr/bin/ksh, の両方については、 sttyloblk または -loblk オプションを階層内から使用して その階層の出力のブロックまたはアンブロックができます。

ptydaemon

shl が正しく動作するには、 システム上で ptydaemon プロセスが実行中でなければなりません。 システムがデスクトップ HP-UX 製品でインストールされている場合、 ptydaemon プロセスはデフォルトでは起動されません。 このデーモンを起動するには、 PTYDAEMON_START/etc/rc.config.d/ptydaemon ファイルで "0" を "1" に変更します。 この変更は、システムをリブートしない限り有効にはなりません。または 次のように入力して、手操作でデーモンを起動することもできます。

/usr/sbin/ptydaemon

なお、システムに DesktopConfig.LITECONFIG ファイルセットがインストールされている場合、あるいは システム管理者がすでに SAM ユーティリティを使用して、 SAMKernel Configuration 画面から Apply Lite HP-UX Configuration Action を選択してある場合は、 ptydaemon は使用できなくなります。

ファイル

$SHELL 

使用するシェルのパス名を内容とする変数 (デフォルトは /usr/bin/sh です)

参照

sh(1), stty(1), ioctl(2), signal(5)

標準準拠

shl: SVID2, SVID3, XPG2

印刷用画面へ
プライバシー 本サイト利用時の合意事項
© 1983-2004 Hewlett-Packard Development Company, L.P.