ZSH 中的自訂命令

ZSH 中的自訂命令

我對 Zsh 和 Bash 還很陌生。

我希望設定自訂命令,例如desktop將我帶到桌面。將以下行新增至 .bash_profile 檔案將適用於 Bash。

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

它似乎不適用於 Zsh。

這只是我將程式碼放在哪裡的問題,還是我的做法是錯誤的?

答案1

編輯 ~/.bashrc 檔案。找到alias部分並新增以下
別名desktop='cd /path/to/desktop'

這樣做,您將聲明一些別名。您可以建立任何您想要的自訂別名!
(即,我有別名 ne='emacs -nw' ,每次我執行
ne「某個檔案」時
,它都會在基於 shell 的 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 runserver'

使用上面的別名,我進入我的專案資料夾,啟動 virtualenv 並運行 django 伺服器

;

分隔命令,因此使用一個別名可以執行多個命令

並使更改生效,執行:

。 〜/.zshrc

答案3

建立全域 z shell 腳本可執行文件

最好建立您自己的全域可用且獨立於 shell 配置的腳本檔案。

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.重新啟動終端。

相關內容