Hallo zusammen!
Ich möchte innerhalb eines Perl-Scriptes den Datendurchsatz eines Links testen. Dazu wird zunächst ein Befehlsskript, welches mit dem Windows-eigenen FTP-Tool kompatibel ist, erstellt:
open <ip>
<username>
<password>
hash
get 500k.txt
quit
Anschließend führe ich dieses Skript innerhalb des Perlcodes wie folgt aus:
system(@args);
@args = ("ftp", "-s:c:\\ftp_dl.txt");
system(@args);
Falls man das das FTP-Tool direkt innerhalb einer Dos-Box ausführt, erhält man den folgenden Output:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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.
Um den Datendurchsatz zu extrahieren, benötige ich also die folgende Zeile:
ftp: 14336 bytes received in 0.00Seconds 14336000.00Kbytes/sec.
Hat jemand eine Idee, wie ich diese Zeile als String extrahieren kann? Ich kenne mich leider mit Perl nicht sonderlich gut aus ...
Liebe Grüße,
Markus