随笔分类 - shell编程
摘要:题目: 显示当前系统上所有用户的shell,要求,每种shell只显示一次; 答案: cut -d: -f7 /etc/passwd | sort -u
阅读全文
摘要:题目: 统计/bin、/usr/bin、/sbin和/usr/sbin等各目录中的文件个数; 答案: ls /bin | wc -l
阅读全文
摘要:题目: 创建一个用户mandriva,其ID号为2002,基本组为distro(组ID为3003),附加组为linux; 答案: #! /bin/bash groupadd linux groupadd -g 3003 distro useradd -u 2002 -g distro -G linu
阅读全文
摘要:题目: 查看哪些蜘蛛在抓取内容 答案: /usr/sbin/tcpdump -i eth0 -l -s 0 -w - dst port 80 | strings | grep -i user-agent | grep -i -E 'bot|crawler|slurp|spider' 这题没看懂!!!
阅读全文
摘要:题目: 获得访问前10位的ip地址 答案: awk '{print $1}' access.log | sort | uniq -c | sort access.log 172.16.8.11 - - [19/Sep/2018:12:35:21 +0800] "GET /console/stat/o
阅读全文
摘要:题目: 根据端口号列出进程号 答案: sudo netstat -ntlp | grep 22 | awk '{print $7}' | cut -d/ -f1 运行结果: linux cut 命令: cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。 如果不指定
阅读全文
摘要:题目: 查看当前连接SYN的IP数 答案: netstat -an | grep SYN | awk '{print $5}' | awk -F: '{print $1}' | uniq -c | sort -nr | more 运行结果:
阅读全文
摘要:题目: 获取前10个time_wait连接最多的IP地址 答案: netstat -n | grep TIME_WAIT | awk '{print $5}' | uniq -c | sort -nr | head -n10
阅读全文
摘要:题目: 用tcpdump嗅探80端口的访问 答案: sudo tcpdump -i ens33 -tnn dst port 80 -c 1000 | awk -F"." '{print $1"."$2"."$3"."$4}' | sort | uniq -c | sort -nr | head -n
阅读全文
摘要:题目: 查找请求数前20个IP(常用于查找攻来源) 答案: #! /bin/bash echo "The numbers of IP address" echo "the first way:" netstat -anlp | grep 80 | grep tcp | awk '{print $5}
阅读全文
摘要:题目: 查看TCP连接状态 答案: 完整答案: netstat -nat | grep tcp | awk '{print $6}' | sort | uniq -c | sort -rn 分步一: 分步二: netstat -nat | grep tcp | awk '{print $6}' 分步
阅读全文
摘要:题目: 编写服务器守护进程管理脚本。 待完成。。。。。
阅读全文
摘要:题目: 编写自己的ubuntu环境安装脚本 待完成...
阅读全文
摘要:题目: 对于一个用户日志文件,每行记录了一个用户查询串,长度为1-255字节,共几千万行,请排出查询最多的前100条。 日志可以自己构造> 。 (提示:awk sort uniq head) 文件: zhougong wanggong ligong sungong tiangong tiangong
阅读全文
摘要:问题: 清除本机除了当前登陆用户以外的所有用户。 答案: kill $(who -u|grep -v `whoami`|awk '{print $6}'|sort -u) who -u 显示所有当前用户 grep -v 选取当前登录用户以外的所有用户。 awk 打印用户进程ID。 sort -u 会
阅读全文
摘要:题目: 设计一个shell程序,在每月第一天备份并压缩/etc目录的所有内容,存放在当前目录下/root/bak(root目录需要存在)目录里,且文件名,为如下形式yymmdd_etc,yy为年,mm为月,dd为日。Shell程序fileback存放在/usr/bin目录下。 答案: #!/bin/
阅读全文
摘要:题目: 编写shell程序,实现自动删除30个账号的功能。账号名为std01至std30。 答案: #!/bin/bash i=1 while [ $i -le 30 ] do if [ $i -le 9 ]; then USERNAME=stu0${i} else USERNAME=stu${i}
阅读全文
摘要:题目: 设计一个shell程序,添加一个新组为class1,然后添加属于这个组的30个用户,用户名的形式为stdxx,其中xx从01到30,并设置密码为对应的stdxx。 答案: #!/bin/bash i=1 groupadd class1 while [ $i -le 30 ] do if [
阅读全文
摘要:题目: 统计IP访问:要求分析apache访问日志,找出访问页面数量在前100位的IP数。日志大小在78M左右。 以下是apache的访问日志节选 202.101.129.218 - - [26/Mar/2006:23:59:55 +0800] "GET /online/stat_inst.php?
阅读全文
摘要:题目: 设计一个Shell程序,在/userdata目录下建立50个目录,即user1~user50,并设置每个目录的权限,其中其他用户的权限为:读;文件所有者的权限为:读、写、执行;文件所有者所在组的权限为:读、执行。 答案: #!/bin/bash mkdir ./userdata if [ $
阅读全文