Funkce pro pole a seznam
|
delete $POLE{klic} | Zrusi hodnotu v asociativnim poli, vraci rusenou hodnotu. | |
each(%POLE) | vraci dvou prvkove pole klic/hodnota pro dalsi hodnotu asociativniho pole. | |
grep(vyraz,seznam) | vyhodnoti vyraz pro kazdy prvek seznamu, nastavuje promennou $_ pro prvek. Modifikaci promenne $_ modifikujete odpovidajici prvek seznamu. Vraci prvky seznamu, pro ktere je hodnota vyrazu true. | |
join(vyraz,seznam) | spoji prvky seznamu do retezce oddelene vyrazem, vraci spojeny retezec. | |
keys(%POLE) | vraci pole klicu asociativniho pole. | |
pop(@POLE) | vraci posledni prvek pole a pole zkrati o 1 prvek. | |
push(@POLE seznam) | prida prvky seznamu do pole, delka pole se zvetsi o delku seznamu. | |
reverse(seznam) | v kontextu pole vraci seznam v obracenem poradi, ve skalarnim kontextu vraci prvni prvek pole s obracenym poradim bytu. | |
scalar(@POLE) | vraci pocet prvku pole. | |
scalar(%POLE) | vraci hodnotu true, pokud ma asociativni pole nejaky prvek. | |
shift[(@POLE)] | vraci prvni prvek pole, pole se zkrati zleva o 1. Pokud chybi argument @POLE, pracuje s polem @ARGV a v procedure s polem @_. | |
sort([procedura] seznam) | tridi seznam, vraci setrideny seznam. Pokud je uvedena procedura, musi tato procedura vracet hodnoty <0, 0, >0, porovnavane hodnoty ma ulozeny v promennych $a a $b. |
splice(@POLE,OFFSET [,DELKA[,SEZNAM]]) | odstrani prvky pole @POLE definovane offsetem a delkou a nahradi je seznamem, vraci odstranene prvky. |
split(oddelovac[,vyraz [,limit]]) | rozdeluje retezec do pole podle oddelovace. Je-li uvedeny limit, rozdeli retezec maximalne do poctu poli danych limitem. Pokud je vynechan oddelovac, rozdeluje podle mezer. Ve skalarnim kontextu vraci pocet poli. | |
unshift(@POLE,seznam) | prida seznam zleva do pole @POLE a vraci pocet prvku prodlouzeneho pole. | |
values(%POLE) | vraci pole hodnot asociativniho pole. |
|
Konverze struktury
| pack(sablona,seznam) |
prevede hodnotu na binarni tvar pouzitim sablony. |
| unpack(sablona,vyraz) |
prevede strukturu vyrazu do pole pouzitim sablony. |
Sablona je sekvence nasledujicich znaku:
| a/A | ascci retezec, doplneny nulou/mezerou |
| b/B | retezec bitu ve vzestupnem/sestupnem poradi |
| c/C | znakova hodnota se znamenkem/bez znamenka |
| f/d | hodnota s jednoduchou presnosti/s dvojnasobnou presnosti |
| h/H | hexadecimalni retezec yacinajici nejniz./nejvys. bitem |
| i/I | integer se znamenkem/bez znamenka |
| l/L | dlouha hodnota se znamenkem/bez znamenka |
| n/N | kratka/dlouha hodnota v sitovem poradi bitu |
| s/S | Kratka hodnota se znamenkem/bez znamenka |
| u/p | uuencoded retezec/ ukazatel na retezec |
| x/@ | nulovy byte/ nulami vyplneni do pozice |
| X | Backup bytu |
|
|
Konverzni funkce
|
gmtime(vyraz) | konvertuje cas ve tvaru time a vraci 9-prvkove pole ($sec, $min, $hod, $den, $mes, $rok, $tden, $rden, $isdst) podle Greenwicskeho casu. Mesice je od 0-11, dny v tydnu od 0-6. | |
hex(vyraz) | vraci dekadickou hodnotu vyrazu chapaneho hexadecimalne. | |
localtime(vyraz) | konvertuje cas do 9-prvkoveho pole podle lokalniho casoveho pasma. | |
oct(vyraz) | vraci dekadickou hodnotu vyrazu chapaneho oktalove. | |
ord(vyraz) | vraci ascii hodnotu prvniho znaku ve vyrazu. | |
vec(vyraz,offset,bit) | vyraz chape retezec celociselnych hodnot bez znamenka a vraci hodnotu specifikovaneho prvku jako vektor. offset je pocatek, bit je pocet bitu prvku (1,2,4,8,16,32) |
|
Operace se soubory
Funkce pracuji se seznamem souboru a vraci pocet souboru, na kterych byla operace uspesne provedena.
| chmod(seznam) |
Zmeni pristup k souboru. Prvni prvek seznamu musi byt pristupovy mod v ciselnem vyjadreni. |
| chown(seznam) |
Zmeni vlastnika a skupinu souboru v seznamu. Prvni dva prvky seznamu musi byt cisla urcujici uid a gid. |
| truncate(soubor,velikost) |
Zkrati soubor na velikost. Soubor je mozne definovat pomoci jmena nebo filehandlu. |
| link(stary,novy) |
Vytvori nove jmeno souboru, ktere je linkou na stare jmeno souboru. |
| mkdir(adr,mod) |
Vytvori adresar s danym pristupem. |
| readlink(vyraz) |
Vraci hodnotu symbolicke linky. |
| rename(stare,nove) |
Zmeni jmeno souboru. |
| rmdir(soubor) |
Zrusi adresar pokud je prazdny. |
| stat(soubor) |
Vraci 13-prvkove pole($dev,$ino,$mode,$nlink,$uid,$gid,$rdev, $size,$atime,$mtime,$ctime,$blksize,$block). |
| symlink(stary,novy) |
Vytvori nove jmeno souboru, ktere je linkou na stare jmeno souboru. |
| unlink(seznam) |
Rusi soubory v seznamu. |
| utime(seznam) |
Zmeni datum pristupu a modifikace. Prvni dva prvky pole musi byt cisla urcujici dobu pristupu a modifikace. |
|
Prikazy pro cteni adresare
| closedir(dirhandle) | Uzavre adresar. |
| opendir(dirhandle,dir | Otevre adresar s prirazenim dirhandlu. |
| readdir(dirhandle) | Vraci dalsi polozku adresare. |
| rewinddir(dirhandle) | Nastavi se na zacatek adresare. |
| seekdir(dirhandle,pos | Nastavi na pozici v adresari. |
| telldir(dirhandle) | Vraci pozici v adresari. |
|
Input/Output
| binmode(FILEHANDLE) |
Zajisti cteni souboru v binarnim modu. |
| close(FILEHANDLE) |
Uzavre soubor nebo pipe spojenou s filehandlem. |
| dbmclose(%POLE) |
Ukonci spojeni mezi polem a dbm souborem. |
bdmopen(%POLE, DBMJMENO ,MOD) |
Vytvori vazbu mezi asociativnim polem a dbm souborem. Pokud databaze neexistuje, bude vytvorena s danym pristupovym modem. |
| eof(FILEHANDLE) |
Vraci 1, pokud dalsi cteni vraci EOF souboru nebo soubor neni otevren. |
| fileno(FILEHANDLE) |
Vraci file descriptor pro dany otevreny soubor. |
| open(FILEHANDLE[JMENO]) |
Otevre soubor spojeny s filehandlem.
misto JMENO uvedte:
| "SOUBOR" | otevre soubor jako vstupni |
| ">SOUBOR" | pro vystup, soubor se vytvori, pokud neexistuje |
| ">>SOUBOR" | pro rozsireni |
| "+>SOUBOR" | pro vstup i vystup |
| "|CMD" | pipe do prikazu |
| "CMD|" | pipe z prikazu |
Open vraci 1 (uspech) nebo hodnotu undef, krome pipe.
|
pipe(READHANDLE, WRITEHANDLE) |
Vraci dvojici propojenych pipe. |
print[([FILEHANDLE] SEZNAM)] |
Tiskne retezec nebo seznam retezcu oddeleny carkami. Pri vynechani filehandlu tiskne na standardni vystup (nebo naposled vybrany). |
printf[([FILEHANDLE] SEZNAM)] |
totozne s print FILEHADLE sprintf(seznam) |
read(FILEHANDLE, $VAR,LENGTH[,OFFSET]) |
Cte pocet LENGTH bytu ze souboru do promenne na offset. Vraci pocet prectenych bytu. |
seek(FILEHANDLE, POSITION,WHENCE) |
nastavi na poyici v souboru. Vraci 1 pri uspechu, jinak 0. |
| select[(FILEHANDLE)] |
Vraci vybrany filehandle. S parametrem filehandle nastavuje implicitni filehandle pro vystupni operace. |
| sprintf(FORMAT,SEZNAM) |
Vraci retezec formatovany podle prinf konvenci. |
sysread(FILEHANDLE, $VAR,LEHGTH[,OFFSET]) |
Precte pocet LENGTH bytu do promenne VAR na pozice OFFSET. |
syswrite(FILEHANDLE, $VAR,LEHGTH[,OFFSET]) |
Zapise pocet LENGTH bytu z promenne VAR od pozice OFFSET. |
| tell([FILEHANDLE]) |
Vraci aktualni pozici v souboru s filehandlem nebo v naposled ctenem souboru. |
| write([FILEHANDLE]) |
Zapise do souboru vetu formatovanou podle definovaneho formatu. |
|