Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

22.4. LMIShell の使用

LMIShell はインタラクティブクライアントかつ非インタラクティブインタープリターで、OpenPegasus CIMOM が提供する CIM オブジェクトにアクセスするために使用できます。Python インタープリターに基づいていますが、CIM オブジェクトとの対話のための追加の関数およびクラスも実装します。

22.4.1. LMIShell の開始、使用、終了

Python インタープリターと同様に、LMIShell はLMIShell スクリプトでインタラクティブクライアントまたは非インタラクティブインタープリターとして使用できます。

インタラクティブモードでの LMIShell の開始

インタラクティブモードで LMIShell インタープリターを開始するには、lmishell コマンドを引数なしで実行します。

lmishell

デフォルトでは、LMIShell は CIMOM との接続確立を試みる際に、サーバー側の証明書を認証局のトラストストアに対して確認します。この検証を無効にするには、--noverify または -n コマンドラインオプションを指定して lmishell コマンドを実行します。

lmishell --noverify
Tab Completion (タブ入力) の使用

インタラクティブモードでの実行時には、LMIShell インタープリターでは Tab キーを使用した基本的なプログラミング構造体や CIM オブジェクトの入力が可能になります。これにはネームスペース、クラス、メソッド、およびオブジェクト属性が含まれます。

履歴の閲覧

デフォルトでは、LMIShell はユーザーがインタラクティブプロンプトで入力したすべてのコマンドを ~/.lmishell_history ファイルに保存します。これにより、コマンド履歴が閲覧でき、インタラクティブモードで入力した行をプロンプトで再度入力することなく再使用できます。コマンド履歴で後ろに戻るには 上向き矢印 キーか Ctrl+p のキーの組み込み合わせを押します。コマンド履歴で前に進むには、下向き矢印 キーか Ctrl+n のキーの組み合わせを押します。

LMIShell は、増分逆検索もサポートします。コマンド履歴で特定の行を探すには、Ctrl+r を押してからコマンドの一部を入力します。以下に例を示します。

> (reverse-i-search)`connect': c = connect("server.example.com", "pegasus")

コマンド履歴を削除するには、以下のように clear_history() 機能を使用します。

clear_history()

~/.lmishellrc 設定ファイルの history_length オプションの値を変更することで、コマンド履歴に保存されている行数を設定できます。さらに、この構成ファイルの history_file オプションの値を変更することにより、履歴ファイルの場所を変更できます。たとえば、履歴ファイルの場所を ~/.lmishell_history に設定し、最大 1000 行を保存するように LMIShell を設定するには、以下の行を ~/.lmishellrc ファイルに追加します。

history_file = "~/.lmishell_history"
history_length = 1000
例外処理

デフォルトでは、LMIShell インタープリターはすべての例外を処理し、戻り値を使用します。すべての例外をコードで処理するためにこの動作を無効にするには、以下のように use_exceptions() 関数を使用します。

use_exceptions()

自動例外処理を再度有効にするには、以下を使用します。

use_exception(False)

~/.lmishellrc 設定ファイルの use_exceptions オプションの値を True に変更すると、例外処理を永続的に無効にできます。

use_exceptions = True
一時的なキャッシュの設定

デフォルト設定では、LMIShell 接続オブジェクトは一時的なキャッシュを使用して CIM クラス名および CIM クラスを保存し、ネットワーク通信を減らします。この一時的なキャッシュを削除するには、以下のように clear_cache() メソッドを使用します。

object_name.clear_cache()

object_name を接続オブジェクトの名前に置き換えます。

特定の接続オブジェクトの一時的なキャッシュを無効にするには、以下のように use_cache() メソッドを使用します。

object_name.use_cache(False)

再度これを有効にするには、以下を使用します。

object_name.use_cache(True)

~/.lmishellrc 設定ファイルの use_cache オプションの値を False に変更すると、接続オブジェクトの一時キャッシュを永続的に無効にできます。

use_cache = False
LMIShell の終了

LMIShell インタープリターを終了してシェルプロンプトに戻るには、Ctrl+d のキーの組み合わせを押すか、以下のように quit() 関数を発行します。

> quit()
~]$
LMIShell スクリプトの実行

LMIShell スクリプトを実行するには、以下のように lmishell コマンドを実行します。

lmishell file_name

file_name をスクリプト名に置き換えます。実行後に └Shell スクリプトを検証するには、--interact または -i コマンドラインオプションも指定します。

lmishell --interact file_name

LMIShell スクリプトのファイル拡張子は、.lmi が適切です。