3813100498

3813100498



Internetowe Bazy Danych - wykład 12

%SIG

Jest to hasz używany do ustawiania procedur obsługi sygnałów dla różnych sygnałów.

Oto program bazujący na zmiennych z hasza %ENV. Po jego wywołaniu skrypt będzie czekał na jakikolwiek wpis a następnie po naciśnięciu klawisza Enter tekst zostaje zapisany do pliku .log o nazwie odpowiadającej nazwie użytkownika wywołującego skrypt wraz z hostem, z którego przyszedł użytkownik. Plik .log zostaje zapisany w dowolnym katalogu ustalanym przez administratora. Skrypt może być używany np. do pośredniego kontaktu z administratorem. Tak jak nie może być w systemie dwóch użytkowników o tych samych nazwach tak też nie będzie dwóch takich samych plików .log. Program "Kontakt":

01    #!/usr/bin/perl

02    $login = $ENV{'USER'};

03    $host = $ENV{'HOSTNAME'};

04    print STDOUT "Kontakt z administratorem - po każdym wywołaniu skryptu poprzedni wpis zostaje skasowany:";

05

$text

= <STDIN>

06

open

(KONTAKT, ">/root/opinie/$login.log")

07

print

KONTAKT $text;

08

print

KONTAKT "$login\n";

09

print

KONTAKT $host;

10

close

(KONTAKT);

11

print

"Dziękuję - plik został zapisany.\n"


Widać tu zastosowanie tablicy asocjacyjnej ENV a także operacje na uchwytach plików o których

napiszę trochę później.

Opis działania programu:

01    - na samym początku deklaruję gdzie znajduje się Perl na dysku

02    - skorzystanie z tablicy asocjacyjnej ENV, a w szczególności ze zmiennej środowiskowej USER i przyporządkowanie jej do zmiennej Slogin (skraca to zapis programu)

03    - podobna operacja jak powyżej z tym że zajmuję się zmienną HOSTNAME

04    - korzystam ze specjalnego uchwytu dla standardowego wyjścia w każdym pakiecie STDOUT, polecenie wyświetla zdanie na ekranie

05    - korzystam z uchwytu dla standardowego wejścia - STDIN program odczytuje to co zostało wprowadzone z klawiatury i zapisuje to pod zmienną o nazwie $text

06    - posłużenie się uchwytem o nazwie KONTAKT - utworzenie pliku o nazwie Slogin (czyli np. plik użytkownika z loginu dom będzie się nazywał dom.log i znajdował się będzie w katalogu /root/opinie)

07    - wpisanie do pliku .log odczytanej z klawiatury    informacji zapamiętanej pod zmienną $text

08    - zapisanie do pliku .log loginu spod którego    plik ten został utworzony

09    - zapisanie do pliku .log hosta z którego plik ten został utworzony

10    - zamknięcie uchwytu KONTAKT

11    - wypisanie ostatniego zdania

-9-



Wyszukiwarka

Podobne podstrony:
Internetowe Bazy Danych - wykład 12 Instrukcja foreach Jest to ostatnia z głównych instrukcji iterac
Internetowe Bazy Danych - wykład 12 Operatory arytmetyczne Są to nic innego jak zwykłe matematyczne
Internetowe Bazy Danych - wykład 12 Jest możliwe również aby przypisanie odnosiło się do tej samej z
Internetowe Bazy Danych - wykład 12 STRUKTURY STERUJĄCE Większość prostych programów pisanych w Perl
Internetowe Bazy Danych - wykład 12 skrypcie to próba wywołania go z komendy ./nazwa_skryptu lub sam
Internetowe Bazy Danych - wykład 12 ZMIENNE I TABLICE ZMIENNYCH Zmienna to nic innego jak wygodny sc
Internetowe Bazy Danych - wykład 12 Hasz jest nieuporządkowanym zbiorem skalarów. Udostępnia swoje w
Internetowe Bazy Danych - wykład 12 OPERATORY Operatory, które mogą być używane podczas programowani
Internetowe Bazy Danych - wykład 12 Pr zykładowy zapis Nazwa operatora Działanie $a &&
Internetowe Bazy Danych - wykład 12 Operatory badające pliki Ostatnią grupą operatorów z tych
Internetowe Bazy Danych - wykład 12 PROCEDURY W większości obecnie stosowanych języków programowania
Internetowe Bazy Danych - wykład 12 chmod LISTA Funkcja ta powoduje zmianę atrybutów plików znajdują
Internetowe Bazy Danych - wykład 12 Instrukcje, które powodują sprawdzenie ilości znaków w łańcuchu
Internetowe Bazy Danych - wykład 12 Pełna składnia pętli while wygląda następująco: while
Internetowe Bazy Danych - wykład 12 INSTALACJA I KONFIGURACJA Na początek trzeba zaopatrzyć się w Pe
Internetowe Bazy Danych - wykład 12 Inny przykład zastosowania odpowiednich cudzysłowów: $a = jeden
Internetowe Bazy Danych - wykład 12 Należy pamiętać przy tym, że odwołując się do zmiennej umieszczo
Internetowe Bazy Danych - wykład 12 Oprócz tablic, które może utworzyć sam programista i użytkownik
Internetowe Bazy Danych - wykład 12PERL HISTORIA Perl (Pracitcal Extraction and Report Language) jes

więcej podobnych podstron