Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.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
Git JQ-如何定义筛选器以从输出数组中删除方括号、引号和逗号_Git_Output_Jq_Xargs - Fatal编程技术网

Git JQ-如何定义筛选器以从输出数组中删除方括号、引号和逗号

Git JQ-如何定义筛选器以从输出数组中删除方括号、引号和逗号,git,output,jq,xargs,Git,Output,Jq,Xargs,我需要将一个输出数组转换为不带括号、引号和逗号的行,以便可以使用它创建git克隆 这是我最初的疑问 curl -s http://bitbucketlocalserver:7990/rest/api/1.0/projects/PROJECT_NAME/repos?per_page=20 ^ -u user:pass | H:\Downloads\Win64\jq-win64.exe -r "[.values[] | ((.links.clone[] | select(.name==\"http\

我需要将一个输出数组转换为不带括号、引号和逗号的行,以便可以使用它创建git克隆

这是我最初的疑问

curl -s http://bitbucketlocalserver:7990/rest/api/1.0/projects/PROJECT_NAME/repos?per_page=20 ^
-u user:pass | H:\Downloads\Win64\jq-win64.exe -r "[.values[] | ((.links.clone[] | select(.name==\"http\") | .href)  + \" \" +  .name)]"  
返回格式的输出

[
   "http://bitbucketlocalserver:7990/scm/PROJECT_NAME/gitrepo1.git GitRepository1",
   "http://bitbucketlocalserver:7990/scm/PROJECT_NAME/gitrepo1.git GitRepository2"
]
我想使用输出作为另一个命令的输入,如下所示

 curl -s http://bitbucketlocalserver:7990/rest/api/1.0/projects/PROJECT_NAME/repos?per_page=20 ^
-u user:pass | H:\Downloads\Win64\jq-win64.exe -r "[.values[] | ((.links.clone[] | select(.name==\"http\") | .href)  + \" \" +  .name)]"   | ^
 H:\Utilities\Git\usr\bin\xargs.exe -n 2 git clone -b release-dev
为了能够使用这个命令,jq命令的输出需要如下

http://bitbucketlocalserver:7990/scm/PROJECT_NAME/gitrepo1.git GitRepository1
http://bitbucketlocalserver:7990/scm/PROJECT_NAME/gitrepo1.git GitRepository2
第一部分是全文的一部分


我需要对JQ过滤器进行哪些更改才能执行此操作?实际上,我需要从BitBucket项目中克隆40多个存储库,我想创建一个简单的脚本,不必首先获取列表

您可以简单地将以下jq过滤器附加到生成两个字符串数组的过滤器上:

.[]
或者更经济地说,只需从jq查询中删除外部方括号


关键是,-r选项只在JSON字符串(而不是复合实体中的字符串)的输出上去掉双引号。

我无法删除外方括号,因为我的过滤器是
[…]| sort
,这非常重要useful@MiserableVariable-在您的情况下,可以使用缩写
[…]| sort[]