SSH para desarrolladores de WordPress: 10 comandos que salvaran su vida
ES

SSH para desarrolladores de WordPress: 10 comandos que salvaran su vida

Última verificación: 1 de mayo de 2026
8min de lectura
Guía
Desarrollador full-stack

Como desarrollador de WordPress, probablemente pasa mucho tiempo en un clientes FTP (FileZilla) o panel de hosting. Eso es un error. Lo que toma 15 minutos en FTP (ej. eliminar una carpeta cache con 100,000 archivos) toma 2 segundos en la terminal SSH.

En esta guía, le mostrare un conjunto de comandos que los desarrolladores senior no pueden imaginar trabajar sin ellos.

#Por que todo desarrollador de WordPress necesita SSH

Antes de sumergirnos en los comandos, entendamos por que SSH es transformador para el desarrollo de WordPress:

  • Velocidad: Las operaciones se ejecutan a la velocidad del disco del servidor, no de su conexión a internet
  • Automatizacion: Puede crear scripts que automatizan tareas repetitivas
  • Depuracion en vivo: Vea errores en tiempo real mientras se producen
  • Gestión remota: Administre servidores desde cualquier lugar del mundo
  • Seguridad: Conexión cifrada de extremo a extremo

#Configuración inicial de SSH

Si nunca ha usado SSH, aquí esta como comenzar:

## Generar par de claves SSH (solo la primera vez)
ssh-keygen -t ed25519 -C "[email protected]"

## Copiar clave publica al servidor
ssh-copy-id usuario@ip-del-servidor

## Conectarse al servidor
ssh usuario@ip-del-servidor

La autenticación por claves es más segura que contraseñas y elimina la necesidad de escribir la contraseña cada vez.

#1. Análisis de disco: Que esta consumiendo mi espacio?

Cuando el hosting grita “Cuota Excedida”, FileZilla no ayudara. Use esto:

#du (disk usage)

## Mostrar carpetas en el directorio actual, ordenadas por tamaño
du -h --max-depth=1 | sort -hr

Ejemplo de salida:

2.1G    ./wp-content
450M    ./wp-content/uploads
380M    ./wp-content/cache
120M    ./wp-content/plugins
45M     ./wp-admin
12M     ./wp-includes

Inmediatamente puede ver que la carpeta de cache consume 380MB y puede ser limpiada de forma segura.

#ncdu (ncurses disk usage)

Si puede, ejecute ncdu. Es un gestor interactivo que navega con las flechas. Un absoluto “cambio de juego” para la limpieza de servidores.

## Instalar ncdu (si no esta disponible)
apt-get install ncdu  # Debian/Ubuntu
yum install ncdu      # CentOS/RHEL

## Ejecutar en el directorio de WordPress
ncdu /var/www/html

#2. Logs: Depuracion en tiempo real

En lugar de descargar debug.log, abrirlo con Bloc de Notas y buscar errores… vealos en vivo!

#tail -f

## Seguir las ultimás líneas del archivo en tiempo real
tail -f wp-content/debug.log

Ahora refresque la página en su navegador, y los errores apareceran en pantalla. Salga con Ctrl+C.

#Filtrar logs en tiempo real

## Solo ver errores fatales
tail -f wp-content/debug.log | grep -i "fatal"

## Ver errores de un plugin específico
tail -f wp-content/debug.log | grep "woocommerce"

## Mostrar las ultimás 100 líneas y luego seguir
tail -100f wp-content/debug.log

#Logs del servidor web

Además del debug.log de WordPress, los logs del servidor web son invaluables:

## Apache - ver errores
tail -f /var/log/apache2/error.log

## Nginx - ver errores
tail -f /var/log/nginx/error.log

## Ver solicitudes 404 en tiempo real
tail -f /var/log/apache2/access.log | grep " 404 "

#3. Búsqueda de archivos: Donde esta ese código?!

Buscando donde se uso add_image_size? No descargue todo el proyecto.

#grep

## Buscar la frase "add_image_size" en todos los archivos PHP recursivamente
grep -r "add_image_size" .

Si solo quiere una lista de archivos (sin contenido):

grep -rl "add_image_size" .

#Búsquedas avanzadas con grep

## Buscar con contexto (3 líneas antes y despues)
grep -r -C 3 "wp_enqueue_script" wp-content/themes/

## Buscar solo en archivos PHP
grep -r --include="*.php" "add_action" wp-content/plugins/

## Buscar excluyendo directorios
grep -r --exclude-dir={node_modules,vendor,.git} "API_KEY" .

## Contar ocurrencias
grep -rc "do_action" wp-content/plugins/ | sort -t: -k2 -rn | head -10

#4. Permisos: Arreglar “403 Forbidden”

A menudo despues de una migración, los archivos tienen permisos incorrectos. Recuerde la regla:

  • Directorios: 755
  • Archivos: 644

#find + chmod

No lo haga manualmente. Automaticelo:

## Establecer 755 para todos los directorios
find . -type d -exec chmod 755 {} \;

## Establecer 644 para todos los archivos
find . -type f -exec chmod 644 {} \;

#Permisos especiales de seguridad

## wp-config.php debe ser más restrictivo
chmod 400 wp-config.php

## .htaccess
chmod 444 .htaccess

## Verificar propietario de los archivos
chown -R www-data:www-data /var/www/html/

#5. Respaldos: Archivo rápido

Quiere un respaldo rápido antes de una actualización? No copie vía FTP (tarda una eternidad). Comprimalo en el servidor.

#tar

## Crear archivo backup.tar.gz del directorio actual
tar -czf backup.tar.gz .

Descomprimir:

tar -xzf backup.tar.gz

#Respaldos con fecha

## Crear respaldo con marca de tiempo
tar -czf backup-$(date +%Y%m%d-%H%M).tar.gz .

## Excluir carpetas innecesarias del respaldo
tar -czf backup.tar.gz --exclude='./wp-content/cache' --exclude='./wp-content/uploads/cache' .

#6. Base de datos (WP-CLI)

Si tiene WP-CLI (y deberia), no necesita phpMyAdmin.

## Exportar base de datos
wp db export backup.sql

## Importar base de datos
wp db import backup.sql

## Buscar y reemplazar (migración)
wp search-replace 'sitio-viejo.com' 'sitio-nuevo.com' --all-tables

## Listar usuarios
wp user list

## Cambiar contraseña
wp user update 1 --user_pass="NuevaContrasena2026"

## Desactivar todos los plugins (emergencia)
wp plugin deactivate --all

## Verificar integridad del core
wp core verify-checksums

#Comandos WP-CLI avanzados

## Optimizar base de datos
wp db optimize

## Ver tamaño de tablas
wp db size --tables

## Buscar en la base de datos
wp db search "texto_sospechoso"

## Regenerar miniaturas de imagenes
wp media regenerate --yes

## Limpiar transients expirados
wp transient delete --expired

#7. Eliminación masiva de archivos

Eliminar una carpeta de plugin cache con un millon de archivos pequeños vía FTP puede tomar una hora.

#rm

## Eliminar carpeta y todo su contenido (sin deshacer!)
rm -rf wp-content/cache/

Tiempo empleado: 0.5 segundos.

#Eliminación segura

## Ver que se eliminaria primero (dry run)
find wp-content/cache/ -type f | head -20

## Contar archivos antes de eliminar
find wp-content/cache/ -type f | wc -l

## Eliminar archivos más antiguos de 30 dias
find wp-content/cache/ -type f -mtime +30 -delete

#8. Transferencia de archivos entre servidores

Cuando necesita mover archivos entre servidores:

#rsync

## Sincronizar archivos al servidor remoto
rsync -avz --progress /local/path/ usuario@servidor:/remoto/path/

## Sincronizar solo archivos cambiados
rsync -avz --progress --update /local/ usuario@servidor:/remoto/

## Excluir archivos innecesarios
rsync -avz --exclude='node_modules' --exclude='.git' /local/ usuario@servidor:/remoto/

#scp para transferencias simples

## Copiar archivo al servidor
scp backup.sql usuario@servidor:/ruta/destino/

## Copiar archivo desde el servidor
scp usuario@servidor:/ruta/archivo.sql ./local/

#9. Monitorización del servidor

#Uso de recursos en tiempo real

## Ver procesos que consumen más recursos
top

## Version mejorada (si disponible)
htop

## Ver uso de memoria
free -h

## Ver uso de disco por particion
df -h

## Ver conexiónes de red activas
netstat -tuln

#Identificar procesos PHP pesados

## Ver procesos PHP activos
ps aux | grep php

## Ver consultas MySQL lentas
mysqladmin -u root -p processlist

#10. Aliases y scripts de productividad

Cree aliases para comandos que usa frecuentemente:

## Agregar a ~/.bashrc o ~/.zshrc
alias wplog='tail -f wp-content/debug.log'
alias wpsize='du -h --max-depth=1 | sort -hr'
alias wpcache='rm -rf wp-content/cache/*'
alias wpdb='wp db export backup-$(date +%Y%m%d).sql'
alias wpcheck='wp core verify-checksums && wp plugin list --update=available'

#Script de mantenimiento automatizado

#!/bin/bash
## Script de mantenimiento diario de WordPress
echo "=== Mantenimiento WordPress $(date) ==="

## Respaldo de base de datos
wp db export /respaldos/db-$(date +%Y%m%d).sql
echo "Base de datos respaldada"

## Verificar integridad del core
wp core verify-checksums
echo "Core verificado"

## Listar actualizaciones disponibles
echo "=== Actualizaciones disponibles ==="
wp plugin list --update=available
wp theme list --update=available
wp core check-update

## Limpiar transients
wp transient delete --expired
echo "Transients limpiados"

## Optimizar base de datos
wp db optimize
echo "Base de datos optimizada"

echo "=== Mantenimiento completo ==="

#Resumen

La terminal SSH no muerde. Le permite trabajar a la velocidad del disco del servidor, no a la velocidad de su conexión a internet. Comience con ncdu y tail -f — no querra volver a hacer clic con el raton.

Los comandos esenciales para empezar:

  1. du / ncdu - Análisis de espacio en disco
  2. tail -f - Depuracion en tiempo real
  3. grep -r - Búsqueda de código
  4. find + chmod - Correccion de permisos
  5. tar - Respaldos rápidos
  6. wp (WP-CLI) - Gestión completa de WordPress
  7. rm -rf - Eliminación rápida (con precaucion!)
  8. rsync - Transferencia eficiente de archivos
  9. top / htop - Monitorización de recursos
  10. Aliases - Productividad automatizada

Conozca más sobre los servicios de desarrollo WordPress en WPPoland.

Siguiente paso

Transforma el artículo en una implementación real

Este bloque refuerza el enlazado interno y lleva al lector al siguiente paso más útil dentro de la arquitectura del sitio.

¿Quieres implementar esto en tu sitio?

Si quieres transformar el artículo en mejoras concretas, rediseño o un plan de implementación, puedo cerrar el alcance y ejecutar.

FAQ del artículo

Preguntas Frecuentes

Respuestas prácticas para aplicar el tema en la ejecución real.

SEO-ready GEO-ready AEO-ready 5 Q&A
Es dificil aprender SSH para desarrolladores de WordPress? #
SSH tiene una curva de aprendizaje pero proporciona un flujo de trabajo 1000x más rápido que FTP. Comience con comandos básicos como ls, cd y du.
Cual es la diferencia entre SSH y FTP? #
SSH proporciona acceso shell cifrado y control total del servidor, mientras que FTP solo permite transferencias de archivos con rendimiento más lento.
Necesito SSH para el desarrollo de WordPress? #
Aunque no es obligatorio, SSH es esencial para el desarrollo profesional de WordPress, depuración y gestión de servidores.
Cuales son los comandos SSH más esenciales para WordPress? #
du para uso de disco, grep para búsquedas, tail para monitorización de logs, tar para respaldos y comandos de WP-CLI.
Es seguro usar SSH? #
SSH es altamente seguro cuando se usa autenticación basada en claves y prácticas adecuadas de fortalecimiento del servidor.

¿Necesitas un FAQ adaptado a tu sector y mercado? Preparamos una versión alineada con tus objetivos de negocio.

Hablemos

Artículos Relacionados

Sigues usando Local by Flywheel o MAMP? Descubre por que Docker es el estándar de la industria para el desarrollo WordPress en 2026 y como configurarlo.
development

Docker para desarrollo WordPress en 2026: Contenerización fácil

Sigues usando Local by Flywheel o MAMP? Descubre por que Docker es el estándar de la industria para el desarrollo WordPress en 2026 y como configurarlo.

Descubre cuándo una reconstrucción de sitio web es necesaria. 7 señales técnicas y de negocio medibles que indican que tu sitio necesita modernización en 2026.
wordpress

¿Cuándo reconstruir tu sitio web? 7 señales de que necesita modernización

Descubre cuándo una reconstrucción de sitio web es necesaria. 7 señales técnicas y de negocio medibles que indican que tu sitio necesita modernización en 2026.

WordPress 7.0 con AI Client vs Astro 6 tras la adquisición de Cloudflare. Comparativa de velocidad, coste, SEO y seguridad. Mi opinión tras 20 años como desarrollador WP - cuándo migrar y cuándo quedarse.
wordpress

WordPress 7.0 vs Astro 6 tras la adquisición de Cloudflare - ¿quién gana en 2026?

WordPress 7.0 con AI Client vs Astro 6 tras la adquisición de Cloudflare. Comparativa de velocidad, coste, SEO y seguridad. Mi opinión tras 20 años como desarrollador WP - cuándo migrar y cuándo quedarse.