就业班第三周作业
1、 统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来
解法:
cat /etc/passwd | grep -v "/sbin/nologin" | grep -o "^[[:alpha:]]*" | wc -l ;cat /etc/passwd | grep -v "/sbin/nologin" | grep -o "^[[:alpha:]]*"
结果:
2、 查出用户UID最大值的用户名、UID及shell类型
解法:
cut -d ":" -f1,3,7 /etc/passwd | sort -t: -nk2 | tail -1
结果:
3、 统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序
解法:
ss -atun | grep ESTAB | tr -s " " | cut -d " " -f 5 | cut
-d : -f 1 | uniq -c | sort –nr
结果:
4、 编写脚本disk.sh,显示当前硬盘分区中空间利用率最大的值
解法:
vim disk.sh
#!/bin/bash
echo -e "`df | grep /dev/sda |grep -o '[0-9]\+%'`"
chmod a+x disk.sh
结果:
bash disk.sh
5、 编写脚本 systeminfo.sh,显示当前主机系统信息,包括:主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小
解法:
vimsysteminfo.sh
#!/bin/bash
echo -e "Hostname: `hostname`"
echo -e "IP Address: `ifconfig ens192 | grep netmask | tr -s " " | cut -d ' ' -f3`"
echo -e "OS version: `cat /etc/centos-release`"
echo -e "Kernel version: `uname -r`"
echo -e "CPU: `lscpu | grep 'Model name' | tr -s ' ' | cut -d ' ' -f3,4,5,6`"
echo -e "MEM: `lsmem | grep 'online memory' | tr -s ' ' | cut -d ' ' -f4`"
echo -e "HDD: `lsblk | grep "^sda" | tr -s ' ' | cut -d ' ' -f4`"
chmod a+x systeminfo.sh
结果:
bash systeminfo.sh
6、20分钟内通关vimtutor(可参考https://yyqing.me/post/2017/2017-02-22-vimtutor-chinese-summary)