Menu Close
16.9.2. サブシェルおよび補完モード
コマンドにはスコープと名前があります。たとえば、コマンド feature:list
には scope として
機能があり、名前として
リストします。
Karaf はコマンドをスコープによって「グループ化」します。各スコープはサブシェルを形成します。
完全修飾名 (scope:name) でコマンドを直接実行できます。
karaf@root()> feature:list ...
または、サブシェルに入り、コンテキストなコマンドを入力します。
karaf@root()> feature karaf@root(feature)> list
サブシェル名(ここでは 機能
)を入力してサブシェルに直接入力できます。サブシェルから別のサブシェルに直接「切り替える」ことができます。
karaf@root()> feature karaf@root(feature)> bundle karaf@root(bundle)>
プロンプトでは () の間に現在のサブシェルが表示されます。
exit
コマンドは親サブシェルに移動します。
karaf@root()> feature karaf@root(feature)> exit karaf@root()>
補完モードは、Tab キーおよび help コマンドの動作を定義します。
利用可能なモードは 3 つあります。
- GLOBAL
- FIRST
- SUBSHELL
etc/org.apache.karaf.shell.cfg
ファイルの completionMode プロパティーを使用してデフォルトの完了モードを定義できます。デフォルトでは、以下があります。
completionMode = GLOBAL
shell:completion
コマンドを使用して、完了モードを「fly」に変更することもできます(Karaf シェルコンソールを使用)。
karaf@root()> shell:completion GLOBAL karaf@root()> shell:completion FIRST karaf@root()> shell:completion FIRST
shell:completion
は、現在の完了モードについて通知できます。また、必要な新しい補完モードを提供することもできます。
GLOBAL 補完モードは、Karaf 4.0.0 のデフォルトモードです (主に遷移用) 。
GLOBAL モードは実際にはサブシェルを使用しません。以前のバージョンの Karaf と同じ動作です。
tab キーを入力すると、どのサブシェルでも、すべてのコマンドとすべてのエイリアスが表示されます。
karaf@root()> <TAB> karaf@root()> Display all 273 possibilities? (y or n) ... karaf@root()> feature karaf@root(feature)> <TAB> karaf@root(feature)> Display all 273 possibilities? (y or n)
FIRST 補完モードは GLOBAL 補完モードに代わるものです。
ルートレベルのサブシェルで Tab キーを入力すると、すべてのサブシェルからコマンドとエイリアスが表示されます (GLOBAL モードのように)。ただし、サブシェルにいる場合に Tab キーを入力すると、補完では現在のサブシェルのコマンドのみが表示されます。
karaf@root()> shell:completion FIRST karaf@root()> <TAB> karaf@root()> Display all 273 possibilities? (y or n) ... karaf@root()> feature karaf@root(feature)> <TAB> karaf@root(feature)> info install list repo-add repo-list repo-remove uninstall version-list karaf@root(feature)> exit karaf@root()> log karaf@root(log)> <TAB> karaf@root(log)> clear display exception-display get log set tail
SUBSHELL 補完モードは、実際のサブシェルモードです。
ルートレベルで Tab キーを入力すると、サブシェルコマンド (サブシェルに移動する) とグローバルエイリアスが表示されます。サブシェルに入り、Tab キーを入力すると、補完では現在のサブシェルのコマンドが表示されます。
karaf@root()> shell:completion SUBSHELL karaf@root()> <TAB> karaf@root()> * bundle cl config dev feature help instance jaas kar la ld lde log log:list man package region service shell ssh system karaf@root()> bundle karaf@root(bundle)> <TAB> karaf@root(bundle)> capabilities classes diag dynamic-import find-class headers info install list refresh requirements resolve restart services start start-level stop uninstall update watch karaf@root(bundle)> exit karaf@root()> camel karaf@root(camel)> <TAB> karaf@root(camel)> backlog-tracer-dump backlog-tracer-info backlog-tracer-start backlog-tracer-stop context-info context-list context-start context-stop endpoint-list route-info route-list route-profile route-reset-stats route-resume route-show route-start route-stop route-suspend