我正在尝试启动一个iPerf服务器(它是一个类似于ping的程序),并将其输出管道到一个。txt文件。
在另一台PC上,客户端正在向这个IP地址发送流量。
命令如下:
start "LocalFLServer" iperf -s -w 1024k -i 2 -B 10.42.113.120 -p5003
我想把它的输出管道到一个txt文件,所以我尝试了
start "LocalFLServer" iperf -s -w 1024k -i 2 -B 10.42.113.120 -p5003 -o dl_tcp.txt
和
start "LocalFLServer" iperf -s -w 1024k -i 2 -B 10.42.113.120 -p5003 > dl_tcp.txt
但是这两个指令都不能将结果管道到。txt文件中。
这里的问题是因为我使用'start'命令在单独的命令提示符上启动此服务器。我知道它会写一个。txt文件,如果我删除'start'。,但不幸的是,在我使用system()
发送此命令后不久,在Perl脚本中,我需要运行另一条指令,否则程序将无法继续进行,并且将保持卡住,这是我不想要的。
帮助。
编辑:在Perl中,我添加/发送这样的指令:
system(start "LocalFLServer" iperf -s -w 1024k -i 2 -B 10.42.113.120 -p5003 -o dl_tcp.txt)
我不是100%确定,但我认为iperf的日志记录到文件功能可能存在问题。从这个链接https://code.google.com/p/iperf/issues/detail?id=24可以看出,至少在2013年12月23日之前,这个问题都没有得到解决。
我还查看了iperf的源代码,在这个文件:https://github.com/esnet/iperf/blob/master/src/main.c中,参数被传递给位于文件:https://github.com/esnet/iperf/blob/master/src/iperf_api.c中的函数"iperf_parse_arguments",当我查看该方法时,我没有看到任何处理"-o"或"——output"的内容。
我不知道为什么使用">"不工作