man declare
declare: declare [-aAfFgilnrtux] [-p] [nazwa[=wartość] ...]
Ustawienie wartości i atrybutów zmiennej.
Deklaracja zmiennych i nadanie im wartości. Jeśli nie podano NAZW,
wyświetlane są atrybuty i wartości wszystkich zmiennych.
Opcje:
-f ograniczenie akcji lub wyświetlania do nazw i definicji funkcji
-F ograniczenie wyświetlania tylko do nazw funkcji (oraz numeru
linii i pliku źródłowego w przypadku diagnostyki)
-g tworzenie zmiennych globalnych w przypadku użycia w funkcji
powłoki; w przeciwnym wypadku ignorowane
-p wyświetlenie atrybutów i wartości dla każdej NAZWY
Opcje ustawiające atrybuty:
-a czyni NAZWĘ tablicą indeksowaną (jeśli są one obsługiwane)
-A czyni NAZWĘ tablicą asocjacyjną (jeśli są one obsługiwane)
-i nadaje NAZWIE atrybut `integer' (zmiennej całkowitej)
-l przekształca NAZWĘ na małe litery przy przypisaniu
-n czyni NAZWĘ odwołaniem do zmiennej o nazwie wskazanej przez wartość
-r czyni NAZWĘ tylko do odczytu
-t nadaje NAZWIE atrybut `trace'
-u przekształca NAZWĘ na wielkie litery przy przypisaniu
-x eksportuje NAZWĘ
Użycie `+' zamiast `-' wyłącza podany atrybut.
Zmienne z atrybutem `integer' mają obliczaną wartość arytmetyczną
(jak w poleceniu `let') podczas przypisywania wartości.
W przypadku użycia w funkcji `declare' czyni NAZWĘ lokalną, podobnie
jak polecenie `local'. Opcja `-g' zmienia to zachowanie.
Stan wyjściowy:
Polecenie zwraca prawdę, chyba że podano błędną opcję lub wystąpi błąd.