Mostrando entradas con la etiqueta date. Mostrar todas las entradas
Mostrando entradas con la etiqueta date. Mostrar todas las entradas

jueves, 25 de julio de 2013

Consoleando (II)

Después de aprender lo básico es hora de aprender cosas más interesantes, scripts.

¿Qué es un Script?
Un script es un archivo que contiene una secuencia de órdenes que facilitan alguna labor (es un programa).

Ejemplo de un Script
A continuación veremos cómo se hace un script básico, saludo.sh . La labor de éste script es escribir "buenos dias", "buenas tardes" o "buenas noches", lo anterior dependiendo de la hora.
Entonces:

#!/bin/bash
# la linea anterior se pone para que el sistema operativo
# sepa con que interprete debe ejecutar el script

### programa: saludo.sh
let HORA=`date +%H` # capturamos la hora del dia
if [ $HORA -ge 4 ] && [ $HORA -lt 12 ]; then
    echo 'Buenos Dias!!!'
fi
if [ $HORA -ge 12 ] && [ $HORA -lt 18 ]; then
    echo 'Buenas Tardes!!!'
else
    echo 'Buenas Noches!!!'
fi
### fin programa

En este bloque de código podemos ver muchas de las interesantes cosas que tiene el lenguaje bash, uno de los lenguajes usados en las consolas Linux, éste es simple y potente, además nos permite usar comandos del sistema como date, crear variables mediante la orden let, extraer información de los comandos del sistema (una de las formas de hacer esto es mediante las comillas invertidas [ ` ], las cuales interpretan el comando que esté dentro de las comillas y retornan esa cadena convertida en valor, lo cual puede ser almacenado o usado en nuestro programa), usar condicionales ( if, else, case), operadores lógicos ( && y | | ), escribir cadenas mediante la orden echo y muchas más cosas.
Algo que en principio es extraño para quienes hacen scripts es que no entienden qué es -lt o -ge, estos son los operadores de comparación, a continuación los veremos en una tabla con sus significados:

comandosignificado
-lt menor que
-le menor o igual que
-eq igual que
-ge mayor o igual que
-gt mayor que
-ne diferente a


Y, ¿Qué hacer con ese código?
Este código se guarda en un archivo de texto, por ejemplo saludo.sh (uso la extensión sh porque es un archivo del lenguaje bash, que es a su vez una mejora de sh), y luego en la consola hago que éste se pueda ejecutar mediante la orden chmod así:
chmod +x saludo.sh

Y, ¿Cómo lo ejecuto?
Para ejecutarlo escribimos en la consola la ruta completa del archivo si estamos en una carpeta diferente a la del archivo, si estamos en la misma carpeta  anteponemos un punto, así:
# si no estamos en la misma carpeta
/home/andres/saludo.sh
# y si estamos en la misma carpeta
./saludo.sh

miércoles, 24 de julio de 2013

Consoleando (I)

Pánico, eso es lo que sienten muchas de las personas que conozco cuando ven esa ventana de fondo negro, un mundo de letras y una raya que aparece y desaparece, ese "demonio" al que suelen llamar consola o terminal, pero si reflexionamos un poco más acerca de esto, vemos que quienes se inventaron este artilugio no eran más que simples mortales que no tenían mas memoria o tiempo que nosotros, es decir, no debe ser tan difícil, solo hace falta práctica y un documento en google drive para tener una ayudita con esos terribles comandos.
Este post es el primero de una serie en los que me gustaría que quienes están menos familiarizados con esta herramienta, dejen de temerle y huirle porque es la base de todo lo que vemos y conocemos hoy en día. Para esta serie de artículos me enfocaré en los sistemas operativos basados en unix, ya que son los que más podrían requerir el uso de esta herramienta.

Primeros Pasos:

  • ¿Cómo se usa?
    • Se teclea un comando en la linea de comandos, consola, terminal o como sea que le llamen y se oprime la tecla ENTER para ver su resultado.
    • para salir de un programa en ejecución generalmente se usa la combinación de teclas Control+C
    • En las terminales más avanzadas podemos ver colores que indican el tipo de archivo, los permisos y además podemos usar las teclas de dirección (las flechas de desplazamiento) de arriba y abajo para navegar por los comandos que hemos introducido
    • Podemos limpiar la consola (borrar los comandos y resultados anteriores) con la combinación Control+L, este es el equivalente a la orden clear
    • Si alguno de los puntos anteriores no resulta, es probable que este usando una linea de comandos antigua como sh o su sistema operativo no sea un sistema operativo basado en unix, por ejemplo windows.
  • Primeros comandos
  • man  # muestra el manual de cualquier comando
    # por ejemplo, se puede usar
    man ls # este muestra el manual del comando ls
    # para salir del manual se oprime la letra q
    ls  # lista los archivos de un directorio
    pwd # nos muestra en que carpeta estamos ubicados
    cd  # nos ubica en la carpeta personal del usuario
    cd /ruta/de/destino # nos lleva a una ruta de destino especificada
    cd .. # nos lleva a la carpeta anterior
    mkdir carpetita # crea una carpeta con nombre carpetita
    date # nos dice la fecha y hora actual
    echo 'Hola Mundo!' # escribe en pantalla "Hola Mundo!"
    cat /ruta/arch # escribe en pantalla el contenido de arch
    
  • Para Recordar
    • Casi todos los comandos tienen opciones, estas pueden verse mediante el manual del comando
    • la consola sabe diferenciar entre mayúsculas y minúsculas y es MUY ESTRICTA con esto.
    • todo lo que ven después de el símbolo # no es tomado en cuenta por la consola, por que es un comentario 
    • la practica hace al maestro (si no tiene consola unix puede hacer pruebas online aqui o aqui)