使用python删除文件中指定包含字符串的所有行

#!/usr/bin/python

# -*- coding: UTF-8 -*-

 

import re

 

Host_IP = "2.2.2.128"

 

def Del_line(file_path,EASYOPS_LOCAL_IP):

    Hosts_name_list = []

    with open(file_path,"r") as f:

        res = f.readlines() #res 为列表

    for res_h in res:

        if re.match(r"^"+EASYOPS_LOCAL_IP+"(s)*.*$",res_h):

            Hosts_name_list.append(res_h)

    for Host_name in Hosts_name_list:

        res.remove(Host_name)

    with open(file_path,"w") as f:

        f.write("".join(res))  #将 res 转换为 字符串重写写入到文本

    return

 

Del_line("/etc/hosts",Host_IP)

你可能感兴趣的:(linux运维,python)