如何在Linux中确定当前用户帐户
如果Linux意味着任何东西,那就意味着选择。我们甚至可以完成许多简单的任务,例如以多种方式标识当前用户。本教程将向我们展示如何使用一些最快,最简单的方法。
为什么需要查找当前用户的身份?在许多情况下,计算机的所有者是唯一的用户,并且他们可能会认识自己,而不会太过于存在。也许可以,但是人们创建额外的用户帐户以允许家庭成员访问计算机也是很常见的。而且,如果我们连接到某处服务器上的远程Shell,则可能需要快速提醒我们登录时使用的用户名。如果看到没有人出席的登录会话,如何从命令行中识别当前用户?
让我们首先尝试最简单的选项。我们需要做的就是查看命令提示符。默认情况下,Linux发行版在提示符下具有用户名。简单。我们甚至不必键入任何内容。
如果用户将其提示更改为其他格式,我们需要尝试其他操作。 who命令将为我们提供所需的信息。
who
" who"的输出为我们提供当前用户的名称,他们登录的终端,他们登录的日期和时间。如果是远程会话,它还会告诉我们他们从其中登录。
相比之下,whoami
命令提供了一个非常精妙的答案:
whoami
通过在屏幕上回显$ USER环境变量,可以得到相同的一词答案。
echo $USER
一个字母的命令`w'要求更少的输入并提供更多的信息。
w
w命令为我们提供了我们想要的用户名,以及该用户的额外数据集。请注意,如果有多个用户登录到Linux系统,则w
命令将列出所有用户。我们需要知道感兴趣的用户已登录哪个终端。如果他们直接登录到Linux计算机本身,则为pts / o,因此请在w
的输出中查找:0。
w命令提供前五分钟,十分钟和十五分钟的启动时间,正常运行时间和平均负载,以及有关当前用户的以下信息。
USER:用户名。
TTY:他们登录所在的终端类型。这通常是pts(伪电传)。 :0表示连接到此计算机的物理键盘和屏幕。
FROM:远程主机的名称(如果这是远程连接)。
LOGIN @:用户登录的时间。
空闲:空闲时间。这显示?xdm?在屏幕截图中显示,因为我们在X-windows显示管理器下运行,该管理器不提供该信息。
JCPU:联合CPU时间,这是已添加到该tty的所有进程使用的CPU时间。换句话说,此用户在此登录会话中的总CPU时间。
PCPU:进程CPU时间,这是当前进程使用的CPU时间。当前进程在WHAT列中命名。
内容:此用户当前进程的命令行。
现在我们知道该用户是谁,我们可以获取有关他们的更多信息。 id命令是一个很好的起点。输入id
,一个空格,用户名,然后按Enter。
id dave
这为我们提供了他们的用户ID(uid),组ID(gid)以及它们所属的组。通过使用" groups"命令,可以使组的显示更加整洁。
groups dave
" finger"命令提供了一个不错的摘要。如果我们使用Ubuntu或者其他基于Debian的发行版,请使用apt-get将软件包安装到系统上。在其他Linux发行版上,请改用Linux发行版程序包管理工具。
sudo apt-get install finger
一旦安装了" finger",就可以使用它来显示有关用户的一些信息。
finger dave