以下では、CLI の入力としてファイルを使用する方法と、CLI コマンドの出力をファイルに格納する方法について説明します。
コマンド出力をファイルにリダイレクトする場合は、-of 引数を使用するか、シェルリダイレクトを使用します。-of 引数は、ファイルの完全パスを引数として取ります。
たとえば、以下のコマンドは、出力を hostFile ファイルに書き込みます。-of 引数は -cmd で指定されたコマンドの直後に指定する必要があります。
cr_cli -cmd hdb.h.add -of hostFile -u user-name -p password -name myhost -tID NM:system#crhost |
コマンドの実行後、hostFile には、出力が detail 書式 (hdb.h.add コマンドのデフォルト出力書式) で追加されます。
出力をファイルにリダイレクトするもうひとつの例としては、格納済みのセッション ID を使用してコマンドを認証する場合があります。まずセッション ID の RPC 直列化表現を session という名前のファイルに保存します。この出力をファイルにリダイレクトするには、次のどちらかの方法を使用します。
シェルリダイレクトを使ってファイルを作成する。
cr_cli -cmd udb.login -o serialized -u user-name -p password > session |
-of 引数を使ってファイルを作成する。
cr_cli -cmd udb.login -o serialized -of session -u user-name -p password |
セッション ID をファイルに格納してあれば、このファイルを別のコマンドへの入力として使用できます。詳細については、「ファイルからの入力の読み取り」を参照してください。
ファイルからコマンドにデータを渡すには、ファイル名に接頭辞 file: を追加して、ファイルを特定します。
たとえば、セッション ID が格納されているファイルがあり、このファイルを使って hdb.h.la コマンドを認証する場合は、コマンドへの入力としてこのファイルを使用します。
cr_cli -cmd hdb.h.la -s file:session |
-o serialized 引数を使ってセッションを作成していない場合は、ser: 接頭辞を使用すれば直列化したファイルを別のコマンドに渡すことができます。
cr_cli -cmd hdb.h.la -s ser:session |
入力ファイルから CLI 引数を読み取るには、識別のため、入力ファイルに接頭辞 exp: を付ける必要があります。まず、CLI に渡す情報をファイルに保存します。引数は、コマンドが要求する順に、1 行に 1 つずつ入力してください。
次に、ファイルに指定した引数をコマンドに渡します。
コマンド引数を指定するには、たとえば、file1.txt ファイルと file2.txt ファイルを exp: と組み合わせて使用します。
file1.txt の内容は次のとおりです。
hdb.h.la -u user-name exp:file2.txt |
file2.txt の内容は次のとおりです。
-p password |
この 2 つのファイルに記述されたコマンドを実行するには、次のように入力します。
cr_cli -cmd exp:file1.txt |