首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于从命令行输出中获取自定义结果的自定义命令

用于从命令行输出中获取自定义结果的自定义命令
EN

Stack Overflow用户
提问于 2015-12-07 17:54:07
回答 1查看 10关注 0票数 0

我需要编写一个shell脚本,它将从显示的命令行输出中获取自定义结果。

考虑以下场景:

这是命令和相关输出。

代码语言:javascript
复制
root@devstack:/opt/devstack# /usr/local/bin/neutron subnet-list
+--------------------------------------+---------------------+---------------------+-------------------------------------------------------------------------------+
| id                                   | name                | cidr                | allocation_pools                                                              |
+--------------------------------------+---------------------+---------------------+-------------------------------------------------------------------------------+
| 3efe15d0-24a4-4618-8034-26345438da41 | private-subnet      | 10.0.0.0/24         | {"start": "10.0.0.2", "end": "10.0.0.254"}                                    |
| 4bf54b31-c14c-493b-92c1-079c65484113 | public-subnet       | 172.24.4.0/24       | {"start": "172.24.4.2", "end": "172.24.4.254"}                                |
| 4fbe1ac2-ff40-4efa-8333-2c02be54312e | ipv6-private-subnet | fd6e:78a4:ae52::/64 | {"start": "fd6e:78a4:ae52::2", "end": "fd6e:78a4:ae52:0:ffff:ffff:ffff:ffff"} |
| 09b45af3-ef6f-4ad8-a4cb-643b218f0439 | ipv6-public-subnet  | 2001:db8::/64       | {"start": "2001:db8::3", "end": "2001:db8::ffff:ffff:ffff:ffff"}              |
|                                      |                     |                     | {"start": "2001:db8::1", "end": "2001:db8::1"}                                |
+--------------------------------------+---------------------+---------------------+-------------------------------------------------------------------------------+

现在,我需要的是只获取名称字段的id,该字段具有以下值:

代码语言:javascript
复制
private-subnet
public-subnet

我已经尝试了下面的命令,只获取id而不指定条件:

代码语言:javascript
复制
root@devstack:/opt/devstack# /usr/local/bin/neutron subnet-list | awk '{print $2}'

id

4fbe1ac2-ff40-4efa-8333-2c02be54312e
09b45af3-ef6f-4ad8-a4cb-643b218f0439
|
3efe15d0-24a4-4618-8034-26345438da41
4bf54b31-c14c-493b-92c1-079c65484113

有人告诉我只获取"id“的价值,其中name的值是”private-subnet.“和”public-subnet.“。

EN

回答 1

Stack Overflow用户

发布于 2015-12-07 18:46:03

我已经用中子子网列表命令可用的选项执行了相同的操作。

我可以按照预期得到所需的结果。

代码语言:javascript
复制
root@devstack:/opt/devstack# /usr/local/bin/neutron subnet-list --field id --name private-subnet
+--------------------------------------+
| id                                   |
+--------------------------------------+
| 3efe15d0-24a4-4618-8034-26345438da41 |
+--------------------------------------+
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34130700

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档