¿Qué es un Shell Script?


Un shell script es un archivo que contiene uno más comandos del shell. Se puede crear un script a partir de un editor de textos.

FORMAS DE EJECUCIÓN

Una vez que se ha creado el fichero, existen varias maneras de ejecutarlo. Algunas son:

1. Utilizando la orden “.“. Ejemplo:

usuario@Linux:~$ . nombreDelFichero 

La orden interna “.” lee y ejecuta las órdenes del archivo en el shell actual, tal y como si los comandos fueran ingresados desde el teclado a la terminal. 

2. Ejecución como comando. Ejemplo:

usuario@Linux:~$ nombreDelFichero 

La ejecución de un script como comando se puede lograr siempre y cuando el script se guarde en una carpeta que este definida dentro de la variable de entorno PATH.

Existe una diferencia muy importante entre estas dos maneras de ejecutar un script. Mientras que el utilidad . corre el script como si fuera parte de la sesión actual, la ejecución como comando recorre una serie de pasos. Primero, crea una copia del shell como un subproceso(mejor conocido como subshell). Posteriormente, toma los comandos del script y los ejecuta, para finalmente terminar y pasar de nuevo el control al shell padre.

PERMISOS DE EJECUCIÓN

Antes de que se pueda ejecutar el script, se le deben dar permisos de ejecución. Cabe recordar que existen tres tipos de permiso para todo archivo(lectura, escritura y ejecución) y que estos permisos aplican para tres categorías de usuarios(usuario, grupos y otros) .

Por consiguiente, antes de ejecutar un shell script se le debe dar un permiso de ejecución, la manera mas sencilla de hacer esto es mediante el comando chmod. Ejemplo:

usuario@Linux:~$ chmod +x nombreDeScript

El editor preservará el permiso de ejecución aun y cuando el script sufra cambios. Si no se poseen permisos de ejecución sobre el script, el sistema responderá con alguna salida parecida a esta:

no se puede ejecutar el fichero binario 
Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s