1. 程式人生 > >python刪除檔案中含"指定內容"的行

python刪除檔案中含"指定內容"的行

#!/bin/env python

import shutil, sys, os

darray = [
	"Entering directory",
	"In function ",
	"Leaving directory",
	"__NR_SYSCALL_BASE",
	"arm-hisiv100-linux-ar ",
	"arm-hisiv100-linux-gcc ",
	"but argument is of type",
	"dereferencing type-punned pointer will break strict-aliasing rules",
	"differ in signedness",
	"does break strict-aliasing rules",
	"embedded '\\0' in format",
	"excess elements in array initializer",
	"implicit declaration of",
	"make -C ",
	" rm -f",
	"this is the location of the previous definition",
	"warning: multi-line comment"
]

def isInArray (array, line):
	for item in array:
		if item in line:
			return True
	return False


if __name__ == '__main__':
	argv = sys.argv
	argc = len(argv)
	if argc < 2:
		print "Usage: %s <file>" %(os.path.basename(argv[0]))
		exit()
	fname = argv[1]
	fresult = fname + ".result"
	
	with open(fname, 'r') as f:
		with open(fresult, 'w') as g:
			for line in f.readlines():
				if not isInArray(darray, line):
					g.write(line)

另參考: