Notepad ++ druckt nicht von Perl-Skript auf die Konsole

1241
user2551229

Ich habe folgendes Perl-Skript:

print "test: "; my $input = <>; print "result: ", $input; 

Ich habe den Befehl NppExec in Notepad ++ erstellt:

NPP_SAVE perl "$(CURRENT_DIRECTORY)\$(FILE_NAME)" 

Wenn ich diesen Befehl ausführen, wird Folgendes erzeugt:

Process started >>> hello test: result: hello <<< Process finished. (Exit code 0) 

Das ist höchst ungeeignet, da es nicht druckt, bis alle Eingaben erfolgen. Irgendein Rat?


BEARBEITEN:

Ich habe schließlich eine Antwort gefunden. Notepad ++ - Konsole ist kein Terminal, daher befindet sich STDOUT nicht im gepufferten Zeilenmodus . Wenn ich ein Skript vorhabe

$| = 1; 

Anweisung (die Notepad ++ heiß macht), dann wird das beschriebene Problem gelöst.

1

1 Antwort auf die Frage

0
AbhiNickz

Sie können Run Menu in Notepad ++ verwenden, um die Perl-Datei direkt auszuführen.
1. Gehen Sie zu Ausführen
2. Geben Sie C: \ strawberry \ perl \ bin \ perl.exe "$ (FILE_NAME)" ein, oder geben Sie den Pfad der perl exe-Datei an.
3. Drücken Sie Speichern.
4. Verknüpfung zuweisen.
und es ist fertig.
Console schließt sich auf diese Weise ziemlich schnell.
Fügen Sie also in der Perl-Datei an der Endzeile den Code [system ("pause");] (Remove [] braunes) hinzu, um die Meldung "Eine beliebige Taste zum Fortfahren" in der Konsole anzuzeigen.
Hoffe das hilft