Python文件操作中进行字符串替换的方法(保存到新文件/当前文件)
题目:
1.首先将文件:/etc/selinux/config进行备份文件名为/etc/selinux/config.bak
2.再文件:/etc/selinux/config中的enforcing替换为disabled
#ThisfilecontrolsthestateofSELinuxonthesystem. #SELINUX=cantakeoneofthesethreevalues: #enforcing-SELinuxsecuritypolicyisenforced. #permissive-SELinuxprintswarningsinsteadofenforcing. #disabled-NoSELinuxpolicyisloaded. SELINUX=disabled #SELINUXTYPE=cantakeoneofthreetwovalues: #targeted-Targetedprocessesareprotected, #minimum-Modificationoftargetedpolicy.Onlyselectedprocessesareprotected. #mls-MultiLevelSecurityprotection. SELINUXTYPE=enforcing
•方法一:用replace
importos importshutil defselinux_config(): """ 关闭SELINUX 修改文件内容 :return: """ file_selinux='/etc/selinux/config' backup_file_selinux=file_selinux+'.bak' temp_file_selinux=file_selinux+'.temp' ifnotos.path.exists(backup_file_selinux): shutil.copy2(file_selinux,backup_file_selinux) withopen(file_selinux,mode='r')asfr,open(temp_file_selinux,mode='w')asfw: origin_line='SELINUX=enforcing' update_line='SELINUX=disabled' forlineinfr: fw.write(line.replace(origin_line,update_line)) os.remove(file_selinux) os.rename(temp_file_selinux,file_selinux) if__name__=='__main__': selinux_config()
•方法二:用re.sub
#!/usr/bin/envpython #-*-coding:utf-8-*- importos importre importshutil defselinux_config(): """ 关闭SELINUX 修改文件内容 :return: """ file_selinux='/etc/selinux/config' backup_file_selinux=file_selinux+'.bak' temp_file_selinux=file_selinux+'.temp' ifnotos.path.exists(backup_file_selinux): shutil.copy2(file_selinux,backup_file_selinux) withopen(file_selinux,mode='r')asfr,open(temp_file_selinux,mode='w')asfw: origin_line='SELINUX=enforcing' update_line='SELINUX=disabled' forlineinfr: re_sub_list=re.sub(origin_line,update_line,line)#这里用re.sub进行替换后放入re_sub_list中 fw.writelines(re_sub_list)#将列表中的每一行进行写入。writelines是将序列对象中的每一行进行写入。 os.remove(file_selinux) os.rename(temp_file_selinux,file_selinux) if__name__=='__main__': selinux_config()
总结
以上所述是小编给大家介绍的Python文件操作中进行字符串替换的方法(保存到新文件/当前文件),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!