0

我想用sed. 假设我有字符串aabbcc,我想找到 and 之间aa的内容cc。我sed这样使用:

sed -n '/aa/,/cc/p' 

很好,但我想得到类似的东西,aabb所以我希望 sed 在开始和结束之间返回字符串,但包括开始。

我怎样才能做到这一点?

编辑

好的,让我更具体一点。我在其中查找文本的文件如下所示:

aa bbbbbbbbbbbbbb  
bbbbbbbbbbbbbbbbb  
bbbbbbbbbbbbbbbbb  
cc
4

3 回答 3

1

像这样使用 sed:

d='aabbcc'
s='aa'
e='cc'
sed "s/^\(${a}.*\)${e}$/\1/" <<< "$d"
aabb

编辑:根据已编辑的问题,使用以下命令:

sed -n '/aa/,/cc/{/cc/!p;}' file
aa bbbbbbbbbbbbbb
bbbbbbbbbbbbbbbbb
bbbbbbbbbbbbbbbbb
于 2013-09-11T10:04:34.567 回答
0

为了

假设我有字符串 aabbcc,我想找出 aa 和 cc 之间的内容。

echo "aabbcc" | sed -r 's/aa(.*)cc/\1/'

输出:

bb
于 2013-09-11T10:04:44.143 回答
0

从您问题的当前状态来看,我认为这是一个可能的答案:

sed -n 's/\(^.*bb\).*/\1/p'

像这样使用:

echo "aabbcc" | sed -n 's/\(^.*bb\).*/\1/p'

印刷

aabb
于 2013-09-11T10:01:34.350 回答