/bash_completion_lib/include/_available_interfaces

http://github.com/brinkman83/bashrc · #! · 19 lines · 17 code · 2 blank · 0 comment · 0 complexity · 48697bf57a68442c1de0e6b1c7c54102 MD5 · raw file

  1. # This function completes on all available network interfaces
  2. # -a: restrict to active interfaces only
  3. # -w: restrict to wireless interfaces only
  4. #
  5. _available_interfaces()
  6. {
  7. local cmd
  8. if [ "${1:-}" = -w ]; then
  9. cmd="iwconfig"
  10. elif [ "${1:-}" = -a ]; then
  11. cmd="ifconfig"
  12. else
  13. cmd="ifconfig -a"
  14. fi
  15. COMPREPLY=( $( eval $cmd 2>/dev/null | \
  16. sed -ne 's|^\('$cur'[^[:space:][:punct:]]\{1,\}\).*$|\1|p') )
  17. }