Calocybe: @ARGV

Beitrag lesen

Hi!

Das klappt ja auch wunderbar, bis auf die ausnahme, wenn man als parameter <!--irgendeintext--> habe, denn das verkraftet mein programm nicht...

Bei mir geht das einwandfrei. Ich schaetze, Dein Problem liegt eher auf der Kommandozeile. Die Zeichen < und > dienen naemlich zur Ein-/Ausgabeumlenkung, werden also vom CLI (Command Line Interpreter) interpretiert und nicht einfach als Parameter ans Script uebergeben. Deshalb muss man diese Zeichen vor der Interpretation schuetzen.

Windows NT: in "" einschliessen
Unix: in '' einschliessen
Windows 9x: keine Ahnung

Dieses kleine Script listet Dir die uebergebenen Parameter auf:
    $i = 0;
    for (@ARGV) {
        print "Argument $i is: '$_'\n";
        $i++;
    }

Wenn ich es bei mir (WinNT) mit
    perl.exe param.pl 1 "<!--laber-->" 3
aufrufe, erhalte ich die Ausgabe
    Argument 0 is: '1'
    Argument 1 is: '<!--laber-->'
    Argument 2 is: '3'

Calocybe