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

Administration système Discussion :

problème avec script bash


Sujet :

Administration système

  1. #1
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 760
    Points : 184
    Points
    184
    Par défaut problème avec script bash
    Bonjour,

    Je me suis fait un petit script tout simple qui sauvegarde mes dossiers et fichiers dans un dossier, qui le tar.gz et le copie sur une autre partition (et m'envoie un mail quand c'est fait).

    Je voudrais que ce dossier ai une date dans le nom, mais impossible de créer un dossier contenant la date dans le nom, ni même de renommer (avec mv) le dossier de départ. A chaque fois, j'ai une erreur car le dossier n'existe pas.

    Voila comment je fais pour la date :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    a="$(date +%D)"
    mkdir /media/stock/sauvegarde-$a
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mv sauvegarde sauvegarde-$a
    Je ne comprends pas pourquoi...
    Si quelqu'un peut m'aider svp ?

    Merci d'avance,
    Très cordialement,

    ANDRE Ani

  2. #2
    Expert éminent

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Points : 6 276
    Points
    6 276
    Par défaut
    Salut,

    Change le format de ta variable date "$a" et ça devrait aller mieux

    Par exemple a="$(date +%F)" ou celle de ton choix (sauf avec des slashs)

  3. #3
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Points : 12 262
    Points
    12 262
    Par défaut
    tu n'as pas besoin de la variable

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mkdir -p /truc/bidule/machin/sauvegarde-$(date +%D)
    suffit

    sinon par une variable :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    a=$(date +%Y%m%d) 
    mkdir -p /truc/bidule/machin/sauvegarde-${a} # je préfère ce format d'horodatage
    dans les deux cas ça marche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    truc/bidule/machin/sauvegarde-08/16/12:
    total 0
    truc/bidule/machin/sauvegarde-20120816:
    total 0

  4. #4
    Expert confirmé
    Avatar de becket
    Profil pro
    Informaticien multitâches
    Inscrit en
    Février 2005
    Messages
    2 854
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Informaticien multitâches
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 2 854
    Points : 5 915
    Points
    5 915
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    date +%D
    08/16/12
    Tu voudrais créer un répertoire qui contient des / ? Pas possible !

    Si tu veux créer répertoire et sous-répertoires alors tu dois utiliser mkdir -p

  5. #5
    Expert éminent

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Points : 6 276
    Points
    6 276
    Par défaut
    Je veux bien qu'on me mette un "-1" pour ne pas avoir parlé de l'option "-p" de la commande "mkdir", soit.

    Par contre je m'excuse, mais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $ mkdir -p rep/sauvegarde-$(date +%D)
     
    $ tree -if
    .
    ./rep
    ./rep/sauvegarde-08
    ./rep/sauvegarde-08/16
    ./rep/sauvegarde-08/16/12
     
    4 directories, 0 files
    Est quand même bien moins explicite que (sans compter que je doute que ce soit le but recherché) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $ mkdir -p rep/sauvegarde-$(date +%F)
     
    $ tree -if
    .
    ./rep
    ./rep/sauvegarde-2012-08-16
     
    2 directories, 0 files
     
    $
    Non ?

  6. #6
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 760
    Points : 184
    Points
    184
    Par défaut
    Un grand merci à tous !
    Ca marche, enfin !
    J'ai passé plein de temps la-dessus sans comprendre ce qui ne marchait pas.
    C'est parfait ;-)

    Vais pouvoir finir mon script.

    Encore merci ;-)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de script Bash dans script Perl
    Par Aviator dans le forum Langage
    Réponses: 3
    Dernier message: 03/01/2008, 21h50
  2. problème avec script d'upload : variables indéfinies
    Par wilikev dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 17/10/2007, 13h26
  3. Problème avec script bash
    Par jejerome dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 26/11/2006, 23h32
  4. [SQL] Problème avec script de pagination et requête sql sur deux tables
    Par psychoBob dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 12/06/2006, 15h06
  5. [MS-DOS] Problème avec Script
    Par bliml dans le forum Scripts/Batch
    Réponses: 6
    Dernier message: 24/05/2005, 14h52

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