Sei sulla pagina 1di 3

Cmo hacer un script :

Primeros Pasos

Un script es un fichero (casi siempre son archivos de texto) que


incluye un conjunto de comandos. Son ejecutados desde la primera
lnea hasta la ltima (de forma secuencial). Para crearse un script solo
tienes que crearte un fichero nuevo y en el nombre poner .sh
Ejemplo: HolaMundo.sh
Un vez creado, empezamos a editarlo. Os recomiendo que usis kate,
gedit, o SciTE aunque tambin sirve con cualquier editor de textos
pero con la desventaja de que no os marcar con diferentes colores
los comandos, llaves, etc. Aunque yo prefiero el kate, porque posee
una consola propia, con lo cual es ms cmodo.
En la primera lnea del script se debe indicar que shell que vas a usar
( /bin/bash/ , /usr/bin/perl , etc ) Aunque da igual la que uses lo
importante es el contenido:
#! /bin/bash
#! Se conoce con el nombre de Sha Bang.
Se denomina sha-bang a la secuencia #! con la que se inician los
scripts. Su funcin es indicarle al sistema que se trata de un conjunto
de comandos para que sean interpretados. En realidad, es un nmero
mgico de dos bytes. El nmero mgico es un marcador especial para
indicar el tipo de archivo, en este caso, indica que se trata de un
script de shell ejecutable.
Para introducir comentarios se debe poner #. Por cada linea que
deseis poner un comentario, lo primero que debe tener es #.
Cuando creas un fichero se crea con los permisos 644 (con ese fichero
si eres el root puedes leerlo y escribirlo, pero no puedes ejecutarlo,
adems cualquier usuario o grupo solo puede leerlo, no puede ni
modificarlo ni ejecutarlo), lo mejor es hacer uso del comando chmod y
darnos permisos de ejecucin, y si queris, a todos los usuarios y
grupos.
chmod 777 /ruta_del_script
Cmo ejecutar un script?
Una vez hecho todo lo anterior, usaremos:
./NombreDelScript
Pero tambin podemos usar si es un shell script:
sh NombreDelScript.sh
Ya tenemos el script creado, le hemos puesto la cabecera y le hemos
cambiado los permisos, ya solo falta meter el cdigo. Pero primero
1

vamos a lo esencial, cmo dar valor a una variable. Es tan sencillo


como poner:
nombre_variable=valor
Si deseas guardar la salida de un programa solo tienes que poner las
comillas invertidas:
nombre_variable=`comando`
Por ultimo, hay un comando que lee por teclado las variables (read).
Para ponerlo es:
read [opciones] nombre_variable1 nombre_variable2
nombre_variableN
read -p Introduce el nombre y los apellidos nombre apellidos
Tiene un montn de opciones pero os destaco las ms importantes y
usadas:
-n num_car : Nmero mximo de caracteres que puedes introducir por
teclado
-p frase : Te muestra por pantalla una frase para tu saber que debes
introducir
-d delimitador : Especificas cual va a ser el delimitador, es decir si
dices que el delimitador sera ; pues todo lo que venga antes de un
; lo coger una variable y todo lo que venga despus de ese
delimitador hasta el prximo ; lo coger otra variable
Por ultimo para coger el valor de un variable se pone:
$nombre_variable
Ejemplos de script ms abajo.
HolaMundo.sh
#! /bin/bash
clear
echo Hola mundo ,este es mi primer script!!!!
ScriptUno.sh
#! /bin/bash
clear
nombre=Manolo el del
apellidos=Bombo
echo Te llamas $nombre $apellidos
Fecha.sh
#! /bin/bash
clear
fecha=`date | cut -d -f 1,2,3`
hora=`date | cut -d -f 4`
echo Hoy es $fecha y son las $hora
2

OtroScript.sh
#! /bin/bash
clear
# IFS es una variable de entorno que determina el delimitador de
campos
# (que por defecto vale ),en este script queremos
# cambiarlo a , para escribir por teclado nombre,apellidos
IFS=,
read -p Introduce el nombre,apellidos : nombre apellidos
echo El nombre es $nombre y los apellidos son $apellidos
Convirtelo a PDF
Esta entrada fue escrita el Lunes, 25 de Agosto de 2008 a las 6:40 y
archivada en Programacin, Scripting.Puedes seguir cualquier
respuesta a esta entrada a travs del feed RSS 2.0. Puedes dejar una
respuesta, o trackback desde tu propio sitio web. Comprtelo:
Una Respuesta a Cmo hacer un script : Primeros Pasos
Sekuela dice:
25 Agosto 2008 a las 7:43
Muy buen post para todos aquellos que empiezan con los scripts.
Simplemente un detalle, en el ejemplo del script Fecha.sh, hay una
manera ms sencilla de mostrar la fecha y la hora, y viene con las
opciones del mismo comando date:
Para la fecha:
date +%d-%m-%Y (Esto mostrara la fecha como 25-08-2008)
date +%d:%m:%y (Esto mostrara la fecha como 25:08:08)
Para la hora:
date +%H:%M (Esto mostrara la hora como 13:45)
date +%H/%M/%S (Esto mostrara la hora como 13/45/32)
Y hay muchsimas ms combinaciones, para conocerlas mejor ya
sabeis: man date

Potrebbero piacerti anche