こんにちは、dockerネットワークの特性を確認するためにコマンドを使用している間にdocker network inspect network59
ipv4アドレスがあることを発見し、そのコマンドの結果で特に見つかったIPv4アドレスを一覧表示する正規表現を作成したかったのです。
助けてくれてありがとう。
ベストアンサー1
正規表現についてはわかりませんが、jq
役に立ちます。一重引用符で囲むことでjsonpathを渡すことができます。
次のコマンドは、以下に示すjsonに対して機能してゲートウェイを抽出します。
$ docker network inspect bridge | jq -r '.[0].IPAM.Config[0].Gateway'
172.17.0.1
[
{
"Name": "bridge",
"Id": "f6daefc7df41c4ddb9c1620b57986b9b65bb4c9afa939af2b6baa6ef7be0f23f",
"Created": "2023-11-14T10:31:54.319592088Z",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": [
{
"Subnet": "172.17.0.0/16",
"Gateway": "172.17.0.1"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {},
"Options": {
"com.docker.network.bridge.default_bridge": "true",
"com.docker.network.bridge.enable_icc": "true",
"com.docker.network.bridge.enable_ip_masquerade": "true",
"com.docker.network.bridge.host_binding_ipv4": "0.0.0.0",
"com.docker.network.bridge.name": "docker0",
"com.docker.network.driver.mtu": "1454"
},
"Labels": {}
}
]