当前位置: 首页 > Linux

Linux系统查看所有用户命令

时间:2023-04-06 04:53:53 Linux

用过Linux系统的同学都知道Windows系统和Linux系统有很大的区别。以本文将要提到的视图系统用户为例。在Windows系统中,查看Users直接右击计算机属性,然后会有用户和用户组。而Linux是纯命令行的,怎么找用户呢?这就是本文需要说明的。看过前文的朋友都知道,里面特别提到了useradd命令,专门用来创建新用户的。当我们使用useradd命令创建新用户时,/etc/passwd会存放用户的信息,而文件/etc/shadow会存放用户的密码信息。可以看出这两个文件存储的是用户信息,但是除了用户信息之外还有其他的内容。如果我们只想知道如何处理用户名,那么我们需要使用组合命令。如下:$cat/etc/passwd|头-5|cut-f1-d:在上面的例子中,head命令是提取/etc/passwd文件的前五行。|这个符号叫做管道符,它的作用是把上一条命令的输出作为下一条命令的输入,所以很容易理解为什么上面的命令只显示前五行。然后我们再次使用cut命令。该命令的作用是拦截。-d选项指定分隔符。在这里,:用作定界符。-f指定列,即以冒号为分隔符截取第一列的内容,这一长串的命令组合起来,就得到了当前系统中已经创建的所有用户名。作为Linux系统管理员,我们可能需要多次查看当前系统中的活跃用户。甚至有时您需要知道这些用户在做什么。以下四种方法分享给大家:1.w是的,这是一封信,也是一条命令。该命令的作用是显示当前登录系统的用户名,以及当前可以进行的操作。$w07:16:05up3days,19:00,2users,loadaverage:0.01,0.08,0.08USERTTYFROMLOGIN@IDLEJCPUPCPUWHATrootpts/0123.139.156.117Thu220.00s0.27s0.00swroot点/1123.139.156.11721:298:23m0.02s0.02s-bashw该命令输出的信息来自文件/var/run/utmp。可以看到该命令的输出信息有很多列,分别是:USER:用户名TTY:计算机终端设备FROM:远程主机地址LOGIN@:系统登录时间IDLE:登录系统的空闲时间WHAT:表示用户正在使用的命令2.who命令从名字可以看出打印当前登录的用户。$whorootpts/02020-11-2622:12(123.139.156.117)rootpts/12020-11-2721:29(123.139.156.117)who命令的输出是:登录用户名,设备号,登录的日期和时间以及主机地址。同样,如果你指向查看用户列,那么:$who|cut-d''-f1rootroot有了开头的介绍,相信这个组合命令大家都很容易理解。3.whoami命令是不是看起来更直接?它的作用是打印出当前登录系统的用户。它只会显示用户名,没有任何多余的输出。$whoamiroot4。last这条命令比较强大,它可以打印出登录过或使用过系统的用户信息。如果不指定参数,则默认显示所有登录历史信息。这些信息的显示内容一般来自/var/log/wtmp文件。[user5@VM-4-10-centos~]$lastrootpts/1123.139.156.117FriNov2721:29stillloggedinrootpts/0123.139.156.117ThuNov2622:12stillloggedinrebootsystemboot4.14.105-19-001611月24日星期二12:15-07:45(3+19:29)rootpts/0111.206.145.26ThuSep2418:11-18:11(00:00)rootpts/0111.206.145.26Thu9月24日18:09-18:10(00:01)重新启动系统启动4.14.105-19-0016星期四9月24日18:07-18:25(00:18)重新启动系统启动4.14.105-19-0016星期四Sep2418:06-18:25(00:19)rootpts/0111.206.145.26ThuSep2417:13-crash(00:52)可以看到,这个信息的输出还是蛮多的,所以没必要只关注一栏,第一栏关注登录的用户,以及远程地址和登录时间,最后两栏是注销的日期和时间,总工作time,andcurrentstatus例如,我打开了两个终端,并以root用户登录,所以如果我还没有退出,就会显示“仍然登录”的状态。本文主要针对检查Linux系统的用户。Linux系统一般用作服务器,运行重要业务。必须是安全可靠的,所以定期检查以下当前用户登录和操作情况是很有必要的。