| Server IP : 146.190.157.162 / Your IP : 216.73.217.6 Web Server : Apache System : Linux ubuntu-s-2vcpu-4gb-amd-sfo3-01-KIT-DIGITAL 6.5.0-44-generic #44-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 7 15:10:09 UTC 2024 x86_64 User : businessweek ( 639) PHP Version : 8.2.10-2ubuntu2.2 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,pcntl_exec,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_signal,pcntl_signal_dispatch,pcntl_getpriority,pcntl_setpriority,dl,putenv,parse_ini_file,show_source MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/html/ |
Upload File : |
#!/bin/bash
DB_USER="uosolutions"
DB_HOST="10.124.0.3"
OUTPUT_FILE="listado_real_sitios.txt"
echo -n "MySQL password: "
read -s DB_PASS
echo
MYSQL="mysql -u${DB_USER} -p${DB_PASS} -h ${DB_HOST} -N -B"
# Obtener todas las bases de datos (excluyendo las del sistema)
DATABASES=$($MYSQL -e "SHOW DATABASES;" | grep -Ev "(information_schema|performance_schema|mysql|sys|phpmyadmin)")
echo "Procesando bases de datos para obtener fechas de creación reales..."
> "$OUTPUT_FILE"
for DB in $DATABASES; do
# 1. Buscamos la tabla de usuarios (usando LIKE por los prefijos)
USER_TABLE=$($MYSQL -e "SELECT table_name FROM information_schema.tables WHERE table_schema='${DB}' AND table_name LIKE '%users' LIMIT 1;" 2>/dev/null)
# 2. Buscamos la tabla de opciones para el dominio
OPT_TABLE=$($MYSQL -e "SELECT table_name FROM information_schema.tables WHERE table_schema='${DB}' AND table_name LIKE '%options' LIMIT 1;" 2>/dev/null)
if [ -n "$USER_TABLE" ] && [ -n "$OPT_TABLE" ]; then
# Obtenemos la fecha del primer usuario creado (ID 1 suele ser el admin original)
# Usamos MIN(user_registered) por si el ID 1 fue borrado
CREATION_DATE=$($MYSQL -e "SELECT DATE_FORMAT(MIN(user_registered), '%d/%m/%Y') FROM \`${DB}\`.\`${USER_TABLE}\`;" 2>/dev/null)
# Obtenemos el siteurl
SITE_URL=$($MYSQL -e "SELECT option_value FROM \`${DB}\`.\`${OPT_TABLE}\` WHERE option_name='siteurl' LIMIT 1;" 2>/dev/null)
if [ -n "$CREATION_DATE" ]; then
echo "DB: $DB | $CREATION_DATE | $SITE_URL" >> .tmp_db_list
fi
fi
done
# Ordenar por el año/mes/día para que quede del más viejo al más nuevo
# Para ordenar correctamente, generamos un temporal con formato YYYY-MM-DD primero
sort -k3 -t'|' .tmp_db_list > "$OUTPUT_FILE" 2>/dev/null
# Si el sort simple no ayuda, al menos ya tenés los datos reales:
cat .tmp_db_list | sort -t'|' -k2 > "$OUTPUT_FILE"
rm -f .tmp_db_list
echo "Finalizado. Revisá $OUTPUT_FILE"