我正在使用 sed 捕获文本、运行外部命令并将捕获组的输出值输出到屏幕和文件中。
这是我需要的命令示例:
echo testme | sed -r 's/([a-z]{4}).*/'"$(echo "\1" | tee out.txt)"'/g'
也就是说,我需要将捕获组(\1 )的值( test )输出到文件中。
但是在屏幕上我可以看到正确的文字:
test
在一个文件中,我看到以下内容:
\1
似乎捕获组的符号在输出到文件而不是屏幕时不会扩展其值。
请告诉我我做错了什么以及如何将捕获组的值输出到文件中。
如果可能,请 - grep/awk 没有解决方案。我需要使用 sed(或者可能是 ssed)来做到这一点。
谢谢!