Advertisement
Guest User

Untitled

a guest
Mar 1st, 2019
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.33 KB | None | 0 0
  1. #!/bin/bash
  2. # wp-run-cron.sh: run wordpress cron 24022019 nawawi
  3.  
  4. _BASEPATH="/opt/wp-operation";
  5. _SRCPATH="/home/website/wordpress";
  6. _RDATE="$(date +"%Y-%m-%d %H:%M:%S")";
  7. _LOCKFILE="${_BASEPATH}/wp-run-cron-sh.lock";
  8.  
  9. _WPCLI="${_BASEPATH}/wp-cli.phar";
  10.  
  11. if [ ! -d $_BASEPATH ]; then
  12. echo "$_BASEPATH not exist";
  13. exit 1;
  14. fi
  15.  
  16. if ! cd $_BASEPATH &>/dev/null; then
  17. echo "Cannot change to directory to $_BASEPATH";
  18. exit 1;
  19. fi
  20.  
  21. if [ ! -x "${_WPCLI}" ]; then
  22. echo "wp-cli.phar binary not found";
  23. exit 1;
  24. fi
  25. _WPCLI="${_WPCLI} --allow-root";
  26.  
  27. if [ -f "${_LOCKFILE}" ]; then
  28. echo "process run";
  29. exit 1;
  30. fi
  31.  
  32. trap "{ rm -f $_LOCKFILE; exit 1; }" SIGINT SIGTERM SIGHUP SIGKILL SIGABRT EXIT;
  33. touch $_LOCKFILE;
  34.  
  35. for _CONF in $_SRCPATH/*/wp-config.php; do
  36. [ ! -f $_CONF ] && continue;
  37.  
  38. # check database exist
  39. _DBNAME="$(grep DB_NAME ${_CONF} | sed -e "s/.*,\s'\(.*\)');/\1/")";
  40. _DBUSER="$(grep DB_USER ${_CONF} | sed -e "s/.*,\s'\(.*\)');/\1/")";
  41. _DBPASS="$(grep DB_PASSWORD ${_CONF} | sed -e "s/.*,\s'\(.*\)');/\1/")";
  42.  
  43. [ "x${_DBNAME}" = "x" ] && continue;
  44. [ "x${_DBUSER}" = "x" ] && continue;
  45. [ "x${_DBPASS}" = "x" ] && continue;
  46.  
  47. _BF="$(dirname $_CONF)";
  48.  
  49. echo "# EXECUTE: ${_BF}";
  50. $_WPCLI --path=$_BF cron event run --all;
  51.  
  52. done
  53.  
  54. echo $_RDATE > $_BASEPATH/last-wp-run-cron-sh.txt;
  55. rm -f $_LOCKFILE;
  56. exit 0;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement