[Programación] Cadena en bash

Horacio Castellini programacion@lugro.org.ar
Thu, 30 Oct 2003 16:58:58 -0300 (ART)


 --- KSTOR <ekstor@yahoo.com.ar> escribió: >
-----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Amigos,...
> 
> Esta programando un script para agilizar una tarea
> en mi maquina.
> Como hago para que al ejecutar un comando y este me
> devuelva un msj, por 
> ejemplo "OK", lo guarde en una variable, para
> despues hacer otra cosa?


Por lo general los comandos devuelve un entero entre
0=OK y 255, esto se lo programa por ejemplo con

int main(...)
{
....................
.....................
 return 3; // Ups, no va macho...

return 0; // si todo salío bien
}


Para saber el valor devuleto por el último comando
basta con testear el estado de la variable "?"

por ejemplo:
-----------------------------------
hcaste@clara:~$ ls
6to4.txt        direciones  Mail/           sonido/   
        varios.f/
amsn_received/  freebsd/    mailfilter.log  space.jpg 
        viejo_linux.txt
bin/            include/    micq.log/       spamer/   
        xm
ctam.dir        ipv6-1.tst  nsmail/        
terraescape10.jpg
cvshcaste/      lib/        procmail.log    tex-ps/
Desktop/        local/      rc.spamkiller   tmp/
diccionarios/   mail/       reserva/        varios/
hcaste@clara:~$ echo $?
0
hcaste@clara:~$ ls caca
ls: caca: No existe el fichero o el directorio
hcaste@clara:~$ echo $?
1
--------------------------------------

Como verás el 1 devuelto indica que caca no existe...


------------
Internet GRATIS es Yahoo! Conexión
4004-1010 desde Buenos Aires. Usuario: yahoo; contraseña: yahoo
Más ciudades: http://conexion.yahoo.com.ar