ip: Improve addr show and link show completions.

This commit is contained in:
Ville Skyttä 2013-02-04 17:24:47 +02:00
parent 06fd510c44
commit 61fe8d10a8

View File

@ -1,5 +1,12 @@
# ip(8) completion -*- shell-script -*- # ip(8) completion -*- shell-script -*-
_iproute2_etc()
{
COMPREPLY+=( $( compgen -W \
"$( awk '!/#/ { print $2 }' /etc/iproute2/$1 2>/dev/null )" \
-- "$cur" ) )
}
_ip() _ip()
{ {
local cur prev words cword local cur prev words cword
@ -96,7 +103,14 @@ _ip()
fi fi
;; ;;
show) show)
[[ $cword -eq $subcword+1 ]] && _available_interfaces if [[ $cword -eq $subcword+1 ]]; then
_available_interfaces
COMPREPLY+=( $( compgen -W 'dev group up' -- "$cur" ) )
elif [[ $prev == dev ]]; then
_available_interfaces
elif [[ $prev == group ]]; then
_iproute2_etc group
fi
;; ;;
*) *)
[[ $cword -eq $subcword ]] && \ [[ $cword -eq $subcword ]] && \
@ -115,7 +129,16 @@ _ip()
# TODO # TODO
;; ;;
show|flush) show|flush)
# TODO if [[ $cword -eq $subcword+1 ]]; then
_available_interfaces
COMPREPLY+=( $( compgen -W 'dev scope to label dynamic
permanent tentative deprecated dadfailed temporary
primary secondary up' -- "$cur" ) )
elif [[ $prev == dev ]]; then
_available_interfaces
elif [[ $prev == scope ]]; then
_iproute2_etc rt_scopes
fi
;; ;;
*) *)
[[ $cword -eq $subcword ]] && \ [[ $cword -eq $subcword ]] && \