You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

gcloud cli中--sort-by与--limit结合异常,是否为Bug?

结论:这是一个Bug,而非预期行为

gcloud CLI的标准逻辑应该是按过滤→排序→限制数量的顺序执行操作,这也是符合用户直觉的设计——你肯定是想先把所有符合条件的结果排好序,再取前N条,而不是先取N条再排序。

从你给出的测试结果也能明确验证这一点:

  • 不加--limit时,结果按~createTime(最新创建在前)排序完全正确;
  • 加--limit 1时,返回的是最早的版本1,而不是排序后的第一个版本3;
  • 加--limit 2时,返回的是版本2和1,而非排序后的3和2。

这说明CLI在处理时错误地将--limit的执行顺序放在了--sort-by之前,属于逻辑错误。

临时解决办法

可以先不使用--limit参数,通过管道结合head命令来实现取前N条的需求:

获取最新1个版本

gcloud kms keys versions list \
  --key my-key \
  --keyring my-keyring \
  --location global \
  --filter "state:ENABLED" \
  --sort-by "~createTime" | head -n 2

(注:head -n 2是因为输出第一行是表头,需要保留表头+1条数据)

获取最新2个版本

gcloud kms keys versions list \
  --key my-key \
  --keyring my-keyring \
  --location global \
  --filter "state:ENABLED" \
  --sort-by "~createTime" | head -n 3

你也可以考虑将这个问题反馈给Google Cloud支持团队,帮助修复这个逻辑错误。

内容的提问来源于stack exchange,提问作者umbex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 12:40:03