GNU/Linux >> Tutoriels Linux >  >> Linux

Linux - Obtenir des fichiers pour la date actuelle sous Linux ?

Généralement la date +%d donne la sortie 08 pour la date actuelle, 08/10/2017. Mais quand je fais le ls -lrt sur un chemin, le format de date est comme Oct 8 15:03 , alors, comment puis-je obtenir les fichiers de la date actuelle ?

J'utilise la commande

ls -lrt XYZ.LOG* |grep "$(date +'%b %d')" |awk '{print $9}'

mais il ne me donne pas le fichier de la date d'aujourd'hui (08/10/2017) bien qu'il me donne une sortie correcte pour les dates du 10 au 31 de n'importe quel mois.

Réponse acceptée :

C'est un peu tricher, mais ça marche.

Créez d'abord un fichier de référence vide avec un horodatage spécifique, à savoir minuit :

touch -d "$(date +%FT00:00:00)" /tmp/midnight

Recherchez ensuite les fichiers plus récents que ce fichier :

find . -type f -newer /tmp/midnight

Si vous voulez ls -like sortie de find plutôt que juste les noms de chemin :

find . -type f -newer /tmp/midnight -ls

Si vous voulez trouver des fichiers correspondant au modèle XYZ.LOG* :

find . -type f -name 'XYZ.LOG*' -newer /tmp/midnight -ls

Si vous avez GNU find , vous pouvez contourner le fichier temporaire et utiliser

find . -type f -newermt 0

pour obtenir des fichiers modifiés depuis minuit.

En relation :Pourquoi *ne pas* analyser `ls` ?


Linux
  1. Trouvez les fichiers et répertoires les plus volumineux sous Linux

  2. Linux :Comment trouver le pilote de périphérique utilisé pour un périphérique ?

  3. Commandes de recherche Linux

  4. Utilisez Find and Locate pour rechercher des fichiers sous Linux

  5. Comment trouver tous les fichiers épars sous Linux

Trouver des fichiers volumineux sous Linux

Comment trouver des fichiers en utilisant la ligne de commande dans le terminal Linux

Comment rechercher et répertorier récursivement les fichiers par date sous Linux

Astuces de formatage pour la commande Linux date

Comment rechercher des fichiers à partir de la ligne de commande Linux

Comment rechercher des fichiers avec la commande fd sous Linux