16.04.2014 Views

Administración avanzada de GNU/Linux (PDF) - SW Computación

Administración avanzada de GNU/Linux (PDF) - SW Computación

Administración avanzada de GNU/Linux (PDF) - SW Computación

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Administración <strong>avanzada</strong> <strong>de</strong> <strong>GNU</strong>/<strong>Linux</strong><br />

ª FUOC • XP04/90785/00019<br />

Todos los scripts Bash tienen que comenzar con la línea:<br />

#!/bin/bash<br />

Esta línea le indica al shell usado por el usuario, el que tengamos activo<br />

en el momento, con qué shell hay que ejecutar el script que aparezca<br />

a continuación.<br />

El script pue<strong>de</strong> ejecutarse <strong>de</strong> dos modos diferentes:<br />

1) Por ejecución directa <strong>de</strong>s<strong>de</strong> la línea <strong>de</strong> comandos, siempre que<br />

tenga permiso <strong>de</strong> ejecución. Si no se da el caso, ponemos el<br />

permiso con: chmod +x script.<br />

2) Por ejecución mediante el shell, llamamos al shell explícitamente:<br />

bash script.<br />

Hay que tener en cuenta que, sea cuál sea el método <strong>de</strong> ejecución,<br />

siempre estamos creando un subshell don<strong>de</strong> se va a ejecutar nuestro<br />

script.<br />

Variables en Bash<br />

La asignación <strong>de</strong> variables se realiza por:<br />

variable = valor<br />

El valor <strong>de</strong> la variable se pue<strong>de</strong> ver con:<br />

echo $variable<br />

don<strong>de</strong> ’$’ nos hace referencia al valor <strong>de</strong> la variable.<br />

La variable por <strong>de</strong>fecto sólo es visible en el script (o en el shell). Si la<br />

variable tiene que ser visible fuera <strong>de</strong>l script, a nivel <strong>de</strong> shell o <strong>de</strong><br />

ANOTACIONES<br />

119

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!