第三周

作业

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

#!/bin/bash
# Version:
# Description:
# Author: jerry<jerry@whitehouse>
# Date: 2017/12/15
who | cut -d' ' -f1 | sort | uniq

 

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

#!/bin/bash
#
last -a -i | head -n 1
-i: 主机名不反解,以IP显示;
-a: 将主机名显示在最后一行;

 

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

#!/bin/bash
#
cut -d: -f7 /etc/passwd | sort | uniq -c | sort -t' ' -k 1 -r -n | head -n 1 || awk -F: '{array[$NF]++} END {for (i in array) {print i,array[i]}}' /etc/passwd | sort -t' ' -k2 -r | head -n 1

 

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

#!/bin/bash
#
sort -t':' -k3 -n /etc/passwd | tail -n 10 | tr [a-z] [A-Z] | tee /tmp/maxusers.txt

 

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

#!/bin/bash
#
ifconfig | egrep -o '(\<([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>\.?){4}'

 

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

#!/bin/bash
#
ls -d /etc/*.conf | xargs -I {} basename {} | tr 'a-z' 'A-Z' > /tmp/etc.conf

 

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

#!/bin/bash
#
ls /var | wc -l

 

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

#!/bin/bash
#
sort -t':' -k3 -n /etc/group | head | grep -o '^[^:]\+'

 

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

#!/bin/bash
#
cat /etc/fstab /etc/issue | tee /tmp/etc.test

 

10、请总结描述用户和组管理类命令的使用方法并完成以下练习:
组管理:groupadd、groupmod、groupdel
用户管理:useradd、usermod、userdel、passwd、gpasswd、newgrp、change、chsh
其它:id、su、finger、which、where、w、who

(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;

 # groupadd admins
 # usermod -a -G admins slackware

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

(2)
逆神阳逆神阳
上一篇 2017-12-15 20:57
下一篇 2017-12-16 14:22

相关推荐

  • 第二周博客作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示? cat(concatenate)#从头开始看     文本文件查看工具 SYNOPSIS:     cat [OPTION]… [FILE]… -A 输出行最后加上$号 -n 输出行号 例…

    Linux干货 2016-12-12
  • LVM基础

    逻辑卷的原理 逻辑卷的组成上包括物理卷,逻辑组,逻辑卷 物理卷即是磁盘分区或者块设备经过转换以后形成的抽象的逻辑设备 逻辑组即是将物理卷进行统一打包,合成一个更大的逻辑上的分区 逻辑卷是在逻辑组的基础上细分的课动态调节的虚拟磁盘分 其工作原理是通过某种机制将物理上的块设备或者分区抽象的进行封装,然后以逻辑卷的方式统一呈现给 上层的应用 逻辑卷的操作 一:创建…

    2017-05-01
  • Redis基于Sentinel哨兵高可用方案

    下载最新redis版本,当前最新版本为  2.8.19  2014-12-30 安装redis 首页地址:http://redis.io/ 最新稳定版下载地址: http://download.redis.io/releases/redis-2.8.19.tar.gz # tar -xvf redis-2.8.19.tar.gz # cd…

    2015-03-03
  • PHP字符串的编码问题

        大家都知道,不同字符编码,其在内存占用的字节数不一样。如ASCII编码字符占用1个字节,UTF-8编码的中文字符是3字节,GBK为2个字节。     PHP 也自带几种字符串截取函数,其中常用到的就是 substr 和 mb_substr。     使用substr截取中…

    Linux干货 2015-10-22
  • iptables

    iptables: Firewall:隔离工具;Packets Filter Firewall;工作于主机或网络的边缘,对经由的报文根据预先定义的规则(匹配条件)进行检测,对于能够被规则匹配到的报文实行某预定义的处理机制的一套组件; 硬件防火墙:在硬件级别实现部分功能的防火墙;另一个部分功能基于软件实现;  软件防火墙:应用软件处理逻辑运行于通用硬…

    Linux干货 2016-12-05
  • varnish原理及配置事例

    Varnish是一款高性能的开源HTTP加速器(其实就是带缓存的反向代理服务),可以把http响应内容缓存到内存或文件中,从而提高web服务器响应速度。与传统的 squid 相比,varnish 具有性能更高、速度更快、管理更加方便等诸多优点,很多大型的网站都开始尝试使用 varnish 来替换 squid,这些都促进 varnish 迅速发展起来 Varn…

    Linux干货 2015-12-06

评论列表(1条)

  • 马哥教育
    马哥教育 2018-01-07 18:09

    内容上基本上没什么问题~文章中能体现自己的想法会更好~