Tutorial scripts bash -01- Definiciones, creación y ejecución.

Enviado por AllsSecs el 21 Junio, 2012 - 19:05.

Definiciones

Voy a empezar con unas definiciones para delimitar los conceptos y, como no, para que podamos vacilar a los colegas tomando birras (Se puede omitir perfectamente hasta "Creación y ejecución"):

  • Programa informático es un conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas en una computadora. Cuando está en ejecución se conoce como proceso.
  • Según tipo de instrucciones que damos a la máquina:
    • imperativo: especifican un algoritmo, es decir, la forma en que se va a resolver (vg: C)
    • declarativo: especifican las propiedades de la salida (vg: html)
  • Según el paradigma que utilicemos:
    • no estructurado: permite saltos incondicionales y código por el que no se pasa al ejecutar.
    • estructurado: se basa en la secuencia (pasa por todas la líneas), selección (bifurcación) e iteración(repetición)
    • orientado a objetos: técnica que incluye herencia, abstracción, polimorfismo y encapsulamiento.(vg: java). Más información en la wikipedia.
  • Dependiendo del nivel pueden ser:
    • de alto nivel: algoritmos expresados de forma que el ser humano los puede entender (vg: python)
    • de bajo nivel: algoritmos expresados directamente para la máquina (vg: lenguaje ensamblador)
  • Y dependiendo del orden de interpretación de la máquina:
    • interpretado: el sistema lee una línea y la transforma a su lenguaje (.NET framework)
    • compilado: el sistema transforma el código a un lenguaje que entiende y después lo ejecuta (vg: C++)

Conclusión: Un script es un programa informático imperativo, no estructurado, de alto nivel e interpretado. Existen más conceptos para definir un lenguaje de programación (tipado, plataforma,...) pero ya me he extendido demasiado.
Que quede claro que ésta es mi manera de entender las cosas y, sobre todo, de explicarlas.

Creación y ejecución

  • Para crear el archivo podemos hacerlo con nuestro editor preferido, en mi caso vim:

      $ vim archivo.sh

    así de paso que se crea el archivo podemos editarlo. La extensión se añade para reconocer el tipo de archivo a simple vista.
    Otra manera de crearlo sería con el comando touch:

       $ touch archivo.sh

    sólo se creará pero no podemos editarlo hasta que recurramos a un editor.

  • Para ejecutar hay varias opciones:
    Otorgamos permisos de ejecución y ejecutamos.

       $ chmod +x archivo.sh
       $ ./archivo.sh

    O directamente ejecutamos.

       $ bash archivo.sh

Imagen de PabliNet
Enviado por PabliNet el 27 Junio, 2012 - 22:22.

Yo para crear un shell en Bash hago lo siguiente:

echo '#!'$(which bash) > shell-sh && chmod +x shell-sh && nano shell-sh
Imagen de AllsSecs
Enviado por AllsSecs el 28 Junio, 2012 - 16:25.

¿Querrás decir un script?
Es interesante cómo lo haces, pero excesiva información para el primer post.
En sucesivos post iré completando hasta llegar a entender qué y cómo lo has hecho (y, espero, cosas más complicadas).