Linux-Noob Forums
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 $3




 

Done.. :)

 

Example usage:

 



Code:
service mysql start service mysql stop service sshd start




 

Always 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