web-dev-qa-db-fra.com

Afficher l'année tout en listant les fichiers dans le répertoire courant

Je travaille sur un serveur Red Hat. Les commandes ls -l ou ll me donnant la date et l'heure au format +"%b %-d %H:%M".

Je souhaite répertorier les fichiers de manière à ce que l'année de création de chaque fichier apparaisse dans la date.

Comment est-ce possible?

63
WAEL

Vous pouvez utiliser man ls et ici vous pouvez trouver --time-style paramètre. Ou vous pouvez utiliser:

ls --full-time.

94
Jan Marek

ls -l affichera le mois, le jour et année - depuis , selon la page de manuel BSD: Si l'heure de modification du fichier est plus de 6 mois dans le passé ou le futur, alors année de la dernière modification est affiché à la place des champs heure et minute.

Donc, pour vous assurer que année sera toujours affiché, utilisez:

ls -l --time-style=long-iso (GNU/Linux)

ls -lT affichera des informations complètes sur l'heure en BSD (MacOS)

13
Daniel Cambría

Depuis que vous avez demandé l'année, ls -lac est facile à retenir si, comme moi, vous utilisez ls -la tout le temps. Le c vous donne ctime qui affichera une année si ce n'est pas l'année en cours ou l'heure et la minute si c'est le cas.

5
PhilT

En plus de la réponse de Jan Marek ... J'ai remarqué que vous pouvez vous en tirer avec:

ls - complet ou ls --fu

qui fera la même chose que ls --full-time comme il l'a décrit. Merci Stéphane Chazelas. Maintenant je tape ls --fu partout. :)

5
G_Style

Si vous utilisez busybox (distributions intégrées, par exemple OpenWRT, LEDE), le commutateur que vous recherchez est -e pour les versions jusqu'à 1.26.2 et --full-time pour 1.27.0 et supérieur (voir commit qui l'a changé ).

2
Codebling