Linux 将多个命令的输出重定向到单个文件
我对windows批处理脚本非常陌生,这可能是一个愚蠢的问题。 我正在运行以下批处理文件:“traffic.bat” 第一个命令工作正常,但对于其他命令,我得到以下错误: “该进程无法访问该文件,因为其他进程正在使用该文件” 我知道在linux上这很好:“traffic.sh”Linux 将多个命令的输出重定向到单个文件,linux,windows,batch-file,Linux,Windows,Batch File,我对windows批处理脚本非常陌生,这可能是一个愚蠢的问题。 我正在运行以下批处理文件:“traffic.bat” 第一个命令工作正常,但对于其他命令,我得到以下错误: “该进程无法访问该文件,因为其他进程正在使用该文件” 我知道在linux上这很好:“traffic.sh” 我想实现与“traffic.sh”非常相似的功能。之所以这样做,是因为所有进程都试图同时使用该文件。您需要等待每个人完成其任务。您所要做的就是为testart命令包含/wait参数。试试这个: start /wait /
我想实现与“traffic.sh”非常相似的功能。之所以这样做,是因为所有进程都试图同时使用该文件。您需要等待每个人完成其任务。您所要做的就是为te
start
命令包含/wait
参数。试试这个:
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
...
这应该很好
Mona以下是将多个命令的输出同时重定向到同一文件的另一种方法:
...
(
start /B netperf.exe -H HOST IP
start /B netperf.exe -H HOST IP
start /B netperf.exe -H HOST IP
::Add more commands if needed
)>>file.txt
不幸的是,我无法测试这在您当前的情况下是否有效。您尝试过cygwin吗?我认为您的“traffic.sh”脚本可能需要一些小改动(可能是解释器和行尾)只是问一下,它们必须在同一个文件中吗?即使他们这样做了,你能做的就是把他们放在不同的文件中,然后把他们全部附加到一个“file.txt”中,然后我不知道出了什么问题……是的,他们在同一个文件中。我把它们放在同一个文件中,因为我想同时执行所有命令。@Jaiswal你为什么不试试
call
,或者不包括start/b
,并把它作为一个可操作的程序引用呢。那可能行得通。
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
...
...
(
start /B netperf.exe -H HOST IP
start /B netperf.exe -H HOST IP
start /B netperf.exe -H HOST IP
::Add more commands if needed
)>>file.txt