Téléchargement
illégal
Posez votre question Signaler

Commande find et option ctime [Résolu]

bob031 7903Messages postés 7 août 2004Date d'inscription 25 avril 2012Dernière intervention - Dernière réponse le 31 janv. 2011 à 16:31
Bonjour,
j'essaie de créé un fichier (lancé par cron) afin de virer des fichiers !
voici ma commande que je lance au prompt pour tester:
find /var/lib/mysql/ -name mysql-bin.0\* -ctime +1 -exec rm -f {} \;

sachant que nous somme le 1er juin :
[root@localhost ~]#
ls -la /var/lib/mysql

-rw-rw---- 1 mysql mysql 117 mai 30 14:51 mysql-bin.000430
-rw-rw---- 1 mysql mysql 117 mai 30 20:32 mysql-bin.000431
-rw-rw---- 1 mysql mysql 98 mai 30 20:34 mysql-bin.000432
-rw-rw---- 1 mysql mysql 117 mai 30 22:34 mysql-bin.000433
-rw-rw---- 1 mysql mysql 117 mai 31 15:49 mysql-bin.000434
-rw-rw---- 1 mysql mysql 98 mai 31 17:00 mysql-bin.000435
-rw-rw---- 1 mysql mysql 117 mai 31 22:25 mysql-bin.000436
-rw-rw---- 1 mysql mysql 98 jun 1 09:02 mysql-bin.000437
-rw-rw---- 1 mysql mysql 3515 jun 1 09:02 mysql-bin.index
en utilisant l'option ctime +1 : pourquoi les fichiers en date du 30 mai ne sont-ils pas éliminés ??
D'avance merci.
:-))
Lire la suite 

Commande find et option ctime »

15 réponses
Réponse
+1
moins plus
voila ce que dit la man page, c'est la même chose pour ctime
-atime n
File was last accessed n*24 hours ago. When find figures out
how many 24-hour periods ago the file was last accessed, any
fractional part is ignored, so to match -atime +1, a file has to
have been accessed at least two days ago.

essaie avec -cmin +1440
1440 = 24h*60 min

chmod (changer les droits) et chown (changer le propriétaire d'un fichier) change la date de création du fichier (ctime)
bob031jipicy - 1 juin 2007 à 17:38
Bon, j'ai fait quelques tests : je comprends un peu mieux !

option ctime : marche pô sur les fichiers créés avec la commande touch ! (mais je m'en fiche ....et toc !)
option mtime : marche très bien avec les fichiers créés avec la commande touch !

alors ou c'est moi qui a un problème de vocabulaire ou c'est la machine car par définition la commande touch créé un fichier (puisqu'il n'existait pas aupatavant). Et pourtant la commande ctime signifie "date de création" mais ne vire pas les fichiers créés.
Alors que la commande mtime oui !

par contre que je fasse :
ctime +1 ou mtime +1 : les fichiers âgés de 2 jours sont quand même conservés ! (mais là aussi je m'en fiche car je ferais pas +1 ....et toc !).

FIN !

Me reste plus qu'à utiliser tout ça par cron ......

:-))
dubcekjipicy - 2 juin 2007 à 15:12
la commande touch crée le fichier si il n'existe pas, sinon elle modifie la date (mtime)du fichier existant. voir les options
bob031- 2 juin 2007 à 15:18
Merci à toi dubcek ! :-))
Je commence à saisir les "nuances".

:-))
Ajouter un commentaire
Réponse
+0
moins plus
qu'affiche ls -lac /var/lib/mysql ?
ils ont été "touchés" entre-temps
bob031- 1 juin 2007 à 13:36
Salut,

non je pense pas qu'ils aient été "touchés"
comme tu peux le voir mysql en créé de nouveaux par jour (bon j'en avais déjà viré pas mal , mais là je souhaite passer par cron)

[root@localhost ~]#
ls -lac /var/lib/mysql

-rw-rw---- 1 mysql mysql 117 mai 30 14:51 mysql-bin.000430
-rw-rw---- 1 mysql mysql 117 mai 30 20:32 mysql-bin.000431
-rw-rw---- 1 mysql mysql 98 mai 30 20:34 mysql-bin.000432
-rw-rw---- 1 mysql mysql 117 mai 30 22:34 mysql-bin.000433
-rw-rw---- 1 mysql mysql 117 mai 31 15:49 mysql-bin.000434
-rw-rw---- 1 mysql mysql 98 mai 31 17:00 mysql-bin.000435
-rw-rw---- 1 mysql mysql 117 mai 31 22:25 mysql-bin.000436
-rw-rw---- 1 mysql mysql 98 jun 1 09:02 mysql-bin.000437
-rw-rw---- 1 mysql mysql 3515 jun 1 09:02 mysql-bin.index

merci

ps : ctime c'est bien Recherche par date de création / mtime Recherche par date de dernière modification. / atime Recherche par date de dernier accès
dubcek- 1 juin 2007 à 13:51
ctime est aussi la date du dernier chmod ou chown
bob031- 1 juin 2007 à 14:01
ctime est aussi la date du dernier chmod ou chown

heu ..j'ai pas bien compris ! Quoiqu'il en soit je n'ai fait aucun chmod ou chown sur ces fichiers !

Remarque :
au début j'avais utilisé mtime +3 qui avait bien marché en ligne de commande.
Je vais attendre quelques jours afin que de nouveaux fichiers mysql-bin.000xxx se créent ! Je pourrais recommencer mes tests !

merci à toi.
Ajouter un commentaire
Ce document intitulé « commande find et option ctime » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?