第三周作业
1、统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来
统计个数: grep -v '/sbin/nologin' /etc/passwd | wc -l grep -vc '/sbin/nologin' /etc/passwd 显示用户: grep -v '/sbin/nologin' /etc/passwd | cut -d: -f1 grep -v '/sbin/nologin' /etc/passwd | grep -o '^[[:alnum:]]*'
2、查出用户UID最大值的用户名、UID及shell类型
cat /etc/passwd | cut -d: -f1,3,7 | sort -t: -k2 -nr | head -1
awk -F: 'BEGIN{maxUid=0;userName;shell;};{if($3>=maxUid) maxUid=$3;userName=$1;shell=$7}END{print userName,maxUid,shell}' /etc/passwd
3、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序
ss -nt | grep -oE '([0-9]+.){3}[0-9]+:[0-9]+ *$' | cut -d: -f1 | sort | uniq -c | sort -nr
ss -nt | awk '/([0-9]+.){3}[0-9]+:[0-9]+ *$/{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr
4、编写脚本disk.sh,显示当前硬盘分区中空间利用率最大的值
#!/bin/bash echo "分区利用率的最大值:"`df | awk '/[0-9]+%/{print $5}' | sort -nr |head -1`
5、编写脚本 systeminfo.sh,显示当前主机系统信息,包括:主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小
#!/bin/bash echo -e "主机名:`hostname`" echo -e "IPv4地址:`ip a | grep 'eth0' | grep -oE '([0-9]+.){3}[0-9]+' | head -1`" echo -e "操作系统版本:`cat /etc/system-release`" echo -e "内核版本:`uname -r`" echo -e "CPU型号:`lscpu | awk -F: '/^Model name/{print $2}'`" echo -e "内存大小:`cat /proc/meminfo | awk '/MemTotal/{print $2$3}'`" echo -e "硬盘大小:`lsblk | awk '/^nvm/{print $4}'`"
6、20分钟内通关vimtutor(可参考//yyqing.me/post/2017/2017-02-22-vimtutor-chinese-summary)