Dans cet article, nous expliquerons deux astuces simples en ligne de commande qui vous permettent de ne répertorier que tous les fichiers d'aujourd'hui.
L'un des problèmes courants rencontrés par les utilisateurs de Linux sur la ligne de commande est la localisation de fichiers avec un nom particulier, cela peut être beaucoup plus facile lorsque vous connaissez réellement le nom de fichier.
Cependant, en supposant que vous avez oublié le nom d'un fichier que vous avez créé (dans votre home
dossier qui contient des centaines de fichiers) plus tôt dans la journée et pourtant vous devez l'utiliser de toute urgence.
Vous trouverez ci-dessous différentes manières de répertorier uniquement tous les fichiers que vous avez créés ou modifiés (directement ou indirectement) aujourd'hui.
1. À l'aide de la commande ls, vous ne pouvez répertorier les fichiers d'aujourd'hui dans votre dossier personnel que comme suit, où :
-a
– répertorier tous les fichiers, y compris les fichiers cachés-l
– active le format de liste longue--time-style=FORMAT
– affiche l'heure dans le FORMAT spécifié+%D
– afficher/utiliser la date au format %m/%d/%y
# ls -al --time-style=+%D | grep 'date +%D'
De plus, vous pouvez trier la liste résultante par ordre alphabétique en incluant le -X
drapeau :
# ls -alX --time-style=+%D | grep 'date +%D'
Vous pouvez également lister en fonction de la taille (la plus grande en premier) en utilisant le -S
drapeau :
# ls -alS --time-style=+%D | grep 'date +%D'
2. Encore une fois, il est possible d'utiliser la commande find qui est pratiquement plus flexible et offre beaucoup d'options que ls , dans le même but que ci-dessous.
-maxdepth
level est utilisé pour spécifier le niveau (en termes de sous-répertoires) en dessous du point de départ (répertoire courant dans ce cas) auquel l'opération de recherche sera effectuée.-newerXY
, cela fonctionne si timestamp X du fichier en question est plus récent que timestamp Y de la référence du dossier. X et Y représentent l'une des lettres ci-dessous :- a - temps d'accès de la référence du fichier
- B - heure de naissance de la référence du fichier
- c - heure de référence du changement d'état de l'inode
- m – heure de modification de la référence du fichier
- t - la référence est interprétée directement comme une heure
Cela signifie que seuls les fichiers modifiés le 2016-12-06 seront pris en compte :
# find . -maxdepth 1 -newermt "2016-12-06"
Important :Utilisez le bon format de date comme référence dans la commande de recherche ci-dessus, une fois que vous utilisez un mauvais format, vous obtiendrez une erreur comme celle ci-dessous :
# find . -maxdepth 1 -newermt "12-06-2016" find: I cannot figure out how to interpret '12-06-2016' as a date or time
Vous pouvez également utiliser les formats corrects ci-dessous :
# find . -maxdepth 1 -newermt "12/06/2016" OR # find . -maxdepth 1 -newermt "12/06/16"
Vous pouvez obtenir plus d'informations sur l'utilisation de ls
et find
commandes dans notre série d'articles suivante sur le même sujet.
- Maîtriser la commande "ls" de Linux avec ces 15 exemples
- 7 astuces "ls" utiles pour les utilisateurs de Linux
- Maîtriser la commande "find" de Linux avec ces 35 exemples
- Comment trouver plusieurs noms de fichiers avec des extensions sous Linux
Dans cet article, nous avons expliqué deux conseils importants sur la façon de répertorier uniquement les fichiers d'aujourd'hui à l'aide des commandes ls et find. Utilisez le formulaire de commentaires ci-dessous pour nous envoyer des questions ou des commentaires sur le sujet. Vous pouvez également nous informer des commandes utilisées dans le même but.