ZSH 中的自定义命令

ZSH 中的自定义命令

我对 Zsh 和 Bash 还很陌生。

我希望设置自定义命令,例如desktop,可以带我进入桌面的命令。将以下几行添加到 .bash_profile 文件即可与 Bash 配合使用。

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

它似乎不适用于 Zsh。

这仅仅是我放置代码的位置的问题,还是我做错了?

答案1

编辑 ~/.bashrc 文件。找到 alias 部分并添加以下
alias desk='cd /path/to/desktop'

这样做,您将声明一些别名。您可以创建任何您想要的自定义别名!
(例如,我有别名 ne='emacs -nw',每次我运行
ne“some file”时
,它都会在基于 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 运行服务器'

使用上面的别名,我进入我的项目文件夹,激活 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.重启终端。

相关内容