四、不像

1、统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来


[root@Centos7 ~]# grep -v "/sbin/nologin" /etc/passwd
root:x:0:0:root:/root:/bin/bash
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
wu:x:1000:1000:wu:/home/wu:/bin/bash

[root@Centos7 ~]# grep -v "/sbin/nologin" /etc/passwd | wc -l
5

2、查出用户UID最大值的用户名、UID及shell类型

#使用到管道、cut、sort、head知识
#cut -d: -f1,3,7   d以:为分隔符,f获取第1,3,7列的数据
#sort -t: -k2 -nr   t以:为分隔符,k以第2列进行排序,nr以数字从大到小
[root@Centos7 ~]# cat /etc/passwd |cut -d: -f1,3,7|sort -t: -k2 -nr |head -1
wu:1000:/bin/bash

3、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序

[root@centos8 ~]#ss -nt|tail -n+2 |tr -s ' ' : |cut -d: -f6|sort|uniq -c|sort -nr |head -n2
  2 10.0.0.1
  1 10.0.0.7

4、编写脚本disk.sh,显示当前硬盘分区中空间利用率最大的值

[root@Centos7 ~]# vim /data/disk.sh
#增加文本内容
df | egrep -o  '[0-9]+%' | cut -d% -f1|sort -nr| head -1
#执行脚本
[root@Centos7 data]# . disk.sh
7

5、编写脚本 systeminfo.sh,显示当前主机系统信息,包括:主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小

[root@Centos7 data]# vim systeminfo.sh
 echo -e "主机名:        $HOSTNAME"
 echo -e "IP地址:         `ifconfig | head -2|tail -1|tr -s ' ' '%'|cut -d% -f3`"
 echo -e "操作系统版本:      `cat /etc/redhat-release`"                                                                    
 echo -e "内核版本:     `uname -r`"
 echo -e "CPU型号:      `lscpu | egrep 'Model name'|tr -s ' '|cut -d: -f2`"
 echo -e "内存大小:     `free -h | tr -s ' ' %|cut -d% -f2|head -2|tail -1`"
 echo -e "硬盘大小:     `lsblk |grep '^sd' |tr -s ' ' |cut -d " " -f4`"

[root@Centos7 data]# . systeminfo.sh 
主机名:     Centos7.2
IP地址:         10.154.119.133
操作系统版本:      CentOS Linux release 7.9.2009 (Core)
内核版本:   3.10.0-1160.el7.x86_64
CPU型号:   Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz
内存大小:   972M
硬盘大小:   200G



6、vim命令操作说明

vim有三种模式
一、命令模式:
列出常用的几个选项:

    G: 移动到这个档案的最后一行(常用)
    0  :移动到这一行的最前面字符处 (常用)
    $ : 移动到这一行的最后面字符处(常用)
    nG:          光标移动到第n行
    gg:          移动到文本的第1行
    n<Enter>:  向下移动n行
    /单词       : 光标停留之下,查找某个单词
    ?单词     :    光标停留之上,查找单词
    n  : 向下查找下一个单词
    N  :向上查找下一个单词
    x   :向前删除一个字符 (nx)
    X  :向后删除一个字符
    dd:删除光标所在的整行
    d$:删除字符,从光标开始直到当前行的末尾
    ndd :删除光标向下的n行
    yy  :复制光标所在行
    nyy :复制光标向下的n行
    p:将复制的内容,粘贴在光标所在行的下方   (OR 打印出你刚刚删除的内容)
    P:将复制的内容,粘贴在光标所在行的上方
    u:撤销之前的动作 (相当于ctrl+z)
    ctrl+r :撤销刚才的”撤销“
    .   :重复前一个动作
    ZZ: 这是大写的 Z 喔!若档案没有更动,则不储存离开,若档案已经被更动过,则储存后离开!
    输入 % 来跳转到与之匹配的括号,当光标在 ( ) [ ] { }

二、输入模式:

    I:光标行第一个非空格处开始输入
    a:光标的下一个字符处开始输入
    A:光标行最后一个字符开始输入
    o:光标下一行输入
    O:光标上一行输入
    r:替换光标所在那个字符
    R:一直替换,直到按ESC

三、底线扩展命令模式:

    :w file1.txt    :   #另存为
    :n,ms/bird/BIRD/g    #从n行开始到m行,搜索bird替换成BIRD
    :%s/bird/BIRD/g      #全文替换
    :%s/bird/BIRD/gc     #全文替换,并且替换前提示用户确认

通过家目录的.vimrc配置文件,可以永久保存vim的使用环境

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容