欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

Python文件操作中进行字符串替换(保存到新文件/当前文件)

发布时间:2025/3/20 python 23 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Python文件操作中进行字符串替换(保存到新文件/当前文件) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

题目:

  • 首先将文件:/etc/selinux/config 进行备份 文件名为 /etc/selinux/config.bak
  • 再文件:/etc/selinux/config 中的enforcing 替换为 disabled
  • # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of three two values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=enforcing

    方法一:用replace

    ''' 遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939 寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书! ''' import os import shutildef selinux_config():"""关闭SELINUX修改文件内容:return:"""file_selinux = '/etc/selinux/config'backup_file_selinux = file_selinux + '.bak'temp_file_selinux = file_selinux + '.temp'if not os.path.exists(backup_file_selinux):shutil.copy2(file_selinux, backup_file_selinux)with open(file_selinux, mode='r') as fr, open(temp_file_selinux, mode='w') as fw:origin_line = 'SELINUX=enforcing'update_line = 'SELINUX=disabled'for line in fr: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/env python # -*- coding: utf-8 -*-import os import re import shutildef selinux_config():"""关闭SELINUX修改文件内容:return:"""file_selinux = '/etc/selinux/config'backup_file_selinux = file_selinux + '.bak'temp_file_selinux = file_selinux + '.temp'if not os.path.exists(backup_file_selinux):shutil.copy2(file_selinux, backup_file_selinux)with open(file_selinux, mode='r') as fr, open(temp_file_selinux, mode='w') as fw:origin_line = 'SELINUX=enforcing'update_line = 'SELINUX=disabled'for line in fr: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文件操作中进行字符串替换(保存到新文件/当前文件)的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。