Si je veux trouver le dernier fichier (mtime) dans un (grand) répertoire contenant des sous-répertoires, comment dois-je procéder ?
De nombreux messages que j'ai trouvés suggèrent une variante de ls -lt | head
(il est amusant de constater que de nombreuses personnes suggèrent ls -ltr | tail
ce qui est la même chose mais moins efficace), ce qui est parfait à moins que vous n'ayez des sous-répertoires (c'est mon cas).
Mais vous pourriez aussi
find . -type f -exec ls -lt \{\} \+ | head
qui fera certainement l'affaire pour autant de fichiers qu'il est possible de spécifier par une seule commande, c'est-à-dire si vous avez un fichier grand répertoire, -exec...\+
émettront des commandes distinctes ; par conséquent, chaque groupe sera trié par ls
à l'intérieur d'elle-même, mais pas sur l'ensemble de l'ensemble ; la tête prendra donc la dernière entrée du premier lot.
Des réponses ?