Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 10/11/2011, à 12:19

vajpaille

[RESOLUT]_Script avec commande DATE Hebdo.

Bonjour,

J'ai un soucis avec un script très simple.
Environnement :
Serveur syslog sur lequel je fait des reporting extrêmement simplifié pour le personnel technique.
commande date version 6.10
Bash-3.2

Le script actuel se base sur le log du jour précédent.
J'aimerais effectuer un rapport Hebdo.

Voici la partie du script que je vais devoir modifier.

yesterday=`date -d 'yesterday' +%Y%m%d`  # Prend en compte le changement d'année. (en théorie...)
grep -i "Login succeeded" /data/materiel/client/le.log_$yesterday.log


Ce que je souhaite faire c'est effectuer le même reporting sur les logs de tous les jours de la semaine précédente.
je pensais à une boucle for mais je n'arrive pas a générer les dates du lundi au dimanche de la semaine précédente quelque soit le jour d'éxécution du script.
En gros lister les dates en colonne ensuite la boucle se chargera du reste ;-)

Avez-vous une idée pour résoudre mon petit soucis ?

Merci à vous.

Dernière modification par vajpaille (Le 16/11/2011, à 12:00)


GNU/Linux : Ubuntu, CentOS, Red Hat
BSD : OpenBSD, GhostBSD, PC-BSD

Hors ligne

#2 Le 10/11/2011, à 12:43

Postmortem

Re : [RESOLUT]_Script avec commande DATE Hebdo.

Salut,

for i in {1..7}
do
date -d "$i days ago" '+%Y%m%d'
done

EDIT :
Pour avoir les dates de la semaine précédente, quelque soit le jour où on exécute la commande :

num_jour=$(date +%u)
for i in {0..6}
do
date -d "$((num_jour + i)) days ago" '+%Y%m%d'
done

Dernière modification par Postmortem (Le 10/11/2011, à 12:58)


Mot' a dit : « Un Hellfest sans Slayer, c'est comme une galette-saucisse sans saucisse ! »

Hors ligne

#3 Le 10/11/2011, à 13:04

vajpaille

Re : [RESOLUT]_Script avec commande DATE Hebdo.

Salut,

Effectivement, extrêmement simple... et ça colle à ce que je souhaite, je n'ai plus qu'à intégrer et à tester, c'est vraiment nikel car la semaine dernière est à cheval sur deux mois et
ton code match !

Pour avoir les dates de la semaine précédente, quelque soit le jour où on exécute la commande :

num_jour=$(date +%u)
for i in {0..6}
do
date -d "$((num_jour + i)) days ago" '+%Y%m%d'
done

Merci à toi !!!


GNU/Linux : Ubuntu, CentOS, Red Hat
BSD : OpenBSD, GhostBSD, PC-BSD

Hors ligne

#4 Le 10/11/2011, à 15:33

Postmortem

Re : [RESOLUT]_Script avec commande DATE Hebdo.

De rien !


Mot' a dit : « Un Hellfest sans Slayer, c'est comme une galette-saucisse sans saucisse ! »

Hors ligne