Jacques L'helgoualc'h a écrit :
C'était simple ! Il faut reconnaître que Awk est plus lisible.
Oui, je le reconnais, awk était plus lisible, mais après
initiation on voit plus clair en général.
J'ai lu un peu de sed dans les generalités et dans le
contexte de ma question, et je comprend
Bayrouni a écrit, lundi 3 juillet 2006, à 17:29 :
[...]
> Mais je suis intrigué par la solution sed que je
> m'efforcerai à decrypter :)
> Je suis sur une doc à cette adresse:
> http://www.gnu.org/software/sed/manual/html_mono/sed.html
Il y a aussi http://sed.sf.net/, avec beaucoup d'exemples.
>
Marc Chantreux a écrit :
sed -ne '/./{p;:a;n;/./ba}'
joli ! il y a donc des choses a faire avec sed ! :)
J'ai essayé toutes les propositions, et comme mon fichier
est effectivement voluminueux j'ai adopté celle-là:
awk ' { if ( old=="") { print }; old=$0 }' Mais je suis intrigué par la
sed -ne '/./{p;:a;n;/./ba}'
joli ! il y a donc des choses a faire avec sed ! :)
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"
To UNSUBSCRIBE, email to [EMAI
Bayrouni a écrit, jeudi 29 juin 2006, à 13:37 :
[...]
> Que demander de plus :)
Une solution Sed, bien sûr :)
sed -ne '/./{p;:a;n;/./ba}' http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"
To UNSUBSCRIBE, email to [EMAIL PROTE
Gilles MISSONNIER wrote:
ça marche pô, car il affiche des lignes vides si il y a + de 2 lignes
vides qui se suivent...
la réponse est dans la question :)
while old=$line && read line; do
test -z $old && test -n $line && echo $line
done < fichier
awk ' { if ( old=="" && $0 !="" ) { print
ça marche pô, car il affiche des lignes vides si il y a + de 2 lignes
vides qui se suivent...
---
salut,
en bash :
while old=$line && read line; do
test -z $old && echo $line
done < fichier
par contre : si ton fichier est gros, il vaut mieux utiliser awk :
awk
Merci à vous tous,
En plus d'avoir trouvé la solution grâce à vous, et comme
c'est quasiment tout le temps avec GNU/Linux, il y a
plusieurs manières de procéder. Donc pour moi, ce sont des
solutions et des enrichissements.
J'ai déjà regarder la soltion avec cat, grep et tr.
Idem avec la bouc
salut,
en zsh :
while { old=$line && read line } {
[[ -z $old ]] && print $line
} < fichier
en bash :
while old=$line && read line; do
test -z $old && echo $line
done < fichier
par contre : si ton fichier est gros, il vaut mieux utiliser awk :
awk ' { if ( old=="") { prin
Bonsoir,
J'ai un fichier contenant des groupes de lignes, les groupes
étant séparés entre eux par une ligne vide.
Voici un exemple:
fichier1
fichier2
fichier3
fichier4
fichier23
fichier12
fichier442
fichier388
fichier543
Comment faire en bash pour ne retenir que la première ligne
de chaque g
10 matches
Mail list logo