IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Cacher les messages et afficher une barre de progression pendant l'installation


Sujet :

Shell et commandes GNU

  1. #1
    Membre averti
    Homme Profil pro
    Gérant
    Inscrit en
    Février 2006
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Dom-Tom

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Février 2006
    Messages : 262
    Points : 329
    Points
    329
    Par défaut Cacher les messages et afficher une barre de progression pendant l'installation
    Bonjour à tous,

    J'aimerais pouvoir cacher les différents messages qui sont affichés pendant l'installation d'un paquet (apt-get install ...), le téléchargement des dépendances, ou encore la mise à jour de Debian etc... et en même temps n'afficher qu'une barre de progression ou un trait qui tourne, quelque chose dans le genre.

    Pouvez vous m'indiquer une solution s'il vous plait ?

    Merci beaucoup.

  2. #2
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Bonjour

    Tu as la méthode classique de redirection de la sortie standard et du canal d'erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $ sudo apt-get install 2ping >~/tmp/trace.log 2>&1
    Sans perdre les infos:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    $ cat ~/tmp/trace.log 
    Lecture des listes de paquets…
    Construction de l'arbre des dépendances…
    Lecture des informations d'état…
    Paquets suggérés*:
      libdigest-crc-perl
    Les NOUVEAUX paquets suivants seront installés*:
      2ping
    0 mis à jour, 1 nouvellement installés, 0 à enlever et 27 non mis à jour.
    Il est nécessaire de prendre 0 o/29,1 ko dans les archives.
    Après cette opération, 136 ko d'espace disque supplémentaires seront utilisés.
    Sélection du paquet 2ping précédemment désélectionné.
    (Lecture de la base de données... 1043381 fichiers et répertoires déjà installés.)
    Préparation du décompactage de .../archives/2ping_2.0-1_all.deb ...
    Décompactage de 2ping (2.0-1) ...
    Traitement déclenché pour  man-db (2.6.7.1-1ubuntu1) ...
    Traitement déclenché pour  ureadahead (0.100.0-16) ...
    Paramétrage de 2ping (2.0-1) ...
    $
    Mais si tu n'affiches rien, comment tu fais pour répondre aux questions posées par apt-get que tu n'auras pas pu lire ?

    PS: Quel Linux (ou autre) as-tu ?
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  3. #3
    Membre averti
    Homme Profil pro
    Gérant
    Inscrit en
    Février 2006
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Dom-Tom

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Février 2006
    Messages : 262
    Points : 329
    Points
    329
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Mais si tu n'affiches rien, comment tu fais pour répondre aux questions posées par apt-get que tu n'auras pas pu lire ?

    PS: Quel Linux (ou autre) as-tu ?
    Merci.

    J'utilise principalement Debian (Jessie).

    En fait, j'automatise l'installation avec des réponses pré-paramétrées, donc ce qui m'intéresse c'est simplement de savoir par exemple que Apache ou Debconf, ou encore que les fichiers que je modifie le sont bien une fois que chaque tâche est accomplie, inutile pour moi de voir afficher toutes les informations puisque je le vois au préalable lors de mes tests, ça je peux en effet le garder dans un fichier log comme tu me le suggère dans ton code.

    Merci beaucoup.

  4. #4
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 035
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 035
    Points : 8 400
    Points
    8 400
    Par défaut
    salut,

    perso -et en mode va-vite- je me contentais de supprimer l'output d'apt-get purement et simplement (avec les redirections) et de me baser sur le code de retour d'apt-get pour afficher un [OK] ou [KO], un truc du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    apt-get install machin &>/dev/null && { OK; } || { KO; }
    le tout sous forme d'une fonction

  5. #5
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    apt-get install machin &>/dev/null && { OK; } || { KO; }
    Rappel: avec cette syntaxe, si la dernière instruction du OK peut planter, alors le KO peut s'exécuter à la suite du OK ...
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  6. #6
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 035
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 035
    Points : 8 400
    Points
    8 400
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Rappel: avec cette syntaxe, si la dernière instruction du OK peut planter, alors le KO peut s'exécuter à la suite du OK ...
    exact, tu fais bien de le rappeler en effet

    Edit: du coup pour être plus correct (et néanmoins toujours un peu cradingue mais passons ) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    apt-get install machin &>/dev/null && { OK; true; } || { KO; }

  7. #7
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Si tu as peur que ton chef t'admoneste, tu peux utiliser ":" qui est l'abréviation de "true" pour passer inaperçu.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $ [ 5 = 4 ] && { ls tsouintsoin;:; } || { echo KO; }
    KO
    $ [ 4 = 4 ] && { ls tsouintsoin;:; } || { echo KO; }
    ls: impossible d'accéder à tsouintsoin: No such file or directory
    $ [ 4 = 4 ] && { ls tsouintsoin; } || { echo KO; }
    ls: impossible d'accéder à tsouintsoin: No such file or directory
    KO
    $
    Cryptique, isn't it ?
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  8. #8
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Citation Envoyé par BufferBob Voir le message
    exact, tu fais bien de le rappeler en effet

    Edit: du coup pour être plus correct (et néanmoins toujours un peu cradingue mais passons ) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    apt-get install machin &>/dev/null && { OK; true; } || { KO; }
    Mais qu'est-ce que vous avez contre "if" ???

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if apt-get install machin &>/dev/null
    then OK
    else KO
    fi

  9. #9
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 035
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 035
    Points : 8 400
    Points
    8 400
    Par défaut
    Citation Envoyé par jack-ft Voir le message
    Mais qu'est-ce que vous avez contre "if" ???
    rien, en l'occurrence c’était juste de la flemme pour ma part

  10. #10
    Membre averti
    Homme Profil pro
    Gérant
    Inscrit en
    Février 2006
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Dom-Tom

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Février 2006
    Messages : 262
    Points : 329
    Points
    329
    Par défaut
    Citation Envoyé par jack-ft Voir le message
    Mais qu'est-ce que vous avez contre "if" ???

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if apt-get install machin &>/dev/null
    then OK
    else KO
    fi
    En effet, c'est aussi comme cela que je fais... plus simple !

    Merci @ tous pour vos réponses.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. afficher une barre de progression pendant une commande
    Par aaaaadrien dans le forum Interfaces Graphiques
    Réponses: 0
    Dernier message: 26/05/2014, 11h15
  2. Afficher une barre de progression
    Par paradeofphp dans le forum ASP.NET
    Réponses: 10
    Dernier message: 24/12/2007, 10h19
  3. Afficher une barre de progression
    Par paradeofphp dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 29/08/2007, 20h42
  4. [Formulaire] Afficher une barre de progression
    Par JohnDoeVS dans le forum IHM
    Réponses: 1
    Dernier message: 28/03/2007, 22h16
  5. Afficher une barre de progression en upload
    Par illuzmax dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 06/06/2006, 13h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo