Sie können die Ausgabe eines Perl -Skripts mit den folgenden Methoden innerhalb des Skripts selbst in eine Datei umleiten:
1. Verwenden Sie die Funktion und FileHandle "Open":
`` `Perl
#!/usr/bin/perl
Öffnen Sie die Ausgabedatei zum Schreiben
Öffnen (mein $ fh, ">", "output.txt") oder stery "Die Ausgabedatei kann nicht öffnen:$!";
Ausgabe für den DateiHandle
ausdruckend
drucken $ fh "Dies ist eine Ausgabe \ n";
drucken $ fh "Dies ist eine andere Zeile \ n";
Schließen Sie den DateiHandle
schließen ($ fh);
`` `
2. Verwenden der Funktion "System":
`` `Perl
#!/usr/bin/perl
Führen Sie das Perl -Skript aus und leiten Sie die Ausgabe in eine Datei
um
System ("Perl script.pl> output.txt");
`` `
3. Verwenden von Backticks (``):
`` `Perl
#!/usr/bin/perl
Führen Sie das Perl -Skript aus und erfassen Sie die Ausgabe in eine Variable
mein $ output =`perl script.pl`;
Schreiben Sie die erfasste Ausgabe in eine Datei
Öffnen (mein $ fh, ">", "output.txt") oder stery "Die Ausgabedatei kann nicht öffnen:$!";
drucken $ fh $ output;
schließen ($ fh);
`` `
Erläuterung:
* `open` Funktion: Diese Funktion wird verwendet, um eine Datei zum Schreiben (`>` symbol) zu öffnen und sie mit einem DateiHandle ($ fh` im Beispiel) zu verbinden. Sie können dann "Print" verwenden, um Daten in den DateiHandle zu schreiben.
* `system` Funktion: Diese Funktion führt einen Systembefehl aus, einschließlich Umleitung. In diesem Fall wird das Perl -Skript ausgeführt und seine Ausgabe in `output.txt` umgeleitet.
* Backticks (``): Dies erfasst die Ausgabe eines Befehls innerhalb von Backticks in eine Variable. Sie können dann die erfasste Ausgabe in eine Datei verarbeiten und schreiben.
Auswählen der Methode:
* `open` Funktion: Am vielseitigsten für die Steuerung der Ausgabe innerhalb des Skripts.
* `system` Funktion: Einfache Möglichkeit, Befehle auszuführen und die Ausgabe umzuleiten, insbesondere wenn Sie die Ausgabe innerhalb des Skripts nicht verarbeiten müssen.
* Backticks: Nützlich, um die Ausgabe eines Befehls für die spätere Verarbeitung zu erfassen.
Wichtige Hinweise:
* Das `>` -Symbol leitet die Standardausgabe (STDOut) in die Datei um.
* Verwenden Sie `2>`, um den Standardfehler (STDERR) umzuleiten.
* Verwenden Sie `>>`, um die Ausgabe an eine vorhandene Datei anzuhängen.
* Wenn Sie sowohl STDOut als auch Stderr umleiten müssen, können Sie `&>` (z. B. `perl script.pl &> output.txt`) verwenden.
Denken Sie daran, Fehler mit "Die" oder "Warn" -Funktionen anmutig zu behandeln, um zu verhindern, dass Ihr Skript unerwartet abstürzt.