Hola Mundo en BASH
SOLUCIONARIO
Hola Mundo en BASH
2024-05-31
Por
Occam's Razor

Vemos como programar nuestro primer shell script usando BASH

#!/bin/sh

# Esta es una linea de comentario

echo "Hola Mundo!"

cat <<EOF
-------------------------------
Esta es una cadena de caracters
con varias lineas de texto
-------------------------------
EOF

<<EOF
Los HEREDOCS tambien se
pueden utilizar para incluir
comentarios en varias lineas
EOF

: '
Otra forma de incluir comentarios
es con el operador : que no hace
nada
'

Bash es uno de los intérpretes de comandos más populares, en parte debido a la gran cantidad de funciones que ha ido añadiendo durante los años con respecto a la shell estandar.

Comparado con el resto de lenguajes que estamos viendo, la shell tiene una potencia expresiva mucho menor, sin embargo, las posibilidades de que, en algún momento, tengas que escribir un programa para una shell (lo que se conoce como un Shell Script) son muy altas.

Los shell scripts suelen utilizar la extension .sh (derivado de SHell obviamente).

SABIAS QUE…

En ocasiones verás shell scripts con otras extensiones como por ejemplo bash. En esos casos, la extensión suele indicar el tipo de shell para la que se ha escrito el programa puesto que puede utilizar alguna función especial de esa shell y no funcionar en otras. La extensión sh indica que se utiliza la shell estándar que se encuentra en /bin/sh y se llama sh.

Como podemos ver, el caracter # se utilizado para añadir comentarios y la instrucción echo para imprimir cadenas de caracteres en pantalla. Nótese que aunque se han utilizado las comillas para delimitar la cadena de caracteres, en ese caso en concreto se podría haber omitido. echo por defecto añade un retorno de carro a la cadena.

SOY NOVATO

La diferencia entre echo "Hola Mundo" y echo Hola Mundo es que en el primer caso estamos pasando un único parámetro al programa echo mientras que en el segundo caso estamos pasando dos. El programa echo imprime en pantalla todos parámetros que recibe separados por un espacio. Prueba a añadir más de un espacio entre Hola y Mundo en los dos casos anteriores y verás que pasa.

También podemos utilizar here-docs y definir comentarios multilíneas utilizando here-docs que no pasamos como parámetro a nada (de hecho esto también lo podemos hacer en Ruby) o utilizando el operador :.

Como con todos los lenguajes interpretados, para ejecutar nuestro programa debemos darle permisos y utilizar el interprete adecuado en caso de que no hayamos añadido el she-bang.

$ bash hello.sh
$ chmod +x hello.sh
$ ./hello.sh

Bash fué desarrollado por Brian Fox para el projecto GNU para sustituir la Bourne Shell que era propietaria. Su primera versión data de 1989 y desde entonces se ha convertido en la shell estándar para muchos sistemas. En los últimos años otras shells han (dash, zsh,…) empezado a ser utilizada por, sobre todo, algunas distros de linux, pero Bash sigue siendo la más extendida.

SABÍAS QUE…

Bash es el acronimo de Bourne-again SHell que es un juego de palabras con el nombre de la shell que intenta sustituir (Bourne Shell) y la idea de volver a nacer (Born again).

Resumen

  • Lenguaje interpretado
  • Extension: sh/bash
  • Terminador de líneas : Retorno de carro
  • Agrupa instrucciones con : Depdende del comando
  • Comentarios multilinea : Posible utilizando HERE-DOCS
  • Comentarios misma línea: #
  • Delimitador de cadenas: "cadena¨ o 'cadena'
  • Puedes imprimir textos con echo (Puede añadir (por defecto) o no retorno de carro)
  • Soporte cadenas múltilínea: Depende de la operación
  • Soporta HERE-DOCS
  • Punto de Entrada: Inicio del fichero

SOBRE Occam's Razor
Somos una revista libre que intenta explicar de forma sencilla conceptos tecnológicos y científicos de los que no podemos escapar. Al final, todo es más fácil de lo que parece!

 
Tu publicidad aquí :)