Índice

Escritura y ejecución de un script en shell

1. Definición

Un script en shell es un archivo de texto que contiene los comandos Unix internos o externos, así como palabras clave del shell.

No hay ningún convenio establecido para el nombre de scripts de shell. El nombre de un archivo script de shell puede tener extensión, pero no es obligatorio. Sin embargo, generalmente se usa la extensión ".sh" (incluso si el script no se interpreta con el ejecutable llamado "sh").

Ejemplo

A continuación se muestra el script primero.sh:

$ nl primero.sh 
      1 pwd 
      2 cd /tmp 
      3 pwd 
      4 ls 
$

Ejecución del script:

$ ksh primero.sh 
/home/cristina 
/tmp 
f1 f2 f3 
$

Los comandos se ejecutan secuencialmente.

2. Ejecución de un script por un shell hijo

En la mayoría de los casos, los scripts tienen que ejecutarse a través de un shell hijo como intermediario. Esto tiene como ventaja la no modificación del entorno del shell actual. Para ejecutar un script en shell, existen tres métodos que producen un resultado equivalente.

Primer método

$ ksh primero.sh

Este ha sido el método usado anteriormente. Se invoca al comando ksh pidiéndole la interpretación del script primero.sh.

En este caso, el permiso de lectura sobre el archivo primero.sh es suficiente:

$ ls -l primero.sh 
-rw-r--r--     ...