Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1417 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Comment ecire la date dans un nom de fichier

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Comment ecire la date dans un nom de fichier

n°831031
coolben
http://www.starbusiness.fr
Posté le 29-07-2006 à 15:04:46  profilanswer
 

Bonjour
 
je souhaite créer un fichier de log pour un petit programme.
Comme ce programme est lancé tous les jours par un cron, j'écrit la sortie de ce programme dans un fichier de log comme ca :
mon_programme >> ma_log.txt
 
Par contre contre comment faire pour ajouter la date au fichier de log ?
 
merci pour votre aide

mood
Publicité
Posté le 29-07-2006 à 15:04:46  profilanswer
 

n°831039
coolben
http://www.starbusiness.fr
Posté le 29-07-2006 à 16:10:46  profilanswer
 

j'ai trouvé ca qui me donne la date :  
date +%y%m%d
mais je ne sais pas comment integrer cette commande en ma premiere  

n°831040
the_fireba​ll
I have fucking failed
Posté le 29-07-2006 à 16:11:47  profilanswer
 

mon_programme >> ma_log_`date +%y%m%d`.txt


---------------
Two thousand years of misery, of torture in my name, hypocrisy made paramount, paranoia the law, my name is called religion, sadistic, sacred whore.
n°831106
Plouf_
Posté le 30-07-2006 à 00:20:06  profilanswer
 


Code :
  1. #!/bin/bash
  2. #date du jour
  3. DATE=`date +"%y%m%d"`
  4. #date de la vielle
  5. DATE2=`date --date '1 days ago' +"%y%m%d"`;
  6. #date d'il y'a 3 jours
  7. DATE3=`date --date '3 days ago' +"%y%m%d"`;
  8. mon_programme >> log_$DATE.txt
  9. #par exemple

 
 

n°831261
coolben
http://www.starbusiness.fr
Posté le 30-07-2006 à 22:28:20  profilanswer
 

Citation :

mon_programme >> ma_log_`date +%y%m%d`.txt


Bizarement cette ligne de commande ne fonctionne pas avec quand elle est lancer par un cron mais bien quand on la tape dans un shell  
je vais donc essaye la solution de plouf
 :hello:

n°831263
jlighty
Posté le 30-07-2006 à 22:41:08  profilanswer
 

Lors de l'exécution du cron, la variable $PATH ne doit pas être correctement renseignée:  
essaye de faire  

mon_programme >> ma_log_`/bin/date +%y%m%d`.txt

n°831264
coolben
http://www.starbusiness.fr
Posté le 30-07-2006 à 22:59:59  profilanswer
 

voici ce que j'ai dans syslog :

Citation :

Jul 30 22:50:01 localhost /USR/SBIN/CRON[5471]: (coolben) CMD (/home/coolben/projet_course/moteur/test_hello >> /home/coolben/projet_course/moteur/log/log_test_hello_`/bin/date +)


 
au lieu de :  

Citation :

/home/coolben/projet_course/moteur/test_hello >> /home/coolben/projet_course/moteur/log/log_test_hello_`/bin/date +%y%m%d`.txt


 
 :??:

n°831273
Plouf_
Posté le 31-07-2006 à 01:23:44  profilanswer
 

As tu prit le temps de lire mon post précédent et de tester ?

n°831298
coolben
http://www.starbusiness.fr
Posté le 31-07-2006 à 07:54:24  profilanswer
 

oui j'ai pris le temps de le lire et de tester  
mais je ne comprend pas quand je lance par le cron, j'ai l'impression que rien ne s'execute
je comprend pas !
Par contre je vois bien la ligen de commande dans syslog

n°831468
jlighty
Posté le 31-07-2006 à 18:26:23  profilanswer
 

mon_programme est bien exécuté (i.e visible dans top ou ps) ? essaye de mettre le chemin absolu de mon_programme.

mood
Publicité
Posté le 31-07-2006 à 18:26:23  profilanswer
 

n°831494
francoispg​p
Posté le 31-07-2006 à 19:38:17  profilanswer
 

tu es dans un cron pas dans un shell tu n'as pas les meme variables d'environnement.
il te faut le chemin absolu tant du programme que de tout fichier appele/ouvert ou de redirection

n°831563
coolben
http://www.starbusiness.fr
Posté le 31-07-2006 à 23:33:33  profilanswer
 

voici la ligne dans mon cron :

Citation :

50 *    * * *   coolben /home/coolben/projet_course/moteur/test_hello >> /home/coolben/projet_course/moteur/log/log_test_hello_`/bin/date +%y%m%d`.txt


 
tout est en absolu et pourtant j'ai pas l'impression que ca marche.

n°831595
l0ky
Posté le 01-08-2006 à 08:43:02  profilanswer
 

man 5 crontab
 
http://www.linux-kheops.com/doc/ma [...] tab.5.html
 

Citation :


Les signes pourcentages (%) dans les commandes seront transformés en retour-chariot, sauf s'ils sont précédés par un backslash (\). Toutes les données se trouvant à la suite du premier % seront transmises à la commande sur son entrée standard.

n°831605
francoispg​p
Posté le 01-08-2006 à 10:10:47  profilanswer
 

.....`date +"\%....."`
 
ça doit passer non ?


Message édité par francoispgp le 01-08-2006 à 10:11:14
n°832122
coolben
http://www.starbusiness.fr
Posté le 03-08-2006 à 07:52:39  profilanswer
 

apres un petit test cela marche bien avec un \ devant les %
merci a tous


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Comment ecire la date dans un nom de fichier

 

Sujets relatifs
périphérique de stockage externe et systèmes de fichierGros fichier pureftpd
[résolu]"sudo cp /répertoire/fichier.mp3/" n'est pas un répertoire.Extraire la bande son d'un fichier wmv
[résolu]émuler fichier .msi avec wine...Comment créer un fichier image (.img) de 1GB avec ubuntu ?
Fichier .batch pour changer de passerelle ?Comment connaitre le proprio d'un dossier/fichier ?
Cherche un msgsnarf MSN pour fichier pcap (linux)Extraction d un seul fichier d un tar.gz
Plus de sujets relatifs à : Comment ecire la date dans un nom de fichier


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR