Какой самый надежный способ отличить локальный вход от удаленного входа в систему .bashrc?
2 ответа
1
Проверьте время команды env
. Я обнаружил, что когда я подключаюсь к удаленному хосту через ssh, устанавливается переменная с именем $SSH_CLIENT
а ее значением является IP-адрес, с которого я подключаюсь.
Вы можете проверить, является ли эта переменная нулевой или нет.
if [ -z "$SSH_CLIENT" ]; then
// code when local login
else
// code when remote login
fi
0
Если вы используете ssh
(как вам действительно следует :), вы можете искать переменные окружения, начинающиеся с $SSH_
. Другой способ - это who -u am i
, который покажет имя хоста для удаленного входа.