open <ip><username><password>hashget 500k.txtquit
然后我使用以下Perl代码运行命令脚本:
system(@args);@args = ("ftp","-s:c:\ftp_dl.txt");system(@args);
如果我在DOS框中运行命令,输出如下所示:
ftp> open <ip>Connected to <ip>220 "Welcome to the fast and fabulous DUFTP005 ftp-server :-) "User (<ip>:(none)):331 Please specify the password.230 Login successful.ftp> hashHash mark printing On ftp: (2048 bytes/hash mark) .ftp> get 500k.txt200 PORT command successful. ConsIDer using PASV.150 opening BINARY mode data connection for 500k.txt (14336 bytes).#######226 file send OK.ftp: 14336 bytes received in 0.00Seconds 14336000.00Kbytes/sec.ftp> quit221 Goodbye.
为了能够获得吞吐量,我需要提取该行:
ftp: 14336 bytes received in 0.00Seconds 14336000.00Kbytes/sec.
我对Perl不太熟悉.有人知道如何获得这条线吗?
解决方法 在管道模式下使用 open:open($filehandle,"$command|") or dIE "dID not work: $! $?";while(<$filehandle>){#do something with $_}
或使用反引号:
my @programoutput=`$command`总结
以上是内存溢出为你收集整理的如何使用Perl获取DOS工具的命令行输出?全部内容,希望文章能够帮你解决如何使用Perl获取DOS工具的命令行输出?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)