Bagaimana cara membuat alias permanen di oh-my-zsh?

45

Di .zshrc saya, saya mencoba membuat beberapa alias. Saya melihat ke banyak tempat, tetapi saya tidak dapat menemukan cara yang berhasil. Saya menggunakan kode ini di bawah ini:

# Set personal aliases, overriding those provided by oh-my-zsh libs, 
# plugins, and themes. Aliases can be placed here, though oh-my-zsh 
# users are encouraged to define aliases within the ZSH_CUSTOM folder. 
# For a full list of active aliases, run alias. # # Example aliases
alias zshconfig="mate ~/.zshrc"
alias ohmyzsh="mate ~/.oh-my-zsh"
alias n= "nano"  
alias m= "mkdir"
alias w= "cd ~/Documents/UoMWorkspace/Semester2"  
alias j= "cd ~/Documents/UoMWorkspace/Semester2/COMP17412"

Lalu saya menulis sebuah perintah source ~/.zshrc. Tetap saja itu tidak menyelesaikan masalah. Saya mendapat pesan kesalahan sepertizsh: command not found: j

Adakah yang bisa membantu saya dengan saran dan memberi tahu saya apa yang saya lakukan salah?

Shamveel Ahammed
sumber
3
Menilai dari komentar (mutliple) dan dari kesalahan saya kira setiap alias sebenarnya diatur pada satu baris, benar?
kos

Jawaban:

69

Tidak boleh ada spasi putih di antara =dan alias nama atau definisi alias:

alias zshconfig="mate ~/.zshrc"
alias ohmyzsh="mate ~/.oh-my-zsh"
alias n="nano"
alias m="mkdir"
alias w="cd ~/Documents/UoMWorkspace/Semester2"
alias j="cd ~/Documents/UoMWorkspace/Semester2/COMP17412"

BTW: Jika Anda mencari cara untuk mempersingkat nama direktori, saya sarankan mencari di Direktori Bernama dan AUTO_CDopsi bukan alias:

hash -d w=~/Documents/UoMWorkspace/Semester2
hash -d j=~/Documents/UoMWorkspace/Semester2/COMP17412

Ini memungkinkan Anda untuk menggunakan ~walih- alih ~/Documents/UoMWorkspace/Semester2dan ~jbukannya ~/Documents/UoMWorkspace/Semester2/COMP17412(atau ~w/COMP17412). Jadi cd ~jidentik dengan cd ~/Documents/UoMWorkspace/Semester2. Itu juga berfungsi sebagai bagian dari jalan, misalnya cat ~j/somedir/somefile.

Dengan

setopt AUTO_CD

zshakan secara otomatis cdke direktori jika diberikan sebagai perintah pada baris perintah dan itu bukan nama perintah yang sebenarnya. misalnya

% /usr
% pwd
/usr
% ~w
/home/YOURUSERNAME/Documents/UoMWorkspace/Semester2
Adaephon
sumber
Sebagai penjelasan lebih lanjut mengapa tidak menggunakan spasi sebelum dan setelah tanda persamaan: misalnya a = b: ini akan dianggap sebagai perintah adengan dua parameter ( bdan =) dan akan melemparkan kesalahan: zsh: command not found: a. Jika Anda meletakkan aliassebelum itu ( alias a = b), entah bagaimana akan serupa.
Timo
Saya hanya menggunakan "vi ~ / .zshrc" dan mengedit file dengan export PATH=/Users/andres/flutter/bin:$PATHalasan saya menggunakan bergetar
Andres Paladines