ZSH のカスタム コマンド

ZSH のカスタム コマンド

私は Zsh と Bash を使い始めたばかりです。

たとえば、desktopデスクトップに移動するカスタム コマンドを設定したいのですが、次の行を .bash_profile ファイルに追加すると、Bash で機能します。

desktop() {
  cd /Users/me/Desktop
}

Zshでは動作しないようです。

これは単にコードをどこに配置するかの問題なのでしょうか、それともやり方が間違っているのでしょうか?

答え1

~/.bashrcファイルを編集します。エイリアスセクションを見つけて、次の
エイリアスdesktop='cd /path/to/desktop'を追加します。

そうすることで、いくつかのエイリアスを宣言します。必要なカスタム エイリアスを作成できます。
(つまり、エイリアス ne='emacs -nw' があり、
ne "some file"を実行するたびに
、シェル ベースの emacs でファイルが開かれます。)

デスクトップと書くと、そこへ行けます :-) (理論的には)

答え2

zshでは~/.zshrcを編集する必要があります(存在しない場合は作成してください -> サンプルテンプレートhttps://github.com/robbyrussell/oh-my-zsh/blob/master/templates/zshrc.zsh-template

それで:

ナノ ~/.zshrc

必要なエイリアスを追加します。例:

エイリアス my_project_runserver='cd my_project_path; 。 venv/bin/アクティブ化; ./manage.py 実行サーバー'

上記のエイリアスを使用してプロジェクトフォルダに移動し、virtualenvをアクティブにしてdjangoサーバーを実行します。

;

コマンドを区切るので、1つのエイリアスで複数のコマンドを実行できます。

変更を有効にするには、以下を実行します。

. ~/.zshrc

答え3

グローバルzシェルスクリプト実行ファイルを作成する

グローバルに利用可能で、シェル構成から独立した独自のスクリプト ファイルを作成することをお勧めします。

1.次の内容のテキスト ファイルを作成します (ファイル名を「desktop」にします)。

#!/usr/bin/env zsh
cd /Users/me/Desktop
#or any shell commands you want

2.ファイルをパスに保存する

/usr/local/bin 

3. 次のコマンドを実行して、適切な権限でスクリプトを実行できるようにします。

cd /usr/local/bin 
sudo chmod -x ./desktop
Sudo chmod 755 desktop

4.ターミナルを再起動します。

関連情報