under_r00t

killer.sh

Jan 30th, 2015
392
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.84 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. ##FASTKILL Versione 1.5
  4. ## Faster, Pussycat, Kill! Kill! ###
  5. ##noyse.d0g
  6.  
  7. ##CHANGELOG
  8. # V.1 Velocizza il kill dei programmi
  9. # V.1.5 Aggiunta la funzione per il riavvio del programma
  10.  
  11. #colori di output
  12. RED="\e[0;31m" ;
  13. YEL="\e[0;33m" ;
  14. NORM="\e[0m" ;
  15.  
  16. gi=`pgrep $1` ;
  17. ardgi=($(echo $gi | tr " " "\n")) ;
  18. nproc="${#ardgi[@]}" ;
  19. bill="$1" ;
  20.  
  21. #Funzione di HELP, printa delle info utili sull'utilizzo di fastkill
  22. fun_help () {
  23. echo -e $YEL
  24.     echo -e "Fastkill prende come argomento il nome \n del programma, effettua la ricerca del PID \n e lo killa \
  25.     nel caso ci fossero più processi \n inserire il PID o premere <INVIO>"
  26.     echo -e "La funzione RELOAD necessità di daemon, nei sistemi debian-like \n apt-get install daemon "
  27. echo -e  $NORM
  28.  
  29. }
  30.  
  31.  
  32. #Funzione che killa nel caso ci fossero più PID
  33. fun_check_kill() {
  34. echo -e $RED
  35.     echo -e "[!] Sono stati trovati ${#ardgi[@]} processi \n con lo stesso nome!!"
  36. echo -e $NORM
  37. fun_show
  38.     for t in "${!ardgi[@]}"
  39.         do
  40.             echo "Vuoi killare $bill con PID: ${ardgi[t]}"
  41.             read gate          
  42.                 case $gate in
  43.                     n) echo "[*]non killato!" ;;
  44.                     *) sudo kill -9  ${ardgi[t]}
  45.                         fun_controll
  46.                         fun_reload ;;
  47.                 esac
  48.         done
  49. exit 0
  50. }
  51.  
  52. #Funzione di kill principale
  53. fun_killer() {
  54. fun_show
  55.     sudo kill -9 $gi
  56.     fun_controll
  57.     fun_reload
  58. }
  59.  
  60. #Controlla lo stato di uscita
  61. fun_controll() {
  62. if [[ $? -eq 0 ]]
  63.         then
  64.             echo
  65.             echo "avresti killato bill... tutto ok!"
  66.             echo "[-] fatto" #done
  67.         else
  68.             echo
  69.         echo -e $RED
  70.             echo -e "[!] impossibile uccidere: $bill " && exit  #error
  71.         echo -e $NORM
  72.     fi
  73. }
  74.  
  75. # Controlla l'uscita di reload
  76. fun_conreload() {
  77. if [[ $? -eq 0 ]]
  78.         then
  79.             echo
  80.             echo "$bill riavviato con successo... tutto ok!"
  81.             echo "[-] fatto" #done
  82.         else
  83.             echo
  84.         echo -e $RED
  85.             echo -e "[!] impossibile riavviare: $bill " && exit  #error
  86.         echo -e $NORM
  87.     fi
  88. }
  89.  
  90. #Mostra i processi
  91. fun_show() {
  92. echo -e $RED
  93.     echo -e "[!] Proc: $nproc"
  94. echo -e $NORM
  95.     ps -A |grep $bill
  96. }
  97.  
  98. #Funzione per il riavvio dei processi appena killati
  99. fun_reload() {
  100. echo -e $YEL
  101.     read -p '[!]Vuoi riavviare il processo, default No ?' risp
  102.         case $risp in
  103.             s | S | y | Y) daemon $bill &> /dev/null
  104.                         fun_conreload ;;
  105.             *)echo -e "[!] $bill non verrà riavviato " ;;
  106.         esac
  107. echo -e $NORM
  108. exit 0
  109. }
  110.  
  111. #Inizia il main di fastkill
  112. if [[ $nproc -lt 1 ]]
  113.     then
  114.     echo -e $RED
  115.         echo -e "[!] Proc: $nproc"
  116.         echo -e "[!] Nessun processo trovato" && exit
  117.     echo -e $NORM
  118.     else
  119.     echo -e $YEL
  120.         echo -e "###################################################"
  121.         echo -e "###### \tFaster, Pussycat, Kill! Kill! \t   #######"
  122.         echo -e "###################################################"
  123.     echo -e  $NORM
  124. fi
  125.  
  126. if [[ $nproc -ge 2 ]]
  127.     then
  128.         fun_check_kill
  129.        
  130.     else
  131.         fun_killer
  132. fi
  133.  
  134.  
  135. exit 0
Advertisement
Add Comment
Please, Sign In to add comment