Következő: 9.1.1.14 Alprogramok írása
Fel: 9.1.1 Perl magyarul
Előző: 9.1.1.12.28 warn LIST
  Index
awk-on nevelkedett emberek itt otthon érezhetik magukat.
Ha az awk-os neveket szeretnénk használni, akkor a use English;
sort kell még beírni a programba.
A fájlok ,,objektum-szerű'' használatához a use FileHandle;
sort kell beírni. Ezek után a következők ekvivalensek:
print KIMENET ,,Hello World!!!\n'';
KIMENET->print(,,Hello World!!!\n'');
A változókból itt is csak a legfontosabbakat fogom megemlíteni:
- $_,$ARG - Az alapértelmezett változó. Ha valahol nincs változó, akkor
ott ez lesz használva.
- $1,$2,$3...- Reguláris kifejezésekből kapott betűcsoportok.
- $&, $MATCH - Legutolsó mintaillesztésnél az illesztett rész.
- $[ - Ez a változó mutatja, hogy a tömbök hányadik elemén kezdődik
adat. Ez állítható a különböző nyelvekben megszokotthoz igazodva.
- $`, $PREMATCH - Legutolsó mintaillesztésnél a $& előtti rész.
- $', $POSTMATCH - Legutolsó mintaillesztésnél a $& utáni rész.
- $., $NR - Utolsó olvasási műveletnél az olvasott sor sorszáma.
(Ez csak olvasható változóként kezelendő!)
- $/, $RS, $INPUT_RECORD_SEPARATOR - Input rekordok elválasztása. Ez
alapesetben az újsor karakter, de bármire lecserélhető. Ha az üres stringet
adjuk meg, akkor üres sorok lesznek a határok. Ez nem ugyanaz mint
$/ = ,,\n\n'';, mert a $/ = ,,\n\n''; több üres sort is egyetlen határnak
tekint.
- $|, $OUTPUT_AUTOFLUSH - Output bufferelését szünteti meg, ha az értéke
nem egy.
- $ $ORS, $OUTPUT_RECORD_SEPARATOR - Az a karakter, amit a print
ki fog írni minden sor végén. Ez alapesetben üres.
- $?, $CHILD_ERROR - Utolsó gyermek process visszatérési értéke. Ez
a wait() függvény visszatérési értéke, tahát a valódi exit() értéket ($? >>
8)-ként kaphatjuk meg.
- $$, $PID, $PROCESS_ID - A process azonosító száma.
- $<, $UID, $REAL_USER_ID - Valódi user azonosítója.
- $>, $EUID, $EFFECTIVE_USER_ID - A futás közbeni jogok tulajdonosa.
Ez az érték csak a setuid programoknál vált át a fájl tulajdonosának jogaira.
Ez persze írható változó, tehát a $> = 0; a root-tá válás egy módja, csak ez
nem mindig fog bejönni :-).
- $(, $GID, $REAL_GROUP_ID - Valódi csoport azonosítója. Ha a
rendszer több csoportot is támogat egyszerre, akkor ez egy listája azoknak
a csoportoknak, amiben a process benne van.
- $), $EGID, $EFFECTIVE_GROUP_ID - Effektív csoport azonosítója. Ez
setgid program futtatásakor különbözhet az előzőtől.
- $0, $PROGRAM_NAME - A programot indító parancs neve (egy Perl
script-nál a script neve, nem a ,,perl'' szó).
- @ARGV - A parancssori argumentumok listája.
- @INC - Azon könyvtárak listája, ahol a Perl elkezd keresgélni egy
modul után.
- %INC - A használt modulok tömbje (fájlnév,elérési-út) elemekkel.
- %ENV - Környezeti változók tömbje, pl.:
print ,,Otthonom: '', $ENV{,,HOME''}, ,,\n'';
- %SIG - Kivételkezelők tömbje.
sub handler { # az első paraméter a signal neve
local($sig) = @_;
print ,,Elkaptam $sig-t!\n'';
exit(0);
}
$SIG{'INT'} = 'handler';
$SIG{'QUIT'} = 'handler';
...
$SIG{'INT'} = 'DEFAULT'; # alapértelmezett
$SIG{'QUIT'} = 'IGNORE'; # figyelmen kívül hagy
Néhány Perl-beli esemény is kezelhető így. A
$SIG{__WARN__} a warn által kiváltott, a
$SIG{__DIE__} pedig a die által kiváltott
esemény lekezelésére szolgál. Mindkét esetben átadásra kerülnek
a warn, illetve a die paraméterei.
Következő: 9.1.1.14 Alprogramok írása
Fel: 9.1.1 Perl magyarul
Előző: 9.1.1.12.28 warn LIST
  Index
1999-09-17