该grep
命令将从许多行中选择所需的行,但不会直接操纵该行。为此,您可以sed
在管道中使用:
someCommand | grep 'Amarghosh' | sed -e 's/foo/bar/g'
或者,awk
(或perl
如果可用)可以使用。它比sed
我认为功能强大得多。
someCommand | awk '/Amarghosh/ { do something }'
对于简单的文本操作,只需坚持使用该grep/sed
组合键即可。当您需要更复杂的处理时,请移至awk
或perl
。
我的第一个想法是只使用:
echo '{"displayName":"Amarghosh","reputation":"2,737","badgeHtml"'
| sed -e 's/.*tion":"//' -e 's/".*//' -e 's/,//g'
这样可以将sed
进程数保持为1(您可以使用发出多个命令-e
)。