Advertisement
dsonbill

DMPServer Linux Command Pipe

Sep 10th, 2014
854
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.02 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. # Config
  4. . /etc/dmpserver/dmpserver.cfg
  5.  
  6. # Lib
  7. . /var/lib/dmpserver/dmpbashlib
  8.  
  9. # IFS Vars
  10. ifsNewline=$'\n'
  11. ifsReset=$IFS
  12.  
  13.  
  14. # Check for root
  15. rootCheck
  16.  
  17.  
  18. cd $DMPDIR
  19.  
  20. function DMPPipe(){
  21.     su $user -s $shell <<EOF
  22.     if screen -list | grep -q $1 ; then screen -p 0 -S $1 -X stuff "/$2"$'\n' ; fi
  23. EOF
  24. }
  25.  
  26. function sayShutdownMessage(){
  27.     IFS=$ifsNewline
  28.     for line in $shutdownMsg ; do
  29.         DMPPipe "say $line"
  30.         sleep 1
  31.     done
  32.     IFS=$ifsReset
  33. }
  34.  
  35. case "$2" in
  36.     -m|-s|-message|-say)
  37.         DMPPipe $1 "say $3"
  38.         ;;
  39.        
  40.     shutdown)
  41.         sayShutdownMessage
  42.         case "$3" in
  43.             -f) :  ;;
  44.             *) sleep $shutdown_count  ;;
  45.         esac
  46.         DMPPipe $1 shutdown
  47.         ;;
  48.  
  49.     restart)
  50.         sayShutdownMessage
  51.         case "$3" in
  52.             -f) :  ;;
  53.             *) sleep $shutdown_count  ;;
  54.         esac
  55.         DMPPipe $1 restart
  56.         ;;
  57.        
  58.     *)
  59.         DMPPipe $1 "$2"
  60.         ;;
  61.    
  62. esac
  63. exit 1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement