oh-my-zsh에서 영구 별칭을 만드는 방법은 무엇입니까?


43

내 .zshrc에서 몇 가지 별칭을 만들려고했지만 많은 장소를 들여다 보았지만 작동하는 방법을 찾을 수 없었습니다. 아래 코드를 사용했습니다.

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

그런 다음 명령을 썼습니다 source ~/.zshrc. 여전히 문제가 해결되지 않았습니다. 다음과 같은 오류 메시지가 나타납니다.zsh: command not found: j

누구든지 제안 사항을 알려주고 내가 뭘 잘못하고 있는지 알려 주시겠습니까?


3
(중복) 주석과 오류로부터 판단하면 각 별칭이 실제로 한 줄에 설정되었다고 가정합니다.
kos

답변:


67

=별칭 이름 또는 별칭 정의 사이에는 공백이 없어야합니다 .

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 : 디렉토리 이름을 줄이는 방법을 찾고 있다면 별명 대신 이름이 지정된 디렉토리AUTO_CD옵션을 살펴 보는 것이 좋습니다 .

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

이것은 당신이 사용할 수 있습니다 ~w대신 ~/Documents/UoMWorkspace/Semester2하고 ~j대신 ~/Documents/UoMWorkspace/Semester2/COMP17412(또는 ~w/COMP17412). 그래서 cd ~j동일합니다 cd ~/Documents/UoMWorkspace/Semester2. 또한 경로의 일부로 작동합니다 (예 :) cat ~j/somedir/somefile.

setopt AUTO_CD

zshcd명령 행에 명령으로 제공되고 실제 명령의 이름이 아닌 경우 자동으로 디렉토리로 이동합니다. 예 :

% /usr
% pwd
/usr
% ~w
/home/YOURUSERNAME/Documents/UoMWorkspace/Semester2

방정식 부호 전후에 공백을 사용하지 않는 이유에 대한 추가 설명 : 예 a = b: a두 개의 매개 변수 ( b=)가 있는 명령으로 간주되며 오류가 발생 zsh: command not found: a합니다. 그 alias앞에 ( alias a = b) 를 넣으면 어쨌든 비슷합니다.
Timo

방금 "vi ~ / .zshrc"를 export PATH=/Users/andres/flutter/bin:$PATH사용하고 flutter를 사용 하는 원인으로 파일을 편집했습니다.
Andres Paladines
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.