3 通过SSH登录到linux机器后,我希望能够检索进行连接的计算机的名称。理想情况下,我正在寻找一些命令 hostname 要么 uname 但这将检索客户端的名称而不是主机。 此信息必须可以在某处访问,因为当我登录时,我收到一条消息,其中包含上次登录时的名称: Last login: Thu Mar 11 18:42:01 2010 from my.address.com 想要这样做的原因是能够采取不同的行动 .login 文件取决于我当前连接的计算机。 linux ssh — amicitas source
3 简短回答: who -m 对于奖励分数(是的,这是肮脏的,有人请留下评论如何做得更好): who -m | awk '{print $5;}' | sed s/\(// | sed s/\)// — Alex source 那是一个快速的答案,谢谢! — amicitas @amicitas:再次检查,我做得更好:D Upvote,如果它帮助你! — Alex 谢谢,我准备在接下来的30分钟内尝试记住如何再次使用awk和sed。 — amicitas 1 这甚至更干净:-):who -m | awk -F'[()]''{print $ 2}' — janmoesen 1 另请注意,有一个更可靠的变量:SSH_CLIENT具有客户端IP地址(以及服务器和客户端端口)。 SSH_CONNECTION添加服务器IP地址。 — janmoesen