Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Parsing jq子字符串给出了;jq:错误:无法为对象为“”的字符串编制索引; 问题_Parsing_Substring_Jq - Fatal编程技术网

Parsing jq子字符串给出了;jq:错误:无法为对象为“”的字符串编制索引; 问题

Parsing jq子字符串给出了;jq:错误:无法为对象为“”的字符串编制索引; 问题,parsing,substring,jq,Parsing,Substring,Jq,我正在尝试筛选结果,以仅显示原始字符串的子字符串。例如,如果JQ筛选器捕获了该值 4ffceab674ea8bb5ec421c612536696839bbaccecf64e851dfc270d795ee55d1 我希望它只返回前10个字符4ffceab674 我试过的 在上,您可以找到一个示例,该示例应能满足我的需要: Command: jq '.[2:4]' Input: "abcdefghi" Output: "cd" 我尝试在unix终端中用一个简单的示例来

我正在尝试筛选结果,以仅显示原始字符串的子字符串。例如,如果JQ筛选器捕获了该值

4ffceab674ea8bb5ec421c612536696839bbaccecf64e851dfc270d795ee55d1
我希望它只返回前10个字符
4ffceab674


我试过的 在上,您可以找到一个示例,该示例应能满足我的需要:

Command:    jq '.[2:4]'

Input:      "abcdefghi"
Output:     "cd"
我尝试在unix终端中用一个简单的示例来测试这一点:

# this works fine, => "abcdefghi"
echo '"abcdefghi"' | jq '.'

# this doesn't work => jq: error: Cannot index string with object
echo '"abcdefghi"' | jq '.[2:4]'

因此,事实证明,这些过滤器中的大多数尚未发布。有关参考信息,请参阅问题

您可以下载最新的开发版本并从源代码处编译。请参阅Linux上的>源代码


在那之后,如果索引仍然不适用于字符串,那么您至少应该能够进行分解、索引、内爆组合,这似乎是您的计划。

看看这个版本,我怀疑没有使用该版本的解决方案,因为它没有为字符串的外接部分提供原语。

另外:jq版本是1.3,我在ubuntu trusty中运行。另外:刚刚意识到其他基本的过滤器不起作用,比如“内爆”、“爆炸”、“分裂”,我会将其标记为答案——尽管我无法安装新版本来确认substring命令是否起作用。