[ Pobierz całość w formacie PDF ]
.Składa[Author ID2: at Fri Nov 2 11:36:00 2001]nia[Author ID2: at Fri Nov 2 11:36:00 2001] polecenia [Author ID2: at Fri Nov 2 11:37:00 2001]exit jest następująca:exit statusgdzie status jest nieujemną liczbą całkowitą, która określa status wyjścia.Logika warunkowaSkrypty powłoki mogą używać logiki warunkowej, która pozwala im podejmować różne działania w zależności od wartości argumentów, zmiennych środowiskowych lub ich warunków.Na przykład polecenie test pozwala określić warunek, który może być albo prawdziwy,[Author ID2: at Wed Nov 7 12:22:00 2001] albo fałszywy.Wszystkie polecenia warunkowe (włączając if, case, while oraz komendę [Author ID2: at Fri Nov 2 11:37:00 2001]until) używają polecenia test do szacowania warunków.Komenda [Author ID2: at Fri Nov 2 11:37:00 2001]Polecenie [Author ID2: at Fri Nov 2 11:37:00 2001]testTabela 13.11 przedstawia opis niektórych powszechnie stosowanych form[Author ID2: at Wed Nov 7 12:22:00 2001] argumentów używanych do polecenia test.Komenda ta[Author ID2: at Fri Nov 2 11:37:00 2001]Polecenie[Author ID2: at Fri Nov 2 11:37:00 2001] sprawdza swoje [Author ID2: at Wed Nov 7 12:22:00 2001]argumenty i ustawia kod wyjściowy na zero, co oznacza, że dany warunek był prawdziwy lub podaje wartość większą od zera, która mówi, że warunek był nieprawdziwy.Tabela 13.11.Powszechnie używane formy argumentów polecenia testFormaFunkcja-d plikOkreślony plik istnieje i jest katalogiem.[Author ID2: at Sun Nov 4 19:05:00 2001]-e plikOkreślony plik istnieje.[Author ID2: at Sun Nov 4 19:05:00 2001]-r plikOkreślony plik istnieje i jest do odczytu.[Author ID2: at Sun Nov 4 19:05:00 2001]-s plikOkreślony plik istnieje i ma niezerowy rozmiar.[Author ID2: at Sun Nov 4 19:05:00 2001]-w plikOkreślony plik istnieje i jest do zapisu.[Author ID2: at Sun Nov 4 19:05:00 2001]-x plikOkreślony plik istnieje i jest wykonywalny.[Author ID2: at Sun Nov 4 19:05:00 2001]-L plikOkreślony plik istnieje i jest linkiem [Author ID2: at Fri Nov 2 11:38:00 2001]dowiązaniem [Author ID2: at Fri Nov 2 11:38:00 2001]symbolicznym.[Author ID2: at Sun Nov 4 19:05:00 2001]f1 -nt f2Plik f1 jest nowszy niż plik f2.[Author ID2: at Sun Nov 4 19:05:00 2001]f1 -ot f2Plik f1 jest starszy niż plik f2.[Author ID2: at Sun Nov 4 19:05:00 2001]-n s1Łańcuch s1 ma niezerową długość.[Author ID2: at Sun Nov 4 19:05:00 2001]-z s1Łańcuch s1 ma zerową długość.[Author ID2: at Sun Nov 4 19:05:00 2001]s1 = s2Łańcuch s1 jest taki sam jak s2.[Author ID2: at Sun Nov 4 19:05:00 2001]s1 =! s2Łańcuch s1 nie jest taki sam jak s2.[Author ID2: at Sun Nov 4 19:05:00 2001]n1 -eq n2Liczba całkowita n1 jest równa liczbie n2.[Author ID2: at Sun Nov 4 19:05:00 2001]n1 -ge n2Liczba całkowita n1 jest większa bądź równa liczbie n2.[Author ID2: at Sun Nov 4 19:05:00 2001]n1 -gt n2Liczba całkowita n1 jest większa niż liczba n2.[Author ID2: at Sun Nov 4 19:05:00 2001]n1 -le n2Liczba całkowita n1 jest mniejsza bądź równa liczbie całkowitej n2.[Author ID2: at Sun Nov 4 19:05:00 2001]n1 -lt n2Liczba całkowita n1 jest mniejsza niz liczba n2.[Author ID2: at Sun Nov 4 19:05:00 2001]n1 -ne n2Liczba n1 nie jest równa liczbie n2.[Author ID2: at Sun Nov 4 19:06:00 2001]!Operator przeczenia (not — nie), który odwraca wartość danego warunku.[Author ID2: at Sun Nov 4 19:06:00 2001]-aOperator łączności[Author ID2: at Fri Nov 2 11:38:00 2001] (and — i), który łączy dwa warunki.Oba warunki muszą być prawdziwe,[Author ID2: at Fri Nov 2 11:38:00 2001] aby całkowity rezultat dał prawdziwy wynik.[Author ID2: at Sun Nov 4 19:06:00 2001]-oOperator alternatywy, który łączy dwa warunki.Jeśli jeden z dwóch warunków jest prawdziwy,[Author ID2: at Fri Nov 2 12:37:00 2001] wynik jest rownież prawdziwy.[Author ID2: at Sun Nov 4 19:06:00 2001]\(.\)Wyrażenia w poleceniu test można grupować zamykając je w \( i \).[Author ID2: at Sun Nov 4 19:06:00 2001]Dla przykładu rozważmy taki skrypt:test -d $1echo $?Skrypt ten sprawdza,[Author ID2: at Fri Nov 2 11:38:00 2001] czy pierwszy argument określa katalog i wyświetla status wyjścia, wartość zero lub inną w zależności od wyniku testu.Załóżmy, że powyższe polecenia są przechowywane w pliku tester, któr[Author ID2: at Fri Nov 2 11:39:00 2001]y[Author ID2: at Fri Nov 2 11:39:00 2001] posiadający[Author ID2: at Fri Nov 2 11:39:00 2001] atrybut do odczytu o [Author ID2: at Fri Nov 2 11:39:00 2001]raz do wykonania.Wykonanie tego skryptu może dawać następujące wyniki:$./tester /$./tester /missing1Oznaczają one odpowiednio: 0 — katalog / istnieje,[Author ID2: at Fri Nov 2 11:39:00 2001] a wartość[Author ID2: at Fri Nov 2 11:39:00 2001] 1 — [Author ID2: at Fri Nov 2 11:39:00 2001]katalog /missing nie istnieje [ Pobierz całość w formacie PDF ]
zanotowane.pl doc.pisz.pl pdf.pisz.pl trzylatki.xlx.pl
.Składa[Author ID2: at Fri Nov 2 11:36:00 2001]nia[Author ID2: at Fri Nov 2 11:36:00 2001] polecenia [Author ID2: at Fri Nov 2 11:37:00 2001]exit jest następująca:exit statusgdzie status jest nieujemną liczbą całkowitą, która określa status wyjścia.Logika warunkowaSkrypty powłoki mogą używać logiki warunkowej, która pozwala im podejmować różne działania w zależności od wartości argumentów, zmiennych środowiskowych lub ich warunków.Na przykład polecenie test pozwala określić warunek, który może być albo prawdziwy,[Author ID2: at Wed Nov 7 12:22:00 2001] albo fałszywy.Wszystkie polecenia warunkowe (włączając if, case, while oraz komendę [Author ID2: at Fri Nov 2 11:37:00 2001]until) używają polecenia test do szacowania warunków.Komenda [Author ID2: at Fri Nov 2 11:37:00 2001]Polecenie [Author ID2: at Fri Nov 2 11:37:00 2001]testTabela 13.11 przedstawia opis niektórych powszechnie stosowanych form[Author ID2: at Wed Nov 7 12:22:00 2001] argumentów używanych do polecenia test.Komenda ta[Author ID2: at Fri Nov 2 11:37:00 2001]Polecenie[Author ID2: at Fri Nov 2 11:37:00 2001] sprawdza swoje [Author ID2: at Wed Nov 7 12:22:00 2001]argumenty i ustawia kod wyjściowy na zero, co oznacza, że dany warunek był prawdziwy lub podaje wartość większą od zera, która mówi, że warunek był nieprawdziwy.Tabela 13.11.Powszechnie używane formy argumentów polecenia testFormaFunkcja-d plikOkreślony plik istnieje i jest katalogiem.[Author ID2: at Sun Nov 4 19:05:00 2001]-e plikOkreślony plik istnieje.[Author ID2: at Sun Nov 4 19:05:00 2001]-r plikOkreślony plik istnieje i jest do odczytu.[Author ID2: at Sun Nov 4 19:05:00 2001]-s plikOkreślony plik istnieje i ma niezerowy rozmiar.[Author ID2: at Sun Nov 4 19:05:00 2001]-w plikOkreślony plik istnieje i jest do zapisu.[Author ID2: at Sun Nov 4 19:05:00 2001]-x plikOkreślony plik istnieje i jest wykonywalny.[Author ID2: at Sun Nov 4 19:05:00 2001]-L plikOkreślony plik istnieje i jest linkiem [Author ID2: at Fri Nov 2 11:38:00 2001]dowiązaniem [Author ID2: at Fri Nov 2 11:38:00 2001]symbolicznym.[Author ID2: at Sun Nov 4 19:05:00 2001]f1 -nt f2Plik f1 jest nowszy niż plik f2.[Author ID2: at Sun Nov 4 19:05:00 2001]f1 -ot f2Plik f1 jest starszy niż plik f2.[Author ID2: at Sun Nov 4 19:05:00 2001]-n s1Łańcuch s1 ma niezerową długość.[Author ID2: at Sun Nov 4 19:05:00 2001]-z s1Łańcuch s1 ma zerową długość.[Author ID2: at Sun Nov 4 19:05:00 2001]s1 = s2Łańcuch s1 jest taki sam jak s2.[Author ID2: at Sun Nov 4 19:05:00 2001]s1 =! s2Łańcuch s1 nie jest taki sam jak s2.[Author ID2: at Sun Nov 4 19:05:00 2001]n1 -eq n2Liczba całkowita n1 jest równa liczbie n2.[Author ID2: at Sun Nov 4 19:05:00 2001]n1 -ge n2Liczba całkowita n1 jest większa bądź równa liczbie n2.[Author ID2: at Sun Nov 4 19:05:00 2001]n1 -gt n2Liczba całkowita n1 jest większa niż liczba n2.[Author ID2: at Sun Nov 4 19:05:00 2001]n1 -le n2Liczba całkowita n1 jest mniejsza bądź równa liczbie całkowitej n2.[Author ID2: at Sun Nov 4 19:05:00 2001]n1 -lt n2Liczba całkowita n1 jest mniejsza niz liczba n2.[Author ID2: at Sun Nov 4 19:05:00 2001]n1 -ne n2Liczba n1 nie jest równa liczbie n2.[Author ID2: at Sun Nov 4 19:06:00 2001]!Operator przeczenia (not — nie), który odwraca wartość danego warunku.[Author ID2: at Sun Nov 4 19:06:00 2001]-aOperator łączności[Author ID2: at Fri Nov 2 11:38:00 2001] (and — i), który łączy dwa warunki.Oba warunki muszą być prawdziwe,[Author ID2: at Fri Nov 2 11:38:00 2001] aby całkowity rezultat dał prawdziwy wynik.[Author ID2: at Sun Nov 4 19:06:00 2001]-oOperator alternatywy, który łączy dwa warunki.Jeśli jeden z dwóch warunków jest prawdziwy,[Author ID2: at Fri Nov 2 12:37:00 2001] wynik jest rownież prawdziwy.[Author ID2: at Sun Nov 4 19:06:00 2001]\(.\)Wyrażenia w poleceniu test można grupować zamykając je w \( i \).[Author ID2: at Sun Nov 4 19:06:00 2001]Dla przykładu rozważmy taki skrypt:test -d $1echo $?Skrypt ten sprawdza,[Author ID2: at Fri Nov 2 11:38:00 2001] czy pierwszy argument określa katalog i wyświetla status wyjścia, wartość zero lub inną w zależności od wyniku testu.Załóżmy, że powyższe polecenia są przechowywane w pliku tester, któr[Author ID2: at Fri Nov 2 11:39:00 2001]y[Author ID2: at Fri Nov 2 11:39:00 2001] posiadający[Author ID2: at Fri Nov 2 11:39:00 2001] atrybut do odczytu o [Author ID2: at Fri Nov 2 11:39:00 2001]raz do wykonania.Wykonanie tego skryptu może dawać następujące wyniki:$./tester /$./tester /missing1Oznaczają one odpowiednio: 0 — katalog / istnieje,[Author ID2: at Fri Nov 2 11:39:00 2001] a wartość[Author ID2: at Fri Nov 2 11:39:00 2001] 1 — [Author ID2: at Fri Nov 2 11:39:00 2001]katalog /missing nie istnieje [ Pobierz całość w formacie PDF ]