[python小工具] 实现替换文件里面的内容

参考http://www.cnblogs.com/www1707/p/5858212.html

 

 

可以替换文本中指定的字符

思路扩展:

配上正则表达式,可以直接向文本中插入指定的内容

也可以删除指定的内容

 

加上上一篇写的在文件夹下查找指定的文件, 可以扩充为 批量修改文件的脚本

 

#!/usr/bin/python
# -*- coding=UTF-8 -*-

import sys
import os

len_argv=len(sys.argv)
#print '传参数量',len_argv-1

old_words='1'

if   len_argv <  4:
	print '参数错误:python '+sys.argv[0]+' 需要编辑的文件 被替换的字符串 提成成的字符串 [另存成的文件]'

elif len_argv >  5:
	print '参数错误:python '+sys.argv[0]+' 需要编辑的文件 被替换的字符串 提成成的字符串 [另存成的文件]'

else:
	if not os.path.isfile(sys.argv[1]):
		print '%s 文件不存在' % sys.argv[1]
		sys.exit()
	s_file  = file(sys.argv[1],'r+')
	old_str = sys.argv[2]
	new_str = sys.argv[3]
	d_file  = file(sys.argv[1]+'.tmp','w')
	for line in s_file.readlines():
		d_file.writelines(line.replace(old_words,''))
		'''
		if 'ONLINE' in line:
			print line
			d_file.writelines(line.replace(old_words,''))
		else:
			d_file.writelines(line)
		'''
	s_file.close()
	d_file.close()

	if len_argv == 4:
		os.rename(sys.argv[1]+'.tmp',sys.argv[1])
	else:
		os.rename(sys.argv[1]+'.tmp',sys.argv[4])

 

 

 

 

 

posted @ 2017-10-13 14:14  枫奇丶宛南  阅读(54)  评论(0编辑  收藏  举报