oh-my-zshで永続的なエイリアスを作成する方法は?


44

私の.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
(複数の)コメントとエラーから判断すると、各エイリアスは実際には1行で設定されていると思いますか?
コス

回答:


68

=エイリアス名またはエイリアス定義の間に空白を入れないでください:

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"

ところで:ディレクトリ名を短縮する方法を探しているなら、名前の付いたディレクトリ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/COMP17412cd ~jcd ~/Documents/UoMWorkspace/Semester2cat ~j/somedir/somefile

setopt AUTO_CD

zshcdコマンドラインでコマンドとして指定され、実際のコマンドの名前ではない場合、自動的にディレクトリに移動します。例えば

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

さらなる説明として、方程式sign:egの前後にスペースを使用しない理由a = b:これはa、2つのパラメーター(bおよび=)を持つコマンドと見なされ、エラーをスローします:zsh: command not found: a。そのalias前に(alias a = b)を置くと、なんとなく似たものになります。
ティモ

私はちょうど使用「のvi〜/ .zshrc」としてファイル編集したexport PATH=/Users/andres/flutter/bin:$PATH原因Iの使用フラッタ
アンドレスPaladines
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.