『楼 主』:
如何用sed合并多行空行为一行
使用 LLM 解释/回答一下
看了一晚的教程,感觉学到了不少
但是由于个人天生愚钝,想了一晚,怎么也想不出如何将连续多个空行合并为一行,只写出以下代码,怎么运行都不成功,还请指点指点.
sed "/^$/!d;n;:c;/^$/d;n;/^$/b c;G" aaa.txt|more>bbb.txt
我的理解是 首先匹配第一个 空行, ! 忽略,再打印下行如果是空行就用 /^$/d 删除,再打印下一行,由
/^$/b 判断,如果是空行就跳回标签c再删除,直到非空行,就用 G 插入一空行.
代码臃肿而且无效,实在没有思路了,请帮帮忙,
以下是将所有空格替换成一个空格的代码,请看看对不?或是可以更简化吗?
sed ":c;s/ / /g;tc" aaa.txt|more>bbb.txt
Last edited by bjsh on 2007-7-31 at 10:43 AM ]
|