[FAQ CENTER トップ]
[バッチコマンド FAQ トップへ]

バッチコマンド FAQ



スポンサード リンク




Q バッチの実行・停止の制御をサーバ側で制御する(リモート制御)の工夫

A クライアント側のバッチの動作をサーバ側で制御したい場合があります。
例えば性能検証でクライアント10台からサーバ側へ負荷をかけるバッチを実行する場合などでです。一般的にはrsh,パワーシェル,sshなどのリモートコマンドを使用しますが、工夫してクライアント側のバッチの動作を制御することが可能です。

(1)サーバ側にテスト用のユーザ "testuser" を作成します。
(2)サーバ側で共有フォルダ(シェア)を作成します。例えば flag という共有フォルダを作成します。共有とその共有するフォルダに対して testuser に対して 読み込み権限のみ与えます。
(3)クライアント側で以下のバッチを作成します。

---------- バッチファイルの中身 ----------
net use x: \\<サーバのipアドレス>\flag /user:testuser <testuserのパスワード>
:loop
if exist x:\flag.tx (call <実行したいバッチ>)
cscript batwait.vbs
goto loop
--------------------------------------

ここで先ほど作成した共有フォルダにファイル flag.txt を作成(中身は何でも良い)をすれば、クライアント側で<実行したいバッチ>が実行されます。
逆にflag.txtを削除すれば、クライアント側は何もせずにループします。

batwait.vbsは以下の通り作成します。以下の例では5秒間 wait します。

---------- batwait.vbsの中身 ----------

WScript.sleep 5000

------------------------------------




スポンサード リンク



本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。)

[バッチコマンド FAQ トップへ]
[FAQ CENTER トップ]