用户和组管理命令及文件查看处理工具

第三周作业

1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。
who | cut -d” ” -f1 | sort | uniq -c | sort

who命令查看当前系统登录用户信息,cut取第一段信息,sort排序,uniq统计重复行,sort再次排序。

2、取出最后登录到当前系统的用户的相关信息。
who | tail -1 

实在不知道怎么查看,cut取值取不到LOGIN的大小比较,who默认按登录时间排序,所以也就这样写了,请大神们指点啊!

3、取出当前系统上被用户当作其默认shell的最多的那个shell。
cut -d: -f7 /etc/passwd | sort | uniq -c | sort -n -r | head -1

passwd文件下第7个字段为默认shell,排序统计重复行,按逆序再次排序头一个就是最多的,也可按顺序排,那就是tail -1。

4、将/etc/passwd中的第三个字段数值最大的后10个用户信息全部改为大写后保存至/tmp/maxusers.txt。
sort -t: -k3 -n /etc/passwd | tail | tr [a-z] [A-Z] > /tmp/maxusers.ttrxt

sort可直接指定分隔符进行指定字段排序,而后tail后10行,tr转换字符大小写,输出重定向文本文件。

5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。
ifconfig | grep inet | xargs -n2 | cut -d” ” -f2 | head -1

这个有群里同学帮忙,用到个新命令xargs,将输入数据流空白行转换为空白字符,大概就是这个意思,cut以空白字符分割,取IP地址。

6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。
ls /etc/*.conf | tr [a-z] [A-Z] > /tmp/etc.conf

这个查看了文档,实在找不到怎么取出文件的文件名,basename只是针对的是给出的文件名路径,而匹配到的文件不知如何取出,请大神们帮忙啊!

7、显示/var目录下一级子目录或者文件的总个数。
ls /var | wc -l

貌似写的也不符合题目要求,请指教!

8、取出/etc/group文件中第三个字段数值最小的10个组的名字。
sort -t: -k3 -n /etc/group | head | cut -d: -f1

9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。
cat /etc/fstab >> /etc/issue | cp /etc/issue /tmp/etc.test

文件合并只想到了cat >>,输出重定向,也请大神们指点!按题目要求意思走!

10、请总结描述用户和组管理类命令的使用方法并完成以下练习:

useradd,userdel,usermod,groupadd,groupdel,groupmod,passwd。

(1)、创建组distro,其GID为2016;
groupadd -g 2016 distro

(2)、创建用户mandriva,其ID号为1005;基本组为distro;
useradd -u 1005 -g distro mandriva

(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;
groupadd peguin 先创建组

useradd -u 2002 -g distro -G peguin slackware

(7)、修改slackware的默认shell为/bin/tcsh;
usermod -s /bin/tcsh slackware

(8)、为用户slackware新增附加组admins。
usermod -a -G admins slackware 添加附加组,追加新组需要-a配合,而且得在-G前面,不加-a为替换附加组,以实验证明,我用的是CentOS 7。

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/99637

赞 (1)
圣殿小超圣殿小超
上一篇 2018-05-28 00:29
下一篇 2018-05-28 08:39

相关推荐

  • 运维自动化之ansible

    ansible的基本架构 ​ host inventory主机清单 ​ playbook相当于脚本, ​ modules模块 ansible工作原理 ​ 通过执行命令,或ansible playbook,cmdb ansible配置文件 ​ /etc/ansible/ansible.cfg主配置文件,配置ansible工作特性 ​ /etc/ansible/…

    Linux笔记 2018-06-03
  • 课堂实验

    实验:实现Gelera cluster 三台主机1 yum安装[mariadb]name = MariaDBbaseurl = https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-5.5.60/yum/centos7-amd64/gpgcheck=0 httpd2.2 order deny,allow a…

    2018-06-24
  • rpm以及yum基础

    第四周

    Linux笔记 2018-04-22
  • MYSQL数据库

    MYSQL数据库 数据的时代 涉及的数据量大 数据不随程序的结束而消失 数据被多个应用程序共享 大数据   数据库的发展史: 萌芽阶段—–文件系统: 使用磁盘文件来存储数据 初级阶段—–第一代数据库: 出现了网状模型、层次模型的数据库 中级阶段—–第二代数据库: …

    Linux笔记 2018-06-18
  • Linux根文件系统和目录结构及bash特性

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示 cp命令:copy 源文件;目标文件; 单源复制:cp [OPTION]… [-T] SOURCE DEST 多源复制:cp [OPTION]… SOURCE… DIRECTORY cp [OPTION]… -t DIRECTORY S…

    2018-06-29

评论列表(2条)

  • 圣殿小超
    圣殿小超 2018-05-28 02:59

    用户和组管理命令没有时间详述,改日补上!

  • 马哥教育
    马哥教育 2018-06-13 07:34

    最后登陆的用户可以用last 命令里面取
    建议命令都格式化一下。把命令执行结果也贴出来。