使用BSD sed(没有GNU扩展名),我如何执行类似于下面提供的示例的操作,但是在代替行号的情况下,替换是在出现模式的第一行执行的(而不是必须指定一个实际数字)?
限制为行号
最简单的限制是行号。
如果要删除第3行的第一个数字,只需在命令前添加“ 3”即可:
sed '3 s/[0-9][0-9]*//' <filename >newfilename
这完美地工作:
sed'1,/ abc / s / abc / xyz /'file.txt
可以缩写为:
sed'1,/ abc / s // xyz /'file.txt
兼容GNU和BSD:
sed'1,/ [0-9] [0-9] * / s ///'<文件名>新文件名
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句