第四周作业
程序员文章站
2024-03-15 18:03:06
...
1、统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来
#列出所有shell类型为非nologin的用户信息出来
getent passwd | grep -v "nologin"
#然后在进行统计
getent passwd | grep -v "nologin" | wc -l
2、查出用户UID最大值的用户名、UID及shell类型
getent passwd | cut -d : -f1,3,7 | sort -t ":" -k2 -nr | head -1
#主要是利用之前学到的小工具进行结合操作即可
#cut 截取工具 以:为分隔符 再取1,3,7 列的信息出来
#sort 排序工具 以前面cut截取到的信息在用 -k 截取第二部分的出来在进行按从大到下的排序排
#最后用head 工具 只取第一行出来
#head 工具相反的工具是 tail工具 tail工具是由后往前截取 用法和 head 一样
3、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序
netstat -nt | tr -s " " % | cut -d % -f4 | grep "^[0-9]\+" | uniq -c
#netstat -nt 显示远程连接此主机的所有IP数
#tr -s " " % tr替换压缩工具 将空格替换成%,方便进行截取
#cut 截取工具 以%号为分隔符惊醒截取第四列的数据
# grep 过滤出以数字开头的Ip
# uniq 去重工具 并用 -c 统计出每个ip重复的次数即可得出连接最多次的ip 是哪一个,可以用于日志管理查出恶意IP的作用
4、编写脚本 createuser.sh,实现如下功能:使用一个用户名做为参数,如果 指定参数的用户存在,就显示其存在,否则添加之;显示添加的用户的id号等 信息
5、编写生成脚本基本格式的脚本,包括作者,联系方式,版本,时间,描述等