Comment faire un alias permanent dans oh-my-zsh?

46

Dans mon .zshrc, j'ai essayé de créer quelques alias. J'ai utilisé ce code ci-dessous:

# 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"

Puis j'ai écrit une commande source ~/.zshrc. Cela n'a toujours pas résolu le problème. Je reçois des messages d'erreur commezsh: command not found: j

Quelqu'un pourrait-il m'aider avec des suggestions et me faire savoir ce que je fais mal?

Shamveel Ahammed
la source
3
À en juger par les commentaires (multiples) et par l'erreur, je suppose que chaque alias est en réalité placé sur une seule ligne, n'est-ce pas?
kos

Réponses:

70

Il ne doit y avoir aucun espace entre les =noms et leur définition:

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: Si vous cherchez un moyen de raccourcir les noms de répertoires, je suggère d’examiner les répertoires nommés et l’ AUTO_CDoption au lieu des alias:

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

Cela vous permet d'utiliser à la ~wplace de ~/Documents/UoMWorkspace/Semester2et à la ~jplace de ~/Documents/UoMWorkspace/Semester2/COMP17412(ou ~w/COMP17412). Donc cd ~jest identique à cd ~/Documents/UoMWorkspace/Semester2. Cela fonctionne également dans le cadre d'un chemin, par exemple cat ~j/somedir/somefile.

Avec

setopt AUTO_CD

zshira automatiquement cdà un répertoire s'il est donné comme commande sur la ligne de commande et que ce n'est pas le nom d'une commande réelle. par exemple

% /usr
% pwd
/usr
% ~w
/home/YOURUSERNAME/Documents/UoMWorkspace/Semester2
Adaephon
la source
Comme une explication plus détaillée pourquoi ne pas utiliser des espaces avant et après le signe de l' équation: par exemple a = b: Ce sera considéré comme une commande aavec deux paramètres ( bet =) et renvoie une erreur: zsh: command not found: a. Si vous mettez aliasavant cela ( alias a = b), ce sera en quelque sorte similaire.
Timo
Je viens d'utiliser "vi ~ / .zshrc" et de modifier le fichier export PATH=/Users/andres/flutter/bin:$PATHcar j'utilise flutter
Andres Paladines