alper Asked: 2020-06-30 02:33:36 +0800 CST2020-06-30 02:33:36 +0800 CST 2020-06-30 02:33:36 +0800 CST bash 命令确定它是重新启动后的第一个 ssh 连接吗? 772 像下面的答案Bash 命令确定特定时间段的第一次登录,而不是我想检查的持续时间,以检查用户是第一次连接到机器使用ssh。 是否可以找出特定用户? command-line ssh bash 1 个回答 Voted Best Answer Rein 2020-06-30T11:00:48+08:002020-06-30T11:00:48+08:00 如果这是用户“user”自非本地主机重新启动后的第一次登录,则此行应打印“First”: [ $( last | sed '/^reboot/,$d' | egrep '^user +pts/' | wc -l ) -lt 2 ] && echo First 请注意,last日志通常每月轮换一次,因此如果用户在一个多月前登录,则答案可能不正确。我用锚定表达式^以确保从第一列中选择用户名(如果用户名仍然是,我们会在读取仍然登录的行上得到错误命中:-),我也希望pts/出现,表示远程登录(用 表示本地登录tty)。 即使本月未重新启动计算机,这也应该有效。但如果您的用户的登录名是 verbatim reboot,它将不起作用。
如果这是用户“user”自非本地主机重新启动后的第一次登录,则此行应打印“First”:
请注意,
last
日志通常每月轮换一次,因此如果用户在一个多月前登录,则答案可能不正确。我用锚定表达式^
以确保从第一列中选择用户名(如果用户名仍然是,我们会在读取仍然登录的行上得到错误命中:-),我也希望pts/
出现,表示远程登录(用 表示本地登录tty
)。即使本月未重新启动计算机,这也应该有效。但如果您的用户的登录名是 verbatim reboot,它将不起作用。