Bonjour
sous Linux en csh, j'ai un répertoire avec plein de fichiers et de sous-répertoires. Je souhaite afficher un listing (ou la fin de celui-ci) qui mettra les fichiers qui ont été modifiés le plus récemment.
J'ai tenté ceci :
Ces options me paraissent logiques :
- l : listing en long
- a : aussi les fichiers cachés
- R : récursif dans les sous répertoires
- t : classement par date
- r : classement inversé (les plus récents apparaissent en dernier)
Hélas cela ne marche pas:
ls -laR : les répertoires sont classés alphabétiquement, puis les fichiers (acollés à leur répertoire) aussi
ls -laRr : les répertoires sont classés inverse alphabétiquement, puis les fichiers (acollés à leur répertoire) aussi
ls -laRtr : les fichiers sont classés dans l'ordre de date comme voulu (acollés à leur répertoire), mais par contre les répertoires sont disposés n'importe comment : le dernier répertoire apparaissant n'est pas celui changé où le fichier le plus récent existe
J'ai tenté alors avec un filtre pour garder que les fichiers (grep qui prend que les lignes commençant par '-'), puis tri par date sur la 6e colonne des mois :
ls -laR | grep ^- | sort -k6 -M |
sachant qu'une ligne est représentée ainsi:
-rw-rw---- 1 nomuser group 7200 Jun 6 14:03 nomfichier |
Ca trie les mois, mais pas le reste des dates (jours et heures). Et je ne sais pas faire de tri imbriqué comme sous Excel : colonne 6 (mois) en month, puis 7 (jour) en numérique, puis 8 (heure) en numérique.
Qqn a-t-il une solution ?
Merci