2015-02-19 12 views
6

W moim skryptu zsh, miałem linięJakie specjalne znaczenie ma znak równości w zsh?

echo some text ================================ 

Ku mojemu zaskoczeniu, komunikat o błędzie zostało wydane dla tej linii:

zsh: =============================== not found 

Eksperymentowanie z linii poleceń, stwierdziliśmy, że powłoka staje zdenerwowany, gdy istnieje znak równości:

$ echo =z 
zsh: z not found 

Ale tutaj mamy:

$ echo =echo 
/usr/bin/echo 

Z tej obserwacji, to wygląda, jakby

=XXX 

byłyby interpretowane jak

$(which XXX) 

Jednak nie mogę znaleźć nic o tym "podstawienie" w manpage zsh. Gdzie jest opisany ten kawałek magii?

Odpowiedz

6

Z docs:

14.7.3 „=” ekspansja

Jeśli słowo zaczyna się nienotowane „=” i RÓWNOŚCI opcja jest ustawiona, pozostałą część wyrazu jest brane jako nazwę polecenia. Jeśli przez tę nazwę istnieje polecenie , słowo zostanie zastąpione pełną nazwą ścieżki polecenia.

I here w kilku słowach

+1

świetnie! Znalazłem szczególnie link bardzo pomocny, który podałeś! – user1934428

Powiązane problemy