FIND -ctime ne renvoi pas de resultat!!! - Shell/Batch - Programmation
Marsh Posté le 21-06-2010 à 12:04:39
Il manque le répertoire de départ (habituellement, le répertoire courant, donc un point).
Donc, au lieu de :
find -name 'Y*' -ctime +35 |
Faire :
find . -name 'Y*' -ctime +35 |
Edit : Parfois, c'est mtime qu'il faut utiliser à la place de ctime.
Marsh Posté le 21-06-2010 à 12:11:58
j'ai ajouter le point comme tu m'as dis, j'ai meme changer de repertoire et ajouter le chemain, mais toujours rien, chose qui est bizar c'est que lorsque je mets
find . -name 'Y*' -ctime (ou mtime ou atime) -1 (ou -2 ou -3 tant que c'est un moins) je recois tout les fichiers qui existe dans ce repertoire.
Marsh Posté le 21-06-2010 à 12:15:55
Dans les exemples que j'avais utilisé, j'avais mis aussi -type f .
Par exemple :
find . -type f -name "*.sql" -mtime -70 | cpio -ocvB >mon_archive.cpio |
Marsh Posté le 21-06-2010 à 12:45:14
toujours aucune reponse, sachant que lorsque je tape
ls -al je vois que chaque fichier a une date, car j'ai un backups de la base sql par jour, la date du backups est elle meme le nom du fichier, par exemple le backups du 15 juin sont nom est 'Y_15_06_10.SQL' donc lorsque je veux trouver ce fichier avec find je tape :
find . -name 'Y_15_06_10.sql' et je le trouve.
mais quand je veux les fichiers qui date de plus de 15 jours, il me revoit tous les fichiers et non pas que ceux qui sont avant le 15 juin.
je m'escuse je suis novice dans la programmation, d'apres man find,
-ctime +35 c'est bien pour avoir les fichiers qui date depuis 5 semaines ?
si c'est le cas il doit m'envoyer tous les fichiers qui ont etaient creer a partir du 17 Mai, mais il m'envoit tout les fichies du repertoire
Marsh Posté le 21-06-2010 à 14:30:03
+35 veut dire vieux de plus de 35 jours.
Pour avoir les fichiers plus récents que 35 jours, il faut mettre -35.
Marsh Posté le 21-06-2010 à 11:52:13
Bonjour,
j'ai effectué un script qui me permettre de supprimer tous les backups qui date de plus de 35 jours, alors j'ai mis la commande suivante :
find -ctime +35
mais j'ai aucun résultat sachant que j'ai des backups qui date de plus de deux mois.
alor j'ai ajoute l'argument suivant : je veux supprimer tout les fichiers qui commence par Y et qui date de plus de 35 jours,
find -name 'Y*' -ctime +35
mais toujours aucun résultat.
mais lorsque je met
find -ctime -1
il me donne tout les fichiers qui sont dans mon répertoire.
je n'arrive pas a comprendre...
quelqu'un peut m'aider svp?