google-cloud-platform - 计算实例的 GCP gcloud API 过滤标签
问题描述
我正在尝试查找特定项目中具有特定标签的所有虚拟机。这有效
gcloud compute instances list --project myproject --filter="(name=myvm) AND --filter="tags.items~*ngf*"
但是取出VM名称不起作用
gcloud compute instances list --project myproject --filter="tags.items~*ngf*"
错误信息是
ERROR: (gcloud.compute.instances.list) Filter expression RE pattern [*ngf*]: nothing to repeat at position 0
有任何想法吗?我尝试在过滤器中使用标签而不是 tags.items 但这似乎也不起作用。
解决方案
您遇到的问题是由于您使用的正则表达式。
*
使生成的 RE 匹配前一个 RE 的 0 个或多个重复,尽可能多的重复。ab* 将匹配 'a'、'ab' 或 'a' 后跟任意数量的 'b'。
您可以查看以下链接以获取有关正则表达式的更多信息。
关于您的要求:
我正在尝试查找特定项目中具有特定标签的所有虚拟机。
请尝试使用以下命令:
gcloud compute instances list --filter="(tags.items ~ <<YOUR-NETWORK-TAG>>*)" --project <<MY-PROJECT>>
或者
gcloud compute instances list --filter="(tags.items=<<YOUR-NETWORK-TAG>>)" --project <<MY-PROJECT>>
现在对于标签,您可以使用以下内容:
gcloud compute instances list --filter="(tags.items=<<YOUR-NETWORK-TAG>>) AND (labels.<<MY-LABEL>>:*)" --project <<MY-PROJECT>>
您可以查看此链接以查找更多示例:gcloud topic filters
推荐阅读
- python - 将带有参数的命令传递给 subprocess.Popen
- java - 如何使用递归方法返回字符串中的数字总和?
- vb.net - 当我使用 vb.net 在 youtube 中搜索时,如何播放获得的第一个 url?
- hp-idol-ondemand - 位于连接数据库中的索引特定条目 [IDOL 索引服务器]
- ionic-framework - Ionic 3/4 - 每日本地通知不起作用
- javascript - 文件加载器将图像保存到每个文件夹,例如 Project/Module/src/img/example.jpg 到 Project/Module/dist/img/example.jpg
- reactjs - 使用 Firebase 数据设置状态后,React 渲染未更新
- php - 防止将空字符串保存到数据库
- javascript - 在选择日期选择器值上动态显示 Morrise.js 悬停标签
- python - 从数组值中过滤字典