lunes, 6 de febrero de 2012

Terminal(UBUNTU)


Terminal


Como todos los sistemas operativos derivados de Unix, GNU/Linux dispone de un intérprete de órdenes o terminal (en inglés se utiliza la palabra shell) que hace de interfaz entre el usuario y el propio sistema operativo y cuyo nombre es bash (acrónimo de Bourne Again SHell).

Introducción
Un terminal es una forma de acceder al sistema sin utilizar la interfaz gráfica, es decir, realizar todo tipo de tareas en formato texto. La forma de utilizar el sistema de este modo es mediante órdenes.
El terminal muestra en pantalla un indicador de línea de órdenes (en inglés se utiliza la palabra promptque literalmente traduciría "prontuario" pero se puede definir como ayuda visual o palabra que ayuda) esperando que el usuario introduzca una orden. Este indicador finaliza generalmente por un caracter $, cuando eres un usuario normal, o # cuando eres un súper usuario (administrador). El prompt se puede configurar al gusto y en ubuntu muestra el siguiente aspecto:
usuario@equipo:directorio actual$
Para acceder a una terminal se puede hacer de dos formas, una es con una aplicación como el terminal de GNOME, xterm o konsole de KDE, que son emuladores de la terminal dentro de una interfaz visual. Otra forma es salirse del entorno gráfico y acceder a un entorno completamente en modo texto, algo así como entrar en sólo símbolo de sistema en Windows 98. Para esto último debemos teclear Control+Alt+F1. Linux proporciona por defecto seis terminales de este tipo, de Control+Alt+F1 a Control+Alt+F6. Si queremos volver al modo gráfico lo hacemos con Alt+F7.

Entrada, salida y error estándar
Como bien se explica en el artículo sistema de archivos, en Linux todo es un archivo. Cada vez que ejecutamos una orden, el sistema operativo le abre automáticamente tres interfaces (en los sistemas operativos tipo UNIX se utiliza el término archivo): la entrada estándar, la salida estándar y el error estándar.
  • La entrada estándar (stdin) se refiere al archivo por el que una orden recibe su entrada (por defecto, es el teclado).
  • La salida estándar (stdout) se refiere al archivo por el que una orden presenta sus resultados (por defecto, es la pantalla o más concretamente la ventana en la que se está ejecutando el intérprete de órdenes).
  • El error estándar (stderr) se refiere al archivo por el que una orden presenta los mensajes que va generando cuando ocurre un error (por defecto, también es la pantalla).
Estos archivos se crean en el directorio /dev.
Redirección
Antes de que se ejecute una orden, es posible redirigir cualquiera de sus archivos de salida, es la redirección. Para llevarla a cabo es necesario utilizar los operadores de redirección que se procesan en el orden en el que aparecen:
Redirección de la entrada estándar
Cuando se quiere redirigir la entrada estándar de una orden a un archivo, es necesario utilizar el operador de redirección '<' seguido del nombre del archivo. En este caso, una orden lee los datos de entrada que necesita desde el archivo señalado, en vez de desde el teclado.
Redirección de la salida estándar
La salida por defecto de cualquier orden dada en el bash es el monitor. Por ejemplo, si utilizas la orden cal, te mostrará un calendario en la pantalla. Sin embargo puedes hacer que te envíe esos datos a un documento de texto por ejemplo escribiendo lo siguiente:
$ cal 2006 > mitexto.txt
vemos como se utiliza el operador '>' para establecer que la dirección de la salida será un archivo de texto llamado mitexto.txt, si el archivo no existe se crea, y si existe se vacía antes de hacer la redirección. Para que al redireccionar no borre el contenido de un archivo que ya existe, es decir, que se agregue el calendario al final del archivo, se debe utilizar el operador '>>' .
Redirección del error estándar

Cuando se quiere redirigir el error estándar de una orden a un archivo, es necesario utilizar el operador de redirección '2>' seguido del nombre del archivo. Como en la salida estándar, en el caso de no existir el archivo se crea, y en el caso de existir, el archivo se vacía antes de hacer la redirección. En el caso de que se quiera añadir el error estándar de una orden sin borrar el contenido de un archivo que ya existe, el operador de redirección a utilizar debe ser '2>>' .
Por ejemplo, si introduces en el terminal:
$ sadfasgdgfadfgsd
Te mostrará un error por pantalla ya que la orden no existe. Si redireccionamos el error estándar a un archivo:
$ sadfasgdgfadfgsd 2> error.txt
El error ahora no se muestra por pantalla, como si nada pasara; se guarda en el archivo error.txt.
Los comodines
Los comodines son unos caracteres especiales que pueden sustituir a nombres y a partes de nombres de los archivos y/o directorios. Esto facilita especificar múltiples nombres como argumentos de una orden.
  • '*' : sustituye cualquier secuencia de caracteres.
  • '?' : sustituye un único caracter.

No hay comentarios:

Publicar un comentario