Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 23/11/2008, à 02:39

Age_of_Aquarius

wc -L et grep

Bonjour,

Pour afficher le nombre de caractères de la plus longue ligne du fichier "test.txt" j'ai fait :

   cat test.txt | wc -L

j'obtiens 38.

Pour afficher cette ligne (la plus longue) j'ai fait :

   grep "^.\{38,\}$" test.txt

je n'obtiens aucun résultat. La ligne s'affiche seulement lorsque je fait :

   grep "^.\{36,\}$" test.txt

J'aimerais savoir s'il y a une erreur dans mes commandes, sachant que cette linge contient une tabulation.

Merci

Hors ligne

#2 Le 23/11/2008, à 10:08

Tycho Brahe

Re : wc -L et grep

Salut,

Age_of_Aquarius a écrit :

J'aimerais savoir s'il y a une erreur dans mes commandes, sachant que cette linge contient une tabulation.

Aucune réelle erreur dans tes commandes, le seul soucis est la gestion des tabulations qui n'est pas identique. A priori, wc comprend le tab comme plusieurs espaces alors que grep le comprend comme 1 seul caractère.

Afin de contourner ce soucis, tu peux utiliser tr afin de remplacer les tab par un seul espace avant de faire appel a wc :

cat test.txt | tr "\t" " " | wc -L

Dernière modification par Tycho Brahe (Le 23/11/2008, à 11:54)


Loi de Newton :
Si tu restes à glander sous le pommier, tu pourrais bien prendre une pomme sur la gueule.

Hors ligne