TEST(1) Narzędzia powłokowe GNU 2.0 TEST(1) NAZWA test - sprawdzanie typów plików i porównywanie wartości SKŁADNIA test [wyrażenie] test [--help] [--version] OPIS Ta strona podręcznika man opisuje program test w wersji GNU. Zauważ, że w większości powłok istnieje wbudowane polece nie o tej samej nazwie i podobnym działaniu. Posługując się czystą nazwą polecenia w skrypcie bądź interaktywnie można otrzymać funkcjonalność różną od tu opisanej. test zwraca kod zakończenia 0 (prawda) lub 1 (fałsz) zależnie od wyniku ewaluacji wyrażenia warunkowego ´wyrażenie´. Wyrażenia mogą być jedno- lub dwu parametrowe. Każda część wyrażenia musi być osobnym argu mentem. WYRAŻENIA WARUNKOWE Zwróć uwagę na to, że nawiasy powinny być chronione (np. odwrotnym ukośnikiem) przed interpretacją przez powłokę. Sprawdzanie typu plików -b plik Prawda, jeżeli plik istnieje i jest urządzeniem blokowym. -c plik Prawda, jeżeli plik istnieje i jest urządzeniem znakowym. -d plik Prawda, jeżeli plik istnieje i jest katalogiem. -f plik Prawda, jeżeli plik istnieje i jest zwykłym plikiem. -h plik -L plik Prawda, jeżeli plik istnieje i jest dowiązaniem symbolicznym. -p plik Prawda, jeżeli plik istnieje i jest nazwanym łączem (named pipe). -S plik Prawda, jeżeli plik istnieje i jest gniazdem (socket). -t [fd] Prawda, jeżeli plik o deskryptorze fd jest otwarty na terminalu. Jeżeli fd nie jest podane, jego wartość przyjmowana jest jako 1 (standardowe wyjście). maj 2000 FSF 1 TEST(1) Narzędzia powłokowe GNU 2.0 TEST(1) Sprawdzanie praw dostępu -g plik Prawda, jeżeli plik istnieje i ma ustawiony bit set-group-id. -k plik Prawda, jeżeli plik ma ustawiony bit ``sticky''. -r plik Prawda, jeżeli plik istnieje i może być czytany. -u plik Prawda, jeżeli plik istnieje i ma ustawiony bit set-user-id. -w plik Prawda, jeżeli plik istnieje i można do niego pisać. -x plik Prawda, jeżeli plik istnieje i może być wykonany. -O plik Prawda, jeżeli plik istnieje i jego właścicielem jest użytkownik o numerze równym aktualnemu efekty wnemu UID. -G plik Prawda, jeżeli plik istnieje i należy do grupy o numerze równym efektywnemu GID. Sprawdzanie właściwości plików -e plik Prawda, jeżeli plik istnieje. -s plik Prawda, jeżeli plik istnieje i ma rozmiar większy niż zero. plik1 -nt plik2 Prawda, jeżeli plik1 jest nowszy (zgodnie z datą modyfikacji) niż plik2. plik1 -ot plik2 Prawda, jeżeli plik1 jest starszy niż plik2. plik1 -ef plik2 Prawda, jeżeli plik1 i plik2 mają te same numery urządzenia oraz i-węzła, tj. są wzajemnymi twardymi dowiązaniami. Sprawdzanie łańcuchów znakowych Poniższe opcje sprawdzają właściwości łańcuchów. Dla test łańcuchy nie są cytowane, choć może zachodzić potrzeba takiej ochrony przed interpretacją przez powłokę znaków o specjalnym dla niej znaczeniu, np. spacji. -z łańcuch Prawda, jeżeli łańcuch ma długość zero. [-n] łańcuch Prawda, jeżeli długość łańcucha jest różna od zera. łańcuch1 = łańcuch2 Prawda, jeżeli łańcuchy są jednakowe. łańcuch1 != łańcuch2 Prawda, jeżeli łańcuchy nie są jednakowe maj 2000 FSF 2 TEST(1) Narzędzia powłokowe GNU 2.0 TEST(1) Testy numeryczne argument1 OP argument2 OP jest może być jednym z niżej wymienionych: -eq, -ne, -lt, -le, -gt lub -ge. Powyższe dwuargumentowe operatory arytmetyczne zwracają prawdę, jeżeli argument1 jest odpowiedni równy, nierówny, mniejszy niż, mniejszy lub równy, większy niż albo większy lub równy w stosunku do argumentu2. argument1 oraz argu ment2 mogą być liczbami całkowitymi ze znakiem (lub bez znaku) albo specjalnym wyrażeniem -l łańcuch, którego wartością jest długość łańcucha. Na przykład: test -1 -gt -2 && echo yes => yes test -l abc -gt 1 && echo yes => yes test 0x100 -eq 1 error--> test: integer expression expected before -eq Operatory logiczne ( wyrażenie ) Prawda, jeżeli wyrażenie jest prawdziwe. ! wyrażenie Prawda, jeżeli wyrażenie jest fałszywe. wyrażenie1 -a wyrażenie2 Prawda jeżeli obydwa wyrażenia są prawdziwe. wyrażenie1 -o wyrażenie2 Prawda jeżeli przynajmniej jedno z wyrażeń jest prawdziwe. OPCJE Jeżeli GNU test zostanie wywołany z dokładnie jednym argu mentem, rozpoznawane są następujące opcje: --help Wyświetla informację o stosowaniu programu i dostępnych opcjach, kończy pracę. --version Wyświetla numer wersji programu i kończy pracę. Pojedynczy argument nie będący opcją jest również doz wolony: jeśli nie jest on pusty, to test zwróci prawdę. ZGŁASZANIE BŁĘDÓW Błędy proszę zgłaszać, w jęz.ang., do <bug-sh- utils@gnu.org>.. COPYRIGHT Copyright Š 1999 Free Software Foundation, Inc. This is free software; see the source for copying condi tions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. maj 2000 FSF 3 TEST(1) Narzędzia powłokowe GNU 2.0 TEST(1) ZOBACZ TAKŻE false(1), true(1), expr(1), sh-utils(1). OD TŁUMACZA Zaktualizowano i poszerzono wg dokumentacji Texinfo dla narzędzi powłokowych GNU wersji 2.0. maj 2000 FSF 4