Zde přidejte tento řádek do .zshrc
:
export PATH=/home/david/pear/bin:$PATH
UPRAVIT :Toto funguje, ale onyho odpověď výše je lepší, protože využívá strukturované rozhraní, které ZSH poskytuje pro proměnné jako $PATH
. Tento přístup je standardní pro bash
, ale pokud vím, není důvod to používat, když ZSH poskytuje lepší alternativy.
Ve skutečnosti vám použití ZSH umožňuje používat speciální mapování proměnných prostředí. Takže můžete jednoduše udělat:
# append
path+=('/home/david/pear/bin')
# or prepend
path=('/home/david/pear/bin' $path)
# export to sub-processes (make it inherited by child processes)
export PATH
Pro mě je to velmi elegantní funkce, kterou lze rozšířit na další proměnné. Příklad:
typeset -T LD_LIBRARY_PATH ld_library_path :
Můžete připojit na váš PATH
minimálním způsobem. Není potřeba závorek, pokud nepřipojujete více než jeden prvek. Obvykle také nepotřebuje uvozovky. Takže jednoduchý a krátký způsob připojení je:
path+=/some/new/bin/dir
Tato syntaxe malých písmen používá path
jako pole , ale také ovlivní jeho ekvivalent velkými písmeny, PATH
(ke kterému je „vázán“ přes typeset
).
(Všimněte si, že žádné :
je potřeba/chtěná jako odděla .)
Běžné interaktivní použití
Potom se běžný vzor pro testování nového skriptu/spustitelného souboru stává:
path+=$PWD/.
# or
path+=$PWD/bin
Běžné použití konfigurace
Nastavení cesty můžete posypat kolem .zshrc
(jak je uvedeno výše) a přirozeně to povede k tomu, že dříve uvedená nastavení budou mít přednost (i když občas můžete chtít použít "předřazený" formulář path=(/some/new/bin/dir $path)
).
Související informace
Ošetření path
tento způsob (jako pole) také znamená:není třeba provádět rehash
získat nově pathed příkazy, které mají být nalezeny.
Podívejte se také na vared path
jako dynamický způsob úpravy path
(a další věci).
Může vás zajímat pouze path
pro tuto otázku, ale protože mluvíme o exportech a polích, všimněte si, žepole obecně nelze exportovat.
Můžete dokonce zabránit PATH
z přebírání duplicitních záznamů (viz toto a toto):
typeset -U path
PATH je předem vyplněna
Důvod, proč vaše cesta již obsahuje nějaké položky, je způsoben tím, že vaše systémové soubory shellu nastavují vaši cestu. Toto je popsáno v několika dalších příspěvcích:
- Proč a kde je nastavena proměnná env $PATH?
- Kde je zdroj $PATH? Nemohu to najít v .zshrc