在 Shell 脚本中如何判断当前是 ssh 登陆,还是普通终端登陆

2019-02-22 20:51:19 +08:00
 naijnehc

想到这个需求

3864 次点击
所在节点    Linux
9 条回复
ladypxy
2019-02-22 20:56:49 +08:00
last 一下就好了啊
远程登录有 IP 显示
pkokp8
2019-02-22 20:57:05 +08:00
export | grep ssh -i
xupefei
2019-02-22 21:01:04 +08:00
who am i 判断里面有没有 IP 地址。
naijnehc
2019-02-22 21:23:24 +08:00
感谢各位
Nitroethane
2019-02-22 21:24:36 +08:00
从 macOS ssh 到 Arch Linux 上:
# env | grep SSH
SSH_CONNECTION=192.168.50.45 61360 192.168.50.84 22

从 macOS ssh 到 CentOS 7 上:
# env | grep SSH
SSH_CLIENT=27.xxx.xx.99 43735 29089
SSH_TTY=/dev/pts/0
SSH_CONNECTION=27.xxx.xx.99 43735 172.21.0.12 29089
wdlth
2019-02-22 21:31:38 +08:00
判断 tty
codehz
2019-02-23 12:35:42 +08:00
@wdlth 很多图形界面终端也是 pty
maoyipeng
2019-02-23 13:25:09 +08:00
环境变量
CooperQ
2019-08-22 10:26:37 +08:00
正好碰到这个问题,直接 po 代码
export |grep SSH_TTY -i >/dev/null
RTE=$?
if [ “$RTE ” !=“ 0 ” ]; then
# if not login by ssh
fi

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/537777

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX