Я хочу измерить пропускную способность ссылки, используя встроенный в Windows инструмент FTP внутри скрипта Perl. Поэтому скрипт создает следующий командный скрипт:
open <ip>
<username>
<password>
hash
get 500k.txt
quit
После этого я запускаю командный скрипт, используя следующий код 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> hash
Hash mark printing On ftp: (2048 bytes/hash mark) .
ftp> get 500k.txt
200 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> quit
221 Goodbye.
Чтобы получить пропускную способность, мне нужно извлечь следующую строку:
ftp: 14336 bytes received in 0.00Seconds 14336000.00Kbytes/sec.
Я не очень знаком с Perl. У кого-нибудь есть идеи, как получить эту линию?