Zsh ile takma ad ayarlama


75

Bash'de bir .bash_aliases dosyasındaki takma adları ayarlayabileceğinizi biliyorum, böylece yazdığınız komutun sistemdeki ikili dosyalarda depolanan bir komut olması gerekmez. Takma adı zsh’e sokmamın bir yolu var mı?

Yanıtlar:


43

Bu sözdizimi ile "alias" komutu ile yapabilirsiniz:

alias [ -gmrL ] [ name[=value] ... ]

"gmrL" anahtarları için , referansım olan bu kılavuza bakın . Değeri olmayan her ad için, zsh adı ve daha önce neye diğer ad verdiğini yazacaktır. Hiçbir argüman olmadan, diğer ad, ALL tanımlı diğer adların değerlerini yazdırır.

Bir veya daha fazla takma ad tanımlamak için, sadece girin

alias name1=value1 name2=value2 ... nameX=valueX

İlgili değere sahip her ad için, zsh, bu değere sahip bir diğer ad tanımlar. daha fazla bilgi için bu bağlantıyı kontrol edin ;-)

Güncelleme: ölü bağlantı güncellendi.


Bu belge sorumu tam olarak cevapladı. Çok teşekkürler.
Thomas Ward

Bu bağlantı kapalı.
Soham Chowdhury

bağlantı güncellendi.
sazary

8
Bu cevap, takma adı nereye koyacağına dair kısmı özlüyor, Kurtosis cevabı da bunu içeriyor (.zshrc).
Felix,

1
Kullandığım ~/.profileumurumda takma adları saklamak ve kaynak ~/.profileonu ~/.zshrc.
danba

140

Ben bash ve zsh arasında ileri geri gidiyorum ve her ikisi için de aynı .aliases dosyasını kullanıyorum. Onlar aynı temel takma ad sözdizimini paylaşır, böylece bir .aliases dosyası oluşturabilir ve .bashrc ve .zshrc dosyasına bağlayabilirsiniz:

Bashrc:

if [ -f ~/.aliases ]; then
    . ~/.aliases
fi

.zshrc:

source $HOME/.aliases

Fwiw, ayrıca ayrı bir .env dosyasında çevre değişken bildirimleriyle yapılabilir .


.Zshrc'nin sonuna kaynak ~ / .bash_aliases ekledim, bu yüzden tüm diğer ad hem bash hem de zsh
talsibony

@talsibony böyle: ~/ .bash_aliasesYardıma ihtiyacım olursa lütfen yardıma ihtiyacım var, cevap
lewis4u

@ lewis4u ~ / ve .bash_aliases arasında boşluk olmamalıdır. Tam olarak ~ / .bash_aliases olmalıdır.
Kurtosis

Bağlantılarınız koptu ..
Ilan.b

10

Genelde onları içine koyarsın ~/.zshenv. Ancak birçok program kabuk komutları yerine /bin/sh(genellikle bash) kullanır $SHELL, bu nedenle her yerde çalışması için muhtemelen bashtakma adın eşdeğerini ~/.bash_aliaseszaten kullanmanız gerekir.


Bu sadece kullanıcı hesabım içindir, bu yüzden ~ / .bash_aliases dosyasına kopyalanmasına gerek yoktur.
Thomas Ward
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.