Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 10/01/2009, à 12:23

daniel50170

[Résolu] argument date dans un fichier sh

bonjour,
J'ai suivi un tuto dans le dernier Linux pratique hors série pour lancer rsync.
Or j'ai essayé plein de solutions mais je n'arrive pas à ce que le fichier sh lance la commande suivante :

ZEDATE='date +%d-%m-%Y'
mkdir -p /home/daniel/essai/${ZEDATE}/

Cela me créé bien le rep essai dans daniel avec un sous répertoire date mais me crée un autre rep dans daniel genre +%d-%m-%Y

la commande en console fonctionne..!

daniel@daniel-desktop:~$ date +%d-%m-%Y
10-01-2009

L'un d'entre vous peut-il me dire où je me plante ?Merci d'avance
Daniel

edit : je pense que c'est le paramètre $ devant ZEDATE qui me plante.

Dernière modification par daniel50170 (Le 11/01/2009, à 16:37)


Les énarques sont à la France ce que les humains sont à la Terre :
une dramatique invention qui se croit supérieure...

Apprenez des erreurs des autres ; votre vie sera trop courte pour les faire toutes vous-même...

Hors ligne

#2 Le 10/01/2009, à 12:52

Sorciere

Re : [Résolu] argument date dans un fichier sh

Bonjour

Le problème vient des guillemets de la première ligne. Il faut utiliser ceux qu'on obtient sur un clavier français par Alt Gr + 7 :

ZEDATE=`date +%d-%m-%Y`
mkdir -p ~/essai/${ZEDATE}/

Hors ligne

#3 Le 10/01/2009, à 13:10

daniel50170

Re : [Résolu] argument date dans un fichier sh

@sorciere

Les guillemets comme ceux que j'ai mis donne la ligne comme une commande (en mauve) si je change par un autre signe cela devient noir et n'est plus un ligne de commande...
Pour compléter je pense que ce livre est probablement bien mais à des lacunes qui font mettre en doute le pointu de leur revue.
Exemple:
il suffit d'écrire 'date +%F(-ou _) %X pour arriver au même résultat..!
Dommage car du coup je me méfie des autres expérience ssh


Les énarques sont à la France ce que les humains sont à la Terre :
une dramatique invention qui se croit supérieure...

Apprenez des erreurs des autres ; votre vie sera trop courte pour les faire toutes vous-même...

Hors ligne

#4 Le 10/01/2009, à 13:49

Sorciere

Re : [Résolu] argument date dans un fichier sh

À la deuxième ligne, remplace

/home/daniel/essai/${ZEDATE}/

par

~/essai/${ZEDATE}/

Pour le format de date, il y a plusieurs manières de faire la même chose, regarde le man :

%F     date complète ; identique à « %Y-%m-%d »

Hors ligne

#5 Le 14/01/2009, à 00:03

daniel50170

Re : [Résolu] argument date dans un fichier sh

@Sorciere
Oui j'ai trouvé les raccourcis de la commande date avec man, j'ai résolu le problème indirectement en remplaçant ${ZEDATE} dans la ligne par la commande directe "date +%F-%X"...C'est moins esthétique que la fonction donnée à une absolue mais cela fonctionne...
Merci


Les énarques sont à la France ce que les humains sont à la Terre :
une dramatique invention qui se croit supérieure...

Apprenez des erreurs des autres ; votre vie sera trop courte pour les faire toutes vous-même...

Hors ligne