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

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Aide sur script bash

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Aide sur script bash

n°1317680
mozvillat
Posté le 13-08-2012 à 10:57:16  profilanswer
 

Bonjour à tous,
 
Je continue à essayer des cripter avec bash et j'aurais besoin de vos lumieres !!
 
Je cherche à faire un script qui classe des fichiers en fonction de leur date de creation/modification.
 
La structure choisie doit etre du type :
 

Code :
  1. /
  2. -> /Annee
  3. -->/Mois
  4. ---> Fichiers classés
  5. fichiers à classer


 
Dans un premier temps je liste les fichiers du repertoire en prenant la date mais sans prendre les repertoires  

Code :
  1. ls -lrt | grep ^-


 
La ou je bloque c'est pour découper la date afin d'extraire la date, le mois
 
Est il possible en bash de decouper une date (ca je pense que sed ou awk peuvent le faire !!) mais de leur donner un nom de variable, un peu comme ne sql ou php avec AS ???
 
Merci pour vos réponses !!

mood
Publicité
Posté le 13-08-2012 à 10:57:16  profilanswer
 

n°1317694
smea
alias peshane SW-1088-1675-051
Posté le 13-08-2012 à 14:56:49  profilanswer
 

bonjour,
 
un truc qui peut te faciliter la tache, c'est déjà l'option --time-style de ls qui te permettra d'obtenir le format de date qui te vas bien.
 
Avec cette option, tu pourras aussi ajouter un caractère de séparateur de champs qui t'aidera ensuite avec awk. Y'a sans doute plus propre mais ça marche  :o  
 
exemple rapidos si ton arbo est uniquement avec le numéro d'année et numéro de mois:

ls -l --time-style=+'§%m§%Y§' | grep ^- | while read ligne; do  
  fichier=$(echo $ligne|awk -F "§" '{print $4}'|sed 's/^ //')
  annee=$(echo $ligne|awk -F "§" '{print $3}')
  mois=$(echo $ligne|awk -F "§" '{print $2}')
  echo "le fichier \"$fichier\" doit être déplacé dans $annee/$mois"
done


 
ça vaut s'que ça vaut, quick'n dirty  [:fez666]


Message édité par smea le 13-08-2012 à 14:58:17
n°1317716
Profil sup​primé
Posté le 14-08-2012 à 08:15:22  answer
 

salut,
 
bash dispose de "mécanismes de substitutions" qui permettent de se dispenser de awk ou sed.
Voyez man bash  Remplacement des paramètres


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

  Aide sur script bash

 

Sujets relatifs
Script Bash pour récuperer seulement l'adresse IPPlus de réseau VMware quand je met une IP fixe, merci pour votre aide.
(résolu) test sur un entier en bash (très simple)Message JAVA SCRIPT qui me bloque Firefox
Aide pour script bash[bash] Aide SVP -> Script arborescence
Un petit peu d'aide avec un petit script bashaide correction script bash
[AIDE] script bash, CGI[aide pour ptit script en bash!]
Plus de sujets relatifs à : Aide sur script bash


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