Я провожу большую часть дня ssh'd на серверах. У меня есть серия псевдонимов / функций / сценариев, которые позволяют мне вводить p hostname из терминала и выполнять экран GNU (1) на удаленной стороне, используя следующую команду:
exec ssh hostname -t 'screen -RD'`
Я только недавно заметил, что ssh -t не получает мой пользовательский $PATH . Вот некоторые выводы терминала:
adam@workstation:~:0$ sh server 'echo $PATH'
/home/adam/bin:/usr/local/bin:/bin:/usr/bin:/opt/git/bin:/opt/git/libexec/git-core
adam@workstation:~:0$ ssh server -t 'echo $PATH'
/usr/local/bin:/bin:/usr/bin
Connection to uranus.plymouth.edu closed.
Моя самая большая проблема заключается в том, что мои пользовательские псевдонимы только пытаются выполнить screen , так как я не могу гарантировать абсолютный путь, а мой $PATH структурирован, поэтому оболочка должна найти правильный. Если мои настройки $PATH не соблюдаются, мои сценарии не работают. Есть ли способ, которым я могу использовать $PATH как определено моим .bashrc/.bash_profile?
Я считаю, что PermitUserEnvironment отключен.
