![让用户登录到指定的 tty](https://linux22.com/image/1433984/%E8%AE%A9%E7%94%A8%E6%88%B7%E7%99%BB%E5%BD%95%E5%88%B0%E6%8C%87%E5%AE%9A%E7%9A%84%20tty.png)
我正在编写一个 bash 脚本,它会断开空闲会话,但在终止它之前几秒钟写入 tty,以确保它确实没有被使用。
的格式write
为write user [tty]
。
我从一个 tty 字符串开始,即“pts/1”。
我知道我可以在“who”和“w”中通过 tty 名称找到用户,但不确定如何将用户名(即 john)放入变量中。这需要正则表达式吗?我最初正在寻找单个命令,但他们的文档中who
没有w
这样的选项。
答案1
这应该可以工作。它用于stat
提取伪终端所有者的用户名。这里,$pts
应该采用问题中的格式,例如pts/2
。
tty_user=$(stat -c%U /dev/$pts)