Pages : 1
#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
Pages : 1