0x00 简单的shell脚本
用vi编辑
#! /bin/bash //默认的所有脚本的起始行,意思是使用bash来进行下面所有语言段的解释
echo -n "IP : " //-n表示当显示echo内容之后,光标所处位置不换行,还在内容后面
read ip //定义一个变量,shell脚本里的一个语句语言,把输入保存到ip变量中
echo "your ip is : " $ip
编辑完之后保存
执行前先要更改权限,赋予可执行权限
chmod +x 1.sh
执行
99乘法表
再进一步学习,可以用Geany一个图形化编程的开发环境,不过我还是习惯用vi
seq 9 表示1-9的序列
温馨提醒:注意上面的 ` 是与 ~ 相对应的键,本人初学这个,被它折磨了半天
结果
简单的ping 脚本
#!/bin/bash
for n in `seq 254`
do
ping 192.168.1.$n -c 1|grep ttl |awk '{print $4}'|awk -F: '{print $1}'
done
由于演示效果不佳,通过wireshark抓包来显示
可以看到,我一直在发送icmp包
验证ip和端口是否开放
对文件ip1里进行探测并把结果重定向输出到r1
首先介绍几个shell的参数
-eq 等于 -ne 不等于 -gt 大于 -ge 大于等于 -lt 小于 -le 小于等于
#!/bin/bash
A=`cat ip1` //定义变量A,A=ip1这个文件的结果
for B in $A //定义B这个变量会在A每次读取一行
do
n=`echo $B | wc -L` //管道,将前面的命令执行的结果作为后面命令的输入值,wc -L是计算长度
if [$n -gt 6] ; then //如果n长度大于6,那么变量IP就等于B
ip=$B
else
port=$B //否则变量port就等于B
nmap -p$port -sV $ip|grep -v Starting |grep -v Host |grep -v PORT|grep -v Service|grep -v done >> r1 //结果重定向到r1
fi //fi是if语句的结束,相当于end if
done