Thread Zugriff auf Stdout innerhalb einer Windows-Umgebung? (2 answers)
Opened by Gast at 2009-02-20 11:39

Gast Gast
 2009-02-20 11:39
#119030 #119030
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:

Code: (dl )
1
2
3
4
5
6
open <ip>
<username>
<password>
hash
get 500k.txt
quit


Anschließend führe ich dieses Skript innerhalb des Perlcodes wie folgt aus:

Code (perl): (dl )
1
2
3
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:

Code: (dl )
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:

Code: (dl )
 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

View full thread Zugriff auf Stdout innerhalb einer Windows-Umgebung?