python 实现类似sed命令的文件内容替换

#!/usr/bin/env python    
#_*_coding:utf-8 _*_    
#replace()方法把字符串中的 old(旧字符串)替换成new(新字符串),如果指定第三个参数max,则替换不超过 max 次。    
#语法:str.replace(old, new[, max])    
import sys,os    
old_text, new_text, file_name = sys.argv[1], sys.argv[2], sys.argv[3]    
f = file(file_name,‘rb‘)    
new_file = file(‘%s.bak‘ % file_name,‘wb‘)    
for line in f.xreadlines():    
new_file.write(line.replace(old_text,new_text))    
f.close()    
new_file.close()
重要说明
sys.argv[1]	#参数1
sys.argv[2]	#参数2
sys.argv[3]	#参数3

#replace()方法把字符串中的 old(旧字符串)替换成new(新字符串),如果指定第三个参数max,则替换不超过 max 次。
#语法:str.replace(old, new[, max])

使用方法:

python code2.py ‘原始字符串’ ‘新字符串’ 文件
时间: 2024-09-29 04:51:48

python 实现类似sed命令的文件内容替换的相关文章

使用while和read命令读取文件内容

转:使用while和read命令读取文件内容 1.准备数据文件 $cat a.txt 200:2 300:3 400:4 500:5 2.用while循环从文件中读取数据 #!/bin/ksh while read line do echo $line done < a.txt 运行shell,结果如下: 200:2 300:3 400:4 500:5 3.使用IFS读文件 说明:默认情况下IFS是空格,如果需要使用其它的需要重新赋值 #!/bin/ksh IFS=* while read fi

linux命令之文件内容定位:sed、uniq命令

sed命令 1.sed -n '2'p  file 只打印 file 文件的第二行. 2.sed -n '1,4'p file 只打印从第一行到第四行得记录. 3.sed -n '/los/'p file 打印匹配los的行. 4.sed -n '4,/los/'p file 打印从第四行到匹配los的之间的所有行. 5.sed '1,2'd file 把第一行和第二行全部删除. uniq命令 1.uniq -c file 打印紧挨的重复行出现的次数. 2.uniq -d file 只打印重复的

linux下sed命令对文件执行文本替换

让我们看一下 sed 最有用的命令之一,替换命令.使用该命令,可以将特定字符串或匹配的规则表达式用另一个字符串替换.下面是该命令最基本用法的示例: $ sed -e ‘s/foo/bar/’ myfile.txt 上 面的命令将 myfile.txt 中每行第一次出现的 ‘foo’(如果有的话)用字符串 ‘bar’ 替换,然后将该文件内容输出到标准输出.请注意,我说的是每行第一次出现,尽管这通常不是您想要的.在进行字符串替换时,通常想执行全局替换.也就是说, 要替换每行中的所有出现,如下所示:

使用sed命令向文件中追加可变字符串

1.如何向文件追加可变字符串,有如下两种方法 sed -i '1a '$s'' filename sed -i "1a $s" filename 注意: 以上命令是假定向文件filename的第一行后追加字符串变量s中的内容: 由于sed是对文件流内容进行操作,所以要求filename不能为touch创建的空文件: 若filename必须是空文件,则可以使用命令echo "" > filename 创建一个空文件. 参考: http://blog.chinau

shell 文件内容替换 sed用法

调用sed命令有两种形式: sed [options] 'command' file(s) sed [options] -f scriptfile file(s) 删除:d命令 $ sed '2d'   example-----删除example文件的第二行. $ sed '2,$d' example-----删除example文件的第二行到末尾所有行. $ sed '$d' example-----删除example文件的最后一行. $ sed '/test/'d example-----删除

Python跳过第一行读取文件内容

Python编程时,经常需要跳过第一行读取文件内容.比较容易想到是为每行设置一个line_num,然后判断line_num是否为1,如果不等于1,则进行读取操作.相应的Python代码如下: [python] view plain copy input_file = open("C:\\Python34\\test.csv") line_num = 0 for line in islice(input_file, 1, None): line_num += 1 if (line_num

Linux系统中sed命令在文件的用法

一.批量在文件某行插入内容: 1 find -type f -name "*.pcf" |xargs sed -i '/aaaa/a\bbbb/' 2 find -type f -name "*.pcf" |xargs sed -i '/aaaa/i\bbbb/' 其中a\表示在包含"aaaa"的行后面一行加入"bbbb";i\表示在前面一行加入. 二.批量替换文件内容: 1 find -type -f -name "

cat、head、tail、more和less命令(文件内容浏览)

一.cat命令 cat命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容. 注意:当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容.因此,一般用more等命令分屏显示.为了控制滚屏,可以按Ctrl+S键,停止滚屏:按Ctrl+Q键可以恢复滚屏.按Ctrl+C(中断)键可以终止该命令的执行,并且返回Shell提示符状态. 语法: cat(选项)(参数) 选项: -n或-number:有1开始对所有输出的行数编号: -b或--number-nonblank:和-n

shell命令修改文件内容

有个 test.txt 文件内容为  hello tom,现在修改成 hello jerry,并保存到test2.txt sed 's/tom/jerry/g' test.txt >test2.txt 原文地址:https://www.cnblogs.com/xbblogs/p/8436404.html