Cherche aide pour la fonction awk sous linux

Résolu/Fermé
Bonjour,
j'ai des données à recuperer avec la fonction awk sous linux et je voudrais savoir comment faire pour extraire les données que je veux a partir des pages html que j'ai dans un fichier sur mon bureau.
merci pour celui qui veux m'aider.
Configuration: Linux
Firefox 2.0.0.11

31 réponses

  1. salut,
    puisque tu as une idée des données que j'ai pourrait tu me dire comment faire pour créer un tableau croisé ou il y aurait les candidats comme variable et les différents résultats des département comme individus
    merci.
    1. Modérateur
      Rajoute "e '0,/RAPPEL/d' -e" comme suit dans la commande :
      sed -nse '0,/RAPPEL/d' -e '/M\.\|Mme/{N;s#<[^>]*>##g;s/[ ]\{2,\}//g;s/\n/ : /p}' 022/* >> fichier_sortie.txt
      ;-))
      1. bonjour, encore une fois je voudrais vous demander de l'aide
        au fait j'ai un petit souci dans le programme que tu m'as donné.
        je voudrais supprimer les noms qui se repetent dans mon exemple c'est segolene royal et nicolas sarkozy qui se repetent a cause des resultats du second tour. et moi je n'ai besoin que des resultats du premier tour.
        merci
        1. Modérateur
          sed -ns '/M\.\|Mme/{N;s#<[^>]*>##g;s/[ ]\{2,\}//g;s/\n/ : /p}' 022/* >> fichier_sortie.txt
          
          sed -ns '/M\.\|Mme/{N;s#<[^>]*>##g;s/[ ]\{2,\}//g;s/\n/ : /p}' 053/* >> fichier_sortie.txt
          ;-))
          1. je ne sais pas comment faire pour que la fonction que tu m'as donné s'applique a toutes les pages que j'ai. car chaque page représente les résultats d'une commune, donc il me faut appliquer cette fonction pour toute les pages , ce que je n'arrive pas a faire en les mettant dans un répertoire quelconque.
            merci
            1. Modérateur
              Tu veux tous les résultat dans un seul et même fichier de sortie ou chaque page dans un fichier différent ?
              1. je veux tous les résultat dans un seul et même fichier de sortie
            2. une toute derniere question comment généraliser sur tout les autres fichiers que j'ai.
              les pages html se trouvent dans un repertoire nommé 022 et 053 .
              merci pour tout
              1. comment les mettre dans un fichier texte à partir de la console?simplement en copiant et en collant?
                1. Modérateur
                  sed -n '/M\.\|Mme/{N;s#<[^>]*>##g;s/[ ]\{2,\}//g;s/\n/ : /p}' 22001.html > fichier_sortie.txt
                  ;-))
              2. Modérateur
                Bon essaye avec cette commande :
                sed -n '/M\.\|Mme/{N;s#<[^>]*>##g;s/[ ]\{2,\}//g;s/\n/ : /p}' 22001.html 
                Ça devrait aller mieux ;-))
                1. oui effectivement les nombres sont affichés sur la ligne
                  merci
              3. Est ce que c'est possible d'avoir que les noms exemple ( ROYAL , BOV, SARKOZY,....) et puis sur la même ligne le score. je dois faire ça pour tout les communes de France. et merci encore
                1. Modérateur
                  Dis-moi si cette commande t'affiche la liste des candidats et leur score en dessous :
                  sed -n '/M\.\|Mme/{N;s#<[^>]*>##gp}' 22001.html
                  Si oui, dis-moi si à la suite de cette commande :
                  sed -n '/M\.\|Mme/{N;s#<[^>]*>##gp}' 22001.html | cat -A 
                  si les lignes finissent par :
                  ^M$
                  ou
                  $
                  1. elles se terminent par $
                    voila le resultat

                    dali@k-mna-091:~$ sed -n '/M\.\|Mme/{N;s#<[^>]*>##gp}' 22001.html | cat -A
                    M- M- M.M- M- NicolasM- M- SARKOZY$
                    185$
                    M- M- MmeM- M- SM-igolM-hneM- M- ROYAL$
                    177$
                    M- M- M.M- M- OlivierM- M- BESANCENOT$
                    7$
                    M- M- MmeM- M- Marie-GeorgeM- M- BUFFET$
                    1$
                    M- M- M.M- M- GM-irardM- M- SCHIVARDI$
                    2$
                    M- M- M.M- M- FranM-goisM- M- BAYROU$
                    53$
                    M- M- M.M- M- JosM-iM- M- BOVM-I$
                    6$
                    M- M- MmeM- M- DominiqueM- M- VOYNET$
                    2$
                    M- M- M.M- M- PhilippeM- M- de VILLIERS$
                    13$
                    M- M- MmeM- M- SM-igolM-hneM- M- ROYAL$
                    110$
                    M- M- M.M- M- FrM-idM-iricM- M- NIHOUS$
                    9$
                    M- M- M.M- M- Jean-MarieM- M- LE PEN$
                    28$
                    M- M- MmeM- M- ArletteM- M- LAGUILLER$
                    5$
                    M- M- M.M- M- NicolasM- M- SARKOZY$
                    127$
                2. dali@k-mna-091:~$ file 22001.html
                  22001.html: ISO-8859 HTML document text, with very long lines
                  1. le répertoire 053 que j'ai, comporte quatre sous répertoires qui contiennent les pages html des données aspirées du site web ils représentent en fait les résultats des 4 départements de Bretagne
                    1. Modérateur
                      Le fichier "22001.html" c'est le fichier récupérer via "wget" ?

                      Affiche le résultat de la commande :
                      file 22001.html 
                      1. pardon si je n'explique pas bien car je viens de connaître ubuntu depuis une semaine
                        1. et quan j'essai avec cette commande :

                          dali@k-mna-091:~$ sed -n '/M\.\|Mme/{N;s#<[^>]*>##g;s/[ ]\{2,\}//g;s/\r\n/ : /p}' 22001.html

                          voila ce qui s'affiche:

                          dali@k-mna-091:~$
                          • 1
                          • 2