Linux y la Terminal (RSA-01)

La ruta del SysAdmin 15 de jul. de 2025

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 con sudo 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

Etiquetas

Luis GuLo

🐧 SysAdmin GNU/Linux - 🐳 Docker - 🖥️ Bash Scripting - 🐪 Perl - 🐬 MySQL - 👥 Formador de TI - 👥 Formador de SysAdmin's - 💢 Ansible - ☁️ Cloud Computing - ❤️ Debian GNU/Linux