[EMAIL PROTECTED] a écrit :
> Bonsoir,
> 
> [Version rapide]
> Comment s'appelle la console en cours d'utilisation (device)
> lorsqu'on lance un script bash ?
> 
> [Version détaillée]
> Je voudrais faire un script qui envoie une sortie
> vers /dev/null ou vers la console en cours d'utilisation selon
> un paramètre passé par l'utilisateur a un script.
> donc, du genre :
> une_de_mes_commandes | tee monfichier > /dev/null
> ou
> une_de_mes_commandes | tee monfichier > /dev/console_en_cours
> 
> Comme la chose se trouve un peu partout dans le code bash,
> je pensais faire :
> if [ VersDevNull -eq 1 ]; then
>  Sortie="/dev/null"
> else
>  Sortie="/dev/console_en_cours"
> fi
> 
> Puis dans le code :
> 
> ma_commande_num_1 | tee monfichier > $Sortie
> ...
> ma_commande_num_2 | tee monfichier > $Sortie
> ...
> 

si ça se répéte, ça mérite une fonction:

lancer()
{
        commande=$*
        if [ ... ]; then
                $command | tee monfichier > /dev/null
        else
                $command [ tee monfichier
        fi
}

cela dit, je préfère en général procéder en deux étapes:

- le script "principal" écrit normalement. il n'y a donc pas trop de
"if" dedans.
- un autre script est utilisé pour lancer le script "principal" et qui
peut donc mettre /dev/null et autres joyeusetés.

ça permet de garder le script principal propre. (cela dit, on peut aussi
convertir le script principal en fonction et la mettre dans l'autre).



-- 
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Répondre à