Comandos útiles

En esta página se muestra comandos que cualquier usuario normal de Linux debería saber. Cierto es que en Windows todo se hacer mediante ventanas pero una vez que se está suelto con el sistema, es mucho más rápido utilizar comandos de shell, es por ello lo de esta pequeña lista.

Esta lista se irá ampliando con otros comandos también útiles, según los vaya necesitando en el trabajo y los vaya aprendiendo, :P

Archivos

cat
Muestra el contenido de un archivo.
cd
Cambia de directorio. Sin parmátros vuelve al directorio $HOME.
cp
Copia archivos de un lugar a otro.
df
Muestra el uso de todos los sistemas de archivos montados.
diff
Compara dos archivos para ver sus diferencias.
du
Calcula el tamaño estimado de los archivos y directorios.
find
Busca archivos en el árbol de directorios.
fsck
Chequea y repara un sistema de archivos de Linux. para los diferentes sistemas de archivos (ext2, ext3, xfs, reiserfs, etc.) existen diferentes aplicaciones pero desde fsck se pueden llamar a todas.
grep
Muestra líneas (cogidas de la entrada estándar o redirigidas mediante una pipa (|)) que correspondan con la plantilla indicada.
head
Muestra las primeras líneas de un archivo.
ldd
Muestra las librerías de las que dependen los comandos.
less
Muestra los contenidos de un archivo de forma paginada.
locate
Busca archivos en el sistema utilizando una base de datos de los mismos.
mkdir
Crea directorios.
mv
Mueve archivos de un lugar a otro y cambia el nombre a directorios.
nl
Numera las líneas de un archivo dado y las imprime en pantalla. Usar -b a para que las numere todas.
od
Ver datos binarios.
rm
Borra archivos y, según los parámetros indicados, también puede borrar directorios.
rmdir
Borra directorios vacíos.
scp
Copia archivos igual que el comando cp pero de forma remota y segura.
sort
Ordena líneas de los archivos de texto.
stat
Ver los atributos de los archivos (nombre, i-nodes, etc.).
tail
Muestra las últimas líneas de un archivo. Con el parámetro -f lee el archivo siempre (sin terminar la ejecución) y es útil para mostrar los archivos de log.
tar
Empaquetador de archivos (sin compresión).
touch
Cambia las fechas de los archivos. Si el archivo indicado no existe, lo crea.
updatedb
Actualiza la base de datos de archivos del comando locate.
wc
Cuanta líneas, palabras y caracteres dentro de archivos de texto.
xxd
Ver datos binarios (en formato hexadecimal).
zcat
Muestra el contenido de archivos de texto comprimidos (en .gz).
zip
Empaquetador y compresor de archivos.
zless
Igual que less pero puede hacerlo sobre archivos comprimidos.

Procesos

<comando> &
Cualquier comando que se llame con un ampersand (&) al final de su línea de comandos se ejecutará en segundo plano quedando disponible el terminal para la ejecución de otros comandos.
Ctrl+z
Si se está ejecutando un comando en primer plano, la combinación de teclas Ctrl+z parará la ejecución de dicho comando.
anacron
Ejecuta comandos periodicamente.
at
Programa la ejecución de trabajos.
bg
Lleva como parámetro el nombre de un trabajo suspendido (pausado). Cuando se ejecuta reanuda el trabajo indicado ejecutándolo en segundo plano.
cron
Demonio para la ejecución de tareas según una planificación.
fg
Igual que el comando bg pero reanuda el trabajo en primer plano.
nohup
Lleva como parámetro un comando que se ejecutará pero no se parará aunque el terminal desde el que fue lanzado se cierre.
jobs
Muestra los trabajos que se están ejecutando actualmente en el terminal.
kill
Envía un mensaje a un proceso. Generalmente se usa para “matar” procesos.
killall
“Mata” procesos por su nombre.
lsof
Muestra los archivos abiertos en el sistema.
ps
Muestra los procesos que se están ejecutando en el sistema.
top
Muestro los procesos que se están ejecutando en el sistema actualizándose contínuamente y mostrando información como el tiempo de CPU, la memoria usada, etc.

Red/Internet

hostname
Devuelve el nombre del host (el nombre del ordenador en la red).
ifconfig
Configura las interfaces de red del sistema asignando direcciones de red y demás.
iptraf
Analiza el tráfico de la red.
iwspy
Proporciona estadísticas sobre un dispositivo inalámbrico.
iwconfig
Similar a ifconfig pero destinado a las interfaces inalámbricas. Configura la frecuencia, la velocidad, el ESSID, etc.
iwlist
Muestra las redes detectadas para una interfaz determinada así como otros parámetros.
netstat
Muestra información de las conexiones del sistema así como tablas de rutas e información de protocolos.
route
Manipula las tablas de enrutado de TCP/IP (para hacer que los paquetes se dirijan a la puerta de enlace y demás).
rwho
Muestra los usuarios logueados en la red. Este servicio debe estar activado.
scapy
Utilidad para enviar paquetes a través de la red.
tcpdump
Vuelca el tráfico de una red para su inspección.

Seguridad

chgrp
Cambia el grupo al que pertenece un archivo.
chmod
Cambia los permisos de un archivo: de lectura (r), de escritura (w) y de ejecución (x); para el usuario dueño del archivo (u), para el grupo al que pertenece (g), resto de usuarios (o) y todos (a).
chown
Cambia el propietario de un archivo.
groupadd, groupmod, groupdel
Añade, modifica y borra un grupo de usuarios.
groups
Muestra los grupos a los que pertenece el usuario indicado.
id
Muestra información para el usuario dado como su UID y sus GID‘s.
last
Muestra los últimos usuarios logueados en el sistema.
lastb
Muestra los intentos de login fallidos.
ssh
Cliente de SSH (shell remota segura).
su
Cambia de usuario. Sin parámetros se pasa a root.
sudo
Ejecuta un comando como otro usuario.
useradd, usermod, userdel
Añade, modifica o borra un usuario.

Sistema

apropos
Busca entre las páginas del manual y configuración. Sirve para buscar comandos que hagan lo que quieras.
apt-cache
Busca paquetes .deb en los repositorios de la distribución (sólo en distribuciones Debian y derivadas) dada una palabra clave.
apt-get
Instala aplicaciones en el sistema basándose en el sistema de paquetes .deb de Debian. Además, gestiona las dependencias de los mismos.
bonnie
Herramienta para hacer tests de discos duros detectando cuellos de botella.
crontab
Gestiona los archivos crontab de cada usuario.
dmesg
Muestra el log del kernel (incluidos los mensajes durante el arranque).
dpkg
Gestor de paquetes de Debian.
eject
Abre y cierra las unidades de CD-ROM.
hdparm
Obtiene o ajusta parámetros del disco duro. También puede obtener los parámetros de SMART.
history
Muestra los últimos comandos ejecutados. Con Ctrl+R permite buscar entre el histórico.
init
Controla la ejecución de procesos al inicio del sistema y durante su ejecución así como los niveles de ejecución (runlevels).
logger
Envia mensajes al log del sistema (/var/log/syslog).
lsmod
Proporciona información de los módulos cargados por el kernel.
lspci
Lista todos los dispositivos PCI.
modinfo
Muestra información sobre los módulos del kernel.
modprobe
Instala y desinstala módulos del kernel.
mount
Monta un sistema de archivos.
poweroff
Apaga el sistema.
reboot
Reinicia el sistema.
shutdown
Apaga o reinicia el sistema.
uname
Muestra información del sistema.
uptime
Muestra el tiempo desde que se inició el sistema.
vi, vim
Editor de textos en modo consola y basado en comandos.
w
Muestra los usuarios conectados en el sistema y lo que están haciendo.
who
Muestra los usuarios que hay actualmente en el sistema.
whoami
Muestra quién es el usuario actual del sistema.

Varios

lkl
Linux Key Logger: captura las teclas presionadas en el teclado (versión beta que no funciona demasiado bien).
whatis
Muestra la descripción de una página del manual, util para saber para qué sirven las aplicaciones.
whereis
Localiza los archivos binarios (ejecutables), el código fuente y el manual para un comando dado.
which
Da la ubicación de un comando.
zenity
Muestra cuadros de diálog en GTK desde la línea de comandos. Tiene multitud de opciones y es útil para hacer scripts.

Para más información consultar el manual de cada comando: man <comando>

Y para una lista realmente completa y con ejemplos, podemos ver Advanced Bash-Scripting Guide.

Última actualización: 2008-11-29