EXPR(1L) EXPR(1L)
NAZWA
expr - wykonaj wyrażenia
SKŁADNIA
expr wyrażenie...
expr {--help,--version}
OPIs
Ta strona podręcznika man opisuje wersję GNU programu
expr. expr wykonuje obliczenie i zapisuje rezultat na
standardowe wyjście. Każdy żeton wyrażenia musi być odd
zielnym argumentem. Operandy mogą być liczbami, lub
ciągami znaków. Ciągi znaków nie cytuje się dla expr, choć
możesz być zmuszonym do tego, by ochronić je przed
shellem. expr rzutuje wszystko znajdujące się po stronie
operandowej na integer, lub string, zależnie od rodzaju
operacji.
Operatory (w kolejności zwiększającego się znaczenia) to:
| Wydaje swój pierwszy argument w wypadku gdy jest
niezerowy, lub drugi w przeciwnym wypadku. Jest to
zwykła operacja `or'.
& Wydaje swój pierwszy argument w wypadku gdy żaden z
argumentów nie jest zerowy. W przeciwnym wypadku
zwraca zero.
< <= = == != >= >
Porównuje argumenty i zwraca 1 jeśli relacja jest
prawdziwa, lub zero w przeciwnym wypadku. (== jest
synonimem =.) expr próbuje rzutować obydwa argu
menty na liczby i dokonać porównania numerycznego;
jeśli to zawiedzie, próbuje porównania
leksykalnego.
+ - Dokonuje operacji arytmetycznych. Obydwa argumenty
są rzutowane na liczby; jeśli to niemożliwe,
pojawia się błąd.
* / %
Dokonuje operacji arytmetycznych (`%' jest operacją
modulo, jak w C). Obydwa argumenty są rzutowane na
liczby; jeśli to niemożliwe, pojawia się błąd.
: Dokonaj porównania wzorców. Argumenty są rzutowane
na stringi, a drugi jest uważany za wyrażenie regu
larne. Jeśli porównanie jest pomyślne i część
stringu zawarta jest w `\(' i `\)', to ta część
jest wartością wyrażenia :; w przeciwnym wypadku
jest nią integer, którego wartością jest liczba
zwróconych znaków. Jeśli porównanie zawiedzie,
operator zwraca string zerowy (jeśli użyto `\(' i
`\)' ) lub zero w przeciwnym wypadku. Można użyć
FSF Narzędzia shellowe GNU 1
EXPR(1L) EXPR(1L)
tylko jednej pary `\(' i `\)'.
Dodatkowo, rozpoznawane sa następujące słowa kluczowe:
match string regex
Alternatywna droga porównywania wzorców. Jest to
identyczne z ``string : regex''.
substr string pozycja długość
Zwróć string będący częścią stringu string, zaczy
nającą się w pozycji i będącą długości najwyżej
długość. Jeśli position lub length jest negatywne,
lub nienumeryczne, zwracany jest string null.
index string klasa-znakowa
Zwróć pierwszą pozycję w string gdzie znaleźć można
pierwszy znak z klasy-znakowej. Jeśli nie
znaleziono żadnego znaku z klasy-znakowej, zwróć 0.
length string
Zwróć długość stringu string.
Nawiasy są używane zazwyczaj do grupowania. Słowa kluczowe
nie mogą być używane jako stringi.
OPCJE
Gdy uruchomi się GNU expr z jednym argumentem, rozpoz
nawane są następujące opcje:
--help Wydrukuj na stdout informację o użyciu programu i
zakończ go.
--version
Wydrukuj na stdout informację o wersji programu i
zakończ go.
PRZYKŁADY
Aby dodać 1 do zmiennej shellowej a:
a=`expr $a + 1`
Następujące może zostać uzyte do wydrukowania niekatalo
gowej części nazwy pliku, przechowywanej w zmiennej a
(wartość w a nie musi zawierać `/'):
expr $a : ´.*/\(.*\)´ ´|´ $a
Zauważ cytowane metaznaki shella.
expr zwraca następujący status wyjścia:
0 jeśli wyrażenie nie jest ani null, ani 0.
1 jeśli wyrażenie jest null lub 0,
2 dla nieprawidłowych wyrażeń.
FSF Narzędzia shellowe GNU 2