The UNIX and Linux Forums  
Bonjour et bienvenu par les États-Unis à la UNIX et Linux Forums! Merci de votre visite et vous joindre à notre communauté mondiale.

Go Back   Les systèmes UNIX et Linux Forums > Top Forums > De programmation et de script Shell
.
google unix.com



De programmation et de script Shell Posez vos questions à propos de KSH, CSH, SH, BASH, PERL, PHP, SED, awk et d'autres scripts shell et les langages de script shell ici.

Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
Fil Thread Starter Forum Réponses Last Post
extraire les nombres de un mot systemali De programmation et de script Shell 14 03-30-2009 03:47 AM
Extrait des numéros à partir d'une chaîne et de stocker dans des variables davewg De programmation et de script Shell 6 11-14-2007 05:22 AM
grep pour les numéros non shihabvk De programmation et de script Shell 6 09-20-2005 09:06 PM
grep numéros de série azmathshaikh De programmation et de script Shell 1 08-08-2005 07:45 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Recherche sur ce Thread Rate Thread Modes d'affichage
  #1 (permalink)  
Old 08-30-2007
Baghera baghera is offline
Registered User
  
 

Join Date: Aug 2007
Posts: 23
grep ou awk problème, l'incapacité d'extraire les numéros

Salut, j'ai du mal à obtenir certains numéros à partir d'un fichier html. La chose est que je n'ai html plusieurs journaux qui contient des lignes comme ceci:

nerdnerd, how_old_r_u: 45782 <br> POSTULER: <hour_second> vérification réussi

C'est une partie de ce que j'ai extraites d'un fichier html mais tout ce que je veux vraiment c'est le nombre dans le milieu. Lors de l'utilisation awk I get:


how_old_r_u: 45782 <br> POSTULER:

car il ya un espace à chaque extrémité, comme un séparateur pour awk.

Et j'ai essayé d'utiliser grep "[0-9]», mais il ne faut que toute la ligne contenant le numéro, donc j'étais toute la ligne à nouveau. Y at-il de commande qui peut récupérer les numéros seulement?
  #2 (permalink)  
Old 08-30-2007
vino's Avatar
vino vino is offline Forum Staff  
Supporter (in vino veritas)
  
 

Join Date: Feb 2005
Lieu: Bangalore, Inde
Posts: 2798
Ce schéma n'est pas très clair. Mais vous pouvez essayer

Code:
grep -oE "[[:digit:]]{1,}" input.txt
Si cela ne satisfait pas vos besoins, peut-être cela.

Code:
sed -n -e "s/.*:\([0-9]*\).*/\1/p" input.txt
  #3 (permalink)  
Old 08-31-2007
Baghera baghera is offline
Registered User
  
 

Join Date: Aug 2007
Posts: 23
Citation:
Posté par vino View Post
Ce schéma n'est pas très clair. Mais vous pouvez essayer

Code:
grep -oE "[[:digit:]]{1,}" input.txt
Si cela ne satisfait pas vos besoins, peut-être cela.

Code:
sed -n -e "s/.*:\([0-9]*\).*/\1/p" input.txt
Mais s'il n'y a plus de chiffres sur cette ligne par exemple:

how_old_r_u: 45782 <br> s'appliquent: [30000, t3, t4]: Plummet

Il semble quand je lance la commande

Code:
grep -oE "[[:digit:]]{1,}" input.txt
Je reçois aussi les autres numéros est-il un moyen d'obtenir seulement 45782?
  #4 (permalink)  
Old 08-31-2007
fazliturk fazliturk is offline
Registered User
  
 

Join Date: Aug 2007
Posts: 45
cut-f2-d: inputfile |sed s / [^ 0-9] / / g
  #5 (permalink)  
Old 08-31-2007
Charbel charbel is offline
Registered User
  
 

Join Date: Feb 2006
Posts: 41
Est-ce numéro composé de 5 chiffres seulement?
Si oui, alors vous pouvez utiliser la commande awk et vous pouvez imprimer ce sous-seule ....

code:
cat input.txt | awk 'BEGIN (FS \u003d":"} (print substr (2,1,5 $))'

ce mai aider .....
  #6 (permalink)  
Old 08-31-2007
ghostdog74 ghostdog74 is offline Forum Advisor  
Registered User
  
 

Join Date: Sep 2006
Posts: 2533
Citation:
Posté par Charbel View Post
Est-ce numéro composé de 5 chiffres seulement?
Si oui, alors vous pouvez utiliser la commande awk et vous pouvez imprimer ce sous-seule ....

code:
cat input.txt | awk 'BEGIN (FS \u003d":"} (print substr (2,1,5 $))'

ce mai aider .....
pas besoin de cat.
Code:
awk 'BEGIN {FS=":"} {print substr($2,1,5)}' input.txt
  #7 (permalink)  
Old 08-31-2007
vino's Avatar
vino vino is offline Forum Staff  
Supporter (in vino veritas)
  
 

Join Date: Feb 2005
Lieu: Bangalore, Inde
Posts: 2798
Citation:
Posté par Baghera View Post
Mais s'il n'y a plus de chiffres sur cette ligne par exemple:

how_old_r_u: 45782 <br> s'appliquent: [30000, t3, t4]: Plummet

Il semble quand je lance la commande

Code:
grep -oE "[[:digit:]]{1,}" input.txt
Je reçois aussi les autres numéros est-il un moyen d'obtenir seulement 45782?
C'est pourquoi la sed solution de remplacement. Avez-vous essayé cela? Est-ce que cela vous ce que vous cherchez?
Closed Thread

Bookmarks

Tags
grep ou

Thread Tools Recherche sur ce Thread
Recherche sur ce Thread:

Recherche avancée
Modes d'affichage Rate this thread
Rate this thread:

Règles de messages
Tu mai pas de nouvelles discussions: nonoui
Tu mai pas envoyer des réponses:
Tu mai pas envoyer des pièces jointes
Tu mai pas modifier vos messages

BB code est Sur
Smilies sont Sur
[IMG] code est Sur
Le code HTML est Hors tension
Trackbacks sont Sur
Pingbacks sont Sur
Refbacks sont Sur




Toutes les heures sont au format GMT -4. Le temps est maintenant 12:38 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traductions Langue Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Les systèmes UNIX et Linux Forums Content Copyright © 1993-2009. Tous droits Reserved.Ad de gestion par RedTyger

Content Relevant URLs par vBSEO 3.2.0