A voir également:
- [SHELL] Extraire une chaine de caractere
- Excel extraire chaine de caractère après un caractère ✓ - Forum Excel
- Caractère spéciaux - Guide
- Extraire video youtube - Guide
- Caractère invisible ✓ - Forum Windows
- Excel extraire chaine de caractère avant un caractère ✓ - Forum Excel
4 réponses
jipicy
Messages postés
40805
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 901
26 déc. 2007 à 13:30
26 déc. 2007 à 13:30
Salut,
Essaye avec "sed" :
Essaye avec "sed" :
var=$(sed -nre '1 {s/.{56}(.{5}).*/\1/; s/ //gp}' fichier)
jipicy
Messages postés
40805
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 901
26 déc. 2007 à 13:34
26 déc. 2007 à 13:34
Quoi qu'avec "awk" ça donnerait plutôt :
awk 'NR==3 { print substr($0,57,5) }' fichier;-))
Merci pour tes réponses.
Pour awk, je pense plutôt qu'il faut tester NR==1 si je veux la première ligne ?
Sinon, je n'arrive pas à exécuter la commande sed :
quand je tape cette commande sed -ne '1 {s/.{56}(.{5}).*/\1/; s/ //gp}' monfichier,
j'ai le résultat suivant :
sed: Function 1 {s/.{56}(.{5}).*/\1/; s/ //gp} cannot be parsed.
Karine
Pour awk, je pense plutôt qu'il faut tester NR==1 si je veux la première ligne ?
Sinon, je n'arrive pas à exécuter la commande sed :
quand je tape cette commande sed -ne '1 {s/.{56}(.{5}).*/\1/; s/ //gp}' monfichier,
j'ai le résultat suivant :
sed: Function 1 {s/.{56}(.{5}).*/\1/; s/ //gp} cannot be parsed.
Karine
jipicy
Messages postés
40805
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 901
26 déc. 2007 à 14:35
26 déc. 2007 à 14:35
Oups sorry pour le numéro de ligne avec "awk" ;-((
Pour sed il faut absolument mettre le switch "-r" (sed -nre) pour employer l'expression sous cette forme (emploi des regex étendues), sinon il faut protéger certains caractères :
Pour sed il faut absolument mettre le switch "-r" (sed -nre) pour employer l'expression sous cette forme (emploi des regex étendues), sinon il faut protéger certains caractères :
sed -ne '1 {s/.\{56\}\(.\{5\}\).*/\1/; s/ //gp}' monfichier;-))