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. |
|