![Пользовательские команды в ZSH](https://rvso.com/image/1302246/%D0%9F%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D0%BA%D0%B8%D0%B5%20%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D1%8B%20%D0%B2%20ZSH.png)
Я сравнительно новичок в Zsh и Bash.
Я хочу настроить пользовательские команды, например desktop
, которые перенесут меня на рабочий стол. Добавление следующих строк в файл .bash_profile будет работать с Bash.
desktop() {
cd /Users/me/Desktop
}
Похоже, с Zsh это не работает.
Вопрос только в том, где я размещаю код, или я все делаю неправильно?
решение1
Отредактируйте файл ~/.bashrc. Найдите раздел alias и добавьте следующий
alias desktop='cd /path/to/desktop'
Делая так, вы объявите несколько псевдонимов. Вы можете создать любой пользовательский псевдоним, который захотите!
(т. е. у меня есть псевдоним ne='emacs -nw', и каждый раз, когда я запускаю
ne "some file",
он открывает файл в оболочке emacs.)
Когда бы вы ни написали «desktop», это приведет вас туда :-) (теоретически)
решение2
С zsh вам следует отредактировать ~/.zshrc (создать его, если он не существует -> пример шаблонаhttps://github.com/robbyrussell/oh-my-zsh/blob/master/templates/zshrc.zsh-template)
так:
нано ~/.zshrc
и добавьте нужный вам псевдоним, например
alias my_project_runserver='cd my_project_path; . venv/bin/активировать; ./manage.py запустить сервер'
Используя указанный выше псевдоним, я захожу в папку своего проекта, активирую virtualenv и запускаю сервер django.
;
разделяет команды, поэтому с помощью одного псевдонима можно выполнить несколько команд
и для вступления изменений в силу выполните:
. ~/.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.Перезагрузите терминал.