Commande ls fichiers mal triés

Résolu
Erucia Messages postés 1061 Statut Membre -  
Erucia Messages postés 1061 Statut Membre -
Bonjour,


Par jour j'ai plusieurs fichiers qui se créent et qui ont comme noms :

094524 --> pour 9h45 et 24 secondes
094632 --> pour 9h46 et 32 secondes
095628 --> pour 9h56 et 28 secondes

etc..

si dans un shell je fais ls -l dans le répertoire contenant ces fichiers, ils s'affichent bien dans l'ordre de création.

Je suis en train de faire un script qui permettra d'effacer automatiquement ces fichiers quand ceux-ci auront plus de 2 jours d'existence et je cherche a lister les fichiers détruits dans un log.

du coup j'ai crée ce script :

#!/bin/sh

LOG="/etc/scripts/deletefile_'date +%Y%m'.log"

echo "
-----------------------------------------------------------
Suppression des fichiers du 'date +%d/%m/%Y-%H:%M'
-----------------------------------------------------------
" >> $LOG 

echo "[START] 'date +%H:%M'" >> $LOG

echo "Liste des fichiers qui vont etre supprimes" >> $LOG

LISTE='find /mnt/nas/cam/rec -type f -ctime +2 -name "*" -exec ls -lt {} \;'
echo -e "liste : \r$LISTE" >> $LOG

# commande de suppression

#find /mnt/nas/cam/rec -type d -ctime +2 -name "*" -exec rm -rf {} \;

echo "[END] 'date +%H:%M'" >> $LOG


exit



MAIS, quand je vais voir mon fichiers log, les fichiers ne sont pas bien triés, pour reprendre mon exemple du dessus, j'ai le fichier de 9h56 avant celui de 9h46 !

Je ne comprends pas pourquoi j'ai ce soucis, pouvez-vous m'aider ?
Merci d'avance.


**Tant va la cruche à l'eau, qu'à la fin elle se brise**
°°--|€ruci@|--°°
A voir également:

6 réponses

zipe31 Messages postés 38797 Statut Contributeur 6 433
 
Salut,

Enlèves l'option
-t
à ta commande
ls
;-\
0
Erucia Messages postés 1061 Statut Membre 151
 
Salut zipe,

merci mais évidement ça ne change rien, c'est même d'ailleurs pour ça que j'avais ajouté le t (pour tri) mais ça ne changeait rien..

Une autre idée ?
0
Erucia Messages postés 1061 Statut Membre 151
 
pour info, j'ai ajouté un test dans mon script c'est :

cd /lerepcontenantlesvideos
echo "'ls -lt'" >> $LOG

et là les fichiers se trient bien dans l'ordre, on dirait donc que la commande dans le find merdouille..
0
Utilisateur anonyme
 
salut,

le tri n'est pas effectué dans l'
-exec
de find sur l'ensemble des fichiers trouvés, mais un fichier à la fois.

dans l'
-exec
, il faudrait utiliser
\+
au lieu de
\;
.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Erucia Messages postés 1061 Statut Membre 151
 
merci je vais tenter cela dès demain ;-)
0
Erucia Messages postés 1061 Statut Membre 151
 
Je ne pouvais pas attendre en fait ! j'ai testé et ça fonctionne !
Merci beaucoup pour l'aide et les explications ;-)
0