ファイルの有無の確認、およびファイルの作成/更新/削除を待つためのコマンドです。
記述形式
jobschchkfile [-wait|-delete] {ファイル名 |-file:リストファイル名 [-AND|-OR]} |
オプション
-wait
ファイルが存在しない場合、作成されるまで待ちます。
-delete
ファイルが削除されるまで待ちます。
ファイル名
対象とするファイル名を、フルパスで指定します。
オプションがない場合は、有無を確認するファイル名を指定します。
-file:リストファイル名
対象とするファイルを定義したファイル(リストファイル)名を指定します。
オプションがない場合は、有無を確認するファイル名を記述したファイル名を指定します。
なお、リストファイルには、複数のファイル名を記述することができます。
-AND|-OR
-fileオプションでリストファイル名を指定した場合に、リストファイル中のすべてのファイルを対象にするか、任意の1ファイルを対象にするかを指定します。
省略するとリストファイル中のすべてファイルが対象となります。-wait、-updateおよび-deleteの各オプションにおける動作を以下に示します。
-wait オプションの場合:
-AND | リストファイル中のすべてのファイルが作成されるまで待ちます。すべてのファイルがすでに存在する場合には、即復帰します。 |
-OR | リストファイル中のどれか1つのファイルが作成されるまで待ちます。ファイルがすでに1つでも存在する場合には、即復帰します。 |
-update オプションの場合:
-AND | リストファイル中のすべてのファイルが更新されるまで待ちます。 |
-OR | リストファイル中のどれか1つのファイルが更新されるまで待ちます。 |
-delete オプションの場合:
-AND | リストファイル中のすべてのファイルが削除されるまで待ちます。ファイルが1つも存在しない場合には、復帰値1で異常終了します。 |
-OR | リストファイル中のどれか1つのファイルが削除されるまで待ちます。ファイルがすでに1つでも存在しない場合には、即復帰します。 |
-update
ファイルが存在しない場合、作成されるまで待ちます。
ファイルが存在した場合は、更新されるまで待ちます。
-d:yyyymmdd
ファイルが更新されたと判断する基準の年月日を指定します。
例えば、2003年12月5日の場合、-d:20031205と指定します。
省略された場合は、現在の年月日以降となります。
-t:hhmm
ファイルが更新されたと判断する基準の時分を指定します。
例えば、13時35分の場合、-t:1335と指定します。
省略された場合は、現在の時刻以降となります。
コマンド格納場所
Solaris | /usr/bin |
復帰値
復帰値 | 意味 |
---|---|
0 | ファイルが存在しました。または、ファイルが作成/更新/削除されました。 |
1 | ファイルが存在しません。 |
10 | 内部エラーが発生しました。 |
使用例1
2003年12月5日13時30分以降に/tmp/fileが更新されれば正常終了します。
jobschchkfile -update -d:20031205 -t:1330 /tmp/file |
使用例2
2003年12月5日13時30分以降に/tmp/list_file内に記述されているすべてのファイル(/home/a.dat, /home/b.dat, /home/c.dat)が更新されれば正常終了します。
jobschchkfile -update -d:20031205 -t:1330 -file:/tmp/list_file -AND |
/tmp/list_fileの例
/home/a.dat /home/b.dat /home/c.dat |
参考
ジョブとして登録する
ファイル作成/更新/削除を契機としてジョブネットを自動起動させる場合、jobschchkfileコマンドをジョブとしてスケジュールします。ジョブネット内の先頭ジョブとして登録することにより、ファイル作成/更新/削除を待ち合わせて後続の処理を行うことができます。
注意
-wait、-update、-deleteを指定して、ジョブとしてジョブスケジューラに登録した場合、ファイルが作成/更新/削除されるまで、実行中のままとなります。投入キューのジョブ経過時間の制限値や実行多重度を確認して、問題があればキューの設定値を変更してください。
本コマンドはファイル転送が終了することを保証するものではありません。ファイルのサイズが大きい場合、使用するファイル転送機能の仕様によっては、転送途中でファイルが変更されてしまい、転送が完了する前に待ち合わせが解けてしまう場合があります。このような場合は、送信側で目的のファイルを送信後に、送信完了を通知するための小サイズのファイルを送信して、このファイルの更新を待ち合わせることで目的のファイルの転送が完了したことを認識するようにしてください。
リストファイルには、1行につき1ファイル名を記述してください。空白やタブを含むことはできません。
対象とするファイルのサイズは、2Gバイトを超えないようにしてください。