34 lines
635 B
Bash
34 lines
635 B
Bash
# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*-
|
|
# ex: ts=8 sw=8 noet filetype=sh
|
|
#
|
|
# bash completion for FreeBSD kernel module commands
|
|
|
|
[ $UNAME = FreeBSD ] &&
|
|
{
|
|
|
|
_kldload()
|
|
{
|
|
local cur moddir
|
|
|
|
moddir=/modules/
|
|
[ -d $moddir ] || moddir=/boot/kernel/
|
|
cur=`_get_cword`
|
|
|
|
COMPREPLY=( $( compgen -f $moddir$cur ) )
|
|
COMPREPLY=( ${COMPREPLY[@]#$moddir} )
|
|
COMPREPLY=( ${COMPREPLY[@]%.ko} )
|
|
|
|
return 0
|
|
}
|
|
complete -F _kldload $filenames kldload
|
|
|
|
_kldunload()
|
|
{
|
|
local cur
|
|
cur=`_get_cword`
|
|
COMPREPLY=( $(kldstat | sed -ne "s/^.*[ \t]\+\($cur[a-z_]\+\).ko$/\1/p") )
|
|
}
|
|
complete -F _kldunload $filenames kldunload
|
|
|
|
}
|