Demure özel sorunuza zaten cevap verdi. Ancak bu bir zsh
soru ve hakkında PATH
. Yani burada bir başka nokta: Standart değişken yanında $PATH
, orada da $path
bir dizi olan. Burada farkı görüyorsunuz (iki nokta üst üste ya da değil ...):
$ print $PATH
/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
$print $path
/bin /usr/bin /usr/local/bin /usr/X11R6/bin
Her iki değişken de otomatik olarak senkronize tutulur. Öyleyse, bir dizi kullanmanın faydası nedir?
- İkincisi
typeset -U path
, "her yinelenen değerin yalnızca ilk oluşumunu koru" (from man zshbuiltins
) yoluyla bildirebilirsiniz . Bunun anlamı, art arda kaynak oluşturmuş olsanız bile ~/.zshrc
(çünkü onu değiştirdiniz ya da her neyse) ve aynı değerlerle tekrar tekrar karışmasanız bile, yolunuzu temiz tutar .
path+=(/new/path)
PATH'nize yeni bir dizin eklemek için kullanabilirsiniz . Bir öğeyi kaldırmak için bazı hileler kullanmanız gerekir, örneğin bkz. Https://stackoverflow.com/q/3435355/2037712 veya http://www.zsh.org/mla/users//2005/msg01132.html
- PATH içindeki elemanlar üzerinden kolayca döngü yapabilirsiniz
for i ($path) { print $i # or do something else }
Son olarak, burada benim yapılandırma bir alıntı:
typeset -U path
path=(/new/path1
/new/path2
$path)
export PATH
.zshenv
.