lunes, 10 de septiembre de 2012

Entendiendo el Shell - Parte 2

Siguiendo con esta serie, el Shell hace más que simplemente ejecutar comandos. Y es que constituye una poderosa con características formidables para hacer esta tarea fácil: comodines para el pareo de nombres de archivos, un historial de comandos para invocar comandos previamente ejecutados, tuberías para enviar la salida de un comando como la entrada de otro comando, variables para almacenar valores para su uso en el Shell, y muchas otras. Nos tomaremos un tiempo para revisar y aprender estas características, ya que las mismas nos harán más rápidos y productivos en Linux. 


Comodines
Los comodines (conocidos en ingles como Wildcards) son una taquigrafía para conjuntos de archivos con nombres similares. Por ejemplo, a* se aplica para todos los archvios cuyos nombres comienzan con “a” minúscula. Los comodines con expandidos por el Shell en el conjunto de archivos actual con el que concuerdan. Por lo que si ejecutamos:
fraterneo@rainbow:~$ ls a*
el Shell primero expande a* en todos los nombres de archivos que comienzan con “a” minúscula en el directorio actual. 

El comando ls nunca sabe si usamos un comodín, ya que el mismo ve sola la lista final de nombres de archivos después que el Shell expande el comodín. En consecuencia debemos tomar muy en cuenta que cada comando en GNU/Linux, sin importar su origen, traba con los comodines y otras características del Shell. 

Los comodines nunca toman en cuenta dos caracteres: un punto al comienzo (eso lo veremos más adelante), y la barra (/) del directorio. Estos deben más bien darse de forma literal, como en .pro* para parear con .profile, o /etc/*conf para parear con todos los nombres de archivos que terminan en conf dentro del directorio /etc. 

Archivos con puntos 
Nombres de archivos con puntos al principio, llamados archivos comunes, son especiales en Linux. Cuando nombramos un archivo comenzando con un punto éste no será mostrado por la mayoría de programas: 
  • El comando ls los omitirá a menos que usemos la opción -a. 
  • Los comodines del Shell no parean un punto al comienzo. 

En efecto los archivos con puntos al principio están ocultos hasta que específicamente preguntemos por ellos. Como resultado, algunas veces son llamados archivos ocultos.

Los comodines en detalle
*        Cero o más caracteres consecutivos
?        Cualquier caracter individual
[set]    Cualquier caracter individual en el conjunto dado, más comúnmente una secuencia de caracteres, como [aeiouAEIOU] para todas las vocales, o un rango con guión como [A-Z] para todas las letras mayúsculas
[^set]   Cualquier caracter individual que no esté en el cojunto dado
[!set]   Igual que el anterior
Cuando usamos conjuntos de caracteres, si queremos incluir un guión literal en el conjunto, lo pondremos de primero o de último. Para incluir un corchete de cierre literal en el conjunto lo pondremos de primero. Para incluir un símbolo como ^ o ! literal, no lo podremos de primero.


Artículos relacionados



Widget by Hoctro | Jack Book

0 comments:

Publicar un comentario