unix – 只打印匹配的单词,而不是整行通过grep

我熟悉bash中的 shell编程,但是由于某些原因egrep -o打印只匹配的单词不起作用,并显示如下错误.

环境是ksh unix控制台在putty而不是linux或ubuntu终端……任何建议是赞赏!

终端输入&输出

AB12 $echo "i am a boy" | grep -w "am"
i am a boy
AB12 $echo "i am a boy" | egrep -o "am"
egrep: illegal option -- o
usage: egrep [ -bchilnsv ] [ -e exp ] [ -f file ] [ strings ] [ file ] ...
AB12 $echo$
ksh: echo$: not found
AB12 $echo $SHELL
/bin/ksh
AB12 $echo "i am a boy" | grep -o "am"
grep: illegal option -- o
Usage: grep -hblcnsviw pattern file . . .
AB12 $

PS:类似的线程但已经尝试:Can grep show only words that match search pattern?

我假设这是一个连接到的Solaris框. Solaris的grep版本没有-o选项.所以你也可以

>在您的Solaris盒子上安装GNU grep(它可能已经安装在/usr/sfw / bin中,或者你可能会喜欢pkg install // solaris / text / gnu-grep);要么
>使用awk(见this SO question)

看到我的盒子:

$uname
SunOS
$ echo "i am a boy" | grep -o "am"
grep: illegal option -- o
Usage: grep -hblcnsviw pattern file . . .
$ echo "i am a boy" | /usr/sfw/bin/ggrep -o "am"
am

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...