N22-第三周博客作业

1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。

QQ截图20160828131835.png

sort -u 在输出结果中去除重复行

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

QQ截图20160828133813.png

3、取出当前系统上被用户当作其默认shell的最多的那个shell。

QQ截图20160828140645.png

uniq -c 在输出行前面加上每行在输入文件中出现的次数。

sort -rn : -n   依照数值的大小排序。 -r   以相反的顺序来排序。

4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。

QQ截图20160828144124.png

sort -n -k3 -t":" :  -t<分隔字符>   指定排序时所用的栏位分隔字符。-k  选择以哪个区间进行排序。

5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。

QQ截图20160828151557.png

除了整行的处理模式之外, sed 还可以用行为单位进行部分数据的搜寻并取代。基本上 sed 的搜寻与替代的与 vi 相当的类似!他有点像这样:

sed 's/要被取代的字串/新的字串/g'

6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。

QQ截图20160828153858.png

7、显示/var目录下一级子目录或文件的总个数。

[root@localhost var]# ls -l /var/ | wc -l
8、取出/etc/group文件中第三个字段数值最小的10个组的名字。

QQ截图20160828161717.png

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

[root@localhost var]# cat /etc/issue /etc/fstab >> /tmp/etc.test

10、请总结描述用户和组管理类命令的使用方法并完成以下练习:
   (1)、创建组distro,其GID为2016;

 groupadd -g 2016 distro

QQ截图20160828164731.png

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

QQ截图20160828165455.png

   (3)、创建用户mageia,其ID号为1100,家目录为/home/linux;

QQ截图20160828165636.png

   (4)、给用户mageia添加密码,密码为mageedu;

  echo 'mageedu' | passwd –stdin mageia

   (5)、删除mandriva,但保留其家目录;

QQ截图20160828170707.png

删除默认保留用户的家目录,如果跟用户一起删除 -r, –remove用户主目录中的文件将随用户主目录和用户邮箱一起删除。在其它文件系统中的文件必须手动搜索并删除。

   (6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;

[root@localhost home]# useradd -u 2002 -g distro  -G peguin slackware
   (7)、修改slackware的默认shell为/bin/tcsh;

[root@localhost home]# usermod -s /bin/tcsh slackware
   (8)、为用户slackware新增附加组admins;

[root@localhost home]# usermod -G admins  slackware
   (9)、为slackware添加密码,且要求密码最短使用期限为3天,最长为180天,警告为3天;

[root@localhost var]# passwd -n 3 -x 180 -w 3 slackware
   (10)、添加用户openstack,其ID号为3003, 基本组为clouds,附加组为peguin和nova;

[root@localhost var]# useradd -u 3003 -g clouds -G nova,peguin  openstack
   (11)、添加系统用户mysql,要求其shell为/sbin/nologin;

[root@localhost var]# useradd -s /sbin/nologin mysql
   (12)、使用echo命令,非交互式为openstack添加密码。

[root@localhost var]# echo "openstack" | passwd –stdin openstack

原创文章,作者:answer,如若转载,请注明出处:http://www.178linux.com/41212

(0)
answeranswer
上一篇 2016-08-29
下一篇 2016-08-29

相关推荐

  • shell编程——让你又爱又恨的东西

    变量类型:      不同的数据类型在系统中所占资源不同,并且表示的范围也不同      数值型:          短整型short:      &…

    Linux干货 2016-08-12
  • Clonezilla(再升龙)系统备份还原使用

      实验一、单机Centos 系统利用Clonezilla手动备份和还原(VMware vSphere) 实验二、利用Clonezilla+DRBL网络备份和还原   一、简介 DRBL(Diskless Remote Boot in Linux)中文名“企鹅龙”,是基于GNU GPL协议授权下的开源项目,可以实现客户机的远程启动及多客户…

    Linux干货 2015-10-27
  • linux用户组和权限管理

    用户组和权限管理  概念 用户分为三类: 1、超级用户:root uid=0,简单来说uid为0的用户就是超级用户。 2、虚拟用户:存在linux中,满足文件或者程序运行的需要,而创建的。不能登录,不能使用。uid=1-499,1-999(centos7) 3、普通用户:管理员root创建的用户。uid=500+,1000+(centos7) 用户…

    Linux干货 2017-07-29
  • case条件判断语句

    条件判断: case语句     在shell编程中,对于多分支判断,用if 虽然也可以实现,但有些时候,写起来很麻烦,也不容易代码理解。这个时候,可以考虑case。 case 变量引用 in PAT1) 分支1 ;; PAT2) 分支2 ;; … *) 默认分支 ;; esac case语句结构特点如下:…

    Linux干货 2016-08-16
  • PXE原理详解及实践

    一、PXE简介 PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由支持通过网络启动操作系统,再启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol…

    Linux干货 2017-01-10
  • grep命令

    alias命令 直接输入 alias 命令会列出当前系统中所有已经定义的命令别名。 例一:列出当前系统中所有已经定义的命令别名。 [root@localhost ~]# alias alias cp=’cp -i’ alias egrep=’egrep –color=auto’ alias fgrep=’fgrep –color=auto’ alias …

    Linux干货 2016-01-09

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-30 12:57

    很不错的想法,将结果用截图的方式来展示,直观、简洁。 加油