Chcę uzyskać listę wszystkich zmiennych środowiskowych (zmienne powłoki? Zmienne eksportowane?) I ich wartości w danym momencie, w zsh.
Jak to zrobić w odpowiedni sposób?
26
Chcę uzyskać listę wszystkich zmiennych środowiskowych (zmienne powłoki? Zmienne eksportowane?) I ich wartości w danym momencie, w zsh.
Jak to zrobić w odpowiedni sposób?
Brzmi jak chcesz env
.
env
nie jest specyficznyzsh
, jest to samodzielny program. Powiedziawszy to, wynik numer jeden w Google dla „list zmiennych środowiskowych” mówi, aby użyćenv
, więc myślę, że to jeden ze sposobów ;-)apropos environment
man zsh
lub Googling dla „zmiennych drukowania zsh” lub podobnych.export
wypisuje listę zmiennych środowiskowych i ich wartości. Wartości są cytowane, dane wyjścioweexport
są odpowiednie do odczytu z powrotem do powłoki. Zmienne są drukowane w kolejności alfabetycznej.Jeśli chcesz także zmiennych powłoki, użyj
set
. Jeśli chcesz zmienne powłoki z adnotacjami (typexported
,integer
itp), należy użyćtypeset
.Możesz używać
export
iset
na innych powłokach, ale większość nie podaje danych wyjściowych, więc nie można go przeanalizować.typeset
jest dostępny (z innym zachowaniem) na ksh i bash.Jeśli chcesz mieć zmienne środowiskowe, istnieje również
env
polecenie, które wyświetla nieposortowane, niecytowaneJeśli chcesz tylko nazwy, uzyskaj dostęp do
parameters
tablicy asocjacyjnej. Klucze to nazwy parametrów, a wartości wskazują typy.źródło
echo $ZSH_VERSION
zwraca5.0.5
, ale kiedy toenv | grep ZSH_VERSION
zrobię, nie widzę żadnych dopasowań. CzyZSH_VERSION
nie jest zmienną środowiskową? czego mi brakuje?ZSH_HIGHLIGHT_STYLES
nie pojawiają się, gdy używamset
, ani żadnego z innych poleceń.