Supprimer les espaces non significatif shell [Résolu/Fermé]

Signaler
Messages postés
109
Date d'inscription
mercredi 13 février 2013
Statut
Membre
Dernière intervention
22 janvier 2020
-
Messages postés
109
Date d'inscription
mercredi 13 février 2013
Statut
Membre
Dernière intervention
22 janvier 2020
-
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

Messages postés
18218
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
17 septembre 2020
4 994
hello
mettre les exemples entre balises code
merci
Messages postés
109
Date d'inscription
mercredi 13 février 2013
Statut
Membre
Dernière intervention
22 janvier 2020

Désolé, je fais comment (pour la prochaine fois) ?

Merci.
Messages postés
18218
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
17 septembre 2020
4 994
cliquer sur le 4ème bouton <> :
<code>ici</code>
Messages postés
109
Date d'inscription
mercredi 13 février 2013
Statut
Membre
Dernière intervention
22 janvier 2020

Ok. Merci dubcek, je le saurai pour une prochaine fois.
Merci pour ton aide dans tous les cas.
Messages postés
35614
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
20 septembre 2020
5 459
Salut,

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

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

Messages postés
35614
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
20 septembre 2020
5 459
Je suis un âne, y'a plus simple ;-\

$ echo "${A}" | sed 's/[[:space:]]*//g'
'vvvvv';'vvvvv';'hhhhlllll';;'eeeeee'
Messages postés
35614
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
20 septembre 2020
5 459 >
Messages postés
35614
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
20 septembre 2020

Ah ben non, ça marche pô, j'avais oublié qu'il ne fallait pas toucher au "'hhhh lllll" ;-(
Messages postés
109
Date d'inscription
mercredi 13 février 2013
Statut
Membre
Dernière intervention
22 janvier 2020

Super Zipe31 !!! ça marche nickel !!
Merci pou ton aide et tes connaissances !! ;-)