Re: script sauvegarde

Top Page

Reply to this message
Author: LIGIER Philippe
Date:  
To: Rémi FERNANDEZ, guilde
Subject: Re: script sauvegarde
On Mon, 8 Aug 2005 10:17:15 +0200, Rémi FERNANDEZ <r.reminou@???>
wrote:

> Bonjour,
>
> J'ai résolu mon probleme:
> Il s'agissait simplement d'une erreur de syntaxe où un ' avait
> remplacé un `. L'erreur classique du débutant je suppose...
>

Erreur du débutant ... et anciens qui persiste à utiliser cette syntaxe
peu lisible reprise du Bourne-Shell pour raison de compatibilité.

Avec le Korn-Shell est apparu une alternative qui a été reprise par la
plupart des shells plus récents (ou moins vieux selon le point de vue).

Cette alternative permet d'harmoniser la syntaxe des substitutions
autre que le remplacement des noms de fichiers, qu'un shel peut
effectuer dans le texte d'une ligne de commande. Toutes les
substitutions sont introduites par le même caractère, le '$' en
l'occurence :

    $<nom_variable>
 ou    ${<nom_variable>}


        Remplacement par contenu de la variable dont le nom suit


    $( <Commande Shell )


        Remplacement par résultat ecrit sur la sortie standard
        de la commande placée entre parenthèses


    $(( expression arithmétique ))


        Remplacement par le résultat de l'expression arithmétique
        placée entre les doubles parenthèses.


        Pour les petits calculs on bénéficie de deux petits bonus
        par rapport à l'utilisation de la commande 'expr' :


        -Pas de création de processus fils


        -On n'est pas obligé de mettre n $ devant les variables qui
          sont utilisées dans l'expression :


            compteur=$(( compteur + 1 ))


Après c'est une affaire de gout, ces deux écritures sont aussi justes et
efficaces l'une que l'autre :

    date_heure=`date +%Y%m%d.%H%M%S`     date_heure=$( date +%Y%m%d.%H%M%S )