Polecenie declare

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.