del-ssr.sh 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #!/bin/bash
  2. red='\e[1;31m'
  3. green='\e[0;32m'
  4. NC='\e[0m'
  5. MYIP=$(wget -qO- ifconfig.me/ip);
  6. NUMBER_OF_CLIENTS=$(grep -c -E "^### " "/usr/local/shadowsocksr/akun.conf")
  7. if [[ ${NUMBER_OF_CLIENTS} == '0' ]]; then
  8. clear
  9. echo ""
  10. echo "You have no existing clients!"
  11. exit 1
  12. fi
  13. clear
  14. echo ""
  15. echo " Select the existing client you want to remove"
  16. echo " Press CTRL+C to return"
  17. echo " ==============================="
  18. echo " No Expired User"
  19. grep -E "^### " "/usr/local/shadowsocksr/akun.conf" | cut -d ' ' -f 2-3 | nl -s ') '
  20. until [[ ${CLIENT_NUMBER} -ge 1 && ${CLIENT_NUMBER} -le ${NUMBER_OF_CLIENTS} ]]; do
  21. if [[ ${CLIENT_NUMBER} == '1' ]]; then
  22. read -rp "Select one client [1]: " CLIENT_NUMBER
  23. else
  24. read -rp "Select one client [1-${NUMBER_OF_CLIENTS}]: " CLIENT_NUMBER
  25. fi
  26. done
  27. # match the selected number to a client name
  28. CLIENT_NAME=$(grep -E "^### " "/usr/local/shadowsocksr/akun.conf" | cut -d ' ' -f 2-3 | sed -n "${CLIENT_NUMBER}"p)
  29. user=$(grep -E "^### " "/usr/local/shadowsocksr/akun.conf" | cut -d ' ' -f 2 | sed -n "${CLIENT_NUMBER}"p)
  30. exp=$(grep -E "^### " "/usr/local/shadowsocksr/akun.conf" | cut -d ' ' -f 3 | sed -n "${CLIENT_NUMBER}"p)
  31. # remove [Peer] block matching $CLIENT_NAME
  32. sed -i "/^### $CLIENT_NAME/d" "/usr/local/shadowsocksr/akun.conf"
  33. cd /usr/local/shadowsocksr
  34. match_del=$(python mujson_mgr.py -d -u "${user}"|grep -w "delete user")
  35. cd
  36. service cron restart
  37. /etc/init.d/ssrmu restart
  38. clear
  39. echo " Shadowsocks-R Account Deleted Successfully"
  40. echo " =========================="
  41. echo " Client Name : $user"
  42. echo " Expired On : $exp"
  43. echo " =========================="