常见的(awk、grep、sed实验用法和常见测试主机ping通与否脚本实验!!!!

题目一:
利用学过的知识(awk、grep、sed),根据要求截取字符串
文本为 vi 123.txt文中内容为
http://www.51xit.top/root/123.html
要求:
1、取出 www.51xit.top/root/123.html
2、取出 123.html
3、取出 http://www.51xit.top/root
4、取出 http:
5、取出 http://
6、取出 root/123.html
7、取出 123

@1、
 cat 123.txt |awk -F '//' '{print $2}'
 cat 123.txt |grep -o 'ww.*'
@2、
cat 123.txt |awk -F '/' '{print $5}'
cat 123.txt |grep -o '[0-9]*\.html'
@3、
cat 123.txt |sed 's|\(.*//.*/.*\)\(/.*\)|\1|'
cat 123.txt |grep -o 'http.*root'
@4、
 cat 123.txt |awk -F '//' '{print $1}'
cat 123.txt |grep -o 'ht.p:'
cat 123.txt |sed  's/\/\/www.*//'
@5、
cat 123.txt |awk -F 'www' '{print $1}'
cat 123.txt |grep -o 'h.*//'
cat 123.txt |sed 's/www.*//'
@6、
cat 123.txt |sed 's/^.*top\///'
cat 123.txt |awk -F '.top/' '{print $2}' 
cat 123.txt |grep -o 'ro.*ml'
@7、
cat 123.txt |grep -o '[0-9]\{3\}'
cat 123.txt |awk -F '/' '{print $5}' |awk -F '.' '{print $1}' 
cat 123.txt |grep -o '1.3'

题目二:
【shell】
目前项目上线,有这样的需求,为了不让上先的服务器,不予线网的ip地址相冲突,写一个shell脚本,把20,0,0,0/24网段在线的IP地址和不在线的IP地址列出来并保存在文档中
【shell分析】
1、24网段的共有IP地址从20.0.0.1到20.0.0.254需求以for循环进行遍历
2、看一个IP地址是否上线,主要看ping命令来进行测试

[root@localhost ~]# vim pinggost.sh 
#!/bin/bash
for((a=1; a<=254; a++))
do
IP=20.0.0.$a
ping -c 3 -i 0.2 -w 3 $IP &> /dev/null    ##-c指的是发送的数量-i发送包间隔时间-w等待时间3s
if [ $? -eq 0 ]
then
  echo "host $IP is up" && echo "host $IP is up" >>/root/ipup.txt
else
  echo "host $IP is down" && echo "host $IP is down" >>/root/ipdown.txt
fi
done
步骤解析:使用for循环a为变量,变量从1到254依次执行 if的返回值若是为0说明ping能通
输出结果并保存到文档ipup.txt中,不能ping通过的保存到ipdown中

猜你喜欢

转载自blog.csdn.net/Laiyunpeng666/article/details/108226611