1、统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来
cat /etc/passwd | grep -v /sbin/nologin | cut -d: -f1
2、查出用户UID最大值的用户名、UID及shell类型
cut -d: -f1,3,7 /etc/passwd |sort -t: -k2 -nr |head -n1
3、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序
netstat -atunl |grep EST |tr -s " " | netstat -atunl |grep EST |tr -s " " |cut -d " " -f5|cut -d: -f1 |uniq -c |sort -nr
4、编写脚本disk.sh,显示当前硬盘分区中空间利用率最大的值
脚本内容:
#!/bin/bash
df |grep '/dev/sd'|grep -oE '<[0-9]{,3}%'|tr -d '%'|sort -nr|head -n1
运行:
5、编写脚本 systeminfo.sh,显示当前主机系统信息,包括:主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小
脚本内容:
BEGINCOLOR="e[1;35m"
ENDCOLOR="e[0m"
echo -e "My hostname is ${BEGINCOLOR}
hostname$ENDCOLOR"
echo -e "IP address is ${BEGINCOLOR}
ifconfig ens33 |grep -Eo '([0-9]{1,3}.){3}[0-9]{1,3}'|head -n1$ENDCOLOR"
echo -e "OS version is ${BEGINCOLOR}
cat /etc/redhat-release$ENDCOLOR"
echo -e "Kernel version is ${BEGINCOLOR}
uname -r$ENDCOLOR"
echo -e "CPU type is ${BEGINCOLOR}
lscpu|grep "Model name" |cut -d: -f2 |tr -s " "$ENDCOLOR"
echo -e "Memtotol is ${BEGINCOLOR}
cat /proc/meminfo |head -n1 |grep -Eo '[0-9]+.*'$ENDCOLOR"
echo -e "Disk space is ${BEGINCOLOR}
lsblk |grep 'sda>'|grep -Eo '[0-9]+[[:upper:]]'$ENDCOLOR"
运行脚本: