1、前言
在Shell脚本中,可以通过awk工具可以去自定义分隔符,然后切割之后筛选出自己想要的数据,那么在Python中如何去实现同样的操作呢?村长带你。
2、程序设计
假设有一个文件,里面有。。。直接看内容吧,就下面这样:
https://baidu.com 443
http://baidu.cn 80
我们需要做的就是循环遍历每一行内容下的每一列,也就是说当我读取第一行的时候,我还需要再对第一行的列进行切割,得到两组数据,也就是1生2、2生4、4生太极,太极生八卦。
2.1、使用Shell实现
首先获取第一行内容:
cat IP_list.txt | awk 'NR==1{print}'
然后切割此行内容,分成两段,分别是网址和端口
切割网址:
awk -F " " '{print $1}' IP_list.txt | awk 'NR==1{print}'
切割端口:
awk -F " " '{print $2}' IP_list.txt | awk 'NR==1{print}'
嗯,就是这么简单!接下来使用Python实现
2.2、使用Python实现
直接上完整代码。
from os import path
url_file ="spzx/IP_list.txt"
if path.exists(url_file):
file = open(url_file, "r", encoding='utf-8')
for li in file:
# print("正在检测", li)
for i in li.split('\n'):
for i in i.split(' '):
print("这是一段独立内容[%s]" %i)
file.close()
else:
exit("找不到文件[%s]" %url_file)
此时的结果好像多了一个空格(先这样吧,洗澡睡觉)