Introduction
Trois journaux d’application nécessitent le même contrôle simple : compter les lignes qui commencent par ERROR et afficher un résultat pour chaque fichier. Répéter les commandes manuellement est inutile lorsqu’une courte boucle peut traiter tous les fichiers .log.
Le laboratoire guidé précédent a construit exactement ce type de boucle, étape par étape. Ce challenge vous demande de créer un petit script réutilisable, sans copie supplémentaire, sans répertoire de rapports et sans exigences de gestion des erreurs.
Créer le script de synthèse des erreurs
Situation actuelle
Le répertoire /home/labex/project/log-automation/logs contient api.log, healthy.log et worker.log.
Périmètre
- Créez
/home/labex/project/log-automation/process-logs.sh. - Son premier argument doit être le répertoire contenant les journaux.
- Traitez les fichiers dont le nom se termine par
.log. - Pour chaque fichier, comptez les lignes qui commencent par
ERROR. - Affichez une ligne au format
filename errors=count.
Objectif
Laissez un script exécutable qui affiche la synthèse correcte des erreurs lorsqu’il est exécuté avec ./process-logs.sh logs.
Critères de validation
Le script commence par
#!/bin/bashet possède le droit d’exécution../process-logs.sh logsaffiche :api.log errors=1 healthy.log errors=0 worker.log errors=2
Indices
Quel exemple guidé correspond le mieux à cette tâche ?
Relisez la boucle qui parcourait "$log_dir"/*.log, comptait les lignes correspondant à ^ERROR et affichait le nom de base avec son nombre d’erreurs.
Résumé
Vous avez transformé une boucle familière de comptage dans des journaux en un court script Bash réutilisable.



