付録A.3 UNIXでASCII文字以外の文字を含むコマンドラインを実行するための前提条件
操作対象の機器のOSがUNIXの場合,ASCII文字以外の文字をプロパティに使用してコマンドを実行したいとき,必要となる設定があります。対象となる部品およびプロパティを次に示します。
-
汎用コマンド実行部品
-
プロパティ「commandLine」
-
プロパティ「commandLineParameter」
-
-
ファイル転送部品
-
プロパティ「remoteFilePath」
-
-
ターミナルコマンド実行部品
-
プロパティ「commandLine」
-
-
コンテンツ部品※
- 注※
-
操作対象の機器のOSがUNIXの場合,ASCII文字以外の文字をプロパティに使用してコマンドを実行したいとき,スクリプトの中で設定が必要になります。コンテンツ部品では,コマンドラインおよびコマンドラインから参照されるプロパティが対象です。
スクリプトに記述する設定内容は,実行したい部品および操作対象の機器のOSによって異なります。次に,実行したい部品および操作対象の機器のOSごとに必要な設定を示します。次の表の内容が正しく設定されていない場合,実行結果が不正になります。
部品 |
操作対象の機器のOS |
ログインスクリプトの設定 |
「.bashrc」の設定 |
---|---|---|---|
汎用コマンド実行部品 ファイル転送部品※ コンテンツ部品 |
Linux |
○ |
× |
ターミナルコマンド実行部品 |
UNIX |
○ |
× |
- (凡例)
-
○:設定が必要です。 ×:設定は必要ありません。
- 注※
-
ファイル転送部品では,コマンドラインではなく部品プロパティ「remoteFilePath」の値にASCII文字以外の文字を含む場合です。
ログインスクリプトの設定
- 概要
-
接続ユーザーのログインスクリプトで「istrip」の設定を無効にします。
- 確認方法
-
各部品のコマンドラインでstty -aコマンドを実行すると,コマンドの標準出力で「istrip」の設定状況を確認できます。「-istrip」と表示されていれば,「istrip」の設定は無効です。また,「istrip」の表示に「-」がない場合,「istrip」の設定は有効のため,次に示す設定をしてください。
- 設定方法
-
接続ユーザーのログインスクリプトにstty -istripコマンドを記述してください。
- 重要
-
rootユーザーに昇格する設定をしている場合は,rootユーザーのログインスクリプトで「istrip」の設定が上書きされるため,あらかじめ,rootユーザーのログインスクリプトで「istrip」の設定が無効になっていることを確認してください。
「.bashrc」の設定
- 概要
-
接続ユーザーまたはrootユーザーの「.bashrc」の中で,環境変数「LC_ALL」に「C」以外の有効なロケールを設定します。また,環境変数「LC_ALL」に値を設定する記述がない場合も,「C」以外の有効なロケールを設定します。
rootユーザーに昇格する設定をしていない場合としている場合とで,確認および設定方法が異なります。次に確認および設定方法をそれぞれ示します。
- 確認方法
-
-
rootユーザーに昇格する設定をしていない場合
rootユーザーの「.bashrc」で,環境変数「LC_ALL」の値に「C」以外が設定されているかどうか確認します。
-
rootユーザーに昇格しない設定をしている場合
接続ユーザーの「.bashrc」で,環境変数「LC_ALL」の値に「C」以外が設定されているかどうか確認します。
-
- 設定方法
-
-
rootユーザーに昇格する設定をしていない場合
rootユーザーの「.bashrc」に,環境変数「LC_ALL」の値として,ユーザーの環境で有効な「C」以外のロケールを設定してください。
-
rootユーザーに昇格しない設定をしている場合
接続ユーザーの「.bashrc」に,環境変数「LC_ALL」の値として,ユーザーの環境で有効な「C」以外のロケールを設定してください。
-