Este es uno de los capítulos del tutorial El terminal. Encontrarás los enlaces a todos los de capítulos, al final de este artículo.
Una vez ya viste en el capítulo de introducción que es el terminal, y las opciones que tienes para seguir este tutorial, vas a ver que es eso de la línea de comandos.
Quiero insistir, en que no debes tener miedo en el uso del terminal. En cualquier caso, puedes utilizar alguno de los procedimientos indicados en la introducción sobre el terminal sin miedos.
El terminal es una herramienta muy potente, si bien, entiendo que si no la has utilizado anteriormente, te puede intimidar. Por otro lado, enfrentarte a una línea de comandos, en la que no sabes que hacer, puede ser algo desalentador.
Actualmente estamos acostumbrados a utilizar un chisme, sin leer el manual de instrucciones. Sin embargo, con el terminal, con la línea de comandos, esto no es así. Necesitas una pequeña curva de aprendizaje para empezar con ella.
La línea de comandos
Utilizar el terminal, no tiene porque significar que abandone el entorno de escritorio. Todo lo contrario. Lo tienes que ver como un complemento. De hecho, puedes estar trabajando en varios terminales en tu escritorio, a la vez que utilizas otras herramientas gráficas como podría ser GIMP, por ejmplo.
Pero, ¿que es eso de la línea de comandos?
Si ya tienes unos años, como me sucede a mi, es muy posible que conozcas MS-DOS. Con lo que todo esto del terminal no te resultará tan extraño, es mas, seguro que lo recuerdas, incluso con añoranza.
Antes de nada, abre un terminal. Esto lo puedes hacer utilizando el atajo de teclado Ctrl+Alt+T
o bien, desde el lanzador de aplicaciones o desde el menú, dependiendo del entorno de escritorio y distribución que estes utilizando.
Lo que ves es básicamente mi nombre, seguido por una virgulilla. Esto es lo que yo veo en mi terminal, pero probablemente en tu caso, verás algo distinto, depende mucho de tu configuración. Si, utilizas como te comenté en el capítulo de introducción, docker, la cosa es distinta.
Lo primero es que inicies tu contenedor docker, e te introduzcas en la línea de comandos del mismo, para estar completamente tranquilos de que no haces ninguna trastada. Para ello, ejecuta primero una orden para iniciar el contenedor, y después te meterás en la línea de comandos del contenedor.
docker container start amazing_boyd
docker exec -it amazing_boyd /bin/bash
En este ejemplo que te he puesto, amazing_boyd
, es el nombre del contenedor que he creado este tutorial. Lo que ves ahora es algo como,
root@c0538b05bda8:/#
En esta línea lo que ves es por un lado root
, que es el nombre del usuario que estás utilizando. En tu caso, el usuario administrador. A continuación ves @c0538b05bda8
. La arroba se utiliza como caracter de separación, mientras que el texto que viene a continuación, no es mas que el identificador del contenedor que estás utilizando.
Después, encuentras :/#
. Tanto los dos puntos como la almohadilla simplemente son caracteres de separación, lo mismo que en el caso de la arroba. Mientras que la barra inclinada /
, te indica el directorio en el que te encuentas.
Así, por resumir tienes, el nombre del usuario que estás utilizando, el identificador del contenedor de docker que empleas y por último el directorio en que te encuentras.
Shell
Ahora que ya has abierto el terminal, y te he explicado lo que ves, es muy posible que sigas sin tener claro lo que es eso de la línea de comandos. Realmente, ¿que es esto de la línea de comandos?¿que estás ejecutando?¿que herramienta es? Esto es un shell o intérprete de comandos. Es decir, te encuentras ante una aplicación que lo que hace es interpretar las instrucciones que escribes en la misma.
Indicarte que, no es que haya un único shell, mas bien todo lo contrario. Existen diferentes shells, bash, ash, csh, zsh, ksh, tcsh, o fish.
En el momento de escribir este tutorial, el shell mas utilizado es Bash. Básicamente porque es el shell por defecto en la mayoría de las distribuciones Linux. Es compatible con sh, aunque introduce bastantes mejoras respecto este último, sobre todo de cara a la progración de scripts.
Indicarte que en este tutorial es el shell que voy a utilizar.
Para saber que shell estás utilizando, solo tienes que ejecutar esta orden en el terminal,
echo $SHELL
En el caso particular de Bash te devolverá /bin/bash
. Indicarte que echo
es una sencilla herramienta que lo que hace es escribir en el terminal los argumentos que le indiques. Así en tu caso, te devuelve el valor de la variable global SHELL
. Te recomiendo que le des un vistazo a la página man de echo.
Tu primera orden o comando
Ahora vas a ejecutar una sencilla orden o comando, ls -lh
. Esto lo que hace es listar el contenido del directorio en el que te encuentras.
root@c0538b05bda8:/# ls -lh
total 64K
drwxr-xr-x 2 root root 4.0K Dec 4 17:12 bin
drwxr-xr-x 2 root root 4.0K Apr 24 2018 boot
drwxr-xr-x 5 root root 360 Jan 21 07:37 dev
drwxr-xr-x 1 root root 4.0K Jan 13 19:20 etc
drwxr-xr-x 2 root root 4.0K Apr 24 2018 home
drwxr-xr-x 8 root root 4.0K Dec 4 17:11 lib
drwxr-xr-x 2 root root 4.0K Dec 4 17:11 lib64
drwxr-xr-x 2 root root 4.0K Dec 4 17:11 media
drwxr-xr-x 2 root root 4.0K Dec 4 17:11 mnt
drwxr-xr-x 2 root root 4.0K Dec 4 17:11 opt
dr-xr-xr-x 293 root root 0 Jan 21 07:37 proc
drwx------ 1 root root 4.0K Jan 13 19:27 root
drwxr-xr-x 1 root root 4.0K Dec 28 23:22 run
drwxr-xr-x 1 root root 4.0K Dec 28 23:22 sbin
drwxr-xr-x 2 root root 4.0K Dec 4 17:11 srv
dr-xr-xr-x 13 root root 0 Jan 21 07:25 sys
drwxrwxrwt 2 root root 4.0K Dec 4 17:12 tmp
drwxr-xr-x 1 root root 4.0K Dec 4 17:11 usr
drwxr-xr-x 1 root root 4.0K Dec 4 17:12 var
Como te encuentras en el directorio raíz o directorio principal ves todo el contenido de tu equipo, o en este caso del contenedor que estás utilizando.
La orden que has utilizado ls -lh
, se compone de dos partes. La primera es la herramienta que utilizamos, ls
que nos permite listar el contenido de los directorios. Mientras que la segunda parte son opciones. Las opciones, en este caso se pueden poner separadas o juntas. Es decir, puedes escribir ls -l -h
o ls -lh
. En este caso, las opciones representan lo siguiente,
-l
utiliza el formato largo de listado, en el que nos muestra mas información.-h
nos muestra el espacio que ocupa cada archivo o directorio en un formato mas fácil de leer.
Te recomiendo que le des un vistazo a la página man de ls, y que juegues con todas las opciones que te encuentras allí. Así, entenderás todo el potencial que te ofrece esta sencilla herramienta.
Conclusión
En este primer capítulo del tutorial, dado que el anterior era la introducción, has descubierto que es eso de la línea de comandos. Has visto que existen diferentes intérpretes de comandos, conocidos como shell. Igualmente, te he mostrado como puedes descubrir el shell que estás utilizando que en el caso de este tutorial es Bash.
Además, has visto que es lo que aparece en la línea de comandos, y has podido ejecutar tus dos primeros comandos, echo
y ls
.
Espero que te haya sido de utilidad. En el próximo capítulo del tutorial, te mostraré como navegar en el terminal, y no tiene nada que ver con el mar.