Hitachi

JP1 Version 11 JP1/Advanced Shell 


9.4.10 adshscripttoolコマンド(ジョブ定義スクリプトの作成を支援する)【Windows限定】

形式

adshscripttool -fowner [-L] パス名
adshscripttool -fentry [-L] パス名
adshscripttool -fmode [-s {u|g|o|r|w|x}] モード
adshscripttool -exec [-m {SIMPLE|MINIMUM}]
              {-r コマンドライン|ジョブ定義スクリプトファイルのパス名}
              [実行時パラメーター

機能

ジョブ定義スクリプトを作成しやすくするための情報の取得や出力などを実行します。指定できる引数と用途を次に示します。

引数

実行内容

用途

-fowner

ファイルまたはフォルダの所有者名を出力します。

ファイルまたはフォルダの所有者のアクセス権を変更するために,ファイルまたはフォルダの所有者名を取得したい場合に使用します。

-fentry

ファイルまたはフォルダのACLに登録されているアカウント名の一覧を出力します。

取得したACLのアカウント情報に従って,ジョブ定義スクリプト内のcaclsコマンドやattribコマンドの実行を変更したい場合に使用します。

-fmode

chmodコマンドのモードとして指定されたシンボルまたは数値を解析して,「所有者」「グループ」「その他のユーザー」に対しての権限の変更内容を,ジョブ定義スクリプト中で使用しやすいように9桁の文字列として出力します。

-sオプションと同時に指定すると,-fmodeオプション指定時の出力のうち,ugorwxの指定に対応する桁の文字だけを出力します。

シンボルまたは数値の指定内容に従って,ジョブ定義スクリプト内のcaclsコマンドやattribコマンドの実行を変更したい場合に使用します。

-exec

指定したコマンドラインまたはジョブ定義スクリプトを子孫ジョブとして実行します。

指定したコマンドラインまたはジョブ定義スクリプトを子孫ジョブとして実行したい場合に使用します。

引数

-L

情報の取得先を選択します。

パス名に指定したファイルが通常ファイルの場合,指定したファイルの情報を取得します。パス名に指定したファイルがシンボリックリンクの場合,-Lオプションの指定に従います。

-Lオプションが指定された場合,シンボリックリンクが指す実体の情報を取得します。

-Lオプションが指定されなかった場合,シンボリックリンクの情報を取得します。

環境変数ADSH_LINK_SUPPORTにL0を指定した場合,-Lオプションを使用できません。

-fowner

ファイルまたはフォルダの所有者名を標準出力に出力します。

出力する所有者名の形式は,「ドメインまたはコンピュータ名\ユーザー名」または「ユーザー名」となります。

caclsコマンドでCreator Ownerを定義しても,ファイルまたはフォルダの所有者とマッピングされない場合があります。caclsコマンドで所有者名を指定する前に,このオプションを指定してadshscripttoolコマンドを実行し,所有者名を求めておいてください。

-fentry

ファイルまたはフォルダのACLに登録されているアカウント名の一覧を「;(セミコロン)」区切りで標準出力に出力します。

出力するアカウント名の形式は「ドメインまたはコンピュータ名\ユーザー名」または「ユーザー名」となります。

パス名

対象とするファイルまたはフォルダを指定します。

-fmode

chmodコマンドのモードとして指定されたシンボルまたは数値を解析し,「所有者」「グループ」「その他のユーザー」に対しての権限の変更内容を9桁の文字列として標準出力に出力します。

数値が指定された場合,モードビットONに対応する値をRに,モードビットOFFに対応する値をDに設定します。エラー時は'E'だけを出力して終了します。

-fmodeオプション指定時のadshscripttoolコマンドの実行結果として出力される文字列の意味を桁ごとに次に示します。

左から数えた桁番号

意味

1

所有者の読み込み権限

2

所有者の書き込み権限

3

所有者の実行権限

4

グループの読み込み権限

5

グループの書き込み権限

6

グループの実行権限

7

その他のユーザーの読み込み権限

8

その他のユーザーの書き込み権限

9

その他のユーザーの実行権限

各桁には次の値が設定されます。

意味

A

追加(「+」が設定された)

D

削除(「-」が設定された)

R

置き換え(「=」または数値が設定された)

0

指定されていない

E

adshscripttool -fmodeコマンドの実行がエラー終了

-s{u|g|o|r|w|x}

-fmodeオプション指定時の出力のうち,出力する桁を次の中から指定します。-fmodeオプションの指定時に指定できます。

  • u

    -fmodeオプション指定時の出力のうち,13桁目に対応します。

  • g

    -fmodeオプション指定時の出力のうち,46桁目に対応します。

  • o

    -fmodeオプション指定時の出力のうち,79桁目に対応します。

  • r

    -fmodeオプション指定時の出力のうち,1,4,7桁目に対応します。

  • w

    -fmodeオプション指定時の出力のうち,2,5,8桁目に対応します。

  • x

    -fmodeオプション指定時の出力のうち,3,6,9桁目に対応します。

モード

8桁の数値またはシンボルを指定します。-fmodeオプションの指定時に指定できます。

  • 数値で指定する場合

    8進数で指定します。8進数以外または8進数の07777(10進数の4095)より大きな値が指定されるとエラーとなります。

  • シンボルで指定する場合

    何も指定されていない状態(数値表現での0)に対して設定・追加・削除を設定します。シンボルの指定結果が結果として出力されます。

    シンボルとして指定できる内容を次に示します。複数指定する場合は間をコンマ(,)で区切ってください。

    シンボル内の順序

    指定できる値

    1つ目

    アクセス権を設定する項目を指定します。複数同時に指定できます。

    指定できる項目を次に示します。省略するとすべてのユーザーが仮定されます。

    u:所有者

    g:グループ

    o:その他

    a:全ユーザー

    2つ目

    モードに対する操作を指定します。1つ目のシンボルで指定された項目に対して次の処理をします。

    =:アクセス権の設定(上書き)

    +:アクセス権の追加

    -:アクセス権の削除

    設定,追加および削除する値は,3つ目のシンボルで指定します。

    3つ目のシンボルに続いて2つ目および3つ目のシンボルを記述できます。3つ目のシンボルは省略できます。

    3つ目

    設定するアクセス権を指定します。複数同時に指定できます。指定できる値を次に示します。

    r:読み取り

    w:書き込み

    x:実行

    省略するとアクセス権を設定する項目を消去します。消去した値を2つ目のシンボルに従って設定,追加および削除します。追加および削除だけでは値は変化しません。

    s,t,u,g,oは指定しても無視されます。

-exec

-rオプションに指定したコマンドライン,または指定したジョブ定義スクリプトファイルを子孫ジョブとして実行します。

-m {SIMPLE|MINIMUM}

標準出力,標準エラー出力への出力方式を指定します。-execオプションの指定時に指定できます。簡潔出力モードと最小出力モードについては,「3.4.4 ジョブ実行ログへの情報メッセージと警告メッセージの出力を抑止する」を参照してください。

  • SIMPLE

    実行する子孫ジョブを簡潔出力モードで動作します。

  • MINIMUM

    実行する子孫ジョブを最小出力モードで動作します。

子孫ジョブ形式のサンプルスクリプトは最小出力モードで動作します。そのため,子孫ジョブ形式のサンプルスクリプト内でこのコマンドを使用する場合,-mオプションにはMINIMUMの指定を推奨します。

-r コマンドライン

ジョブで実行する内容をコマンドラインに指定します。-execオプションの指定時に指定できます。

-rオプションに指定した内容は,スプールジョブディレクトリにジョブ定義スクリプトファイルとして作成されません。そのため,メッセージなどのジョブ定義スクリプトファイル名の出力個所には,ジョブ定義スクリプトファイルの絶対パスではなく「"-r CMDLINE"」が出力されます。

コマンドラインの指定

コマンドラインには,シェル運用コマンドやUNIX互換コマンドなど,ジョブ定義スクリプトに記載できるコマンドを指定できます。コマンドラインにシェル標準コマンドのpwdコマンドを指定する例を次に示します。

adshscripttool -exec -m MINIMUM -r pwd

また,コマンドセパレータによる複数コマンド記述など,ジョブ定義スクリプトファイルに記述する内容を指定できます。コマンドラインに複数のコマンドを指定する例を次に示します。

adshscripttool -exec -m MINIMUM -r "export DATA=file01 ; pgm001"

コマンドラインにスペースを指定する場合,クォーテーション(「'」または「"」)で囲む必要があります。また,コマンドを実行するシェルによっては,コマンドラインに指定した$,*,;(セミコロン)などのメタキャラクタが展開されるため,クォーテーションで囲むか,エスケープ文字(\)を使用する必要があります。

子孫ジョブの出力情報

-rオプションを指定した場合,ジョブコントローラが出力するメッセージテキストや,ジョブ定義スクリプトの稼働実績情報には,ジョブ定義スクリプトファイルのパス名として,ジョブ定義スクリプトファイルの絶対パスではなく「"-r CMDLINE"」が出力されます。

位置パラメーターの格納情報

-rオプションのコマンドラインに位置パラメーター$0を指定する場合,$0には「adshexec」が格納されます。

SPOOLJOB_CHILDJOBパラメーターとの関連

-rオプションを指定して実行する場合,SPOOLJOB_CHILDJOBパラメーターにMERGEを指定して実行したときに,ルートジョブのジョブ実行ログに出力される子孫ジョブのジョブ実行ログの開始と終了を表す記号には,ジョブ定義スクリプトファイルの絶対パスではなく次の値が出力されます。SPOOLJOB_CHILDJOBパラメーターにMERGEを指定した時の出力形式は「(3) 子孫ジョブのスプールジョブをルートジョブのスプールジョブへマージした場合」を参照してください。

・子孫ジョブのJOBLOGの開始を表す記号

「>>>>>> [JOBLOG] "-r CMDLINE"」

・子孫ジョブのJOBLOGの終了を表す記号

「<<<<<< [JOBLOG] "-r CMDLINE"」

・子孫ジョブの標準エラー出力の開始を表す記号(通常実行時)

「>>>>>> [STDERR] "-r CMDLINE"」

・子孫ジョブの標準エラー出力の終了を表す記号(通常実行時)

「<<<<<< [STDERR] "-r CMDLINE"」

・子孫ジョブの標準エラー出力および標準出力の開始を表す記号(デバッグ実行時)

「>>>>>> [STDERR,STDOUT] "-r CMDLINE"」

・子孫ジョブの標準エラー出力および標準出力の終了を表す記号(デバッグ実行時)

「<<<<<< [STDERR,STDOUT] "-r CMDLINE"」

また,スクリプトイメージファイルに出力されるジョブ定義スクリプトファイル名の部分にも「"-r CMDLINE"」が出力されます。

ジョブ定義スクリプトファイルのパス名 <パス名>((1247バイト))

実行するジョブ定義スクリプトのファイルのパス名を指定します。-execオプションの指定時に指定できます。

実行時パラメーター <任意文字列>((11,022バイト))

-rオプションに指定したコマンドラインまたはジョブ定義スクリプトファイルの位置パラメーターに格納する値を指定します。-execオプションの指定時に指定できます。

スペースを実行時パラメーターとして指定する場合は,その文字列を"(ダブルクォーテーション)で囲んでください。

終了コード

終了コード

意味

0

正常終了

1

エラー終了

使用例

注意事項