Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
je cherche une comande shell
Envoyé par: benoitor

salut

Voila dans un fichier je voudrai supprimer le retour de ligne a la fin de chaque ligne afin que chaque ligne se retrouve a la queue leu leu...

j'ai pas encore trouve malgres les "man ..." Quelqu un peut il m'orienter


Merci

Poste le Saturday 23 April 2005 14:45:21
Répondre     Citer    
Re: je cherche une comande shell
Envoyé par: ceric35

sed "s/\n//" fichier

pas testé ...

-------------------------------------------------------------------------------------------------
Linux est pour la firme de Redmond ce qu'est James Bond pour les
méchants dans les films : le dernier obstacle avant la domination mondiale.

Poste le Saturday 23 April 2005 15:22:59
Répondre     Citer    
Re: je cherche une comande shell
Envoyé par: benoitor

merci je vais voir

Poste le Saturday 23 April 2005 15:54:58
Répondre     Citer    
Re: je cherche une comande shell
Envoyé par: Sve@r

Sinon t'as le "awk"
awk '{printf("%s ", $0)}' fichier

Poste le Saturday 23 April 2005 16:21:08
Répondre     Citer    
Re: je cherche une comande shell
Envoyé par: abgech

Pour moi, un simple petit programme "longtexte", en C:
Citation

#include <stdio.h>
int main()
{
int carlu;

while ( (carlu = getchar()) != EOF)
carlu == '\n' ? putchar(' ') : putchar(carlu);
return(0);
}

Que j'appelle:
Citation

longtexte <ficher_avec_retour >fichier_sans_retour

Pour moi, c'est infiniment plus rapide (moins de 3 minutes) que de me creuser la tête à trouver une commande qui veuille bien faire ce que je veux.

..................
Parce qu'il avait une clôture à utiliser, l'homme invente la propriété privée. --- F. Cavanna

Poste le Saturday 23 April 2005 19:14:58
Répondre     Citer    
Re: je cherche une comande shell
Envoyé par: Sve@r

Citation
abgech
Pour moi, un simple petit programme "longtexte",
en C:
#include <stdio.h>
int main()
{
int carlu;

while ( (carlu = getchar()) != EOF)
carlu == '\n' ? putchar(' ') :
putchar(carlu);
return(0);
}

Que j'appelle:
longtexte <ficher_avec_retour
>fichier_sans_retour

Pour moi, c'est infiniment plus rapide (moins de 3
minutes) que de me creuser la tête à trouver une
commande qui veuille bien faire ce que je veux.

..................
Pour un programmeur système, utilisateurs et
applications sont une façon commode de faire des
tests de masse.

Heu... je trouve quand-même que "awk" est plus indiqué dans un cas comme celui-là. Déjà "awk" a été prévu pour traiter des fichiers. Enlever un caractère ça passe encore en C mais s'il avait fallu intervertir des mots ou qq chose d'approchant, il aurait fallu plus de 3mn pour écrire ton code en C.

Sinon moi j'aurais mis
carlu != '\n' ?putchar(carlu) :putchar(' ');
Je préfère mettre en premier le cas le plus fréquent et en second le cas exceptionnel pour que ce soit "relativement" plus rapide...

Poste le Saturday 23 April 2005 19:36:00
Répondre     Citer    
Re: je cherche une comande shell

J'suis absolument d'accord avec Sve@r, il ne sert à rien de réinventer la roue smiling smiley


la contribution à ma sauce sur base de tr :
cat fichier | tr $'\n' ' '


--
Brugmans Frédéric

[www.brugmans.net]
[triathlon.sport-challenge.be]

Poste le Sunday 24 April 2005 10:37:38
Répondre     Citer    
Re: je cherche une comande shell
Envoyé par: abgech

Citation
Sve@r
Sinon moi j'aurais mis
carlu != '\n' ?putchar(carlu) :putchar(' ');
Je préfère mettre en premier le cas le plus fréquent et en second le cas exceptionnel pour que ce soit "relativement" plus rapide...

L'une et l'autre version sont exactement semblables, tant en terme de place qu'en terme de code exécuté, quel que soit le caractère lu.

Tu peux t'en assurer en regardant, pour les deux versions, l'assembler généré après compilation gcc avec les options -S -O2.

..................
Parce qu'il avait une clôture à utiliser, l'homme invente la propriété privée. --- F. Cavanna

Poste le Monday 25 April 2005 19:37:25
Répondre     Citer    
Re: je cherche une comande shell
Envoyé par: GPO

Citation
auteur
L'une et l'autre version sont exactement semblables, tant en terme de place qu'en terme de code exécuté, quel que soit le caractère lu.

C'est juste une question de convention d'écriture. Ecrire les cas les plus courants d'abord permettent dans l'absolu une meilleure relecture du source.
Cela étant, par rapport aux 3 précédentes lignes, je ne sais pas pkoi on a ouvert le débat !!

Poste le Tuesday 26 April 2005 16:10:20
Répondre     Citer    
Re: je cherche une comande shell
Envoyé par: Sve@r

En fait, le débat n'a pas réellement été ouvert. J'ai juste émis une remarque sur la solution "totallyC" de "abgech" et rajouté une remarque personnelle sur ma façon d'écrire les conditionnelles en C.
C'était pas un débat, c'était un partage d'expérience...



Poste le Tuesday 26 April 2005 21:09:18
Répondre     Citer    
Re: je cherche une comande shell
Envoyé par: MDW

Bonjour

Une question similaire à été posé il y a quelque temps. Voici un lien vers ma réponse:

[lea-linux.org]

A+

MDW

Poste le Tuesday 26 April 2005 21:49:05
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
je cherche une comande shell
Pour poser vos questions sur les scripts shell, le Perl, le C, etc... Attention : nous ne sommes pas des spécialistes du dev, ce forum est juste pour de petites aides ponctuelles concernant le développement et les outils de développement.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons