File: //usr/local/bin/wp_reset_passwords.sh
#!/bin/bash
# List all WP Home Directories
HOME_DIR=$(ls -lha /home/*/public_html/wp-config.php | awk {'print $9'} | cut -f1,2,3,4 -d"/")
for DIR in $HOME_DIR
do
DOMAIN=$(echo $DIR | cut -f3 -d"/")
cd $DIR
USER_LIST=$(wp user list --role=administrator --allow-root --field="user_login")
for USER in $USER_LIST
do
PASSWORD=$(< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-32};echo;)
wp user update $USER --user_pass="$PASSWORD" --allow-root
echo $DOMAIN, $USER, $PASSWORD >> /root/reset-wp-passwords.txt
done
done