【发布时间】:2020-10-14 11:00:38
【问题描述】:
这个问题特别是正则表达式问题。
我想使用grep 捕获bash 中curl 命令的进度百分比,但不包括浮点数。目标是将这些捕获的值呈现给dialog 的--gauge 选项。
这是我迄今为止所取得的成就:
$ curl -#LO "http://upload.wikimedia.org/wikipedia/commons/4/4e/Pleiades_large.jpg" 2>&1 | stdbuf -oL tr '\r' '\n' | grep -Eo '[0-9.]*'
上面的示例命令将输出如下内容:
3.8
20.1
47.1
93.4
100.0
但我期待这样的结果:
3
20
47
93
100
我已经为此搜索了一个正则表达式,但没有找到任何好的结果。
非常感谢任何帮助。
【问题讨论】:
-
您可以使用
.作为字段分隔符,并在您拥有的当前输出上使用cut或awk甚至grep -o获取第一个字段.. 如果您有GNU grep与PCRE,那么你可以使用前瞻来做一个命令 -
@Sundeep 你说得对,先生!我忘了
cut命令可以使用-d选项删除文本。如果您回复示例,我会将其标记为答案:) 编辑: Tttthank yououuu.