複数のdosコマンドを実行する方法は?
for
サーバーの検出を実行して、どのサーバーが機能し、高速であるかを検出するループがあります。また、サーバーの数が多いため、すべてのサーバー検出を順番に実行するのではなく、並行して実行したいと思います。
複数のdosコマンドを実行する方法は?
for
サーバーの検出を実行して、どのサーバーが機能し、高速であるかを検出するループがあります。また、サーバーの数が多いため、すべてのサーバー検出を順番に実行するのではなく、並行して実行したいと思います。
start
次のように、コマンドを並行して実行できます。
start "" ping myserver
start "" nslookup myserver
start "" morecommands
それらはそれぞれ独自のコマンドプロンプトで起動し、1つのバッチファイルから同時に複数のコマンドを実行できるようにします。
お役に立てれば!
「別のbatファイルからバックグラウンドでbatファイルを実行するにはどうすればよいですか?」を参照することをお勧めします。
また、ここの「シェルプロセスの並列実行」の質問ページで(start
コマンドを使用することの)良い答えが与えられました。
ただし、PowerShellを使用することをお勧めします。私はそれがあなたのニーズに完全に合うと信じています。
複数のパラメータがある場合は、次の構文を使用してください。私は以下のようなスクリプトを含むbatファイルを持っています:
start "dummyTitle" [/options] D:\path\ProgramName.exe Param1 Param2 Param3
start "dummyTitle" [/options] D:\path\ProgramName.exe Param4 Param5 Param6
これにより、複数のコンソールが開きます。
start
次のように、コマンドと並行してコマンドを実行できます。
start "" ping google.com
ただし、新しいウィンドウなしで実行するには/b
、次のようなオプションを使用します。
start /b ping google.com -t
start /b ping example.com -t
さらに、この
-t
オプションにより、pingが無限に繰り返されます。