# Početak

# Osnovno

# Instalacija

# Struktura programa

# Varijable

# Kontrolne strukture

# Funkcije

# Regularni izrazi

# U/I operatori

# Sistemski operatori >

# Želim znati više!

# HR Perl

Sistemski pozivi iz Perla

Sistemski pozivi u Perlu su usko povezani s terminologijom UNIX operativnog sustava. Svi operatori omogućuju pozivanje određenih procesa iz ljuske.

Operatori se dijele na dvije glavne skupine: operatori datotečnog sustava i operatori procesa.

U ovom dijelu će operatori biti samo ukratko navedeni, a njihova objašnjenja mogu se pronaći na perlfaq8 i perlfunc man stranicama.

Operatori datotečnog sustava

Operatori za upravljanje datotekama i direktorijima pozivima su vrlo slični onima koji se pozivaju u ljusci. Najčešći operatori su:

chdir ("/put/ . . . /direktorij");
# promjena aktivnog sirektorija       

opendir (POKAZIVAC, "/path/ . . . /directory");
# postavljanje pokazivača za direktorij

closedir(POKAZIVAC);
# zatvarenje direktorija

readdir(POKAZIVAC);
# vraća imena datoteka iz direktorija

symlink("put", "IME_VEZE");
# stvaranje simboličke veze

link("path/file", "IME_VEZE");
# stvaranje čvrste veze (eng. hard link)

unlink("IME_VEZE");
# brisanje veza na datoteku

mkdir("ime_direktorija", mod);
# stvaranje novog direktorija

rmdir("ime_direktorija");
# brisanje direktorija

chmod(mode, "ime_datoteke");
# promjena moda datoteke

Operatori procesa

Operatori procesa su vrlo moćni po svojim mogućnostima. Oni omogućuju izvedbe poput jednostavnih poziva drugih programa, te izvedbe vrlo složenih procesa kao što je klijent/server mrežni model.

U ovom dijelu samo će biti spomenuti neki od najčešćih operatora procesa. Detaljnije objašnjavanje primjera i operatora preraslo bi obim seminarskog rada.

Najjednostavniji sistemski operator je system(). On pokreće novi proces, dijete Perl procesa. Ime novog procesa je sadržano unutar zagrada:

system("pwd")

Vrijednost koju vraća proces dijete na STDOUT, moguće je dobiti ako se poziv procesa izvede pomoću unazadnih navodnika:

$a = `pwd`;

Pokretanje novog procesa može se učiniti operatorom exec samo što se u tom slučaju automatsk gasi Perl proces:

exec "pwd";

Najznačajniji operator kod baratanja procesima je zasigurno fork. On stvara klon Perl procesa koji ga je pozvao. Tako dva duplicirana procesa dijele jednake varijable (memoriju) i otvorene datoteke. Procesi se jedino razlikuju po vrijednosti varijable koju vraća fork. Proces vraća 0 za dijete i 1 za roditelja.


Copyright © 2003 Ognjen Krkač
E-mail & MSN Messenger: ogy_1298@hotmail.com