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 :

Modification de l'affichage d'une commande shell


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2012
    Messages : 324
    Par défaut Modification de l'affichage d'une commande shell
    Bonsoir,
    j'ai une requête shell qui est la suiante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ifstat -s orange@10.53.3.150 -b -i ge-1/1/9.1074 -q 0.1 1 | tail -1 > test.txt
    qui me renvoit ce résultat dans le fichier test.txt

    il s'agit du débrit entrant et sortant d'une certaine interface.
    les espaces blancs me dérrange et je voudrais modifier l'affichage de manière à avoir ceci

    comment je pourrais faire sans avoir à passer par un fichier intermédiaire??

    merci

  2. #2
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    le plus simple c'est d'intercepter avec un sed par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ifstat -s orange@10.53.3.150 -b -i ge-1/1/9.1074 -q 0.1 1 | tail -1 | sed 's/ \{1,4\}\([0-9]\.[0-9]\{1,3\}\)/\1/g;s/ /:/'

    ça devrai marcher quelque soit le nombre de décimales ou d'espaces en faisant comme ça...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    $ echo "    3.1555     5.5454"| sed 's/\ \{1,4\}\([0-9]\.[0-9]\{1,3\}\)/\1/g;s/ /:/'
    3.1555:5.5454
    $ echo "    3.1     5.5"| sed 's/\ \{1,4\}\([0-9]\.[0-9]\{1,3\}\)/\1/g;s/ /:/'
    3.1:5.5
    $
    $ echo " 3.1     5.5"| sed 's/\ \{1,4\}\([0-9]\{1,9\}\.[0-9]\{1,3\}\)/\1/g;s/ /:/'
    3.1:5.5
    $ echo " 53.1     5.5"| sed 's/\ \{1,4\}\([0-9]\{1,9\}\.[0-9]\{1,3\}\)/\1/g;s/ /:/'
    53.1:5.5
    $ echo " 53.1     5.5"
     53.1     5.5
    c'est bon

    quite à faire un sed ... autant remplacer le " tail " par une sous-commande sed aussi d'ailleurs.....

  3. #3
    Membre très actif
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2012
    Messages : 324
    Par défaut
    meri beaucoup, lorsque j'exécute avec ton exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $ echo "    3.1555     5.5454"| sed 's/\ \{1,4\}\([0-9]\.[0-9]\{1,3\}\)/\1/g;s/ /:/'
    3.1555:5.5454
    tout est bon ça fonctionne
    mais quand j'eécute avec ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ifstat -s orange@10.53.3.150 -b -i ge-1/1/9.1074 -q 0.1 1 | tail -1 | sed 's/ \{1,4\}\([0-9]\.[0-9]\{1,3\}\)/\1/g;s/ /:/'
    je remarque qu'il reste encore un espace qui n'a pas disparu. voila le résultat:
    y'a t-il un moyen pour régler ceci??

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed 's/^\s\+//;s/\s\+/:/'

  5. #5
    Membre très actif
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2012
    Messages : 324
    Par défaut
    ok merci beaucoup ça fonctionne.

Discussions similaires

  1. [Système]Execution d'une commande shell
    Par n8ken dans le forum API standards et tierces
    Réponses: 24
    Dernier message: 29/03/2007, 04h36
  2. Problème sur une commande shell
    Par nicolas66 dans le forum Shell et commandes GNU
    Réponses: 8
    Dernier message: 10/07/2006, 21h47
  3. Execution d'une commande Shell Unix
    Par boubakary dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 17/06/2006, 20h36
  4. Récupérer le résultat d'une commande shell
    Par espadon1 dans le forum Langage
    Réponses: 4
    Dernier message: 02/06/2006, 10h01
  5. Récupération du résultat d'une commande shell
    Par klu dans le forum Langage
    Réponses: 8
    Dernier message: 16/02/2006, 23h34

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