IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

programme qui plante. chercher/remplacer dans des fichiers.


Sujet :

Python

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    620
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 620
    Points : 453
    Points
    453
    Par défaut programme qui plante. chercher/remplacer dans des fichiers.
    Salut,

    Je deviens un peu fou à essayer de faire fonctionner ce truc... je ne connais pas du tout Python et j'essaye quand même de faire quelque chose avec. Ce bout de code devrait chercher la chaîne LOAD et la remplacer par menu_image1.php dans les fichiers exercices.php... mais ça ne marche pas : il ne se passe rien. Je ne comprends pas. Si quelqu'un a une suggestion...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    import  os
    import  sys
     
    def main() :
     
        run = open("run",'w')
     
        os.system("find /home/web/mms3/ -name exercices.php -print > results.dat")
     
        fin = open("results.dat",'r')
     
        lines = fin.readlines()
        i=0
        str_rep = "menu_image1.php"
        for line in lines : 
             lin=lines[1]
             run.writelines(lin)
             #lines[i] = line.replace("LOAD",str_force)
             #os.system("more "+lin)
             fout = open(lin,'r')
             nbline = fout.readlines()
             fout.close()
             j=0
             for nb in nbline :
                 if "LOAD" in nb :
                   #nbline[j] = nb.replace("menu_image_1.pte.html","menu_image1.php")
                   nbline[j] = nb.replace("LOAD",str_rep)
                   Print nbline
                 j=j+1
             fout = open(lin,'w')
             fout.writelines(nbline)
             fout.close()
             i=i+1
        fin.close()
        run.close()
     
    main()
    Merci !

    Hugo

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    620
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 620
    Points : 453
    Points
    453
    Par défaut
    Bon, j'ai essayé de réécrire un peu, pour voir, maintenant c'est pire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    import  os
    import  sys
     
    def main() :
        run = open("run",'w')
     
        os.system("find /home/web/mms3/ -name exercices.php -print > results.dat")
     
        fic_noms = open("results.dat",'r')
        listef = fic_noms.readlines()
        fic_noms.close()
        i=0
        for fic in listef
            fic_traiter = open(fic,'r')
            lignes_cor = fic_traiter.readlines()
            fic_traiter.close()
            j=0
            for ligne in lignes_cor
                if 'LOAD' in ligne
                    lignes_cor[j] = ligne.replace('LOAD','le lien qui tue')
                j = j + 1
            fic_cor = open(nom_ouv,'w')
            fic_cor.writelines(lignes_cor)
            fic_cor.close()
            i = i + 1
        run.close()
    main()
    ~

  3. #3
    Membre expérimenté Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Points : 1 728
    Points
    1 728
    Par défaut
    essaye ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for fichier in liste_fichier:
        contenu = open(fichier).read().replace('LOAD', 'mon_lien_qui_va_bien.php')
        open(fichier, 'w').write(contenu)
    "Etre conscient de la difficulté permet de l'éviter.."
    Lao-Tseu.

Discussions similaires

  1. Comment faire des remplacements dans des fichiers (sed + regex)
    Par vinok972 dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 04/12/2012, 12h50
  2. Réponses: 3
    Dernier message: 24/03/2009, 14h08
  3. Faire des remplacements dans un fichier texte
    Par DooSquare dans le forum C
    Réponses: 6
    Dernier message: 06/07/2007, 18h22
  4. Programme de remplacement de texte dans des fichiers
    Par Invité4 dans le forum Linux
    Réponses: 13
    Dernier message: 12/11/2006, 16h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo