Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Como la mayoría de sistemas operativos modernos, Linux también le ofrece al usuario dos
posibilidades de interacción: todos los ajustes que se realizan en la interfaz gráfica (GUI) se
pueden llevar a cabo con líneas de comandos en el denominado shell.
Cuando se abre la consola de un sistema operativo, esta inicia el shell configurado como
estándar en los ajustes (en la imagen, el Bourne Again Shell o Bash) y recibe las entradas en
el denominado prompt del terminal.
Dato
con el paso del tiempo se han ido desarrollando diversos shells para sistemas operativos
Unix-like, muy diferentes entre sí en cuanto a funcionalidad y usabilidad, de forma que el
usuario de Linux cuenta con la posibilidad de escoger el intérprete de líneas de comandos que
se quiere utilizar. La mayoría de sistemas operativos ya cuentan incluso con varios shells
instalados por defecto. Cambiar de uno a otro es muy sencillo y se realiza en el mismo
terminal (ver chsh en el capítulo sobre gestión de cuentas de usuario). Además de los
programas estándar Bash y Dash, entre los shells más conocidos se incluyen también Fish, Z-
Shell, Korn-Shell, (t)csh y Mksh.
Índice
1. Comandos básicos de Linux
2. Páginas de ayuda
3. Operaciones en el directorio
4. Operaciones en archivos
5. Gestión de los permisos
6. Opciones de búsqueda
7. Información sobre los usuarios
8. Gestión de cuentas de usuario
9. Gestión del sistema
10. Información del sistema
11. Información acerca del hardware
12. Gestión de procesos
13. Pager
14. Editores
15. Gestión de redes
16. Archivar y comprimir
17. Gestión de particiones
18. Miscelánea
Para interactuar con el shell se utilizan comandos con los que se inician los programas de
líneas de comandos. Para cualquier acción que se quiera ejecutar en el terminal se escribe
una orden con el siguiente esquema básico:
Comando Descripción
help
help
Si introduces help en combinación con un comando
shell obtienes una breve descripción del comando en
cuestión.
help COMANDO
history
Páginas de ayuda
¿No sabes cuáles son los pasos siguientes? A este respecto, Linux ofrece en el
terminal páginas de ayuda y de documentación como las Unix Man Pages (Manual de Unix)
y las páginas de información de GNU, las cuales contienen una exhaustiva descripción de
todos los programas, comandos, archivos de configuración, formatos de archivo y funciones
del kernel. Con whatis y apropos en la categoría de páginas de ayuda, cuentas con programas
de líneas de comando que permiten examinar las páginas del manual del sistema operativo
por palabras clave.
Comando Descripción
Examina el manual
man clear
man 1 clear
Operaciones en el directorio
Algunos comandos básicos de Linux permiten llevar a cabo operaciones en los directorios del
sistema, como puede ser crear ficheros, borrarlos y gestionarlos, así como navegar por el
árbol del directorio. Entre los comandos más importantes de esta categoría se
incluyen cd, ls, mkdir o rmdir.
Comando Descripción
Crea un directorio
mkdir /home/user/Desktop/test
mkdir/Desktop/test
mkdirhier [OPCIÓN]
/home/user/directorio1/directorio2/directorio3
Si directorio1 y directorio2 ya existieran,
entonces mkdirhier solo crearía directorio3. En caso
contrario, se crean los tres.
pwd [OPCIONES]
Borra el directorio
Operaciones en archivos
Los comandos Linux de esta categoría permiten llevar a cabo diversas operaciones desde el
terminal que atañen a los archivos y, utilizando comandos básicos como cp, mv y rm, se
pueden copiar, desplazar, renombrar o borrar archivos del sistema.
Comando Descripción
Salida: imagen
cp [OPCIONES] ARCHIVO_ORIGEN
DIRECTORIO_DESTINO
cp [OPCIONES] ARCHIVO_ORIGEN1
ARCHIVO_ORIGEN2 DIRECTORIO_DESTINO
Su sintaxis es:
dirname
dirname [OPCIONES]
/home/user
lsof [OPCIONES]
Ejemplos de su aplicación:
mv [OPCIONES] ARCHIVO_ORIGEN
DIRECTORIO_DESTINO
mv [OPCIONES] ARCHIVO_ORIGEN1
ARCHIVO_ORIGEN2 DIRECTORIO_DESTINO
Ejemplo: mv archivo1.txt archivo2.txt
home/user/documentos/2017
mv [OPCIONES] DIRECTORIO_ANTIGUO
DIRECTORIO_NUEVO
mv [OPCIONES] ARCHIVO_ANTIGUO
ARCHIVO_NUEVO
Ejemplo: mv archivo1.txt archivo2.txt
mv [OPCIONES] DIRECTORIO_ANTIGUO
DIRECTORIO_NUEVO
s/PATRONDEBUSQUEDA/SUSTITUCIÓN/MODIFICADO
R
rm [OPCIONES] ARCHIVO
rm rm [OPCIONES] DIRECTORIO
rm -R DIRECTORIO
rm [OPCIONES] ARCHIVO1 ARCHIVO2
Ejemplo:
split -b 95m archivo.tgz split-archivo.tgz.
split-archivo.tar.aa
split-archivo.tar.ab
split-archivo.tar.ac
touch [OPCIONES] ARCHIVO
Ejemplo:
Comando Descripción
chattr +i archivo.txt
o
chmod
chmod [OPCIONES] MODO DIRECTORIO
chown [OPCIONES]
nombre_propietario:grupos_archivos.txt
Opciones de búsqueda
Linux también dispone de diversos comandos para explorar el sistema desde el terminal.
Comando Descripción
Ejemplo:
locate PATRÓN_DE_BÚSQUEDA
locate "*.png"
Updatedb
Ejemplo:
whereis
whereis firefox
Ejemplo:
which
which firefox
Salida:
/usr/bin/firefox
Comando Descripción
last [OPCIONES]
last
Para ello, la consola solicita información del
archivo wtmp en /var/log/wtmp.
w [OPCIONES] [USUARIO]
whoami [OPCIONES]
Comando Descripción
adduser test
Ejemplo:
deluser peter23
delgroup users
Ejemplos:
El grupo users pasa a llamarse all.
passwd
passwd -l USUARIO
passwd -x 30 -w 5 -i 3 peter24
sudo LLAMADA
sudo -i
su [OPCIONES] [USUARIO]
usermod [OPCIONES] USUARIO
usermod -L peter24
Nota
la mayor parte de comandos de gestión del sistema requiere permisos de administrador.
Comando Descripción
reboot [OPCIONES]
Ejemplo 1:
Ejemplo 2:
shutdown +10
shutdown -r +10
Comando Descripción
Entrada:
Salida:
1493285340
1493285340 en tiempo Unix equivale al 27.04.2017 -
11:29:00 horas.
df [OPCIONES]
df [OPCIONES] [ARCHIVO]
dmesg [OPCIONES]
Ejemplo:
dmesg | tail
du [OPCIONES] [DIRECTORIO]
free [OPCIONES]
hostname [OPCIONES]
uname [OPCIONES]
vmstat [OPCIONES]
Ejemplo:
vmstat 4 8
Comando Descripción
lshw [OPCIONES]
Gestión de procesos
En Linux se denominan procesos a las instancias de un programa en ejecución. Los
siguientes comandos pertenecen al repertorio estándar de la gestión de procesos y permiten
supervisarlos cómodamente desde el terminal e intervenir si es necesario.
Comando Descripción
chrt -p PID
Ejemplo:
chrt -p 1234
Ejemplo:
chrt 99 firefox
Ejemplo:
chrt -p 20 1234
Ejemplo:
kill 1234
nice -n 4 nano
nohup COMANDO
Ejemplo:
pgrep ssh
Ejemplo:
pgrep -x sshd
pidof nano
Ejemplos:
renice 12 -p 1234
renice 3 -g 3456
sleep CIFRA[SUFIJO]
sleep 4m
Pager
Para mantener la perspectiva también en el caso de archivos de varias páginas, los comandos
de esta categoría denominada Pager permiten seleccionar las partes que se quieren mostrar
en el terminal e incluso hojear los archivos en el modo interactivo.
Comando Descripción
Ejemplo:
head -n 3 ejemplo.txt
more [OPCIONES] ARCHIVO
Editores
Con Linux no es necesario utilizar un programa de edición de textos para modificar archivos
de configuración, editar fragmentos de código o escribir notas cortas, pues es posible
abrir editores de texto simples en el terminal. A continuación presentamos tres comandos
que deberías conocer.
Comando Descripción
El editor de texto Emacs
emacs --no-window-system
nano [Opciones]
Gestión de redes
También es posible gestionar redes en el terminal utilizando Linux. Ya se trate de examinar
una conexión, de solicitar información al DNS, de configurar interfaces o de enviar archivos a
otro ordenador, con los siguientes comandos basta una línea para llevar a cabo tu propósito.
Comando Descripción
arp
arp -a HOST
Ejemplo:
arp -a ejemplo.com
Ejemplo:
arp -d HOST
ip a s dev eth0
o en forma abreviada:
ip l s dev eth0
phy#ÍNDICE_DEL_DISPOSITIVO = Dispositivo
inalámbrico (vía índice)
reg = Agente regulatorio para configurar la región y el
país
iw help
iw list
iw reg get
iw reg set DE
- Consultar eventos:
iw event
netstat [OPCIONES]
netstat Utilizado sin opción, el comando entrega todos los
sockets abiertos en el terminal. También se pueden
utilizar las siguientes opciones para consultar tablas de
enrutamiento (-r), conexiones enmascaradas (-M) o
mensajes de enlace de red (-N).
nslookup
route [OPCIONES]
route
Ejemplo:
scp Ejemplos:
scp /home/max/images/image.jpg
max@example.com:/home/max/archiv
tty [OPCIONES]
Archivar y comprimir
Linux facilita diversas tecnologías con el fin de comprimir y empaquetar archivos, aunque cabe
tener en cuenta que no siempre un proceso de archivado implica una compresión. Por
ejemplo, el programa para archivar ficheros tar suele utilizarse en combinación con programas
de compresión como gzip, bzip2 o xz.
Comando Descripción
Con -j (bzip2), -J (xz), -z (gzip) y -Z (compress), tar también
ofrece opciones que permiten comprimir o descomprimir
archivos durante el proceso de empaquetado o extracción
invocando a otro programa.
gzip ejemplo.txt
gzip -k archivo.txt
El comando
crea los
archivos ejemplo_1.txt.gz, ejemplo_2.txt.gz y ejemplo_3.txt.gz
gzip -d ejemplo.txt.gz
gunzip ejemplo.txt.gz
xz [OPCIONES] ARCHIVOS
Gestión de particiones
Cuando se trabaja con Linux, para poder acceder a un sistema de ficheros residente en una
partición diferente, este ha de estar integrado en la estructura de directorios del sistema
operativo. A este procedimiento se le denomina “montar” (del inglés «mount») una partición y
puede llevarse a cabo en la interfaz gráfica de usuario. Utilizando el terminal de líneas de
comandos, el usuario dispone también de programas como lsblk, blkid o mount, con los cuales
puede solicitar datos sobre los dispositivos de bloque (block devices) conectados y montarlos
o desmontarlos según la necesidad.
Comando Descripción
mount -l
Combinando el comando con -t se concreta la salida a
los sistemas de archivos de un cierto tipo.
lsblk [OPCIONES]
Ejemplo:
lsblk -o NAME,FSTYPE,UUID,
SIZE,OWNER,GROUP,MODE,TYPE,MOUNTPOINT
lsblk /dev/sda
blkid [OPCIONES]
blkid -o list
Ejemplo:
blkid /dev/sda1
Ejemplo:
dd if=/dev/sda5 of=/dev/sdb1
Miscelánea
A continuación se describen algunos comandos que no se incluyen en ninguna de las
categorías enumeradas hasta ahora.
Comando Descripción
Ejemplo
at FECHA HORA
at
Ejemplo:
at 10:00 AM 6/22/2017
Ejemplo:
cal 12 2017
script
script
Utiliza el atajo de teclado [CTRL] + [D] para finalizar la
grabación.
script ARCHIVO
Ejemplo:
seq 0 2 10
tasksel --list-tasks
Ejemplo:
tasksel--task-packages mail-server
Ejemplo:
ls | tee ejemplo.txt
tr -d SECUENCIA
wall
mesg
mesg y
mesg n
watch -n 10 free
wc [OPCIONES] ARCHIVO
Ejemplo:
wc
wc ejemplo.txt
Salida:
14 18 143 ejemplo.txt
Esta lista de comandos de Linux no aspira a convertirse en una lista completa de todos ellos,
sino que solo abarca los comandos estrictamente fundamentales y explica algunos ejemplos
de su aplicación diaria en sistemas unixoides. Si buscas una descripción completa de todos
estos comandos, así como de los demás, tendrás que dirigirte a las páginas del manual de tu
sistema operativo, del cual encuentras una versión online en el proyecto Linux Man-Pages de
Michael Kerrisk.