只返回 sed 中匹配的字符串

只返回 sed 中匹配的字符串

可能的重复:
提取与“sed”匹配的正则表达式而不打印周围的字符

我如何使其仅打印test

echo "atestb" | sed -n 's/\(test\)/\1/p'

答案1

您需要匹配整行:

echo "atestb" | sed -n 's/.*\(test\).*/\1/p'

或者

echo "atestb" | sed 's/.*\(test\).*/\1/'

相关内容