1、统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来
#法一
grep -v '/sbin/nologin' /etc/passwd | cut -d: -f1
grep -v '/sbin/nologin' /etc/passwd | wc -l
#法二
awk -F: '!/sbin\/nologin/{print $1}' /etc/passwd
awk -F: '!/sbin\/nologin/{print $1}' /etc/passwd | wc -l
#法三
sed '/sbin\/nologin/d' /etc/passwd |cut -d: -f1
sed '/sbin\/nologin/d' /etc/passwd | wc -l
2、查出用户UID最大值的用户名、UID及shell类型
cat /etc/passwd |sort -t: -k3 -nr|head -1|awk -F: '{print "用户名:"$1,"UID:"$3,"shell:"$NF}'
3、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序
ss -nt | sed -n '2,$p'|awk -F"[[:space:]]+" '{print $4}'|uniq -c|sort -nr
4、编写脚本disk.sh,显示当前硬盘分区中空间利用率最大的值
#!/bin/bash
BEGIN="\e[1;32;43m"
END="\e[0m"
echo -e "${BEGIN} `df|sed -n '2,$p'|awk -F"[ %]+" '{print $5}'|sort -nr|head -1` ${END}"
5、编写脚本 systeminfo.sh,显示当前主机系统信息,包括:主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小
#!/bin/bash
BEGIN="\e[1;35m"
END="\e[0m"
echo -e "${BEGIN}-----------------------------------------------------------${END}"
echo -e "${BEGIN}"主机名:" `hostname`${END}"
echo -e "${BEGIN}"IPV4地址:" `ifconfig|sed -n '2p'|awk -F"[ ]+" '{print $3}'`${END}"
echo -e "${BEGIN}"操作系统版本:" `cat /etc/centos-release`${END}"
echo -e "${BEGIN}"内核版本:" `uname -r`${END}"
echo -e "${BEGIN}"CPU型号:" `cat /proc/cpuinfo |awk -F: '/name/{print $2}'|uniq -c`${END}"
echo -e "${BEGIN}"内存大小:" `cat /proc/meminfo |head -n1 |grep -Eo '[0-9]+.*'`${END}"
echo -e "${BEGIN}"硬盘大小:" `df|sed -n '2,$p'|awk '{sum += $2};END{print sum}'`${END}"
echo -e "${BEGIN}-----------------------------------------------------------${END}"