如何通过az boards查询仅获取System.Id的数值?
提取Azure Boards工作项System.Id的方法
你可以通过以下两种方式直接从命令输出中提取System.Id的纯数值:
方法一:用Azure CLI内置的--query参数过滤
Azure CLI支持通过JMESPath语法过滤输出,无需额外工具,直接在原命令中添加参数即可:
# 提取顶层的id字段 az boards query --wiql "SELECT [System.Id] FROM workitems WHERE [System.State] IN ('New') and [System.Title] = '[Test ticket] CVE found for mssql'" --query '[0].id' -o tsv # 提取fields中的System.Id字段 az boards query --wiql "SELECT [System.Id] FROM workitems WHERE [System.State] IN ('New') and [System.Title] = '[Test ticket] CVE found for mssql'" --query '[0].fields."System.Id"' -o tsv
-o tsv参数指定输出为纯文本格式,直接返回不带任何格式的数字;- 如果查询结果可能包含多个工作项,去掉
[0]即可提取所有ID(每行一个):az boards query --wiql "SELECT [System.Id] FROM workitems WHERE [System.State] IN ('New') and [System.Title] = '[Test ticket] CVE found for mssql'" --query '[].id' -o tsv
方法二:结合jq工具处理JSON输出
如果你的环境已安装jq(常用JSON处理工具),可以通过管道过滤输出:
# 提取顶层id字段 az boards query --wiql "SELECT [System.Id] FROM workitems WHERE [System.State] IN ('New') and [System.Title] = '[Test ticket] CVE found for mssql'" | jq -r '.[0].id' # 提取fields中的System.Id字段 az boards query --wiql "SELECT [System.Id] FROM workitems WHERE [System.State] IN ('New') and [System.Title] = '[Test ticket] CVE found for mssql'" | jq -r '.[0].fields."System.Id"'
-r参数用于返回原始字符串(不带引号),直接得到纯数字结果。
内容的提问来源于stack exchange,提问作者生きがい
相关产品推荐
相关产品推荐

