Perl Spezielle Variablen
Perl Sprache definiert eine spezielle Variable, in der Regel $, @ oder% als Präfix, zum Beispiel: $ _.
Viele spezielle Variablen haben einen sehr langen englischen Namen, Betriebssystemvariable $! Kann als OS_ERROR $ geschrieben werden.
Wenn Sie den englischen Namen eines speziellen Variablen im Programm verwenden möchten , müssen den KopfVerwendung Englisch hinzuzufügen ;.Diese englischen Spezialvariablen beschreibend.
Die am häufigsten verwendete spezielle Variable $ _ enthält die Variable den Standardeingabe und Muster passende Inhalte. Beispiele sind wie folgt:
#!/usr/bin/perl foreach ('Google','w3big','Taobao') { print $_; print "\n"; }
Das obige Programm, das Ausgabe ist:
Google w3big Taobao
Das folgende Beispiel, das wir $ _ zur Ausgabe nicht verwenden:
#!/usr/bin/perl foreach ('Google','w3big','Taobao') { print; print "\n"; }
Das obige Programm, das Ausgabe ist:
Google w3big Taobao
Beispielsweise der erste Ausgang "Google", dann output "w3big", die endgültige Ausgabe "Taobao".
In der Iterationsschleife Stromschleife der Zeichenkette in $ _ und dann durch die Druckausgabe. Drucken auch ohne die Ausgangsgröße Angabe von Standard von $ verwendet wird _.
Im Folgenden sind einige Staaten auch ohne Perl $ annehmen _ Ort:
- Monokulare verschiedene Funktionen, unter anderem als ord () und int () Funktion, und so zusätzlich zu "-t" alle Dateitests ( "-f", "- d"), "- t" Standardaktion STDIN.
- Eine Liste der verschiedenen Funktionen, wie zum Beispiel print () und unlink ().
- Verwenden Sie die "= ~" Operator-Modus nicht, wenn die Anpassungsoperation "m //", "s ///" und "tr ///".
- Wenn andere Variablen nicht "foreach" loop Iterationsvariable Standard gegeben.
- Implizite Iterationsvariable grep () und Karte () Funktion.
- Wenn ", während" nur einzige Bedingung, und die Bedingung das Ergebnis von "test" Betrieb ist, _ $ ist die Standardposition der Eingabedatensätze für die Speicherung. Zusätzlich zu den "while" Testbedingungen, die nicht passieren würde. (Mnemonic: unterstreichen, in einer bestimmten Operation kann weggelassen werden.)
Spezielle Variablentypen
Nach Angaben der besonderen Art der Verwendung von Variablen lassen sich in folgende Kategorien unterteilt werden:
Spezielle globale Skalarvariable.
Spezielle globale Array-Variable.
Hash spezielle globale Variablen.
Globale spezielle Datei-Handle.
Globale spezielle Konstante.
Regex spezielle Variablen.
Datei behandeln spezielle Variablen.
Spezielle globale Skalarvariable
Es folgt eine Liste aller Sonder Skalarvariable mit Sonderzeichen und Englisch in Form von Variablen:
$ _ | Der Standardeingabe und Muster passende Inhalte. |
$ ARG | |
$. | Zurück Lese aktuelle Zeilennummer der Datei-Handles |
$ NR | |
$ / | Eingabe voneinander zu trennen sind, wird standardmäßig ein Newline-Zeichen. Wie bei undef Diese Variable wird das Ende der Datei gelesen. |
$ RS | |
$, | Ausgabefeld Separator |
$ OFS | |
$ \ | Der Ausgangsdatensatz-Trenn |
$ ORS | |
$ " | Das gleiche $ variable, ähnlich, aber auf die in doppelte Anführungszeichen (oder ähnliche String-Interpolation) eingeschlossen String angewendet wird, innerhalb der Anordnung von Gelegenheiten und in Scheiben schneiden Werte eingefügt. Der Standardwert ist ein Leerzeichen. |
$ LIST_SEPARATOR | |
$; | Trennzeichen verwendet, wenn ein mehrdimensionales Array-Emulation. Die Standardeinstellung ist "\ 034." |
$ SUBSCRIPT_SEPARATOR | |
$ ^ L | Sent auf die Ausgangskanäle des Papiervorschub-Zeichen nehmen. Die Standardeinstellung ist "\ f". |
$ FORMAT_FORMFEED | |
$: | Der aktuelle Satz von Zeichen, nach denen eine Zeichenfolge gebrochen werden kann Fortsetzung Felder (beginnend mit ^) in einem Format. Die Standardeinstellung ist "\ n" "zu füllen. |
$ FORMAT_LINE_BREAK_CHARACTERS | |
$ ^ A | Vor dem Drucken variabler Datenformat zum Speichern |
$ AKKU | |
$ # | Wenn Sie Digitaldruck digitale Standardausgabeformat (veraltet). |
$ OFMT | |
$? | Rückkehr zum Zustand eines externen Befehl |
$ CHILD_ERROR | |
$! | Numerisch Wert dieser Variablen wird der Wert von errno ist, ist String-Wert der entsprechenden Systemfehler Zeichenfolge |
$ OS_ERROR oder $ ERRNO | |
$ @ | Der Befehl eval Fehlermeldung, wenn er leer ist, bedeutet dies das letzte abgeschlossene eval Befehl erfolgreich |
$ EVAL_ERROR | |
$$ | Perl-Skript die aktuelle Prozess-ID ausführen |
$ PROCESS_ID oder $ PID | |
$ < | Die tatsächlichen Abonnentenzahlen des aktuellen Prozesses |
$ REAL_USER_ID oder $ UID | |
$> | Effektive Benutzernummer des aktuellen Prozesses |
$ EFFECTIVE_USER_ID oder $ EUID | |
$ ( | Der aktuelle Prozess tatsächliche Anzahl von Benutzergruppen |
$ REAL_GROUP_ID oder $ GID | |
$) | Der aktuelle Prozess der effektiven Benutzer-Gruppennummer |
$ EFFECTIVE_GROUP_ID oder $ EGID | |
$ 0 | Der Dateiname enthält das Skript ausgeführt wird, |
$ PROGRAM_NAME | |
$ [ | Index des ersten Elements des Arrays von Arrays ist die Standard 0. |
$] | Perl-Versionsnummer |
$ PERL_VERSION | |
$ ^ D | Der Wert des Debug-Flag |
$ debugging | |
$ ^ E | In Nicht-UNIX-Betriebssystemumgebungen Fehlerinformationen erweitert |
$ EXTENDED_OS_ERROR | |
$ ^ F | Maximale Dateikennungswert des Bündels |
$ SYSTEM_FD_MAX | |
$ ^ H | Aktiviert durch den Compiler Syntaxprüfung Status |
$ ^ I | Integrierte Steuerwert des Editors |
$ INPLACE_EDIT | |
$ ^ M | Größe Ersatzspeicherpool |
$ ^ O | Name des Betriebssystems |
$ OSNAME | |
$ ^ P | Gibt den aktuellen Debugger interne Variablenwert |
$ PERLDB | |
$ ^ T | Seit Beginn des neuen Jahrhunderts, das Tempo der Sekunden startet die Zeit zu laufen |
$ BASETIME | |
$ ^ W | Der aktuelle Wert des Warnschalter |
$ WARNUNG | |
$ ^ X | Perl binären ausführbaren Code Name |
$ EXECUTABLE_NAME | |
$ ARGV | Name der aktuellen Datei aus dem Standarddateihandle gelesen werden, wenn |
Spezielle globale Array-Variable
@ARGV | Um das Skript Befehlszeilenargument Liste |
@INC | Wenn Sie das Modul Verzeichnisliste importieren werden gesucht |
@F | Geben Sie den Befehl Line-Array |
Hash spezielle globale Variablen
% INC | Hash% INC enthält alle Dateien mit einem Do oder erfordern Aussagen Schlüsselwort ist der Dateiname, ist der Wert, der Pfad der Datei |
% ENV | Mit den aktuellen Umgebungsvariable |
% SIG | Signalliste und wie zu tun |
Globale spezielle Datei-Handle
ARGV | Spezielle Datei-Handle durch die Array-Variable @ARGV alle Dateinamen |
STDERR | Standardausgabe Griff Fehler |
STDIN | Standard-Eingabe Griff |
STDOUT | Standardausgabe Griff |
DATA | Spezielle Datei-Handle Referenz jeder Inhalt __END__ Flag in der Datei, nachdem der Inhalt des Skripts enthält. Oder ein Verweis auf den gesamten Content-Datei enthält __DATA__ Flag nach, so lange wie Sie in den gleichen Paketdaten gelesen haben, __ DATA__ dort. |
_ (Unders) | Spezielle Datei-Handle-Cache-Dateien für Informationen (fstat, stat und lstat). |
Globale spezielle Konstante
__END__ | Das logische Ende des Skripts, der Text nach ignoriert. |
__FILE__ | Name der aktuellen Datei |
__LINE__ | Die aktuelle Zeilennummer |
__PACKAGE__ | Der aktuelle Paketname, ist die Standard-Paketnamen main. |
Regex spezielle Variablen
$ N | Mit dem letzten Muster n-ten String-Matching |
$ & | Zurück erfolgreichen Muster passende String |
$ MATCH | |
$ ` | Letzte Teilzeichen den Erfolg des vorherigen passende Inhalte |
$ PREMATCH | |
$ ' | Inhalt letzten erfolgreichen Spiel nach Teilzeichenfolge |
$ POSTMATCH | |
$ + | Und der letzte Suche mit regulären Ausdrücken letzte Klammer passende Format. Zum Beispiel: /Version: (.*)|Revision: (.*)/ && ($rev = $+); |
$ LAST_PAREN_MATCH |
Datei-Handle spezielle Variablen
$ | | Wenn auf Null nach jedem Funktionsaufruf Schreib- oder Druck gesetzt, ruft automatisch die Funktion fflush, geschrieben Inhalt der Datei schreiben wird |
$ OUTPUT_AUTOFLUSH | |
$% | Die aktuelle Ausgabe Seitennummer |
$ FORMAT_PAGE_NUMBER | |
$ = | Die aktuelle Seitenlänge. Der Standardwert ist 60. |
$ FORMAT_LINES_PER_PAGE | |
$ - | Die aktuelle Seite Anzahl der Zeilen verbleibenden |
$ FORMAT_LINES_LEFT | |
$ ~ | Der aktuelle Name des Berichts Ausgabeformat. Der Standardwert ist der Name der Datei-Handle. |
$ format_name | |
$ ^ | Der aktuelle Bericht Ausgabetabellenname Header-Format. Der Standardwert ist mit dem Zusatz "_TOP" Datei-Handle-Namen. |
$ FORMAT_TOP_NAME |