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

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Script archivage mensuel

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Script archivage mensuel

n°801383
milou16118​5
Posté le 13-04-2006 à 11:14:30  profilanswer
 

Bonjour tout le monde, j'ai encore une petite question à vous poser  :sweat: .
Voila tous les jours je rappatrie des fichiers sur un poste, et je voudrais que tous les mois, les fichiers téléchargés soit copiés automatiquement dans un répertoire ayant pour nom le mois précédent celui en cours.
Je ne sais pas si je suis clair.
Je sais comment créer un dossier, je sais aussi lui donner le nom du mois courant avec la variable date, mais comment lui donner le nom du mois précédent ?
Petite précision, les fichiers téléchargés ont comme format de nom : Année_Mois_Jour.txt
J'avais pensé à prendre le début du nom des fichiers pour créer le repertoire, pour le mois.
Autre précision, je voudrais écrire ce sciprt en shell...sur une Debian.
Merci beaucoup pour vos réponses.
 :hello:  :hello:  :hello:


Message édité par milou161185 le 13-04-2006 à 11:14:44
mood
Publicité
Posté le 13-04-2006 à 11:14:30  profilanswer
 

n°801400
francoispg​p
Posté le 13-04-2006 à 12:41:56  profilanswer
 

le plus simple est effectivement de partir du nom du fichier  
 


for i in * ; do  
REP=`expr \`echo $i | cut -d"_" -f2 | cut -d"_" -f1\` \- 1`
if [ $REP -eq 0 ]; then
   REP=12
   #pour passer de janvier à decembre
fi
mv $i $REP/
done


 
pourquoi le mois de janvier pose problème ?


/>i=2006_01_03
/>rep=`expr \`echo $i | cut -d"_" -f2 | cut -d"_" -f1\` \- 1`
/>echo $rep
0
/>


 
alors qu'il te faut des noms de répértoires tels que 1,2,3,4,5,6,7,8,9,10,11,12
 
pour automatisé il suffit de mettre ton script ( une fois adapté à tes besoins) dans une tache cron le 1 er de chaque moi par exemple


Message édité par francoispgp le 13-04-2006 à 12:42:13
n°802598
overider
Posté le 17-04-2006 à 23:53:22  profilanswer
 

essaye ca   echo `date +%Y%m --date "1 month ago"`


Message édité par overider le 17-04-2006 à 23:53:33
n°802627
francoispg​p
Posté le 18-04-2006 à 09:22:10  profilanswer
 

ça ne marchera pas partout c'est donc à proscrire comme méthode


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

  Script archivage mensuel

 

Sujets relatifs
script shell [batch] sous windowslancement d'un script au démarrage
[Shell Script] Ecrire une boucleexecuter un script avec www-data et mot de passe ?
Utilisé le fichier /proc dans un script C[Résolu] Script ftp : Problème de répertoire
Script de reconnexion ADSL[Résolu] Script en tcl/tk8.0 ???
script d'affichage mp3 linux[Debian / IPTables] Création du script ?
Plus de sujets relatifs à : Script archivage mensuel


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