我试图find一个在Unix上运行who -m的Linux。 在Unix中,在通过su启动任何新的shell会话之前, who -m会给出您用来login的第一个用户ID,等等。
-m切换到who在Linux中具有不同的效果,而且在手册页中我无法find与我的需求相关的任何内容。
更新:我的回答(我是谁)是正确的,您的terminal已损坏或未正确configuration以支持该function。
根据评论,我做了一些更多的研究,并请朋友帮忙。 你不会说你正在使用哪个terminal,但它可能和gnome-terminal一样。
就terminal启动时的gnome-terminal *而言 ,它不会更新utmp文件。 这似乎是一个devise决定。 后来当读取utmp来查找相关信息时,它不在那里,所以它只是退出并不打印任何东西。
*我尝试xterm,konsole和ssh到各种发行版。
你想who am i打印调用用户,而不是whoami告诉你当前有效用户的用户名
如果给出两个非选项参数,“who”仅输出运行它的用户的条目(由其标准input确定),以主机名开头。 传统上,两个论点是“我是我”,就像“我是谁”一样。
这是埋在info coreutils 'who invocation'如此有趣(在基于Linux coreutils的系统) who xyzzy plugh适用。