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 22/02/2009, à 14:41

Daddo

[résolu] [BASH] Supprimer les fichiers modifiés aujourd'hui

Bonjour,

Je souhaiterais créer un script bash pour supprimer les fichiers modifiés le jour même.
Pour l'instant pour essayer je me contente de lister les fichiers modifiés le jour même.

J'ai fait ceci :

for i in *
do
  if [ 'date -r $i +%F' = 'date +%F' ]
  then
    echo $i
  fi
done

Mais ça ne liste jamais rien. Pourtant il y a bien deux fichiers modifiés aujourd'hui :

daddo@pc:~/Bureau$ ll | grep '2009-02-22'
-rw-r--r-- 1 daddo daddo       0 2009-02-22 14:30 fichier_aujourdhui
-rw-r--r-- 1 daddo daddo       0 2009-02-22 14:30 fichier_aujourd'hui_2
daddo@pc:~/Bureau$ date -r fichier_aujourdhui +%F
2009-02-22
daddo@pc:~/Bureau$ date +%F
2009-02-22

Qu'est-ce qui peut bien clocher ?
Ce vient peut-être des deux commandes "dates" qu'il ne faut pas mettre entre quotes mais ça ne marche ni avec des simples/doubles quotes ni sans rien

Merci

Dernière modification par Daddo (Le 08/03/2009, à 12:06)

Hors ligne

#2 Le 22/02/2009, à 14:47

AnsuzPeorth

Re : [résolu] [BASH] Supprimer les fichiers modifiés aujourd'hui

Tu as regardé du coté de find, il a les options pour trier par date de modif, et un exec rm fera le travail !


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#3 Le 22/02/2009, à 15:04

frafa

Re : [résolu] [BASH] Supprimer les fichiers modifiés aujourd'hui

Salut,
ben faudrait peut etre les executer!

`` ou $()

sinon comme AnsuzPeorth find et exec plus adapté je pense...

EDIT: Correction

for i in *
do
  if [ "$(date -r "$i" +%F)" = "$(date +%F)" ]
  then
    echo "$i"
  fi
done

Dernière modification par frafa (Le 22/02/2009, à 15:07)

Hors ligne

#4 Le 22/02/2009, à 18:26

Link31

Re : [résolu] [BASH] Supprimer les fichiers modifiés aujourd'hui

find . -maxdepth 1 -mtime 1 -delete

Hors ligne

#5 Le 08/03/2009, à 12:06

Daddo

Re : [résolu] [BASH] Supprimer les fichiers modifiés aujourd'hui

Merci smile

Hors ligne