N22-第三周课堂练习

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

    who | awk '{print $1}' | uniq

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

  last | head -n 1

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

   cat /etc/passwd | cut -d: -f7  |sort  | uniq -c | sort -n | tail -1  

     43 /sbin/nologin

     cut -d

         -f

     uniq -c

     sort -n

     tail

     

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

  sort -t: -k3 -n | tail -10 | tr 'a-z' 'A-Z' > /tmp/maxusers.txt

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

   ipconfig | grep inet 

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

   ls /etc/*.conf | tr 'a-z'  'A-Z' > /tmp/etc.conf  

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

   ls -l /var | wc -l

8.取出/etc/group文件中第三字段数值最小的10个组的名字  ++

   sort -t: k3 -n | head -10 /etc/group

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

   cat /etc/fstab /etc/issue > /tmp/etc.test  

    Cat重定向合并或追加

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

  1).创建组distro,其GID为2016;

    groupadd -g 2016 distro,

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

     useradd -u 1005 mandriva -g distro

  3).创建用户mageia,其ID为1100,家目录为/home/linux

     useradd -u 1100 -d /home/linux  mageia

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

     useradd -p mageedu  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

      useradd/usermod  -s /bin/tcsh slackware

  8).为用户slackware新增附加组admins;

      groupadd admins ; useradd -G admins slackware

  9).为slackware添加密码,且要求密码最短使用期限为3天,最长180天,警告为3天

      passwd -p  -n 3  -w 180 -x 3  slackware

  10).添加用户openstack,其ID为3003,基本组为clouds,附加组为peguin和nova;

    groupadd clouds , peguin,nova ; useradd  -u 3003  -g  clouds -G peguin,nova openstack

  11).添加 系统! 用户mysql,要求其shell为/sbin/nologin;

        useradd -r  -s /sbin/nologin  mysql

       (系统用户)

  12).使用echo命令,非交互式为openstack添加密码。

         echo "mageedu"  |  passwd –stdin opentstack

  advance bash scripting  guide

  linux 与 unix shell编程指南

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

(0)
LarryNewLarryNew
上一篇 2016-08-30
下一篇 2016-08-30

相关推荐

  • linux基础知识1

    Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。文件管理工具:cp,mv,rmcp命令:copy源文件:目标文件单源复制:cp [OPTION]… [-T] SOURCE DEST多源复制:cp [OPTION]… SOURCE… DIRECTORYcp [OPTION]… -t DIRECTORY SOURCE…单源复制:如果DES…

    2018-03-12
  • 20161028第9天作业

    20161028第9天作业 1、编写脚本/root/bin/hostping.sh,接受一个主机的IPv4地址做为参数,测试是否可连通。如果能ping通,则提示用户“该IP地址可访问”;如果不可ping通,则提示用户“该IP地址不可访问” 2、编写脚本/root/bin/checkdisk.sh,检查磁盘分区空间和inode使用率率,如果超过80%,就发广播…

    Linux干货 2016-10-30
  • IT基础设施工具—Puppet

    一、Puppet简介 Puppet是一款使用GPLV2X协议授权的开源管理配置工具,基于ruby语言开发的自动化系统配置工具,可以C/S模式或独立运行,支持对所有UNIX及类UNIX系统的配置管理,既可以通过客户端—服务器的方式运行,也可以独立运行。Puppet适用于服务器管的整个过程 ,比如初始安装、配置更新以及系统下线。puppet可以为系统管理员提供方…

    Linux干货 2017-11-26
  • Linux 第三天: (07月26日) 练习和作业

    Linux 第三天: (07月26日) 练习和作业           字符终端登录时, 显示当前登录终端号, 主机名和当前时间   vi /etc/issue   Kernel \r on an \mon terminal \lhostname is \ntime is \t &nbsp…

    Linux干货 2016-08-08
  • N25-第三周作业

    一、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可.          [root@test ~]# who | cut -d' ' -f1 | sort -u 二、取出最后登录到当前系统的用户的相关信息。    &nbs…

    Linux干货 2016-12-26
  • puppet代码分析

    这篇博客的目的是通过分析Forge上的Puppet模块来加深一些概念的理解,同时了解一些常用用法。 今天的例子是jfryman-nginx模块,它是原puppetlabs-nginx模块的升级版本,依赖3个Puppet公共模块:puppetlabs-apt,puppetlabs-stdlib和puppetlabs-concat。安装非常方便,puppet m…

    2017-03-18

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-13 13:43

    第5题,取IP地址,如果可以更精确的取出IP地址会更好。
    整体不错,基础知识很重要,加油~