我有 BusyBox v1.01 提供我的命令。因此,-o 不包含在 grep 中。grep -o
如果没有 ... -o,我如何获得行为?
问问题
370 次
3 回答
3
awk
解决方案:
awk '/PATTERN/{match($0,/PATTERN/);print substr($0,RSTART,RLENGTH)}' inputFile
于 2012-07-07T06:44:56.033 回答
2
如果你有sed
你可以使用简单的正则表达式。(见linuxquestions.org)
sed -n 's/.*\(PATTERN\).*/\1/p' FILE
因此,仅查找您要编写StackOverflow
的文件中的文本file.txt
sed -n 's/.*\(StackOverflow\).*/\1/p' file.txt
请记住 sed 命令中的模式是正则表达式。因此,如果您的模式包含正则表达式的任何元字符,则需要对其进行转义。
于 2012-07-07T06:30:13.047 回答
0
您可以改用 Perl:
perl -lne 'print $1 while /(pattern)/g' FILE
于 2012-07-07T06:37:32.297 回答