How to get public ip address for virtual-machine using Azure CLI command

Ehsan Zargar Ershadi picture Ehsan Zargar Ershadi · Mar 4, 2019 · Viewed 7.7k times · Source

I want to get public IP address for a specific virtual machine in Azure bash command line, I have used this command so far but it returns network interface information:

az vm list-ip-addresses -g dev-rg -n dev-vm

returned value:

[
  {
    "virtualMachine": {
      "name": "dev-vm",
      "network": {
        "privateIpAddresses": [
          "10.0.0.5"
        ],
        "publicIpAddresses": [
          {
            "id": "/subscriptions/*********/resourceGroups/dev-rg/providers/Microsoft.Network/publicIPAddresses/dev-vmPublicIP",
            "ipAddress": "52.142.***.***",
            "ipAllocationMethod": "Dynamic",
            "name": "dev-vmPublicIP",
            "resourceGroup": "dev-rg"
          }
        ]
      },
      "resourceGroup": "dev-rg"
    }
  }
]

I only need the IP address value which should be something like this: 52.142.xxx.xxx

Answer

Charles Xu picture Charles Xu · Mar 4, 2019

You can just use the CLI command az vm show -d -g reousrceGroupName -n vmName --query publicIps -o tsv to output the public IP.

It just shows like this:

enter image description here