1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。
who -i或-u 显示闲置时间, 若该用户在前一分钟之内有进行任何动作,将标示成"."号,如果该用户已超过24小时没有任何动作,则标示出"old"字符串
cut -d 指定分隔符 -f 指定字段 f2,3 就是第二和第三字段
uniq -u 仅显示出现一次的行列
~]# who -u |cut -d ' ' -f1|uniq -u
2、取出最后登录到当前系统的用户的相关信息。
last命令用于显示用户最近登录信息,最近登录的用户会显示在第一行
w命令则是最新登录的用户会显示在最后一行 id查看用户信息
~]# id $(w | tail -n 1 | cut -d ' ' -f1)
3、取出当前系统上被用户当作其默认shell的最多的那个shell。
uniq命令用于报告或忽略文件中的重复行,一般与sort命令结合使用。
-c或——count:在每列旁边显示该行重复出现的次数;
-d或–repeated:仅显示重复出现的行列;
-u或——unique:仅显示出一次的行列;
sort命令它将文件进行排序,并将排序结果标准输出
-b:忽略每行前面开始出的空格字符;
-c:检查文件是否已经按照顺序排序;
-d:排序时,处理英文字母、数字及空格字符外,忽略其他的字符;
-f:排序时,将小写字母视为大写字母;
-i:排序时,除了040至176之间的ASCII字符外,忽略其他的字符;
-m:将几个排序号的文件进行合并;
-M:将前面3个字母依照月份的缩写进行排序;
-n:依照数值的大小排序; -o<输出文件>:将排序后的结果存入制定的文件;
-r:以相反的顺序来排序;
-t<分隔字符>:指定排序时所用的栏位分隔字符;
+<起始栏位>-<结束栏位>:以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。
-k# 指定需要受排序的栏位
~]# cut -d: -f7 /etc/passwd|uniq -c|sort -nr|head -n 1|cut -d' ' -f7 h hhhh
4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。
~]# sort -t: -n -k3 /etc/passwd|tail -n 10|tr 'a-z' 'A-Z'> /tmp/maxusers.txt
5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。
~]# ifconfig |grep inet|head -1|cut -d : -f2|cut -d " " -f1
6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。
~]# ls -l /etc/*.conf|tr 'a-z' 'A-Z'> /tmp/etc.conf
7、显示/var目录下一级子目录或文件的总个数。
~]# ls /var/|wc -w
8、取出/etc/group文件中第三个字段数值最小的10个组的名字。
~]# sort -t: -k3 -n /etc/group|head -n 10|cut -d: -f1
9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。
~]# cat /etc/{fstab,issue} > /tmp/etc/test
10、请总结描述用户和组管理类命令的使用方法并完成以下练习:
(1)、创建组distro,其GID为2016;
(2)、创建用户mandriva, 其ID号为1005;基本组为distro;
(3)、创建用户mageia,其ID号为1100,家目录为/home/linux;
(4)、给用户mageia添加密码,密码为mageedu;
(5)、删除mandriva,但保留其家目录;
(6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;
(7)、修改slackware的默认shell为/bin/tcsh;
(8)、为用户slackware新增附加组admins;
(9)、为slackware添加密码,且要求密码最短使用期限为3天,最长为180天,警告为3天;
(10)、添加用户openstack,其ID号为3003, 基本组为clouds,附加组为peguin和nova;
(11)、添加系统用户mysql,要求其shell为/sbin/nologin;
(12)、使用echo命令,非交互式为openstack添加密码。
用户管理类命令: useradd usermod userdel
useradd 添加用户,同时后面可以跟选项来指定UID,GID,SHEEL等,
常用的格式:
useradd [选项] 、登录名
-u 指定UID
-g 指定基本组ID
-G 指定用户的附加组,多个附加组可用逗号隔开
-s 指定用户的默认sheel
-d 指定用户的家目录
-c 指明注释信息
-m 用于将原来的家目录移动到新的家目录
-r 创建系统用户
-D 显示创建用户的默认配置
-D 选项: 修改默认选项的值
选项:
-b, –base-dir BASE_DIR 新账户的主目录的基目录
-c, –comment COMMENT 新账户的 GECOS 字段
-d, –home-dir HOME_DIR 新账户的主目录
-D, –defaults 显示或更改默认的 useradd 配置
-e, –expiredate EXPIRE_DATE 新账户的过期日期
-f, –inactive INACTIVE 新账户的密码不活动期
-g, –gid GROUP 新账户主组的名称或 ID
-G, –groups GROUPS 新账户的附加组列表
-h, –help 显示此帮助信息并推出
-k, –skel SKEL_DIR 使用此目录作为骨架目录
-K, –key KEY=VALUE 不使用 /etc/login.defs 中的默认值
-l, –no-log-init 不要将此用户添加到最近登录和登录失败数据库
-m, –create-home 创建用户的主目录
-M, –no-create-home 不创建用户的主目录
-N, –no-user-group 不创建同名的组
-o, –non-unique 允许使用重复的 UID 创建用户
-p, –password PASSWORD 加密后的新账户密码
-r, –system 创建一个系统账户
-R, –root CHROOT_DIR chroot 到的目录
-s, –shell SHELL 新账户的登录 shell
-u, –uid UID 新账户的用户 ID
-U, –user-group 创建与用户同名的组
-Z, –selinux-user SEUSER 为 SELinux 用户映射使用指定 SEUSER
usermod 修改用户属性
-u 指定新的UID
-g 修改用户的属组
-G 修改用户的附加组,多个附加组可用逗号隔开
-s 修改用户的默认sheel
-d 修改用户的家目录
-l 修改用户名
-c 修改注释信息
-m 用于将原来的家目录移动到新的家目录
-L 锁定用户密码
-U 解锁用户密码
userdel 删除用户
格式:userdel 选项 用户
-r 删除用户时同时删除用户的家目录
组管理命令:groupadd groupmod groupdel
groupadd 添加组
格式:groupadd 选项 组名
-g 指定GID
-r 创建系统组
groupmod 修改组属性
格式:groupmod 选项 组名
-g 修改GID
-n 修改组名
groupdel 删除组
格式: groupdel 选项 组名
(1)、创建组distro,其GID为2016;
~]# groupadd -g 2016 distro
(2)、创建用户mandriva, 其ID号为1005;基本组为distro;
~]# useradd -u 1005 -g distro mandrive
(3)、创建用户mageia,其ID号为1100,家目录为/home/linux;
~]# useradd -u 1100 -d /home/linux/ mageia
(4)、给用户mageia添加密码,密码为mageedu;
~]# echo mageedu |passwd –stdin mageia
(5)、删除mandriva,但保留其家目录;
~]# userdel mandriva
(6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;
~]# useradd -u 2002 -g distro -G peguin slackware
(7)、修改slackware的默认shell为/bin/tcsh;
~]# usermod -s /bin/tcsh slackware
(8)、为用户slackware新增附加组admins;
~]# usermod -G admins slackware
(9)、为slackware添加密码,且要求密码最短使用期限为3天,最长为180天,警告为3天;
~]# passwd slackware -n 3 -x 180 -w 3
(10)、添加用户openstack,其ID号为3003, 基本组为clouds,附加组为peguin和nova;
~]# useradd -u 3003 -g clouds -G peguin,nova openstack
(11)、添加系统用户mysql,要求其shell为/sbin/nologin;
~]# useradd -s /sbin/nologin mysql
(12)、使用echo命令,非交互式为openstack添加密码。
~]# echo 123456 | passwd –stdin openstack
原创文章,作者:geshubo,如若转载,请注明出处:http://www.178linux.com/66670
评论列表(1条)
很不错,继续加油。