Linux y la Terminal (RSA-01)
En este apartado te presento los comandos esenciales para conocer tu entorno de trabajo en Linux.
Vas a poder identificar quién eres en el sistema, consultar la fecha y hora, limpiar la pantalla, salir del terminal y explorar el shell que estás usando.
El prompt del terminal: usuario vs superusuario
En Linux, el aspecto del "prompt" (símbolo que precede a los comandos en la terminal) indica el nivel de privilegios con el que se está trabajando:
$
: representa un usuario estándar. Los comandos que aparecen con este símbolo pueden ejecutarse sin permisos especiales.#
: indica que se está trabajando como superusuario (root), con privilegios administrativos. Estos comandos deben ejecutarse consudo
o iniciar sesión como root.
Ejemplo visual:
$ ls # Comando ejecutado como usuario normal
# systemctl restart nginx # Comando ejecutado como root
En esta guía, los ejemplos seguirán esta convención:
- Comandos precedidos por
$
son ejecutables por cualquier usuario. - Comandos precedidos por
#
requieren privilegios de superusuario.
Es importante distinguirlos para evitar errores y mantener la seguridad del sistema.
Comando: whoami
Sintaxis Básica
Muestra el nombre del usuario actual.
Ejemplos:
$ whoami
$ whoami >> usuario_actual.txt
$ if [ "$(whoami)" != "root" ]; then echo "No tienes permisos suficientes."; fi
Sintaxis Avanzada
Usado en scripts para verificar el contexto del usuario o generar registros.
Ejemplos:
$ echo "Usuario actual: $(whoami)" | tee registro.txt
$ if [[ "$(whoami)" == "admin" ]]; then echo "Acceso concedido"; fi
$ ssh $(whoami)@servidor.local "ls -l"
Comando: uname
Sintaxis Básica
Muestra información sobre el sistema operativo.
Ejemplos:
$ uname -a
Linux dell 6.1.0-37-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.140-1 (2025-05-22) x86_64 GNU/Linux
$ uname -s
Linux
$ uname -r
6.1.0-37-amd64
Sintaxis Avanzada
Usado para detectar arquitectura o tipo de kernel en scripts o instaladores.
Ejemplos:
$ if [[ "$(uname -m)" == "x86_64" ]]; then echo "Arquitectura de 64 bits"; fi
$ echo "$(uname -s) - $(uname -r)" >> sistema.txt
$ [ "$(uname)" = "Linux" ] && echo "Entorno Linux detectado"
Comando: date
Sintaxis Básica
Muestra la fecha y hora actuales.
Ejemplos:
$ date
$ date +"%Y-%m-%d"
$ date +"%H:%M:%S"
Sintaxis Avanzada
Se usa en scripts para crear archivos con marcas temporales o registros.
Ejemplos:
$ echo "Inicio del script: $(date)" >> log.txt
$ mkdir "backup_$(date +%F)"
$ fecha=$(date +%Y-%m-%d); echo "Fecha actual: $fecha"
Comando: clear
Sintaxis Básica
Limpia el contenido visible del terminal.
Ejemplos:
$ clear
Ctrl
+L
es un atajo de teclado que tiene el mismo efecto
$ clear && echo "Terminal limpia"
Sintaxis Avanzada
Utilizado en scripts para crear experiencias más limpias o interactivas.
Ejemplos:
$ clear
$ echo "Bienvenido al panel de administración"
function limpiar_y_saludar() {
clear
echo "¡Hola, usuario!"
}
$ [ "$AUTO_LIMPIAR" = "sí" ] && clear
Comando: exit
Sintaxis Básica
Cierra la sesión o finaliza un script.
Ejemplos:
$ exit
exit 0
if [ "$1" = "salir" ]; then exit; fi
Sintaxis Avanzada
Se usa para controlar el flujo de scripts y devolver códigos de estado.
Ejemplos:
if ! comando; then echo "Error detectado"; exit 1; fi
echo "Finalizando proceso"; exit $?
trap "echo 'Cancelado por usuario'; exit 130" SIGINT