Awk或者sED 替换文件的内容

我也给个思路吧 用sed根据地址范围截取文件内容,用Here documents方法添加新的多行内容,然后重组文件.具体步骤如下: 1)截取test.xml文件起始行到行,保存到tmp文件; 2)将要添加的内容根据变量值展开,附加写入tmp文件; 3)截取test.x.

使用sed、awk都可以实现替换功能.

可以使用sed命令,删除文件中所有的引号等价于将文件中所有的引号替换为空字符串. sed命令替换某个字符串为另一字符串的格式为: sed -i 's/要替换的字符串/新的字符串/g' 文件名 -i选项表示直接修改读取的档案内容,而不是由屏幕输出. 用法示

sed中可以用 sed 's/查找内容或正则表达式/替换成的内容/g' 文件名 如果直接在文件中更改, sed后加上 -i

这里用 awk 没有 sed 方便,例如要将 b.txt 的第 3 行替换成 a.txt 的第 2 行(数字请自己替换) export s=`awk 'NR==2' a.txt` awk 'NR==3{$0=ENVIRON["s"]};1' b.txt > c.txts=`awk 'NR==2' a.txt` 表示将第2行赋值给s, $0=ENVIRON["s"] 表示替换,结果存在c.txt 用 sed 解决更方便 sed -i "3s/.*/`sed -ne 2p a.txt`/" b.txt直接修改 b.txt

awk -F, '{print $1","$2","$3","$4","$6","$5}' 1.txt

awk '{$0=substr($0,1,9) "0" substr($0,11) ; print}' 文件名

是把双竖线||替换成双竖线中间多了一个空格?||>| | sed -i "s/||/|\ |/g" 文件名 参数-i,是zhij在原文件进行修改替换操作 我记得|不是特殊符号,不需要转义.空格哪里可以试一下有转义或者没转义

1、按=分割取第二列cat $file1|grep mqserver|awk -F= '{print $2}'`2、直接替换文件内容sed -i "s/127.0.0.1/192.168.1.1/" file13、实例:#!/bin/shfile1=ip1.txtfile2=ip2.txtIP1=`cat $file1|grep mqserver|awk -F= '{print $2}'`IP2=`cat $file2|grep ip|awk -F= '{print $2}'`echo change $IP1 to $IP2.sed -i "s/$IP1/$IP2/" $file1more $file1

awk -F"," 'BEGIN{OFS=FS} {tmp=$(NF-1);$(NF-1)=$NF;$NF=tmp;print}' 1.txtThis is better, this will keep your file as its original form.

相关文档

shell替换文件内容
linux替换文件内容
shell脚本替换
shell替换文本内容
sed匹配替换整行
shell替换文件命令
shell修改文件内容
shell替换文件字符串
shell生成文件及内容
shell替换多个字符串
shell查找文件内容并替换
shell脚本向文件写数据
shell脚本里读取文件内容
shell脚本字符串替换
shell脚本写入文件数据
shell遍历目录下所有文件
电脑版