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 :

[Shell] Suppression d'espace en début et fin de colonne [Débutant(e)]


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Septembre 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 27
    Par défaut [Shell] Suppression d'espace en début et fin de colonne
    Bonjour tout le monde!

    j'ai un petit soucis concernant ce petit script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    #!/bin/sh
    ligne='toto         ;titi ; tata ; michael    '
    lng=`echo $1 | awk '{ print length($0); }'`
    prefixe=`echo $ligne | tr -s ' ' | cut -c3-$lng`
    echo $prefixe
    j'ai comme résultat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    to ;titi ; tata ; michael
    alors que je voudrais avoir plutôt ça :
    sans les espaces.

    Si quelqu'un a une suggestion je suis toute ouïe !
    Merci

  2. #2
    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
    1
    2
    3
    4
    $ ligne='toto         ;titi ; tata ; michael    '
     
    $ echo ${ligne// /}
    toto;titi;tata;michael

  3. #3
    Membre averti
    Inscrit en
    Septembre 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 27
    Par défaut
    Merci !

  4. #4
    Nouveau candidat au Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations forums :
    Inscription : Mai 2013
    Messages : 2
    Par défaut
    Bonsoir,
    Ci-dessous une autre solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ligne='toto         ;titi ; tata ; michael    '
    echo $ligne|tr -d ' '

  5. #5
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Mai 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2013
    Messages : 3
    Par défaut
    Bonjour,

    J'ai le même problème, mais malheureusement les deux solutions ne répondent que partiellement au pb :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    ligne='toto         ; SOCIETE GENERALE ; tata ; michael    '
     
    $ echo ${ligne// /}
    toto;SOCIETEGENERALE;tata;michael :
     
    alors que le résultat attendu est:
     
    toto;SOCIETE GENERALE;tata;michael
    Les commandes proposées suppriment tous les espaces et pas seulement ceux de début et de fin de chaque colonne.

    des idées ??!!

  6. #6
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 657
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 657
    Par défaut
    Bonjour,

    Code BASH : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $ shopt -s extglob
    $ ligne='toto ; SOCIETE GENERALE ; tata ; michael '
    $ echo "${ligne//+( );+( )/;}"
    toto;SOCIETE GENERALE;tata;michael
    voir Développement des noms de fichiers
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

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

Discussions similaires

  1. Effacer les espaces de début et fin d'un textarea
    Par wiwizz dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 16/11/2011, 14h16
  2. comment supprimer des espaces en début et fin de chaine
    Par thor76160 dans le forum Langage
    Réponses: 2
    Dernier message: 19/03/2010, 10h08
  3. Supprimer les espaces en début et fin sur un ensemble de champs
    Par Olivier Regnier dans le forum Langage
    Réponses: 7
    Dernier message: 14/11/2007, 20h06
  4. Réponses: 5
    Dernier message: 18/10/2006, 09h01
  5. Regexp de suppression d'espaces en début de ligne
    Par batmatm dans le forum Langage
    Réponses: 4
    Dernier message: 20/10/2005, 15h25

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