|
|
|
|
Posté par
sheol, le jeudi 20 décembre 2007 à 22:02:16Configuration: Linux Fedora Firefox 2.0.0.10
Salut, lami20j@debian:~/trash2/vider$ cat a ligne1 ligne2 ligne3 lami20j@debian:~/trash2/vider$ perl -pi.orig -e 's/\n/ /' a lami20j@debian:~/trash2/vider$ cat a ligne1 ligne2 ligne3 lami20j@debian:~/trash2/vider$ lami20j |
|
cat source.txt|tr "\n" " ">dest.txt
Membre contributeur Spécialisé réseaux, webmastering, programmation |
Salut,
Si tu tiens absolument à le faire avec "sed" : sed -i.BAK ':z;N;s/\n/ /;bz' fichier;-)) Z'@+...che. JP : Zen, my Nuggets ! ;-) Le savoir n'est bon que s'il est partagé. |
Bonsoir
Votre commande ne peut pas faire ce à quoi vous vous attendiez pourtant. La simple raison est que le caractère \n ne fait pas partie de la chaîne examinée par sed. Une solution serait, avec une boucle while, d'inclure toutes les lignes dans le "pattern buffer" (désolé de l'anglicisme), puis de supprimer ce fameux caractère \n. C'est envisageable pour un petit fichier... car tout el fichier doit tenir en mémoire. C'est donc pas une solution universelle. Une solution qui marche, mais on peut certainement faire mieux : awk 'BEGIN {ORS=" "} {print} END {print "\n"}' <fichier> Explications : Dans la section BEGIN, on définit le séparateur d'enregistrement en sortie (la variable ORS) à <espace>. Dans la section principale, pour chaque ligne du fichier en entrée, il n'y a qu'une action : imprime Dans la section END, pour faire propre, on imprime un retour à la ligne. (-: un simple "man awk" vous aurait mis sur la piste de cette solution En espérant que cela serve Ciao
|
Bonjour !
Merci beaucoup pour toutes vos réponses !!! Je vais toutes les étudier en détail. La solution tr est la plus simple et c'est celle que je vais utiliser dans l'immédiat. Par contre j'avais en effet imaginé que awk pourrait faire un travail du genre sur mes fichiers mais ... awk ça me fait un peu peur :P donc je m'imaginais la solution très compliquée (à raison ? :) ) J'ouvre un autre topic qui fait suite à celui-ci et surtout à vos réponses. En tous cas merci !!! :-)) Maximilien. |
| 26/02 16h52 | Sed - Introduction à SED - Part III | Sed |
| 23/03 20h06 | Sed - Insérer des espacements | Sed |
| 05/01 18h57 | Sed - Supprimer une ou plusieurs lignes d'un fichier | Sed |
| 09/04 10h57 | Sed - Conversion retours chariots DOS (CRLF) / UNIX (LF) | Sed |
| 28/09 10h17 | [Webmaster] Faire facilement un espace d'upload | Webmaster |
| 28/05 21h41 | [PERL] Remplacer retour chariot par espace | 2 |
| 18/07 16h07 | Remplacer une ligne par une autre | 8 |
| 06/06 12h04 | Retour ligne dans mail | 2 |
| 27/05 18h14 | [bash linux] remplacer une ligne | 3 |
| 20/03 11h48 | Remplacer des lignes par d'autres avec sed | 5 |
![]() | Clic espace - L'application Clic-Espace permet d'utiliser le clic gauche à la place de la touche espace. L'ergothérapeute Guillaume Hessel... | Catégorie: Bureautique Licence: Freeware/gratuit |
![]() | SuperCopier 2 - SuperCopier est un gestionnaire de copie de fichiers libre pour Windows, proposant des fonctionnalités non couvertes par le... | Catégorie: Gestion de fichiers Licence: Freeware/gratuit |
![]() | Ant Renamer - ANT Renamer permet de renommer un grand nombre de fichiers et dossiers en quelques clics. Il ne fait que modifier les noms... | Catégorie: Gestion de fichiers Licence: Freeware/gratuit |
![]() | NcFTP - NcFTP est un formidable client FTP en ligne de commande disponible pour la quasi-totalité des systèmes d'exploitation.... | Catégorie: Téléchargement Licence: Freeware/gratuit |
![]() | Medal Of Honor : | Catégorie: Jeu vidéo PS2 | 5.98 € Surcouf |
![]() | Jules Verne : Retour | Catégorie: Jeu vidéo PC | 10.00 € Amazon.fr |
![]() | Bone Episode 1: La | Catégorie: Jeu vidéo PC | 28.49 € Alapage |
![]() | Grandin Espace 06 | Catégorie: Chaîne Hi-Fi |