一个关于批量修改文件的脚本
问题是这样的,
我现在有一个现成的文本文件,格式如下(为了表达方便,我用中文“空格”来表示实际的)
Beijing Beijing North
Sichuan Chengdu West
Hubei Wuhan South
每一行中,单词和单词直接用空格分隔开来。
现在我想对每一行都进行这样的操作,即 在第1个和第2个单词直接插入字符串 XYZ , 在 行尾 补上新的单词 ABC,即效果如下:
Beijing XYZ Beijing North ABC
Sichuan XYZ Chengdu West ABC
Hubei XYZ Wuhan South ABC
这应该怎么编写脚本,谢谢大家 !
我现在有一个现成的文本文件,格式如下(为了表达方便,我用中文“空格”来表示实际的)
Beijing Beijing North
Sichuan Chengdu West
Hubei Wuhan South
每一行中,单词和单词直接用空格分隔开来。
现在我想对每一行都进行这样的操作,即 在第1个和第2个单词直接插入字符串 XYZ , 在 行尾 补上新的单词 ABC,即效果如下:
Beijing XYZ Beijing North ABC
Sichuan XYZ Chengdu West ABC
Hubei XYZ Wuhan South ABC
这应该怎么编写脚本,谢谢大家 !
作者: BallThink 发布时间: 2011-03-27
awk '{print $1" XYZ "$2" "$3" ABC"}' filename
作者: steptodream 发布时间: 2011-03-27
shell神马的,主席是专家呀
作者: kltwjt 发布时间: 2011-03-27
再试试
awk '{$1=$1" XYZ";$3=$3" ABC"; print}' filename
或者
sed -i 's/^\([^ ]* *\)/\1XYZ /;s/$/ ABC/g' test2
awk '{$1=$1" XYZ";$3=$3" ABC"; print}' filename
或者
sed -i 's/^\([^ ]* *\)/\1XYZ /;s/$/ ABC/g' test2
作者: steptodream 发布时间: 2011-03-27