• ベストアンサー

バッチファイルの呼び出し

バッチファイル間のキックについて教えてください。 1)バッチファイルA.batでB.batをキックするにはcallでいいでしょうか? 2)あるWindowsサーバから、違うWindowsサーバのバッチファイルをキックするにはどのようにすればいいのでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • gatyan
  • ベストアンサー率41% (160/385)
回答No.1

1) 処理 b.bat 続きの処理 みたいにa.batに戻りたいなら、 call b.bat a.batに戻らなくていいなら 単に b.bat 2) 別のサーバー上で実行させるなら、リモートシェル等を使って実行させる必要があると思いますが、設定したことありません。 自サーバーで実行なら共有設定したファイルを実行するだけのはずですが…OSによってはネットワークドライブ設定が必要かも(ショートカット作成時、カレントフォルダをどうするかの問題)

rere2006
質問者

補足

ありがとうございます。 2) rshとかをWindowsで使うために何かインストールしないとだめでしょうか。。。

その他の回答 (2)

回答No.3

> 上記のサイトの通り、VBを書いて実行してみたのですが以下のエラーメッセージが返ってきます。。 bat ファイルじゃなくて試しに簡単な VBScript で試してみてどうでしょうか。 例えばこんなとか。 Dim fso, MyFile Set fso = CreateObject("Scripting.FileSystemObject") Set MyFile = fso.CreateTextFile("c:\testfile.txt", True) MyFile.WriteLine("これはテストです。") MyFile.Close

rere2006
質問者

補足

アドバイス、ありがとうございます。 普通に実行出来ました。。。

回答No.2
rere2006
質問者

お礼

ありがとうございます!!

rere2006
質問者

補足

上記のサイトの通り、VBを書いて実行してみたのですが以下のエラーメッセージが返ってきます。。 VBに関してはまったく素人なので、どこが間違っているのか。。。 ===ローカルコンピュータ「IBM-91F17B94B14」の「test.bat」を実行させたい==== =======testtest.vbs====== strComputer = "IBM-91F17B94B14" strScript = "C:\opt\BackupTools\bin\test.bat" set objController = WScript.CreateObject("WshController") set objRemote = objController.CreateScript(strScript, strComputer) WScript.Echo "リモートでスクリプトを実行します。" objRemote.Execute Do Until objRemote.Status = 2 WScript.Sleep 100 Loop WScript.Echo "リモートでの実行は終了しました。" ==================== DOSコマンドプロンプト>cscript testtest.vbs TestTest.vbs(4,1) Microsoft VBScript 実行時エラー:ActiveX コンポーネントはオブジェクトを作成できません。

関連するQ&A