Supprimer les espaces non significatif shell

Résolu
JsuisNul Messages postés 137 Statut Membre -  
JsuisNul Messages postés 137 Statut Membre -
Bonjour,

J'ai un fichier csv qui se présente comme suit :

'vvvvv   ';'vvvvv';'hhhh lllll       ';  ;'eeeeee    '


Je souhaiterais obtenir ceux-ci :

'vvvvv';'vvvvv';'hhhh lllll';;'eeeeee'


J'ai récupéré quelques sed censés le faire mais ça ne fonctionne pas comme je le souhaite et mes connaissance étant limité je ne comprend pas forcement toutes les commandes ...
Je n'arrive pas à supprimer les espaces la ou il n'y pas de quote et les derniers espaces de tous les champs entre quote (en gros j'obtiens ça
'vvvvv ';'vvvvv';'hhhh lllll ';  ;'eeeeee '
)

Si une bonne âme veut me venir en aide je lui serais très reconnaissant

Merci d'avance

les sed utilisés :
sed  -i 's/\" /\"/g' toto_lis_${DATE}.csv
sed -i 's/ \"/\"/g' toto_lis_${DATE}.csv
sed 's/ *; */;/g' toto_lis_${DATE}.csv
sed 's/ \{2,\}//g' toto_lis_${DATE}.csv


Configuration: Windows / Chrome 74.0.3729.169

2 réponses

  1. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
     
    hello
    mettre les exemples entre balises code
    merci
    0
    1. JsuisNul Messages postés 137 Statut Membre 1
       
      Désolé, je fais comment (pour la prochaine fois) ?

      Merci.
      0
    2. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
       
      cliquer sur le 4ème bouton <> :
      <code>ici</code>
      0
    3. JsuisNul Messages postés 137 Statut Membre 1
       
      Ok. Merci dubcek, je le saurai pour une prochaine fois.
      Merci pour ton aide dans tous les cas.
      0
  2. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
     
    Salut,

    $ echo "${A}"
    'vvvvv ';'vvvvv';'hhhh lllll '; ;'eeeeee '

    $ echo "${A}" | sed "s/[[:space:]]*'/'/g;s/;[[:space:]]*/;/g"
    'vvvvv';'vvvvv';'hhhh lllll';;'eeeeee'

    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Je suis un âne, y'a plus simple ;-\

      $ echo "${A}" | sed 's/[[:space:]]*//g'
      'vvvvv';'vvvvv';'hhhhlllll';;'eeeeee'
      0
      1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501 > zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Ah ben non, ça marche pô, j'avais oublié qu'il ne fallait pas toucher au "'hhhh lllll" ;-(
        0
    2. JsuisNul Messages postés 137 Statut Membre 1
       
      Super Zipe31 !!! ça marche nickel !!
      Merci pou ton aide et tes connaissances !! ;-)
      0