1

私は Windows バッチ スクリプトを初めて使用します。これはばかげた質問になる可能性があります。次のバッチ ファイルを実行しています: "traffic.bat"

start /B netperf.exe -H HOST IP >> file.txt
start /B netperf.exe -H HOST IP >> file.txt
start /B netperf.exe -H HOST IP >> file.txt
...

最初のコマンドは正常に機能していますが、さらにコマンドを実行すると、次のエラーが表示されます:「別のプロセスで使用されているため、プロセスはファイルにアクセスできません」

Linuxではこれが正常に機能することを知っています:「traffic.sh」

netperf.exe -H HOST IP >> file.txt &
netperf.exe -H HOST IP >> file.txt &
netperf.exe -H HOST IP >> file.txt &

「traffic.sh」と非常によく似たものを実現したいと考えています。

4

3 に答える 3

3

その理由は、すべてのプロセスが一度にファイルを使用しようとしているためです。それぞれがタスクを完了するまで待つ必要があります。必要なのは、/waittestartコマンドのパラメーターを含めることだけです。これを試して:

start /wait /B netperf.exe -H HOST IP >> file.txt
start /wait /B netperf.exe -H HOST IP >> file.txt
start /wait /B netperf.exe -H HOST IP >> file.txt
...

そして、それはうまくいくはずです!

モナ

于 2013-09-26T06:42:05.250 に答える
0

Cygwinは試しましたか?あなたの「traffic.sh」スクリプトは、いくつかの小さな変更(おそらくインタープリターと行末)で機能する可能性があると思います

于 2013-10-22T05:46:03.050 に答える