El Manual de BASH Scripting Básico para Principiantes/Combinando BASH con otros lenguajes de scripting

De Wikilibros, la colección de libros de texto de contenido libre.
← Compilar (ofuscar) BASH scripts con C - SHC Combinando BASH con otros lenguajes de scripting Otras shells interesantes →
El Manual de BASH Scripting Básico para Principiantes


Como sabemos, al trabajar con BASH bajo Linux o algún UNIX tenemos una gran flexibilidad, por lo cual podemos llamar a otro intérprete y pasarle un código con las instrucciones deseadas. Esto permite hacer scripts muy completos.

Una de las formas de hacer esto, por ejemplo con perl, sería lo siguiente:

#!/bin/bash
#Llamando a un interprete externo a BASH
echo 'El siguiente texto será mostrado por el interprete de PERL'
perl -e 'print "Este texto es mostrado por un script PERL embebido.\n";'
exit 0

O bien, con python:

#!/bin/bash
#Llamando al interprete de Python.
echo 'El siguiente es un script de python:'
echo print "Hola, mundo!" | tee $HOME/.testpythonbash.py
python $HOME/.testpythonbash.py
exit 0

Otro método interesante es el siguiente:

#!/bin/bash
# bash-y-perl.sh

echo "Saludos desde la parte BASH del script."
# Es posible añadir mas comandos BASH aqui.

exit 0
# Fin de la parte BASH del script.

# ======================================================= #
# ======================================================= #

#!/usr/bin/perl
# Esta parte del script se invoca con la opcion -x.

print "Saludos desde la parte PERL del script.\n";
# Podemos añadir mas comandos PERL aqui.

# Fin de la parte PERL del script.
# ======================================================= #

Notemos lo que obtenemos al ejecutar nuestro script:

  • --------------------------------------------------------------------
  • bash $ ./bash-y-perl.sh
  • Saludos desde la parte BASH del script.
  • bash $ ./bash-y-perl.sh -x
  • Saludos desde la parte PERL del script.
  • --------------------------------------------------------------------

Lo importante es experimentar y encontrar un método propio.