Awk: récupérer le xème caractère d'une ligne
Résolu
tlep
Messages postés
596
Date d'inscription
Statut
Membre
Dernière intervention
-
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
7 réponses
A priori j'ai trouvé en fait:
toto="abcd"
echo "$toto"|awk '{ print substr($0,2,1) }'
=>b
C'est bien awk :-)
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]$;-))
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
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
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
Yes, et pour le moment c'est la plus simple ;-)