Forum Programmation.shell horloge au moment du lancement d'une commande

Posté par  (site web personnel) .
Étiquettes : aucune
0
28
mai
2008
Salut,

J'utilise bash et je voudrais qu'au moment ou je lance une commande, bash envoie l'heure avant de l'exécuter.

genre

toto@titi $

et quand je rentre et valide une commande j'ai l"heure :

toto@titi $ echo plop

donne :

toto@titi $ echo plop
15:46
plop

toto@titi $

merci à vous si vous avez des idées ou connaissez la soluce.

Peyo.
  • # Prompt ?

    Posté par  (site web personnel) . Évalué à 4.

    peut etre en mettant l'heure dans ton prompt ?
    exemple :
    PS1="\u@\h \W -- \t> "
    • [^] # Re: Prompt ?

      Posté par  . Évalué à 4.

      Moi c'est ce que j'ai mais ca donne l'heure du retour de commande.

      J'ai une solution bourrine
      $> PS4='$(date +%H:%M) : '
      $> set -x

      1 gros défaut : ca affiche la commande que tu vas exécuter

      théoriquement c'est utilisé pour le débug ^^

      Il ne faut pas décorner les boeufs avant d'avoir semé le vent

      • [^] # Re: Prompt ?

        Posté par  . Évalué à 2.

        pardon c'est PS3 pas PS4
        grrr
        PS3 est executé avant, PS4 après
        pardon aux familles tout ça

        Il ne faut pas décorner les boeufs avant d'avoir semé le vent

        • [^] # Re: Prompt ?

          Posté par  . Évalué à 3.

          Ah ben si c'est bien PS4

          ( a quand la possibilité d'éditer ses posts )

          ****

          Il ne faut pas décorner les boeufs avant d'avoir semé le vent

    • [^] # Re: Prompt ?

      Posté par  . Évalué à 2.

      avec un peu de couleur :
      [\t] ${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\] \$
    • [^] # Re: Prompt ?

      Posté par  (site web personnel) . Évalué à 1.

      non je ne veux pas l'heure dans le prompt.

      PS3 et PS4 ok je regarde ça merci
  • # Pour quelle raison?

    Posté par  (site web personnel, Mastodon) . Évalué à 2.

    Si tu nous en donnais la raison, on pourrait peut-être te donner une façon plus simple d'arriver à tes fins.

    La gelée de coings est une chose à ne pas avaler de travers.

    • [^] # C'est du Coluche ?

      Posté par  . Évalué à 3.

      «Écrivez nous de quoi vous avez besoin, on vous expliquera comment vous en passer».
      • [^] # Re: C'est du Coluche ?

        Posté par  . Évalué à 3.

        ça sent plutôt l'expérience je dirais. Quand l'objectif annoncé est un peu original, ça vaut le coup de creuser pour avoir une idée du vrai besoin. Souvent, ça a juste rien à voir :)
    • [^] # Re: Pour quelle raison?

      Posté par  (site web personnel) . Évalué à 2.

      Et bien j'ai plusieurs shells ouverts, j'y lance des scripts qui peuvent tourner plusieurs heures et je voudrais savoir à quelle heure ils ont été lancé.

      l'heure dans le prompt ne m'intéresse pas car il peut se passer bcp de temps entre le moment ou le prompt s'est affiché et celui ou je vais valider la ligne de commande.

      je sais je pourrais rajouter un timer dans mes scripts ... mais ce n'est pas ce que je veux. Je voudrais que systématiquement bash donne l'heure après une validation par entrée.
  • # RESOLU

    Posté par  (site web personnel) . Évalué à 2.

    RESOLU :

    ok merci beaucoup ça fonctionne nickel avec PS4

    en effet ça renvoie la commande mais c'est pas plus mal :)
  • # zsh

    Posté par  . Évalué à 1.

    Avec zsh :

    % preexec() { date +%T } ; precmd () { date +%T }
    % sleep 3
    14:45:42
    14:45:45
    %

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.