Синтаксис alias
команды одинаков во всех оболочках в стиле Борна. Таким образом , вы можете поделиться ими через ~/.zshrc
, ~/.bashrc
, ~/.kshrc
, ~/.shrc
, до тех пор , как они имеют смысл во всех оболочках.
То же самое относится к определениям переменных и определениям функций, если вы используете подмножество синтаксиса, которое поддерживается во всех оболочках.
Если вы не используете версии zsh старше 4.0, вы можете поместить все свои независимые от оболочки определения в файл с именем (скажем) ~/.common.rc.sh
, где первая строка
emulate -LR sh 2>/dev/null
Это говорит zsh ожидать sh совместимый синтаксис только в этом файле. Тогда источник, файл около начала ~/.bashrc
, ~/.bashrc
, ~/.kshrc
и так далее.
Это в основном то, что я делаю. Например, у меня есть несколько сложного код , который генерирует псевдоним ls
с моими любимыми вариантами в зависимости от того, что доступно ( --color
, -G
, -F
и т.д.); это не зависит от оболочки, так что входит .common.rc.sh
. У меня также есть зависимые от оболочки псевдонимы, как alias zcp='zmv -C'
это входит .zshrc
.