Re: sed

Top Page

Reply to this message
Author: Patrick Dupre
Date:  
To: Patrick Dupre
CC: guilde
Subject: Re: sed
J'ai trouve une solution en passant par awk

C'est pas tres elegnant.
sed "/^[#%]/! s/,0.0,/ /;s/,/ /g" $1| awk '!/^[\#\%]/ {print $1 $2}'

===========================================================================
 Patrick DUPRÉ                                 | | email: pdupre@???
 Laboratoire de Physico-Chimie de l'Atmosphère | |
 Université du Littoral-Côte d'Opale           | |
 Tel.  (33)-(0)3 28 23 76 12                   | | Fax: 03 28 65 82 44
 189A, avenue Maurice Schumann                 | | 59140 Dunkerque, France
===========================================================================



> Sent: Friday, June 01, 2018 at 5:29 PM
> From: "Patrick Dupre" <pdupre@???>
> To: guilde <guilde@???>
> Subject: sed
>
> Bonsoir,
>
> Quelque chose que je ne comprends pas:
> Dans un shell j'ai:
> sed "/^#/! s/,0.0,/ /;s/,/ /g" $1
>
> je voulais avoir:
>
> sed "/^[#%]/! s/,0.0,/ /;s/,/ /g" $1
> pour eviter les lignes commencant par # et par %
>
> Mais cela ne fonctione pas.
>
> J'ai essaye en ligne de commande:
>
> sed -n -e '/^[#%]/! s/,0.0,/ /;s/,/ /g p' test2.asc |more
> qui ne fonmctionne pas, alors que
> sed -n -e '/^[#%]/! s/,/ /g p' test2.asc |more
> fonctionne
>
> Il y a quelque chose qui m'echappe.
>
> Je veux a la fois eviter les lignes qui commencent par # ou par %
> et faire une substitution de "0.0," et "," (dans un shell).
>
> Exemple
>
> % Time (s), Amplitude (V)
> % Demod 5 Sample Y, /dev922/demods/4/sample.Y
> % Time (s), Amplitude (V)
> % Demod 6 Sample X, /dev922/demods/5/sample.X
> % Time (s), Amplitude (V)
> -533.650285714, 0.0512703135729
> -533.507978971, -0.00213626306554
> -533.365672229, 0.0289921416037
> -533.223365486, -0.0222781719692
> -533.081058743, -0.0299076829175
>
>
> ===========================================================================
>  Patrick DUPRÉ                                 | | email: pdupre@???
>  Laboratoire de Physico-Chimie de l'Atmosphère | |
>  Université du Littoral-Côte d'Opale           | |
>  Tel.  (33)-(0)3 28 23 76 12                   | | Fax: 03 28 65 82 44
>  189A, avenue Maurice Schumann                 | | 59140 Dunkerque, France
> ===========================================================================

>
>