IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Question sur script de sauvegarde en shell


Sujet :

Linux

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 94
    Points : 35
    Points
    35
    Par défaut Question sur script de sauvegarde en shell
    bonjour

    je souhaite réaliser un script de sauvegarde en .sh

    je voudrais qu il execute une commande pour savoir si le fichier placer en variable existe bien seulement voila j ai plusieur fichier que je veux sauvegarde smb.conf;squid.conf etc..
    et la je seche car je ne voie pas comment faire
    j avais penser a ceci mais c faux

    1=`xorg`
    2=`smb.conf`
    package=``

    while i < 5;
    {
    do
    if [ -e -d dpkg -l | cut -d' ' -f3 | grep ^$i$ ]; then
    package=$package '$i'
    i = i++

    }

    merci de bien vouloir eclairer ma lanterne

  2. #2
    Rédacteur

    Avatar de ok.Idriss
    Homme Profil pro
    IS Consultant
    Inscrit en
    Février 2009
    Messages
    5 220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : IS Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 5 220
    Points : 19 450
    Points
    19 450
    Par défaut
    Bonsoir.

    Tout d'abord, ne pas oublier les balises codes (code et /code entre crochets) pour plus de lisibilité.

    J'ai pas trop compris ce que tu voulais faire mais je peu déjà te dire qu'une boucle for serait plus adapté pour un nombre finit d'itérations.

    Pour vérifier si un fichier existe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if [ -f $fichier ]
    then 
            # instructions
    fi

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 94
    Points : 35
    Points
    35
    Par défaut
    desoler pour les balise code

    se que je voudrais precisement
    c'est par exemple avoir la variable
    $1=samba
    $2=squid

    avoir une boucle qui verifie si les fichier placer en paramètre dans les variables $1 et $2 existe bien .
    sans modifier la ligne de commande dans le script qui viens a verifier
    il vient a changer tout seule la variable de la ligne .

    [ -e -d dpkg -l | cut -d' ' -f3 | grep ^$1 ]


    merci de ton aide ok.Idriss jespére que j ai etais plus claire

  4. #4
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    534
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 534
    Points : 562
    Points
    562
    Par défaut
    Bonjour,

    Je ne sais pas si ceci peut t'aider
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    #!/bin/sh
    SAMBA="samba"
    XORG="xorg"
     
    for i in $#
    do
    # faire tes traitements selon la valeur de i 
    done

  5. #5
    Rédacteur

    Avatar de ok.Idriss
    Homme Profil pro
    IS Consultant
    Inscrit en
    Février 2009
    Messages
    5 220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : IS Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 5 220
    Points : 19 450
    Points
    19 450
    Par défaut
    Bonsoir.

    Citation Envoyé par ttttnht Voir le message
    Je ne sais pas si ceci peut t'aider
    Probablement ... ça peut déjà servir à vérifier l'existance des fichiers en paramètres ("avoir une boucle qui verifie si les fichier placer en paramètre dans les variables $1 et $2 existe bien").

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    for i in $#
    do
            if [ -f $i ]
            then
                    # traitements à effectuer en cas d'existance du fichier
            else
                   #  traitements à effectuer en cas d'inéxistance du fichier
            fi       
    done
    Mais il semble y avoir confusion avec la notion de paramètres dans le premier code de zyriuse ... il semble mélanger les paramètres avec les initialisations de variables et le contenu de ces variables.

    La syntaxe du while est par ailleurs incorrecte, ainsi que l'incrémentation qui doit notamment être préfixée par let (en Bash).

    Bref, je lui conseil d'apprendre les syntaxes des différentes structures (de contrôle, itératives, ...) en Bash avant de ce lancer dans le codage de son script.

Discussions similaires

  1. [VBS]Question sur script et fichier
    Par ozzii dans le forum VBScript
    Réponses: 4
    Dernier message: 23/01/2013, 18h31
  2. question sur script, fonction while
    Par rouget dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 15/06/2011, 18h25
  3. une petite question sur des arguments du unix shell
    Par kinkichin dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 22/09/2009, 13h25
  4. Petite question sur script BAT
    Par BikerNiK dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 29/08/2008, 12h03
  5. erreur sur script de sauvegarde
    Par zouetchou dans le forum Langage
    Réponses: 5
    Dernier message: 08/12/2005, 09h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo