Je dois extraire des informations d'un fichier journal à l'aide d'un script shell (bash). Une ligne du fichier journal ressemble généralement à ceci:Sélectionnez les intervalles de temps à partir des fichiers journaux à l'aide de Bash
2009-10-02 15:41:13,796| some information
De temps en temps, une telle ligne est suivie par quelques lignes donnant plus de détails sur l'événement. Ces lignes supplémentaires n'ont pas de format spécifique (en particulier elles ne commencent pas par un horodatage).
Je sais comment utiliser grep pour filtrer le fichier en fonction de mots-clés et d'expressions. Fondamentalement, ce qui me dérange, c'est que parfois je n'ai besoin de regarder que des intervalles spécifiques. Par exemple, je n'ai besoin de regarder que les événements qui se sont produits au cours des X dernières minutes. Je n'ai pas l'expérience des scripts shell, mais en raison de la complexité du format horaire, cela semble être une tâche plutôt difficile pour moi. D'un autre côté, je peux m'imaginer que ce n'est pas quelque chose d'inhabituel, alors je me demande s'il existe des outils qui peuvent me faciliter la tâche ou si vous pouvez me donner quelques conseils sur la façon de résoudre ce problème.
Merci pour toutes les réponses. Malheureusement, beaucoup de choses ne sont pas supportées sur le serveur (pas de date avec le paramètre% s, pas de phython, systime() ne fonctionne pas non plus). J'ai décidé d'utiliser Perl maintenant, car il offre des fonctions de temps manquant qui manquent. Pourtant, vos commentaires m'ont donné beaucoup de conseils utiles! – bufferUnderrun