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 06/06/2014, à 15:57

Le Goss

[Résolu] bash: supprimer l'indentation de cat -n

Bonjour à tous,

Je trouve vraiment disgracieux l'indent qu'il a y en début de chaque ligne quand on fait un

cat -n monfichier

J'ai essayé un

tr -d "\t"

mais ça enlève la tabulation entre le numéro de ligne et son début
J'ai regardé dans le man de cat mais je n'ai rien trouvé...
Quelqu'un aurait-il la solution?

Merci pour votre aide,
Cordialement

Dernière modification par Le Goss (Le 06/06/2014, à 16:12)


Si je pose une question sur le forum, ce n'est pas par paresse ou pour faire faire "mes devoirs"; c'est par ignorance: j'ai 51 berges. Et, par principe, je préfère être traité d'ignare que de fainéant.
Samsung i7-3630QM CPU @ 2.40GHz × 8 - 64 bits - RAM 7,7 Gio - DD 976 Go - Bodhi 6.0.0 Ubuntu 20.04
Allergique au wysiwyg; traitement à vie: Lilypond - LaTeX - txt2tags

Hors ligne

#2 Le 06/06/2014, à 16:02

Elzen

Re : [Résolu] bash: supprimer l'indentation de cat -n

À première vue, ta tentative de supprimer les tabulations ne fonctionne pas chez moi pour la raison que tu cites, mais également parce que l'indentation en question est constituée de quatre espaces, et non d'une tabulation.

Si c'est le cas également chez toi, tu dois pouvoir t'en sortir comme ça :

cat -n fichier | cut -d" " -f4-

Si jamais cat t'affichait une tabulation des deux côtés du numéro de ligne, il faudrait plutôt faire comme ça :

cat -n fichier | cut -f2-

Hors ligne

#3 Le 06/06/2014, à 16:08

Le Goss

Re : [Résolu] bash: supprimer l'indentation de cat -n

Effectivement, ce sont 5 espaces pour moi et non une tabulation.
Je suis donc plutôt parti sur un

| sed 's/     //' | sed 's/\t/ /'

C'est moins élégant, mais ça me permet d'insérer un chaîne

| sed 's/     //' | sed 's/\t/ --> /'

Merci pour ton aide
Cordialement


Si je pose une question sur le forum, ce n'est pas par paresse ou pour faire faire "mes devoirs"; c'est par ignorance: j'ai 51 berges. Et, par principe, je préfère être traité d'ignare que de fainéant.
Samsung i7-3630QM CPU @ 2.40GHz × 8 - 64 bits - RAM 7,7 Gio - DD 976 Go - Bodhi 6.0.0 Ubuntu 20.04
Allergique au wysiwyg; traitement à vie: Lilypond - LaTeX - txt2tags

Hors ligne

#4 Le 06/06/2014, à 16:15

Elzen

Re : [Résolu] bash: supprimer l'indentation de cat -n

Ouaip, sed est bien pratique aussi smile

De rien ^^

Hors ligne

#5 Le 06/06/2014, à 16:23

Watael

Re : [Résolu] bash: supprimer l'indentation de cat -n

salut,

nl -nln fichier

peut-être.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#6 Le 06/06/2014, à 16:25

bishop.sad.clown

Re : [Résolu] bash: supprimer l'indentation de cat -n

Watael a écrit :

salut,

nl -nln fichier

peut-être.

ah bin celle là je ne le connaissais pas... je la note...

pas mal cette p'tite commande !

Merci !


@++ , Rob'
→ Trusty x64
Je n'ai pas toujours les réponses mais je les cherche en même temps que vous... =· þ

Hors ligne

#7 Le 06/06/2014, à 16:37

Le Goss

Re : [Résolu] bash: supprimer l'indentation de cat -n

Le Goss a écrit :

Je suis donc plutôt parti sur un

| sed 's/     //' | sed 's/\t/ /'

Cette commande ne règle pas tout le problème. Testez avec un fichier d'une centaine de ligne et vous comprendrez...
Je prends

nl -nln

C'est OK!


Si je pose une question sur le forum, ce n'est pas par paresse ou pour faire faire "mes devoirs"; c'est par ignorance: j'ai 51 berges. Et, par principe, je préfère être traité d'ignare que de fainéant.
Samsung i7-3630QM CPU @ 2.40GHz × 8 - 64 bits - RAM 7,7 Gio - DD 976 Go - Bodhi 6.0.0 Ubuntu 20.04
Allergique au wysiwyg; traitement à vie: Lilypond - LaTeX - txt2tags

Hors ligne

#8 Le 06/06/2014, à 16:43

Elzen

Re : [Résolu] bash: supprimer l'indentation de cat -n

Le Goss a écrit :

Cette commande ne règle pas tout le problème. Testez avec un fichier d'une centaine de ligne et vous comprendrez...

Ah, oui, forcément… d'où le fait que tu aies cinq espaces et moi quatre : ça venait de la taille de nos fichiers de test ^^

Il y avait sans doute moyen de régler ce problème dans sed à l'aide d'une RegExp… mais effectivement, nl est préférable, tant sur le plan de la simplicité que pour la sémantique smile

Hors ligne