1
12
这个
或者,
对于简单的文本操作,只需使用
我的第一个想法是使用:
它保留了
|
2
8
您可能对将Perl用于此类任务感兴趣。作为演示,这里有一个Perl脚本,它打印您想要的数字:
此脚本要求您安装JSON模块,您只需使用命令即可完成此操作。
|
3
5
要在shell脚本中使用JSON,请使用 jsawk 哪一个 像awk,但对于json .
|
4
3
我的主张:
我在sed参数中输入了两个命令:
在这种情况下,我发现
用于操作字符串(不仅是regex)的其他工具包括:
|
5
2
Perl 是一个合适的解决方案,它是一种具有强大regexp功能的shell脚本语言。它可以完成您所需要的大部分工作,而无需生成单独的进程(与普通的UnixShell脚本不同),并且拥有大量的附加函数库。 |
6
2
你可以用grep来做。grep-witch中有-o开关,只提取匹配的字符串而不是整行。
|
7
2
包括正则表达式功能的工具包括sed、grep、awk、perl、python等等。即使是更新版本的bash也具有regex功能。你所要做的就是查找关于如何使用它们的文档。
可以,但不是必须的。
是的,可以。您只需构造类似的regex,就像使用sed或其他方法一样。请注意,grep只做它所做的,如果您想修改任何文件,它不会为您做。
当然。regex可以很强大,但它不一定是每次使用的最佳工具。这也取决于你所说的“简单/合适”的意思。 在regex上使用的另一种方法是使用字段/分隔符方法。你要寻找可以“分裂”的图案。例如,在您的情况下(我下载了165297.json文件,而不是使用curl…(但它是相同的)
输出:
|
8
1
高效的shell脚本可以使用命令组合(不仅仅是您提到的两个命令),利用每个命令的才能。 |
9
0
Blindly:
类似(字段分隔符可以是regex):
更智能(查找密钥并打印其值):
|
10
0
您可以使用适当的库(如其他人指出的那样):
或
取决于OS/Shell组合。 |
11
0
通过shell的简单regex忽略所讨论的特定代码,有时您可能希望使用类似于javascript的字符串语法,以简单的方式,使用shell快速替换所有从stdin到stdout的regex。
下面是一些例子,为任何人寻找一种方法做到这一点。Perl在Mac上是个更好的选择,因为它缺少一些SED选项。如果您想将stdin作为一个变量,可以使用
下面是一个自定义的、可重用的regex函数的例子。论点是 源串 (或——对于stdin) 搜索 , 代替 和 选项 .
|
CaTx · 使用带有一个大于号和两个大于号的回波的区别 1 年前 |
Ari157 · x86_64 Linux程序集中的逻辑与实现 2 年前 |
Ty Q. · 分段故障GLFW3/GLAD 2 年前 |
ShortArrow · 如何使用git管理链接源文件? 2 年前 |
Bastien L. · 多Linux Grafana集成 2 年前 |