commandline

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  ビルトイン関数 > /system/shell >

commandline

フルパス:/system/shell/commandline

 

シェルコマンドまたはバッチファイルを実行します。

 

FlowForce Server ジョブに環境関数を読み込ませるには、スクリプト内で定義されている必要があります。またはスクリプトは /system/shell/commandline 関数により実行されなければなりません。 FlowForce Server は、インタラクティブでは内シェルにより作動されています。これは、( Linux 上の executing .profile または .bashrc などの)インタラクティブなシェル特有の振る舞いには適用することができない点に注意してください。

 

シェルコマンドからの終了コードが 「0」 よりも大きい場合、出力 は、以下の通りです:

 

パラメーターエラー時には中断true (デフォルト)の場合、 この関数は、実行を中断します。 この場合、 エラーを保護されたブロックとして処理することができます。 (以下を参照: ステップのエラーの処理 )。

パラメーターエラー時には中断false の場合、関数は、標準の出力、標準のエラーおよび終了コードを含むシェルコマンドの結果を返します。

 

最後のコマンドから終了コードが 「0」 (成功) の場合、関数は最後のシェルコマンドの結果を、ジェネリックな型として返します。この関数により返された値を、他のステップまたはジョブで処理するには、以下を行ってください:

 

1.「このステップの結果を以下に割り当てる」 テキストボックス内に値を入力して返された結果に名前をつけます。 (例えば、 myresult )。

2.必要とする戻り値の型により、 関数 compute または compute-string を実行する新規ステップを作成します。

3.FlowForce ステップ結果関数を使用して。上記の関数の引数として、ジェネリックな結果から希望する部分を取得する式を入力します。 例えば、式 stdout(myresult) を入力して、ストリームとしての結果の標準出力を取得する、または、標準エラー出力ストリームを取得するために stderr(myresult) を入力します。 文字列と同じ値を取得するには、 content(stdout(myresult))content(stderr(myresult)) をそれぞれ使用します。

 

stdout 関数 (とジョブ) は、シェルコマンドが標準の出力を返さない場合、失敗することに注意してください。 同様に、stderr 関数は、標準のエラーがない場合でも失敗します。

 

詳細に関しては、 以下を参照してください: データ型をステップで処理するステップ結果関数

 

パラメーター

名前

説明

コマンド

string

実行するシェルコマンドを入力します。

エラー時には中断する

boolean

このブールパラメーターはジョブが失敗した場合の戻り値を決定します。 「エラー時には中断」 が FALSE の場合、関数は、ブール値の FALSE を返します。 「エラー時には中断」 が TRUE の場合、ジョブの実行は中断されます。デフォルトの値は、 TRUE です。

作業ディレクトリ

string as directory

ジョブの作業ディレクトリ を指定します(例えば、 c:\somedirectory )。相対的なパスが使用されると、作業ディレクトリに対して解決されます。

 

サンプル

次のジョブは DoTransform.bat と呼ばれる Windows バッチファイルを実行します。DoTransform.bat が XML ファイルを入力として必要とすると仮定し、 入力 XML ファイルは作業ディレクトリにコピーされる必要があります。このサンプル内では、作業ディレクトリは以下のとおりです: C:\codegen\xslt2

fs_commandline_01

次のジョブは XSLT 変換をパラメーターを使用して実行するために RaptorXML Server を呼び出します。PATH 環境変数は RaptorXML Server 実行可能ファイルへのパスを含んでいます。 例えば、 C:\Program Files (x86)\Altova\RaptorXMLServer2019\bin。RaptorXML Server, に関する詳細は https://www.altova.com/raptorxml を参照してください。

RaptorCMDline2

コマンドラインにより返された出力を処理するステップバイステップのサンプルに関しては、 パスが存在するか確認を参照してください。


(C) 2019 Altova GmbH