Arrow
Arrow
Slider

Si eres usuario de alguna distribución GNU/Linux, y quieres profundizar mas en el uso del sistema operativo, esta serie de posts te va a ayudar a familiarizarte en el uso de la terminal de Linux. En este primer post, me voy a centrar en el concepto de terminal o interfaz de línea de comandos, así como en los fundamentos básicos de su uso.

Actualmente, existen distribuciones GNU/Linux para multitud de propósitos, y

muchas de ellas ofrecen un entorno gráfico suficientemente pulido como para permitir que puedas prescindir de la terminal. Sin embargo, ésta es una herramienta enormemente potente, y su conocimiento te brindara una gran variedad de posibilidades.

¿Que es la terminal o línea de comandos?

Empezando por lo más básico, podríamos decir que una shell es una interfaz que acepta ordenes en forma de comandos, y ejecuta operaciones. En este entorno, una interfaz de línea de comandos o CLI, a diferencia de una interfaz gráfica de usuario o GUI, es una shell que entiende instrucciones basadas en secuencias de caracteres alfanuméricos.

Aunque existen multitud de intérpretes, Bash es seguramente una de las interfaces mas conocidas en GNU/Linux, y a decir verdad, la única que conozco, así que para el propósito de esta guía me voy a centrar en ella. De ahora en adelante, al hablar de la terminal de Linux, me estaré refiriendo concretamente al interprete Bash.

Por lo poco que sé, Bash es una herramienta Open Source perteneciente a GNU, y que fue escrita por Brian Fox. Actualmente, es la interfaz de linea de comando predeterminada en la mayoría de distribuciones GNU/Linux y en Mac OS X. Aunque en su esencia es una shell de Unix, puede ser portada fácilmente a entornos Windows.

Pero en fin, vayamos ya al grano…

Como usar la terminal de Linux

Hay básicamente dos maneras de usar la terminal en GNU/Linux. Por un lado, puedes usar las interfaces TTY, mientras que por otro lado, están los emuladores o PTS, que permiten usar una interfaz de línea de comandos de manera virtual desde la propia interfaz gráfica de usuario.

TTY es, en su esencia, un entorno que te permite interactuar directamente con el sistema operativo. Como seguramente podrás comprobar, en la gran mayoría de distribuciones basadas en Debian, como Ubuntu o Linux Mint, existen un total de 7 pantallas TTY, las cuales pueden usarse simultáneamente.

Centrándonos en el caso concreto de Debian, la TTY1 hasta la TTY6 son sesiones de interfaz de línea de comandos, mientras que la TTY7 es, de hecho, la interfaz gráfica de usuario. Las sesiones TTY se pueden acceder fácilmente usando las combinaciones de teclado ‘CTRL+ALT+F1′ hasta ‘CTRL+ALT+F7′.

PTS, por su parte, es un emulador de terminal que esta dentro de la propia interfaz gráfica. Generalmente, es usado en la mayoría de entornos de escritorio en GNU/Linux, tales como GNOME o KDE. Cada entorno utiliza su propia aplicación para emular el uso de la terminal de Linux.

Prompts de usuario y superusuario

Como podrás comprobar, dependiendo del usuario que esté logueado en la sesión de la terminal, el prompt sera ligeramente distinto. De este modo, si te encuentras logueado como usuario estándar, el prompt sera similar a éste:

user@computer:~$

Por el contrario, si te logueas como usuario root o superusuario (a partir del comando sudo su), el prompt adoptará este formato:

root@computer:/home/user#

A continuación, puedes empezar a practicar con los primeros comandos, que te servirán para dar un primer paso hacía el uso de la terminal de Linux.

Primeros comandos en la terminal de Linux

Realmente existen infinidad de comandos, por lo que es importante centrarse en aquellos que te serán de mas utilidad dependiendo de tus tareas o necesidades.

Para empezar a ser capaz de ejecutar acciones simples, puedes echar un rápido vistazo a los comandos que te propongo. Si no es tu primera vez, seguramente ya los conocerás.

#man

El comando man es una pagina de manual. Debe ir acompañado del nombre de un comando, y muestra en pantalla una completa guía sobre el uso del comando entrado. Aquí tienes la sintaxis básica, y a partir de ahí puedes ir probando ejemplos con varios comandos.

$ man <nombre del comando>

Esta es la sintaxis básica del comando, y a partir de ahí puedes desplegar el manual de casi cualquier comando que se te ocurre.

$ man uname

Imprime por pantalla el manual completo del comando #uname, junto con todas sus opciones de uso.

#uname

El comando uname te da información del sistema operativo usado. Puede incluir diferentes opciones, algunas de las cuales son ‘-a’, ‘-s’, ‘-p’, -m’, y ‘-o’. Puedes probar de usar algunas de ellas y observar el output mostrado por pantalla.

$ uname

Formato simple del comando. Retorna solamente el nombre del sistema operativo, sin especificar mas detalles.

$ uname -a

Con esta opción, podrás visualizar el nombre del sistema operativo, junto con otros detalles básicos como la versión del kernel, arquitectura o fecha actual.

#date

El comando date informa sobre la fecha y hora del sistema.

$ date

#who

El comando who muestra los usuarios logueados en el sistema. Si lo utilizas desde la aplicación de terminal del escritorio, mostrara que tu usuario está logueado en la sesión de terminal TTY7, correspondiente a la interfaz gráfica de usuario, y en una sesión PTS, que no es más que el emulador de terminal dentro de la propia interfaz gráfica.

$ who

Esta es la sintaxis básica de #who, y muestra un listado con los usuarios logueados en el sistema junto con la fecha y hora de logueo.

$ who -b

Muestra la fecha y hora del último arranque del sistema.

#clear

El comando clear limpia la pantalla de la terminal.

$ clear

#history -c

El comando history -c borra el historial de comandos de la sesión de terminal actual, para que no puedan consultarse en próximas sesiones de terminal.

$ history -c

#exit

El comando exit cierra la sesión de terminal actual del usuario logueado en ella.

$ exit

Hasta aquí ya puedes empezar a practicar con algunos de los comandos más básicos. Alternativamente, con el comando ‘man‘ podrás hacer una ojeada a las distintas opciones que ofrecen los comandos tratados.