En ocasiones pasa desapercibida ya que no se suele mencionar demasiado en las guías de scripting o se hace una pasada muy superficial sobre las posibilidades que ofrece. Especialmente en los casos en los que hay que “volcar” código adicional desde scripts en bash hacia otros scripts o ficheros. Afortunadamente, gracias a las redirecciones Here Document/Here-script esta tarea se hace bastante más llevadera. Muy útil en la generación de SCRIPTS y presentar los resultados via WEB.
Vamos a ver un ejemplo muy sencillo de script en bash en el que generamos un HTML a base de “echo” y haciendo redirecciones al fichero html_example.html
:
#!/bin/sh
fecha=`date +%F`
parrafo1="Este es el primer parrafo"
parrafo2="Este es el segundo parrafo"
parrafo3="Este es el tercer parrafo"
cat << EOF > /home/julio/html_example.html
<html>
<head><title>HTML ejemplo</title></head>
<body>
<h1>Este es el header principal</h1>
<h2>Aqui incluimos una variable, su contenido es $fecha</h2>
<p>$parrafo1</p>
<p>$parrafo2</p>
<p>$parrafo3</p>
<p>Ejemplo de tabla<p>
<table style="width:100%">
<tr>
<td align="center">Primera columna</td>
<td align="center">Segunda Columna</td>
<td align="center">Tercera columna</td>
</tr>
<tr>
<td align="center">50</td>
<td align="center">60</td>
<td align="center">70</td>
</tr>
</table>
</body>
</html>
EOF
Al ejecutar el script obtendríamos:
<html>
<head><title>HTML ejemplo</title></head>
<body>
<h1>Este es el header principal</h1>
<h2>Aqui incluimos una variable, su contenido es 2016-01-10</h2>
<p>Este es el primer parrafo</p>
<p>Este es el segundo parrafo</p>
<p>Este es el tercer parrafo</p>
<p>Ejemplo de tabla<p>
<table style="width:100%">
<tr>
<td align="center">Primera columna</td>
<td align="center">Segunda Columna</td>
<td align="center">Tercera columna</td>
</tr>
<tr>
<td align="center">50</td>
<td align="center">60</td>
<td align="center">70</td>
</tr>
</table>
</body>
</html>