Nuevas NORMAS para el foro

Curso Hacker
Bienvenido(a), Visitante. Favor de ingresar o registrarse.
¿Perdiste tu email de activación? - ſeptiembre 07, 2008, 02:51:03
Boton Buscar
Inicio Ayuda Ingresar Registrarse
Visita: Articulos - Juegos Gratis - Da Foros

Comunidad Underground Hispana  |  Programacion  |  Programación  |  Programacion Shell  |  Tema: Ejecucion condicional 0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Ejecucion condicional  (Leído 104 veces)
[p3ll3]
Colaborador
*****
Desconectado Desconectado

Mensajes: 527


... Open your eyes , open your mind ...


Ver Perfil WWW
« en: Mayo 13, 2008, 03:15:24 »

Ejecución condicional

Esta funcionalidad nos la proporcionan los operadores "&&" y "||".


Operador &&

El primer operador, "&& " separa dos órdenes de forma que la que tiene a la derecha sólo se ejecuta cuando la de la izquierda termina correctamente, es decir

orden1 && orden2
             

orden2 sólo se ejecutará si orden1 terminó sin ningún error.

Por ejemplo, queremos ejecutar la orden cat fichero sólo si existe fichero; entonces tendremos que buscar una orden que termine con un error si no existe fichero, por ejemplo ls fichero y condicionar la ejecución de cat fichero a esta:

$ ls fichero && cat fichero
             

Otro ejemplo, para compilar los controladores de dispositivos de linux e instalarlos, lo podemos hacer como:

make module && make modules_install

             

es decir instalará los controladores sólo si ha conseguido compilarlos correctamente.


Operador ||

El segundo operador, "|| " tiene un comportamiento similar al anterior, separa dos órdenes de forma que la que tiene a la derecha sólo se ejecuta cuando la de la izquierda termina incorrectamente, es decir

orden1 || orden2
             

orden2 sólo se ejecutará si orden1 terminó con algún error.

Por ejemplo si no existe fichero queremos crearlo vacía y si existe no hacemos nada. Igual que en el ejemplo anterior, buscamos una orden que termine con un error si no existe fichero y condicionamos la ejecución de la orden touch fichero al error de la orden previa:

$ ls fichero || touch fichero
             

También, al igual que en el ejempo anterior podríamos hacer que si el proceso make modules falla, se borraran todos los ficheros temporales que se crean:

make modules || rm -r *.o



Saludos.................. Cool
Nota:En resumen, se permite la reproducción parcial o total de estos textos en cualquier medio , impreso o electrónico, siempre que no se impongan condiciones adicionales a la reproducción y distribución de las copias o de los trabajos derivados que incorporen este documento. En resumen, cualquier trabajo derivado de ese texto debe mantener esta nota de copyright.
             
« Última modificación: Mayo 13, 2008, 05:34:30 por [p3ll3] » En línea


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion

Páginas: [1] Ir Arriba Imprimir 
Comunidad Underground Hispana  |  Programacion  |  Programación  |  Programacion Shell  |  Tema: Ejecucion condicional « anterior próximo »
Ir a:  


Ranking-Hits
Powered by SMF 1.1.5 | SMF © 2006-2007, Simple Machines LLC