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 08/04/2019, à 20:14

JujuLand

[Résolu] Datage de connexion et de démarrage

Voici un script tout bête qui me pose un problème ...

#!/bin/bash

echo ""
echo "avril01" > debut
cat debut
echo ""

jour=$(sed -s 's|janvier||g' debut)
if [ "x$jour" = "x$(sed -s 's|janvier||g' debut)" ];then
   echo janvier "x$(sed -s 's|janvier||g' debut)"
   jour=$(sed -s 's|fevrier||g' debut)
   if [ "x$jour" = "x$(sed -s 's|fevrier||g' debut)" ];then
      echo fevrier "x$(sed -s 's|fevrier||g' debut)"
      jour=$(sed -s 's|mars||g' debut)
      if [ "x$jour" = "x$(sed -s 's|mars||g' debut)" ];then
         echo mars "x$(sed -s 's|mars||g' debut)"
         jour=$(sed -s 's|avril||g' debut)
         if [ "x$jour" = "x$(sed -s 's|avril||g' debut)" ];then
            echo avril "x$(sed -s 's|avril||g' debut)"
            jour=$(sed -s 's|mai||g' debut)
            if [ "x$jour" = "x$(sed -s 's|mai||g' debut)" ];then
               echo mai "x$(sed -s 's|mai||g' debut)"
               jour=$(sed -s 's|juin||g' debut)
               if [ "x$jour" = "x$(sed -s 's|juin||g' debut)" ];then
                  echo juin "x$(sed -s 's|juin||g' debut)"
                  jour=$(sed -s 's|juillet||g' debut)
                  if [ "x$jour" = "x$(sed -s 's|juillet||g' debut)" ];then
                     echo juillet "x$(sed -s 's|juillet||g' debut)"
                     jour=$(sed -s 's|aout||g' debut)
                     if [ "x$jour" = "x$(sed -s 's|aout||g' debut)" ];then
                        echo aout "x$(sed -s 's|aout||g' debut)"
                        jour=$(sed -s 's|septembre||g' debut)
                        if [ "x$jour" = "x$(sed -s 's|septembre||g' debut)" ];then
                           echo septembre "x$(sed -s 's|septembre||g' debut)"
                           jour=$(sed -s 's|octobre||g' debut)
                           if [ "x$jour" = "x$(sed -s 's|octobre||g' debut)" ];then
                              echo octobre "x$(sed -s 's|octobre||g' debut)"
                              jour=$(sed -s 's|novembre||g' debut)
                              if [ "x$jour" = "x$(sed -s 's|novembre||g' debut)" ];then
                                 echo novembre "x$(sed -s 's|novembre||g' debut)"
                                 jour=$(sed -s 's|decembre||g' debut)
                                 if [ "x$jour" = "x$(sed -s 's|decembre||g' debut)" ];then
                                    echo decembre "x$(sed -s 's|decembre||g' debut)"
                                    debut=$(cat debut)
                                 else
                                    debut="$jour décembre"
                                 fi 
                              else
                                 debut="$jour novembre"
                              fi 
                           else
                              debut="$jour octobre"
                           fi 
                        else
                           debut="$jour septembre"
                        fi 
                     else
                        debut="$jour août"
                     fi 
                  else
                     debut="$jour juillet"
                  fi 
               else
                  debut="$jour juin"
               fi 
            else
               debut="$jour mai"
            fi 
         else
            debut="$jour avril"
         fi 
      else
         debut="$jour mars"
      fi 
   else
      debut="$jour février"
   fi 
else
   debut="$jour janvier"
fi
rm debut 2>/dev/null
echo ""
echo $debut
echo "alors qu'on devrait trouver :"
echo 01 avril

Merci de votre aide
A+

Dernière modification par JujuLand (Le 09/04/2019, à 21:11)


Xubuntu 16.04 > Dell DM061 (2007) + Dell Inspiron 531 (2008)
Xubuntu 16.04 > Asus X51L (2009) + MSI GX723 (2009)
Xubuntu 22.04 > HP 15BA048NF (2018)

Hors ligne

#2 Le 08/04/2019, à 20:39

diesel

Re : [Résolu] Datage de connexion et de démarrage

Première chose, debut est un fichier (echo "avril01" > debut), puis tu crées une variable debut. C'est une très mauvais idée d'avoir une variable et un fichier avec le même nom.

Et si c'est pour juste enlever le numéro du jour à la fin de la ligne et l'ajouter suivi d'un espace en début de ligne, il y a beaucoup plus simple en une seule ligne de shell.

Amicalement.

Jean-Marie

Dernière modification par diesel (Le 08/04/2019, à 21:04)


Je déteste qu'on cherche à me faire passer pour un con, j'y arrive déjà très bien tout seul.
Le mort, il sait pas qu'il est mort ; c'est pour les autres que c'est dur.................... Pour les cons, c'est pareil.

Hors ligne

#3 Le 08/04/2019, à 20:53

pingouinux

Re : [Résolu] Datage de connexion et de démarrage

Bonsoir,
Tes tests sont tous vérifiés et tu ne passes pas dans les "else".
Mais c'est bien compliqué, comme le dit diesel83140.

$ sed -r 's/([^0-9]+)([0-9]+)/\2 \1/' <<<"avril01"
01 avril

Hors ligne

#4 Le 08/04/2019, à 21:20

JujuLand

Re : [Résolu] Datage de connexion et de démarrage

Bon, évidemment, c'est nettement plus propre ...

Je maitrise très mal le regex hmm , mais je ne comprends toujours pas pourquoi mon usine à gaz ne fonctionne pas. wink
Je n'ai pas pu tester, car en fait, c'est le résultat d'une commande pour connaitre l'heure de connexion, et si la connexion date du jour, je récupère l'heure, sinon je traite. Donc, j'attendrai demain pour vérifier ...

debut=$(ps -aef|grep 'keyring-daemon'| head -n1 | cut -d? -f1 | awk '{print $5}')

Merci
A+


Xubuntu 16.04 > Dell DM061 (2007) + Dell Inspiron 531 (2008)
Xubuntu 16.04 > Asus X51L (2009) + MSI GX723 (2009)
Xubuntu 22.04 > HP 15BA048NF (2018)

Hors ligne

#5 Le 08/04/2019, à 21:43

Watael

Re : [Résolu] Datage de connexion et de démarrage

« non, non, c'est kloug. » lol

a priori, d'abord

ps -C $(pidof keyring-daemon)

après, on verra ce que ça affiche, et ce que tu veux extraire.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#6 Le 09/04/2019, à 05:46

pingouinux

Re : [Résolu] Datage de connexion et de démarrage

JujuLand #4 a écrit :

mais je ne comprends toujours pas pourquoi mon usine à gaz ne fonctionne pas.

pingouinux #3 a écrit :

Tes tests sont tous vérifiés et tu ne passes pas dans les "else".

Hors ligne

#7 Le 09/04/2019, à 08:36

JujuLand

Re : [Résolu] Datage de connexion et de démarrage

Marche pas ...

jacques@gadel-pc2:~$ ps -C $(pidof keyring-daemon)
erreur: la liste des noms de commandes doit suivre -C

Usage:
 ps [options]

 Essayez 'ps --aide <simple|liste|sortie|threads|divers|tous>'
  ou 'ps --aide <s|l|o|h|d|t>'
 pour plus d'aide.

Pour plus de détails, consultez ps(1).

J'ai donc essayé avec une autre commande dont la date de lancement est la même et j'ai le retour suivant:

jacques@gadel-pc2:~$ ps -C cron
  PID TTY          TIME CMD
 1082 ?        00:00:00 cron

Donc ce n'est pas ce que je cherche ...

Ce que je cherche en fait, c'est de savoir quand a eu lieu la dernière connexion. Il s'agit d'ordis auquels je me connecte en ssh ...

A+


Xubuntu 16.04 > Dell DM061 (2007) + Dell Inspiron 531 (2008)
Xubuntu 16.04 > Asus X51L (2009) + MSI GX723 (2009)
Xubuntu 22.04 > HP 15BA048NF (2018)

Hors ligne

#8 Le 09/04/2019, à 11:16

diesel

Re : [Résolu] Datage de connexion et de démarrage

Et si tu allais faire un tour dans /var/log/auth.log ?

grep ssh /var/log/auth.log | tail -n 2

Amicalement.

Jean-Marie


Je déteste qu'on cherche à me faire passer pour un con, j'y arrive déjà très bien tout seul.
Le mort, il sait pas qu'il est mort ; c'est pour les autres que c'est dur.................... Pour les cons, c'est pareil.

Hors ligne

#9 Le 09/04/2019, à 13:11

JujuLand

Re : [Résolu] Datage de connexion et de démarrage

Excellent, mais c'est pour les connexions locales :

alain@aupeix-GX723:~$ cat /var/log/auth.log|grep "systemd-logind"|grep "New session"|grep $USER|tail -n1 | cut -f1| awk '{print $2" "$1" "$3}'
9 Apr 13:41:55
alain@aupeix-GX723:~$

Idem pour les rémarrages de machine:

alain@aupeix-GX723:~$ cat /var/log/syslog|grep "rsyslogd: \["|grep start|tail -n1 | cut -f1| awk '{print $2" "$1" "$3}'
9 Apr 13:41:26
alain@aupeix-GX723:~$

Merci
A+

Dernière modification par JujuLand (Le 09/04/2019, à 13:12)


Xubuntu 16.04 > Dell DM061 (2007) + Dell Inspiron 531 (2008)
Xubuntu 16.04 > Asus X51L (2009) + MSI GX723 (2009)
Xubuntu 22.04 > HP 15BA048NF (2018)

Hors ligne

#10 Le 09/04/2019, à 13:21

JujuLand

Re : [Résolu] Datage de connexion et de démarrage

Oouuppss ... j'ai été un peu vite ... test sur Xubuntu 16.04, mais pas glop sur Ubuntu 14.04 ...

Je cherche ...

A+


Xubuntu 16.04 > Dell DM061 (2007) + Dell Inspiron 531 (2008)
Xubuntu 16.04 > Asus X51L (2009) + MSI GX723 (2009)
Xubuntu 22.04 > HP 15BA048NF (2018)

Hors ligne

#11 Le 09/04/2019, à 13:23

Watael

Re : [Résolu] Datage de connexion et de démarrage

oops, m'est gourré, c'est pas -C , c'est -p, pour --pid. hmm


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#12 Le 09/04/2019, à 13:42

JujuLand

Re : [Résolu] Datage de connexion et de démarrage

Bon, y'avait déja plus ou moins les outils

Connexion :

jacques@gadel-pc2:/~$ last -F |grep $USER|grep -v pts|grep -v reboot|grep ":0"|tail -n1 | cut -f1| awk '{print $4" "$6" "$5" "$8" "$7}'
Mon 1 Apr 2019 13:41:45
jacques@gadel-pc2:~$ 

Démarrage:

jacques@gadel-pc2:~$ last -F |grep reboot|tail -n1 | cut -f1| awk '{print $5" "$7" "$6" "$9" "$8}'
Mon 1 Apr 2019 12:42:03
jacques@gadel-pc2:~$ 

Xubuntu 16.04 > Dell DM061 (2007) + Dell Inspiron 531 (2008)
Xubuntu 16.04 > Asus X51L (2009) + MSI GX723 (2009)
Xubuntu 22.04 > HP 15BA048NF (2018)

Hors ligne

#13 Le 09/04/2019, à 14:00

Watael

Re : [Résolu] Datage de connexion et de démarrage

cut n'a aucun effet.

last -F | awk '/reboot/{ar[++n]=$5" "$7" "$6" "$9" "$8}END{print ar[n]}'

Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#14 Le 09/04/2019, à 14:09

JujuLand

Re : [Résolu] Datage de connexion et de démarrage

Il est évident que j'ai encore pas mal à apprendre wink

Merci
A+


Xubuntu 16.04 > Dell DM061 (2007) + Dell Inspiron 531 (2008)
Xubuntu 16.04 > Asus X51L (2009) + MSI GX723 (2009)
Xubuntu 22.04 > HP 15BA048NF (2018)

Hors ligne

#15 Le 09/04/2019, à 20:43

Nuliel

Re : [Résolu] Datage de connexion et de démarrage

Hello,

Pourrais tu stp mettre un titre plus explicite?
Merci d'avance

Hors ligne