![]() |
|
howto create the 'service' command - Printable Version +- Linux-Noob Forums (https://www.linux-noob.com/forums) +-- Forum: Distro Noob (https://www.linux-noob.com/forums/forum-10.html) +--- Forum: Gentoo (https://www.linux-noob.com/forums/forum-93.html) +--- Thread: howto create the 'service' command (/thread-2533.html) |
howto create the 'service' command - znx - 2005-07-27 I've always sort of liked the 'service' command that comes with redhat, so I created my own: Create a file (as root) /usr/sbin/service Code: #!/bin/sh
set -e
/etc/init.d/$1 $2 $3Done.. :) Example usage: Code: service mysql start
service mysql stop
service sshd startAlways one for making completions I did this too, mind this is gentoo aimed a little (the secondary option) Place this in ~/.bashrc or /etc/bash.bashrc (or /etc/bash_completion.d/service for gentoo users) Code: # a function for the autocompletion of the service command.
_service_fn()
{
# set some local variables
local cur prev
COMPREPLY=()
cur=${COMP_WORDS[COMP_CWORD]}
prev=${COMP_WORDS[COMP_CWORD-1]}
#if only one completion or a option is being requested
#then complete against various options
if [ $COMP_CWORD -eq 1 ]; then
COMPREPLY=( $( compgen -W "$(ls /etc/init.d)" $cur ))
elif [ $COMP_CWORD -eq 2 ]; then
COMPREPLY=( $( compgen -W "start stop restart pause zap status ineed iuse needsme usesme broken" $cur ))
else
COMPREPLY=( $( compgen -f $cur ))
fi
return 0
}
#setup the completion
complete -F _service_fn service |