web-dev-qa-db-fra.com

Comment puis-je trier la sortie de "ls" par dernière modification - y compris la date?

Donc, le résultat serait soit:

Le plus récent en haut OR le plus récent en bas - en indiquant le moment où le contenu du répertoire de travail a été modifié?

Apparemment, ls -t est censé donner le plus récent en haut, ce qui est le cas ...

Mais je n'ai pas de date à laquelle l'un des fichiers/dossiers a été modifié; ce qui est plutôt agaçant.


Est-il possible de produire une sortie qui répertorie les fichiers dans un ordre modifié et donne également l'heure à laquelle ils ont été modifiés? Je n'arrive pas à trouver l'option dans man...

9
TellMeWhy

Cochez l'option -l de ls:

ls -lt

Manière soignée en utilisant stat:

stat -c '%y - %n' * | sort -t'-' -k1,1

Sens inverse:

stat -c '%y - %n' * | sort -r -t'-' -k1,1
  • %y donnera l'heure de modification sous une forme lisible par l'homme, %n donnera le nom du fichier

  • sort va trier les valeurs en fonction du temps de modification

18
heemayl