Kommandos im pretag ausgeben
Horst
- perl
0 Struppi0 Horst0 Struppi0 Horst0 Patrick Andrieu0 Horst
0 ritschmanhard0 Horst
0 Als Danke: Das Script
Horst
hi,
gleich zur Sache: Mein CGI Script hat ein Inputfeld, da gebe ich bspw. ein Kommando ein (sofern das Script auf XP läuft):
dir
Perl nimmt das Kommando entgegen und gibt das Ergebnis aus:
my $res = qx($command);
print "<pre> \n $res \n </pre> \n";
Komischerweise werden einzelne Zeilen scheinbar willkürlich von oben nach unten immer weiter eingerückt, wenn ich in den Quelltext schaue, steht jedoch alles "gerade" drin, ohne Einrückung.
Lasse ich das Script auf Linux laufen, passt alles korrekt, z.B.: "ls -l"
Woran kann diese schräge Darstellung unter XP liegen?
Viele Grüße,
Hotte
gleich zur Sache: Mein CGI Script hat ein Inputfeld, da gebe ich bspw. ein Kommando ein (sofern das Script auf XP läuft):
dirPerl nimmt das Kommando entgegen und gibt das Ergebnis aus:
my $res = qx($command);print "<pre> \n $res \n </pre> \n";
Komischerweise werden einzelne Zeilen scheinbar willkürlich von oben nach unten immer weiter eingerückt, wenn ich in den Quelltext schaue, steht jedoch alles "gerade" drin, ohne Einrückung.
Hast du dir den Quelltext mal angeschaut?
Struppi.
hi,
Komischerweise werden einzelne Zeilen scheinbar willkürlich von oben nach unten immer weiter eingerückt, wenn ich in den Quelltext schaue, steht jedoch alles "gerade" drin, ohne Einrückung.
Hast du dir den Quelltext mal angeschaut?
Linux: Quelltext sieht so aus wie die Ausgabe im pre-Tag
XP: Quelltext sieht so aus, wie die Ausgabe im pre-Tag aussehen müsste. Letzteres ist jedoch von Zeile zu Zeile ein Stück weiter eingerückt, was im Quelltxt nicht der Fall ist.
Hotte
Hast du dir den Quelltext mal angeschaut?
Linux: Quelltext sieht so aus wie die Ausgabe im pre-Tag
XP: Quelltext sieht so aus, wie die Ausgabe im pre-Tag aussehen müsste.
Du hast nicht Firefox?
Dann fällt dir natürlich auch nicht auf, dass der Quelltext (also die Ausgabe von dir) HTML Tags enthält.
Struppi.
Hast du dir den Quelltext mal angeschaut?
Linux: Quelltext sieht so aus wie die Ausgabe im pre-Tag
XP: Quelltext sieht so aus, wie die Ausgabe im pre-Tag aussehen müsste.Du hast nicht Firefox?
Dann fällt dir natürlich auch nicht auf, dass der Quelltext (also die Ausgabe von dir) HTML Tags enthält.
ich Kamel, das <DIR> - Tag ;-)
Ok, danke!!!!
Viele Grüße vom Baumarkt,
Horst Haselhun
Hallo Horst!
Dann fällt dir natürlich auch nicht auf, dass der Quelltext (also die Ausgabe von dir) HTML Tags enthält.
Ich hatte auch verstanden, Struppi meinte die Ausgaben von Dir [1] ;)
ich Kamel, das <DIR> - Tag ;-)
Das passiert DIR nicht noch mal, was?
[1] Deswegen bleibe ich bei der altdeutschen Großschreibung für Du, Dich, Dir
Viele Grüße aus Frankfurt/Main,
Patrick
hi Patrick,
ich Kamel, das <DIR> - Tag ;-)
Das passiert DIR nicht noch mal, was?
Keine Ahnung. Ich habs vorhin wirklich nicht gesehen. Vielen Dank nochmal ans Forum, Stuppi u. alle.
Viele Grüße,
Hotte
PS: Mit dem Script werde ich heute abend auf dem Server meines Providers ein bischen rumschnüffeln. Der denkt wohl auch, wenn er mir keinen telnet-Zugang gibt, kann ich das nicht :D
Hi Hotte!
Ich seh in deinem Code \n; wußtest du, dass Windows/DOS Zeilen standardmäßig mit \r\n (0x0D 0x0A) abschließen?
Ich vermute, dass es damit zu tun hat.
Grüsse,
Richard
hi,
Ich seh in deinem Code \n; wußtest du, dass Windows/DOS Zeilen standardmäßig mit \r\n (0x0D 0x0A) abschließen?
Ich vermute, dass es damit zu tun hat.
Ich hab die Datei in UNIX-Format umgewandelt, gleicher Effekt.
-- Hotte
Quelltext
<pre>
Datentr„ger in Laufwerk C: ist system
Volumeseriennummer: B8A3-0CA3
Verzeichnis von c:\
29.05.2007 00:19 0 AUTOEXEC.BAT
29.05.2007 00:19 0 CONFIG.SYS
30.05.2007 14:45 288 Desktop.lnk
29.05.2007 00:26 <DIR> Dokumente und Einstellungen
30.05.2007 08:41 <DIR> lotus
08.08.2007 10:37 <DIR> mysql
30.05.2007 08:28 <DIR> Perl
30.05.2007 08:37 <DIR> Program Files
26.10.2007 10:07 <DIR> Programme
28.12.2007 17:32 <DIR> tmp
08.08.2007 13:25 <DIR> usr
08.01.2008 15:57 <DIR> WINDOWS
3 Datei(en) 288 Bytes
9 Verzeichnis(se), 7.701.303.296 Bytes frei
</pre>
Eingerücken tut Moz, IE ab der Zeile
29.05.2007 00:26 <DIR> Dokumente und Einstellungen
#!/usr/bin/perl
###########################################################################
use strict;
use CGI 'param';
print "Content-type: text/html\n\n";
form(param('cmd'));
if(my $cmd = param('cmd')){ exe($cmd); }
exit;
###########################################################################
sub exe{
my $cmd = shift;
my $res = qx($cmd);
# wg. DOS: <DIR>
$res =~ s/</</g;
$res =~ s/>/>/g;
print "<pre>\n";
print $res;
print "</pre>\n";
return;
}
###########################################################################
sub form{
my $cmd = shift;
print qq(
<script type="text/javascript">
function sf(){document.f.cmd.focus();}
</script>
<form action="$ENV{SCRIPT_NAME}" name='f'>
<fieldset><legend><b>Enter Command here:</b></legend>
<input name="cmd" value="$cmd" style="width:100%">
</fieldset>
</form>
<script type="text/javascript">sf();</script>
);
return;
}
###########################################################################