#!/usr/bin/env python

#_*_conding:utf-8_*_

import sys,os

old_file = sys.argv[1]

new_file = sys.argv[2]

file_path = sys.argv[3]

f = open(file_path,"r")

f1 = open("xiugai","w")

for i in f:
if old_file in i:

i=i.replace(old_file,new_file)
f1.write(i)
# f1.flush()

f.close()

f1.close()

os.remove(file_path)

os.rename("xiugai",file_path)

说明:

1,在linux环境里实现的,声明环境变量python
2,虽然pyrhon3自带utf-8,再次申明一下。
3,加载模块sys,os
4,定义变量old_file,new_file,file_path,分别表示需要修改的文件内容,新的内容,和提供需要修改的文件
5,定义一个变量f,赋值为读原文件
6,定义加载到内存一个新文件f1
7,使用嵌套循环:
当某行在这个原文件中就循环,外循环
当某字符串在这行时就循环,内循环
并且加载replace函数,修改文件
8,给fi文件内写入内容,如果没有修改的就直接写入,有修改的就修改后写入
9,保存
10,删除原来的文件
11,把新文件改名为原来的文件名

流控图:

最新文章

  1. 归一化方法 Normalization Method
  2. 包含块( Containing block ) 转自W3CHelp
  3. mybatis实战教程(mybatis in action)之八:mybatis 动态sql语句
  4. transition-delay
  5. 原生js 实现购物车价格和总价 统计
  6. modelsim基本操作步骤及每步骤问题解决1(后续有改动会更新)
  7. Revit二次开发示例:DesignOptions
  8. 【Add binary】cpp
  9. 安装SqlServer2008时相关问题
  10. careercup-递归和动态规划 9.11
  11. VB几种函数参数传递方法,Variant,数组,Optional,ParamArray
  12. centos账户管理命令(root权限)
  13. Failed to start SYSV: Nginx is an HTTP(S) server, HTTP(S) reverse
  14. JAVA中ClassPath妙用
  15. HBuilder开发App教程04-最难搞定的是mui
  16. Flask 学习 十四 测试
  17. 11 OptionsMenu 菜单
  18. android有关生命周期探讨
  19. Mybatis.xml文件中大于小于等于
  20. 【洛谷P1462】通往奥格瑞玛的道路

热门文章

  1. Java 递归算法,遍历文件夹下的所有文件。
  2. GDP与股市市值
  3. python中format()方法格式化字符串
  4. cygwin Could not create directory '/home/Administrator/.ssh'
  5. distutils 打包setup.py
  6. Kvm学习文档记录
  7. C++之const类成员变量,const成员函数
  8. bzoj1799同类分布——数位DP
  9. AJAX 方式
  10. Spring 注释标签@Resource @Autowired 和@Inject的区别