bash-completion/completions/route

31 lines
807 B
Bash

# Linux route(8) completion -*- shell-script -*-
[[ $OSTYPE == *linux* ]] || return 1
_route()
{
local cur prev words cword
_init_completion || return
if [[ $prev == dev ]]; then
_available_interfaces
return 0
fi
# Remove already given options from completions
local opt found i
for opt in add del -host -net netmask metric mss window irtt reject mod \
dyn reinstate dev default gw; do
found=false
for (( i=1; i < ${#words[@]}-1; i++ )); do
[[ ${words[i]} == $opt ]] && found=true && break
done
$found || COMPREPLY[${#COMPREPLY[@]}]="$opt"
done
COMPREPLY=( $( compgen -W '"${COMPREPLY[@]}"' -- "$cur" ) )
} &&
complete -F _route route
# ex: ts=4 sw=4 et filetype=sh