求脚本,修改文件

sh/bash/dash/ksh/zsh等Shell脚本
回复
killer2001
帖子: 16
注册时间: 2010-07-09 20:28

求脚本,修改文件

#1

帖子 killer2001 » 2011-08-19 9:03

原文件有多行error:
。。。
error:
。。。。
error:
。。。。
error:
。。。
。。。
怎样把error依次换为error01, error02,error03.。。。。。?
头像
cuihao
帖子: 4793
注册时间: 2008-07-24 11:33
来自: 郑州
联系:

Re: 求脚本,修改文件

#2

帖子 cuihao » 2011-08-19 9:10

先问几个问题:
LZ确定error后面的冒号是全角字符?而且都是小写?而且都只占一行?
标号会不会超过99?超过了怎么办?
求人不如求它仨: 天蓝的Wiki 屎黄的Wiki 绿
Site: CUIHAO.TK    Twitter: @cuihaoleo
Machine: Athlon64 X2 5200+ / 2x2GB DDR2-800 / GeForce GTS 450
AD: ~まだ見ぬ誰かの笑顔のために~
killer2001
帖子: 16
注册时间: 2010-07-09 20:28

Re: 求脚本,修改文件

#3

帖子 killer2001 » 2011-08-19 10:27

cuihao 写了:先问几个问题:
LZ确定error后面的冒号是全角字符?而且都是小写?而且都只占一行?
标号会不会超过99?超过了怎么办?
"error:" 是单独一行的。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 求脚本,修改文件

#4

帖子 eexpress » 2011-08-19 10:30

如果要error00: 这样的格式。那就要printf格式化输出。
如果要perl,就吱一声。
如果要python,就吱五声。
如果要bash,别吱声。
● 鸣学
头像
yjcong
帖子: 2470
注册时间: 2006-02-28 3:11

Re: 求脚本,修改文件

#5

帖子 yjcong » 2011-08-19 11:18


吱吱吱吱吱
一梦三年,
松风依旧,
萝月何曾老.


灵幽听微, 谁观玉颜?
灼灼春华, 绿叶含丹.
头像
cuihao
帖子: 4793
注册时间: 2008-07-24 11:33
来自: 郑州
联系:

Re: 求脚本,修改文件

#6

帖子 cuihao » 2011-08-19 11:22

killer2001 写了:
cuihao 写了:先问几个问题:
LZ确定error后面的冒号是全角字符?而且都是小写?而且都只占一行?
标号会不会超过99?超过了怎么办?
"error:" 是单独一行的。
还是不清楚呢。编号会不会超过100?01,02,03...99,然后是啥格式?
求人不如求它仨: 天蓝的Wiki 屎黄的Wiki 绿
Site: CUIHAO.TK    Twitter: @cuihaoleo
Machine: Athlon64 X2 5200+ / 2x2GB DDR2-800 / GeForce GTS 450
AD: ~まだ見ぬ誰かの笑顔のために~
头像
cjxgm
帖子: 1952
注册时间: 2010-04-23 20:40
系统: Arch Linux
来自: 浙江·杭州
联系:

Re: 求脚本,修改文件

#7

帖子 cjxgm » 2011-08-19 11:49

代码: 全选

cat file|awk '{ if ($0 ~ /^error:/) {sub(/^error:/, ""); printf("error%2.2d:%s\n", i++, $0)} else print $0 }'
Clanjor Prods. | Develop for Developers. (C++, Lua) | 作曲编曲 | 实时渲染引擎
fnan
帖子: 919
注册时间: 2009-07-01 22:04

Re: 求脚本,修改文件

#8

帖子 fnan » 2011-08-20 1:49

i=100;while read l;do [[ $l == "error:" ]] && ((i++)) && echo "error${i:1}" || echo $l;done <file
bash不如perl精妙,学不到lisp的皮毛,远不够c++强悍,不过可以用。
回复