1
我尝试从一个文本文件,这种格式只匹配数字:猛砸正则表达式匹配数字
> 1234
我跑通以循环的文件。在$i
$i | grep "\d{4}"
输出的每一行店看起来是这样的:
>
1234
>
5678
为什么它仍然outputing的>
?我想删除这些。
我尝试从一个文本文件,这种格式只匹配数字:猛砸正则表达式匹配数字
> 1234
我跑通以循环的文件。在$i
$i | grep "\d{4}"
输出的每一行店看起来是这样的:
>
1234
>
5678
为什么它仍然outputing的>
?我想删除这些。
从man grep
-o, --only-matching Print only the matched (non-empty) parts of a matching line, with each such part on a separate output line.
尝试grep -o ....
测试:
i="> 1234"
$ echo "$i"
> 1234
$ echo "$i" | grep -oP "\d{4}"
1234
注意自我,检查联机帮助页......很明显,从Solaris 7的grep :-)开始已经发生了变化 – William 2013-02-26 15:45:26
'在该行的开始$ i'将尝试与它的值运行一个命令,例如一个叫做'1234'的命令。我也对“你做错了什么”感到困惑。你的输出对我来说不会错...... – 2013-02-26 15:11:33
你只想显示数字吗? – raina77ow 2013-02-26 15:12:52
对不起,我不清楚。我的意思是为什么它输出'>'。我试图摆脱那些。 – ExceptionLimeCat 2013-02-26 15:33:19