0

I like create any alias for docker commandas, and I need any alias use single quotes.

I see post Escaping quotes in zsh alias but not work for me.

Tried in .zshrc

function dinfoip() {
   docker inspect --format "{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}" "$1"
}

Also

function dinfoip() {
   docker inspect --format '"{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}"' "$1"
}

Get same error

dinfo 2870                                                                                                       
zsh: parse error near `.NetworkSettings.Net...'
zsh: parse error in command substitution

Original commad

docker inspect --format "{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}" 2870                          
> 172.17.0.2

After correct mistake using -format instead --format in function

function dinfoip() {
   docker inspect --format "{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}" "$1"
}

Get other error

...
                    "GlobalIPv6Address": "",
                    "GlobalIPv6PrefixLen": 0,
                    "MacAddress": "02:42:ac:11:00:02",
                    "DriverOpts": null
                }
            }
        }
    }
]
Error: No such object: –format
Error: No such object: {{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}

4
  • After fixing your functions to use --format instead of -format, they work fine enough for me.
    – muru
    Commented Sep 2, 2020 at 8:27
  • I fixed mistake and use --format but error is other: Error: No such object: –format Error: No such object: {{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}} Commented Sep 2, 2020 at 8:45
  • Are your writing this in Word or something like that? - is the en dash. It should be -- - two hyphens/dashes.
    – muru
    Commented Sep 2, 2020 at 8:57
  • I dont' use windows. Use linux and nano imgur.com/a/fSHBLth Commented Sep 2, 2020 at 9:25

1 Answer 1

0

After some tests I get solution

Use --format="[some parameters]" instead --format "[some parameters]"

function dinfoip() {
   docker inspect --format="{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}" "$1"
}

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .