求一段shell脚本代码!

我有一个1.txt文件slkfjiowji03403Nenlfsfjkljwangyansldjfsijdflkjeiofs;ldi342323232212375Nfk;... 我有一个1.txt文件
slkfjiowji03403Nenlfsfjkljwangyansldjfsijdflkjeiof
s;ldi342323232212375Nfk;slkvdoivwanglskjdfljwiofjlskjflskj
welfjskljfanglkjfljewang
sldfjklkjwag
sdfjlkjeljfwgslkjdfskljdf
wwsdfksldjfkljeijdfiels
i23Nkldfjlj
--------------------------------------已上文件内容--------
我想将以i开头N结尾长度小于10的内容替换成iiii
举例slkfjiowji03403Nenlfsfjkljwangyansldjfsijdflkjeiof
slkfjiowjiiiienlfsfjkljwangyansldjfsijdflkjeiof

s;ldi342323232212375Nfk;slkvdoivwanglskjdfljwiofjlskjflskj
因为i到N长度大于10不替换

cat 1.txt | grep 'i[0-9]{0,10} 什么都查不出来!
展开
 我来答
百度网友4520e290d
2011-04-26 · TA获得超过1489个赞
知道小有建树答主
回答量:436
采纳率:0%
帮助的人:456万
展开全部
可以用下面的方式,也就是sed命令
# sed 's/i\w\{0,10\}N/iiii/g' 1.txt
slkfjiiiienlfsfjkljwangyansldjfsijdflkjeiof
s;ldi342323232212375Nfk;slkvdoivwanglskjdfljwiofjlskjflskj
welfjskljfanglkjfljewang
sldfjklkjwag
sdfjlkjeljfwgslkjdfskljdf
wwsdfksldjfkljeijdfiels
iiiikldfjlj
追问
slkfjiowji03403Nenlfsfjkljwangyansldjfsijdflkjeiof
这行 改一下slkfjiowji03N403Nenlfsfjkljwangyansldjfsijdflkjeiof
你这个程序就不好用了

我自己改了一下sed 's/i[0-9]\{0,10\}N/iiii/g' 1.txt 可以了!谢谢你!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式