4.3.3 クラウドサービス連携情報のコマンドラインのエスケープ
コマンドラインにエスケープが必要な記号文字を指定する場合,OSによってエスケープ文字の指定方法が異なります。JP1/AJS3 for Cloud Service Applicationsでは次に説明する機能を使用することで,ジョブ実行先ホストのOSに合わせて文字列をエスケープすることができます。
エスケープの指定方法は次の通りです。
-
コマンドライン中のエスケープしたい部分を「@CSA(」(エスケープ開始文字)と「)ASC@」(エスケープ終了文字)で囲み,「@CSA(エスケープしたい文字列)ASC@」と指定します。例えば,「a\a」という文字列をエスケープしたい場合は「@CSA(a\a)ASC@」と指定します。
-
「エスケープしたい文字列」には,変数を指定することができ,変数を解決した結果でエスケープされます。
-
エスケープ開始文字からエスケープ終了文字が出現するまでに,エスケープ開始文字が出現しても無視されます。
WindowsとLinuxのエスケープ方法を次に示します。
<Windowsの場合>
-
「"」の前に「\」がN個(1以上)連続して存在する場合は,2N個の「\」にする
-
「"」は「\"」にする
-
終端に「\」がN個(1以上)連続して存在する場合は,2N個の「\」にする
-
全体を「"」で囲む
<Linuxの場合>
-
「`」は「\`」にする
-
「'」が含まれない場合は全体を「'」で囲む
-
「'」が含まれる場合は以下に従って変更する
(1)「'」で値を分割する。
(2) 「'」を「\'」に置き換え,それ以外の分割した文字列をそれぞれ「'」で囲む。
(3) (1)で分割し,(2)で編集した文字列をすべて連結する。