如果我运行此程序,它将起作用。
dig +short myip.opendns.com @resolver1.opendns.com
Run Code Online (Sandbox Code Playgroud)
如果我这样做了,那是行不通的
ip=$(dig +short myip.opendns.com @resolver1.opendns.com) | echo "$ip"
Run Code Online (Sandbox Code Playgroud)
如何通过管道命令传递变量?
你不知道
使用
ip=$(dig +short myip.opendns.com @resolver1.opendns.com) && echo "$ip"
Run Code Online (Sandbox Code Playgroud)
(如果第一个命令失败,则不会回显)
要么
ip=$(dig +short myip.opendns.com @resolver1.opendns.com); echo "$ip"
Run Code Online (Sandbox Code Playgroud)
(仍然回显$ ip)