Я весь день трачу ssh'ing в серверы для работы, и удаленный пользователь является тем, который совместно используется один и несколько коллег, таким образом, я не могу только вслепую настроить оболочку как не, все захотят мои тонкие настройки и изменения.
Их способ указать альтернативу .zshrc файл для использования после входа в систему, например:
ssh user@someserver zsh --rcfile .zshrc.mine
Я рассмотрел страницы справочника и погуглил и до сих пор не предложил решение.
Любая справка ценилась бы :-)
Для изменения где zsh
ищет его пользователя configuratation файлы (.zshenv
, .zprofile
, .zshrc
, .zlogin
), необходимо установить ZDOTDIR
переменная среды к пути, где они находятся. ZDOTDIR
может содержать полный или относительный путь, где относительные пути относительно текущего рабочего каталога при запуске zsh
. Если ZDOTDIR
не установлен, zsh
заглядывает $HOME
.
Так, если Вы помещаете свое персональное .zshrc
в каталог $HOME/.my_zsh
, необходимо смочь использовать его на удаленном сервере путем соединения со следующей командой:
ssh -t user@someserver ZDOTDIR=.my_zsh zsh
Параметр -t
силы pseudo-tty выделение, который ssh
обычно делает, только если никакая команда не передается (т.е. если удаленная оболочка открыта). В этом случае команда ZDOTDIR=.my_zsh zsh
передается, который устанавливает ZDOTDIR
(ограниченный по объему только к текущей команде) и выполнения zsh
.
Ваша .ssh сессия имеет 3 определенные переменные среды:
SSH_CLIENT=127.0.0.1 42421 22
SSH_CONNECTION=127.0.0.1 42421 127.0.0.1 22
SSH_TTY=/dev/pts/3
Ваши значения после "=" могут отличаться.
Вы могли иметь Ваш .zshrc
проверка файла на них и сделать somerthing отличающийся.