基于Linux系统的shell学习,shell script编写笔记
本篇学习笔记,是参考鸟哥的Linux私房菜,以及Linux的菜鸟教程.
首先,本个小作业需要用到的指令主要有:
- ping指令
- $? 命令
- > 重定向
- prep 指令
命令 | :功能描述: |
---|---|
ping | 后面加个ip地址,这个地址如果和当前主机的ip地址有找得到通路,则能够ping通,反之,不能ping不通。 |
$? | 这个命令就是返回上一条命令的执行结果,如果正确执行,则返回0,如果出现错误,则返回非零值,如127… |
> | 这个指令叫做重定向,所谓重定向就是将标准输入,标准输出,以及错误输出导出到其他文件,并不是默认的键盘,屏幕,屏幕 |
prep | 这个指令是完成一个 检索的功能,详见菜鸟教程 |
expr | 手工命令行计数器,要用空格间隔 expr 3 + 4 |
` ` | 表示将表达式的结果,进行返回 |
功能描述
写一个脚本,测试局域网里有多少机器是活着的?
功能实现
ip_num2=0
for ip in $(seq 1 254)
do
ping -c 1 192.168.70.$ip>/dev/null
if [ $? -eq 0 ]
then
ip_num2=`expr $ip_num2 + 1`
echo $ip_num2
fi
done
执行结果
在Linux 平台下 显示结果如下:
1
2
3
4
5
6
7
8
9
10
11
12
…
40
随后退出。
总结
- 应用到了重定向的知识
- 应用到了ping的知识
问题
- ping指令,ping不开,接受到的信息是接收到了包,还是没接受到包?