如果您的sed是GNU sed。您可以使用“ e”将匹配的组传递给sed命令中的外部命令/工具。
一个例子可能会有助于弄清楚:
例如,您有一个问题:
现在有了一个字符串,
"120+20foobar"您想要获得120 + 20部分的计算结果,并将“ foobar”部分中的“ oo”替换为“ xx”。
请注意,此示例并非用于解决上述问题,仅用于显示sed’e’用法
因此您可以
120+20在第一个匹配组中创建,在第二个组中休息,然后将两个组传递给不同的命令/工具,然后得到结果。喜欢:
kent$ echo "100+20foobar"|sed -r 's#([0-9+]*)(.*)#echo 1 |bc;echo 2 | sed "s/oo/xx/g"#ge' 120 fxxbar
这样,您可以将许多sed相互嵌套,直到迷路了。:D
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)