Awk: récupérer le xème caractère d'une ligne
Résolu
tlep
Messages postés
597
Statut
Membre
-
fiddy Messages postés 441 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 441 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
est-il possible avec awk (ou autre) de récupérer par exemple le 112ème caractère de chaque ligne pour un fichier donné ?
Merci :-)
est-il possible avec awk (ou autre) de récupérer par exemple le 112ème caractère de chaque ligne pour un fichier donné ?
Merci :-)
Configuration: Windows Vista Firefox 3.0
7 réponses
-
hello
et aussi
$ cut --byte=6 < plop
A
B
C
D
E
F -
A priori j'ai trouvé en fait:
toto="abcd"
echo "$toto"|awk '{ print substr($0,2,1) }'
=>b
C'est bien awk :-) -
Salut,
[tmpfs]$ cat plop 12345A78910 12345B78910 12345C78910 12345D78910 12345E78910 12345F78910 [tmpfs]$ sed 's/.\{5\}\(.\).*/\1/' plop A B C D E F [tmpfs]$;-))
-
Salut,
Je n'ai pas testésed 's/^.\{111\}\(.\).*/\1/' fichier--
106485010510997108 -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Oups...
Mieux vaut tard que jamais ;-))
-
en fait
cut -b6
pour être portable sur les Unixes non GNU/Linux -
Salut,
Oui la solution avec cut, est la plus simple. Mais puisqu'elle se base sur le byte, s'il y a un accent dans la chaîne, ça marche plus. (Oui je sais, je suis un rabat-joie ^^).. La solution avec sed dans ce cas marche merveilleusement bien.
Ou alors :
for i in $(<plop); do echo ${i:3:1}; done
Cdlt