Chuleta de Shell
Una referencia de Bash / shell buscable e imprimible: navegación, archivos, tuberías, variables, bucles, condicionales y prácticos one-liners. Gratis.
Navegación
8pwd
Muestra el directorio actual
ls -la
Lista todos los archivos con detalles
cd /path
Cambia de directorio
cd -
Va al directorio anterior
cd ~
Va al directorio home
tree -L 2
Muestra el árbol de directorios (2 niveles)
pushd / popd
Apila y desapila la pila de directorios
ls -lhS
Lista por tamaño, legible para humanos
Archivos y directorios
10touch file.txt
Crea un archivo vacío
mkdir -p a/b/c
Crea directorios anidados
cp -r src dest
Copia recursivamente
mv old new
Mueve o renombra
rm -rf dir
Elimina recursivamente (¡cuidado!)
ln -s target link
Crea un enlace simbólico
cat file.txt
Muestra el contenido de un archivo
head -n 20 / tail -n 20
Primeras / últimas 20 líneas
tail -f log.txt
Sigue un archivo a medida que crece
less file.txt
Recorre un archivo por páginas
Buscar y encontrar
8grep 'pattern' file
Busca un patrón en un archivo
grep -rin 'text' .
Recursivo, sin distinguir mayúsculas, numerado
find . -name '*.php'
Encuentra archivos por nombre
find . -type f -mtime -1
Archivos modificados en el último día
find . -size +10M
Archivos mayores de 10 MB
which node
Localiza un ejecutable
locate file.txt
Busca por base de datos indexada
grep -v 'skip' file
Invierte la coincidencia (excluye líneas)
Procesamiento de texto
9wc -l file
Cuenta líneas
sort file | uniq -c
Ordena y cuenta duplicados
cut -d',' -f1 file
Extrae una columna CSV
awk '{print $1}' file
Muestra el primer campo
sed 's/old/new/g' file
Sustituye texto
tr 'a-z' 'A-Z'
Traduce caracteres
diff a.txt b.txt
Compara dos archivos
tee out.txt
Escribe en un archivo y en stdout
xargs -I{} cmd {}
Construye comandos desde la entrada
Tuberías y redirección
9a | b
Canaliza la salida de a hacia b
cmd > file
Redirige stdout (sobrescribe)
cmd >> file
Redirige stdout (añade)
cmd 2> err.log
Redirige stderr
cmd > out 2>&1
Redirige ambos flujos
cmd < input.txt
Lee stdin desde un archivo
cmd1 && cmd2
Ejecuta cmd2 solo si cmd1 tiene éxito
cmd1 || cmd2
Ejecuta cmd2 solo si cmd1 falla
cmd &
Ejecuta en segundo plano
Permisos y propiedad
8chmod 755 file
rwx para el propietario, rx para los demás
chmod +x script.sh
Hace un archivo ejecutable
chmod -R 644 dir
Cambio de permisos recursivo
chown user:group file
Cambia propietario y grupo
umask 022
Máscara de permisos por defecto
sudo cmd
Ejecuta un comando como root
stat file
Muestra los metadatos de un archivo
ls -l file
Ve los bits de permisos
Procesos y sistema
9ps aux
Lista los procesos en ejecución
top / htop
Monitor de procesos en vivo
kill -9 PID
Mata forzosamente un proceso
pkill -f name
Mata procesos por nombre
jobs / fg / bg
Gestiona trabajos en segundo plano
df -h
Uso del espacio en disco
du -sh dir
Tamaño de un directorio
free -h
Uso de memoria
uname -a
Información del sistema y el kernel
Variables y expansión
9NAME='value'
Define una variable (sin espacios)
echo \"$NAME\"
Usa una variable
export PATH=\"$PATH:/x\"
Exporta a procesos hijos
$(command)
Sustitución de comandos
${VAR:-default}
Valor por defecto si no está definida
$1 $2 $@
Argumentos posicionales del script
$?
Código de salida del último comando
read -p 'Name: ' x
Lee la entrada del usuario
echo {1..5}
Expansión de llaves
Scripting
9#!/usr/bin/env bash
Línea shebang
set -euo pipefail
Modo estricto más seguro
if [ -f file ]; then ...; fi
Condicional según una prueba de archivo
[ \"$a\" = \"$b\" ]
Comparación de strings
for f in *.txt; do ...; done
Itera sobre archivos
while read line; do ...; done < file
Lee un archivo línea por línea
case \"$x\" in a) ...;; esac
Bifurcación múltiple
function greet() { echo hi; }
Define una función
trap cleanup EXIT
Ejecuta un manejador al salir
Ninguna entrada coincide con “:q”.
¿Necesitas ayuda?
¿Encontraste un problema con esta herramienta? Avísanos.