Consola de comandos.


El Terminal es una herramienta, también llamada Consola de comandos (al referirse a este interfaz/herramienta se utiliza indistintamente los términos Consola o Terminal) en la que podemos ejecutar una serie de órdenes que enviamos al ordenador (comandos) para que realice una determinada tarea : copiar un fichero, listar un directorio, cerrar el sistema,...

Como comentamos en la introducción a GNOME, esta manera de comunicarse con el sistema operativo, con un interfaz en modo texto, era la utilizada en los inicios de Unix, y aún hoy, la preferida por muchos administradores de sistemas y usuarios más técnicos. La razón (aparte de la propia costumbre o incluso cierta 'adversión' a la interfaz gráfica que parecen tener algunos) es que cuando se domina, es la forma más rápida de interactuar con el sistema y la más potente, ya que nos proporciona más funcionalidades que el modo gráfico. Eso sí, debemos conocer todo un 'lenguaje' con una sintaxis amplia de órdenes y opciones, para sacar verdaderamente partido.

¿Por qué introducimos entonces esta herramienta en este tipo de Curso? Bueno, era lógico centrar la interacción con el sistema a través de la interfaz gráfica (GNOME), más sencilla e intuitiva de utilizar y que cubre con creces todos los requerimientos que podemos tener a este nivel. No obstante, creemos que es interesante empezar a conocer esta herramienta, ya que una vez familiarizados con ella, nos puede resultar más rápida y flexible de usar para determinadas tareas. En cualquier caso, dado el papel tan importante que juega en la administración del sistema, sobre todo en niveles avanzados, no está de más conocer algunas de sus características principales.

Un último apunte 'teórico' sobre este apartado: en Ubuntu vamos a trabajar con la shell Bash (Bourne Again Shell). Una 'shell' (cáscara, concha o caparazón en castellano) es un programa que interpreta los comandos que introducimos en el Terminal y los envía al sistema para que realice esa acción determinada. En Linux hay varios shells disponibles, aunque Bash es uno de los más utilizados dentro de las distintas distribuciones que existen.


¿Cómo podemos acceder al terminal?. Dos formas:
  • En el panel superior: Aplicaciones -> Accesorios -> Terminal.
  • Con la combinación de teclas Ctrl+Alt+F1 (nos pedirá que introduzcamos usuario y clave, la misma que tenemos de acceso normal a Ubuntu)
Aquí vemos el aspecto que tiene:

consolaa.png

Como vemos en la imagen, el nombre que aparece antes del símbolo @, corresponde a nuestro nombre de usuario. El nombre posterior corresponde a la denominación de nuestro equipo. A continuación vemos el carácter tilde ( ˜ ) que nos indica que estamos en nuestra carpeta home y finalmente aparece el carácter '$' y la imagen del cursor (que estará parpadeando). Es el prompt, símbolo que nos dice que el sistema está esperando nuestras órdenes, y que en este caso nos indica que somos un usuario normal. Podemos pasar a root (superusuario o administrador del equipo) tecleando el comando 'su', y luego introduciendo la clave correspondiente. En este caso el prompt pasaría a ser el símbolo '#':

consolab.png



Para introducir un comando, teclearemos directamente una expresión. Podemos borrar caracteres de forma normal o movernos con las flechas atrás-adelante en el texto, y al finalizar, pulsaremos Intro, para enviarle la instrucción al sistema. Este nos devolverá en esa misma ventana el resultado de esa orden nuevamente en texto (por ejemplo, la lista de ficheros de un determinado directorio). Las flechas de dirección arriba-abajo, nos permitirán recuperar órdenes anteriores ya introducidas, de forma que las podremos ejecutar otra vez o editar para ejecutar algo similar o corregir algún error que hayamos tenido (la flecha arriba, iría presentándonos las expresiones de más a menos reciente, y la flecha abajo haría la función contraria una vez hayamos recorrido varias en el historial).

Por defecto disponemos de seis terminales, pudiendo seccionarlos con las combinaciones Ctrl+Alt+F1 hasta Ctrl+Alt+F6. Si queremos volver al entorno gráfico, solo tenemos que seleccionar Ctrl+Alt+F7. Para finalizar la sesión del Terminal, podemos o bien cerrar su ventana o teclear el comando exit.

En el siguiente apartado veremos algunos ejemplos sencillos de comandos en el terminal, para ilustrar un poco mejor esta introducción. Para los que hayan alguna vez trabajado con el prompt de MS-DOS, les resultará muy familiar, aunque el conjunto de instrucciones en Linux en muchísimo más amplio y la sintaxis difiere , incluso a veces en los comandos que realizan las mismas funciones en ambos sistemas.


Ordenes básicas sobre directorios

Vamos a ver a modo de ejemplo, algunos comandos que podemos ejecutar en el terminal. Todas estas acciones, las podemos realizar con el interfaz gráfico, pero algunos de ellos, como el comando 'ls' nos pueden dar una idea de su potencia si lo sabemos utilizar con las opciones y los parámetros adecuados:


pwd
Muestra el directorio actual.
consola0.png
cd [dir]
Cambia el directorio actual. 'dir' puede ser una ruta absoluta o relativa. Sin argumentos se cambia al directorio personal del usuario.

consola1.png
mkdir dir
consola2.png
rmdir dir
Borra el directorio (tiene que estar vacío).
consola3.png
ls [opciones][dir]
Muestra el contenido del directorio especificado o, en caso de no especificar ninguno, el directorio actual. Admite símbolos comodín como '*' y '?' con el mismo significado que en MSDOS/Windows. Principales opciones:
  • -a Muestra todos los ficheros incluidos los ocultos (empiezan con el carácter '.')
  • -l Formato largo. Muestra toda la información disponible sobre cada fichero: derechos, propietario, etc.
  • -R Recorre la estructura de directorios recursivamente.
  • consola4.png

Ordenes básicas sobre ficheros


rm [opciones] archivo
Borra el archivo. ¡Cuidado! En Linux no hay forma de recuperar los archivos borrados. Principal opción:
  • -r borra archivos y directorios recursivamente. Usese con MUCHISIMO cuidado.
consola6.png
cp origen destino
Copia el fichero origen en el destino. La casuística sobre las especificaciones de directorios y ficheros es la misma que en MSDOS/Windows. Se admiten símbolos comodín (por ejemplo: '*' es cualquier combinación de caracteres, sin importar el número de ellos, es decir, 'ls a*,' nos listara todos los archivos que comiencen por 'a'. El carácter '?' equivale a cualquier carácter, pero solo en una posición, es decir, 'ls a?' nos listará cualquier fichero que comience con 'a' pero que tenga solo una longitud de 2 caracteres. Nótese que, a diferencia de MSDOS/Windows, el destino es obligatorio.
consola7.png
mv origen destino
Mueve el fichero desde origen a destino. La casuística sobre las especificaciones de directorios y ficheros es la misma que la de orden move de MSDOS/Windows. Se admiten símbolos comodín. La orden mv tambien se usa para cambiar el nombre de los ficheros dando como destino el nuevo nombre del archivo origen. En este caso no se admiten comodines.
consola8.png
redirección de entradas y salidas
Los símbolos de redirección de las entradas '<' y salidas '>' y el encauzamiento entre programas '|' también existen en Unix y tienen el mismo significado que en MSDOS/Windows, es decir, la salida o resultado de un comando es tomado como entrada del siguiente.

Por ejemplo, si queremos guardar en un fichero de texto 'prueba.txt' el listado de ficheros de un determinado directorio, teclearemos:

consola9.png
Luego, podemos comprobar el resultado abriendo dicho fichero de texto:
consola10.png
more fichero
Visualiza página a página el contenido del fichero. Una vez mostrada la primera página del fichero, podemos avanzar y retrodecer utilizando las siguientes tecl:
  • espacio (página siguiente).
  • b (página anterior).
  • retorno (línea siguiente).
  • q (fin de la visualización).
Vemos un ejemplo con el fichero antes creado 'prueba.txt':
consola12.png



Curso de Ubuntu
Material bajo licencia Digital Learning SL