python3实现shell的sed的功能

python学习网 2018-05-16 11:38:02

#/usr/bin/env python
#yehui

import os, sys

try:                                                                                                                ##当前目录创建文件夹,并拦截对应错误
    os.mkdir('userinfo')
except FileExistsError:
    print("文件夹已存在跳过")

class Sed:

    def __init__(self, oldstr, newstr):              ###定义替换sed
self.old_file = oldstr ###旧内容
self.new_file = newstr ###新内容
self.file_path = "userinfo/clock" ###创建目录变量

def sedfile(self):
with open(self.file_path, 'r') as self.f, open("userinfo/back", "a+") as self.f1: ##同时打需要修改的文件,及新创建新内容的文件
for self.i in self.f:
if self.old_file in self.i:
self.i = self.i.replace(self.old_file, self.new_file) ##对内容进行替换操作
self.f1.write(self.i) ##写入操作
self.f1.flush() ##立即刷新
os.remove(self.file_path) ##删除原文件
os.rename("userinfo/back", self.file_path) ##新文件改名

 

sed = Sed("0这是坚强的肥DD!", "我去!!!")
sed.sedfile()

 

阅读(774) 评论(0)