diff options
author | romkatv <roman.perepelitsa@gmail.com> | 2020-02-06 15:37:22 +0300 |
---|---|---|
committer | romkatv <roman.perepelitsa@gmail.com> | 2020-02-06 15:37:28 +0300 |
commit | 17d3dc78feab175fb57d3e2b3b481f7b29d6c89b (patch) | |
tree | 6a12a04b3004c96b4e454a377381ed2ffb715cf6 | |
parent | d7168759181d2b80689637b87083bca3e5279935 (diff) |
pick up `ifconfig` and `ip` from PATH
Apparently there are systems on which these tools are not in /sbin.
Fixes #472.
-rw-r--r-- | internal/p10k.zsh | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/internal/p10k.zsh b/internal/p10k.zsh index 03558340..7d690498 100644 --- a/internal/p10k.zsh +++ b/internal/p10k.zsh @@ -4569,8 +4569,8 @@ function _p9k_prompt_net_iface_compute() { function _p9k_prompt_net_iface_async() { local iface ip line var typeset -a iface2ip - if [[ -x /sbin/ifconfig ]]; then - for line in ${(f)"$(/sbin/ifconfig 2>/dev/null)"}; do + if (( $+commands[ifconfig] )); then + for line in ${(f)"$(command ifconfig 2>/dev/null)"}; do if [[ $line == (#b)([^[:space:]]##):[[:space:]]##flags=(<->)'<'* ]]; then [[ $match[2] == *[13579] ]] && iface=$match[1] || iface= elif [[ -n $iface && $line == (#b)[[:space:]]##inet[[:space:]]##([0-9.]##)* ]]; then @@ -4578,8 +4578,8 @@ function _p9k_prompt_net_iface_async() { iface= fi done - elif [[ -x /sbin/ip ]]; then - for line in ${(f)"$(/sbin/ip -4 a show 2>/dev/null)"}; do + elif (( $+commands[ip] )); then + for line in ${(f)"$(command ip -4 a show 2>/dev/null)"}; do if [[ $line == (#b)<->:[[:space:]]##([^:]##):[[:space:]]##\<([^\>]#)\>* ]]; then [[ ,$match[2], == *,UP,* ]] && iface=$match[1] || iface= elif [[ -n $iface && $line == (#b)[[:space:]]##inet[[:space:]]##([0-9.]##)* ]]; then |