Caracteres en UNIX
En Unix, los caracteres tecleados son enviados al sistema, el cual los devuelve para ser mostrados en pantalla salvo el caso de cuando ingresamos un password, la clave no se mostrará y tampoco mostrará caracteres como ***.
La mayoría de los caracteres del teclado son ordinarios, sin embargo, exiten otros con funciones especiales com es el caso de la tecla ENTER (o RETURN), esta tecla indica al sistema que los caracteres enviados por teclado deben interpretarse para ser procesados, luego de esto el sistema retroalimenta al usuario y desplaza el cursor a una nueva línea.
También existen caracteres que no aparecen en el teclado, y por lo general son el resultado de una combinación de teclas como es el caso de Ctrl-m, el cual es equivalente a presionar la tecla ENTER; Estos caracteres se llaman caracteres de control.
A continuación un listado de los caracteres de control más usados en consolas UNIX:
Ctrl-d –> Indica a un programa que no hay más datos de entrada. Esta combinación de carcateres cierra la sesión si no se está escribiendo o ejecutando nada en consola.
Ctrl-g –> Acciona la campana del PC.
Ctrl-h –> Carácter de retroceso, es equivalente a la tecla BACKSPACE.
Ctrl-i –> Tabulador, es equivalente a la tecla TAB.
Ctrl-c –> Interrumpe cualquier programa en ejecución.
Mandatos Básicos
Si deseamos conocer la fecha y hora debemos usar el comando date
$ date
sáb feb 14 23:04:12 ECT 2009
Si deseamos conocer qué usuarios están utilizando la máquina usamos el comando who
$ who
root tty1 2009-02-14 23:08
leonardo :0 2009-02-14 19:14 (console)
En Unix cada usuario del equipo posee una bandeja de correo, la cual puede ser consultada con el comando mail
$ mail
Heirloom mailx version 12.2 01/07/07. Type ? for help.
«/var/spool/mail/leonardo»: 1 message 1 new
>N 1 root@linux-uu97.si Sat Feb 14 23:29 18/653 Se te acaba el espacio
?
Al usar el comando mail el sistema nos informa cuantos mails tengo en mi bandeja de entrada (almacenados y no leidos), para acceder a cada mail se presiona enter y nos aparecerá algo parecido a lo siguiente:
Message 1:
From root@linux-uu97.site Sat Feb 14 23:29:38 2009
X-Original-To: leonardo
Delivered-To: leonardo@linux-uu97.site
Date: Sat, 14 Feb 2009 23:29:37 -0500
To: leonardo@linux-uu97.site
Subject: Se te acaba el espacio
User-Agent: Heirloom mailx 12.2 01/07/07
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
From: root@linux-uu97.site (root)
Te quedan 3000MB disponibles en tu disco duro, por favor compra otro.
Si deseamos eliminar el mensaje solo escribimos d y presionamos enter.
Si deseamos salir del programa presionamos Ctrl-d.
Si deseamos enviar un mail un usuario se escribe: mail nombreUsuario
Por ejemplo:
Si deseo enviar un correo al usuario rubi
$ mail rubi
Subject: Te hecho de menos
Espero ansioso conversar contigo de nuevo
?
Para enviar el mensaje al usuario presionamos Ctrl-d.
Estos comandos son muy básicos pero tienen mucha utilidad…
Más adelante veremos muchos comandos más… Espero vuestros comentarios 🙂
Saludos a todos mis lectores 🙂
He decidido crear una sección dedicada a la creación de Scripts sobre la shell de sistemas basados en Unix, los cuales son muy importantes ya que nos ayudarán mucho en la administración de estos sistemas.
Espero les sea de utilidad…
Manos a la obra
Conceptos básicos
Antes de entrar en el entorno de programación Unix es necesario tener conceptos básicos sobre estos sistemas operativos y el manejo de la consola.
¿Que es Unix?
Unix es el núcleo de un sistema operativo de tiempo compartido, un programa que controla los recursos de un equipo y los asigna entre los usuarios. Unix no solo abarca el núcleo, sino también todos los programas esenciales para el manejo del mismo como: editores, compiladores, y lenguajes de comandos, etc.
¿Qué es la Shell?
Es un programa que sirve de interfaz de comunicación entre el usuario y el sistema operativo que espera órdenes escritas por el usuario.
Sistema de archivos en Unix
En Unix todo funciona a base de archivos, todo lo que existe en Unix son archivos (directorios, drivers, ficheros, etc).
El sistema de archivos Unix se organiza de manera Jerárquica.
En Unix los archivos tienen asociado un nombre, contenido, ubicación y datos como dueño, tamaño, fecha de modificación, etc.
Un directorio en Unix es un archivo que contiene información de otros archivos, ya que el sistema de archivos un directorio es una ubicación que puede almacenar archivos y otros directorios.
En los sistemas Unix todo es contenido por el directorio raíz /. Este directorio es el de más alta jerarquía.
Rutas
Las rutas son un método de referenciar archivos y directorios en un sistema de archivos las cuales señalan la ubicación exacta de los mismos.
La forma de recorrer un árbol de directorios en Unix se lo hace directorio a directorio separándolos con la barra invertida «/».
Existen 2 formas de representar rutas en Unix, de manera absoluta y relativa.
Ruta absoluta: Señala la posición de un archivo o directorio desde el directorio raíz.
Ejemplo: /home/leo/Escritorio/carpeta1/
Ruta Relativa: Señala la posición de un archivo o directorio desde la ubicación actual.
Ejemplo:
Nos encontramos en /home ¿cuál es la ruta relativa a /home/leo/Escritorio/carpeta1?
La ruta relativa es leo/Escritorio/carpeta1
En las rutas relativas se usan dos representaciones especiales a directorios ./ y ../, el primero (./) hace referencia al directorio actual y el segundo (../) hace referencia al directorio superior. Veamos algunos ejemplos:
Estamos ubicados en /home/leo/Escritorio/carpeta1 ¿cuál es la ruta relativa a /home/leo/Escritorio y a /home/leo?
La ruta relativa a /home/leo/Escritorio es ../
La ruta relativa a/home/leo es ../../
Nótese que en el caso de la ruta relativa a /home/leo desde /home/leo/Escritorio/carpeta1 ésta fue ../../ porque se indica que es el directorio superior al directorio superior de carpeta1