0

我一直在互联网上搜寻某种线索,但无济于事。我需要一个 sed/awk/grep 命令来解析一些文本。文字太大,无法在此处发布,但如果您运行

curl -l "https://aur.archlinux.org/rpc.php?type=search&arg=wine"

你会明白我的意思。基本上,我只需要显示搜索中返回的所有内容的版本号。如果您能向我解释 sed/awk/grep 语法,将不胜感激。

4

2 回答 2

1

回馈给您的是 JSON 结构。你不解析它,你编写一个程序来做它。

这不是 sed、awk 或 grep 能够做到的。您需要用 Perl 之类的语言编写一个使用 JSON Perl 模块的程序。每种语言都有一个模块来解析 JSON 并将其放入该语言的数组或结构格式中。

于 2012-12-22T05:59:42.720 回答
0

如果我要从 shell 中的文本中提取内容,我会首先考虑 grep。

grep -oP '(?<="[vV]ersion":")[^"]*'

这将为您提供所有版本。(输出中只有版本/版本信息)

在您的情况下,您可能想尝试一下:

 curl -l "https://aur.archlinux.org/rpc.php?type=search&arg=wine"|grep -oP '(?<="[vV]ersion":")[^"]*'
于 2012-12-22T12:41:20.960 回答