Lancer un script sur un dossier

Fermé
Philippe1234 - 21 juil. 2020 à 09:26
 Philippe1234 - 21 juil. 2020 à 11:34
Bonjour,

J'ai crée un script en Python qui fonctionne actuellement sur Windows. Le principe est simple, il demande à l'utilisateur de sélectionner un dossier, puis un ou plusieurs fichiers et lance le script qui permet de modifier le fichier sélectionné en remplaçant des caractères.

Imaginons que mon fichier python s'appelle "convertisseur.py", j'ai essayé
./convertisseur.py  mon_dossier


mais sans succès.

Avez vous une idée ?

Merci d'avance.
Configuration: Windows / Chrome 80.0.3987.132
A voir également:

3 réponses

zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
21 juil. 2020 à 09:29
Salut,

Allô Docteur ? J'ai mal là, c'est grave Docteur ?

On n'est pas devin ;-\
Sans voir le contenu de ton script, difficile de te répondre…


0
Philippe1234
21 juil. 2020 à 10:52
Bonjour et merci pour ta réponse.

Alors j'ai trouvé pour exécuter un code, il suffit de faire "Python nom_du_fichier.py". Cela fonctionne.
Mon code n'a pas tellement d'importance puisqu'il permet juste d'exécuter une copie d'un fichier a.txt par exemple vers un fichier b.txt en y appliquant des modifications.

Ma question relève plus d'une commande Linux :)

J'ai essayé
python nom_du_fichier.py mondossier/
mais ceci ne fonctionne pas sur le "mondossier", mais sur le dossier actuel
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
Modifié le 21 juil. 2020 à 10:56
Ma question relève plus d'une commande Linux
Pas du tout ! Ça relève de la syntaxe dans ton code !
Donc, si tu ne veux pas afficher ton code, il ne reste que tes yeux pour pleurer.


D'ailleurs, je redirige ton post vers le forum adéquat :
Programmation => Python
0
Philippe1234
21 juil. 2020 à 11:34
Merci pour ton commentaire, voici une partie de mon code que j'appliquais sous Windows, celle-ci demandant à l'utilisateur de sélectionner un dossier puis un fichier et de modifier les éléments présents dans ce dossier vers le même nom de fichier mais avec une extension différentes.
Je n'arrive pas à faire cette même manip en linux malheureusement..
from tkinter import Tk
from tkinter import filedialog
import os
#######################
#C'est pour cette première partie qu'une manipulation doit être possible pour Linux j'imagine
root = Tk()
root.withdraw()

current_directory = filedialog.askdirectory()
select_file = filedialog.askopenfilenames()

file_path = os.path.join(current_directory,str(select_file))
print(file_path)
#######################
import re



dict = {'C':{'test1':'test2'},}

def find_END(line):
    if re.search(r'\bFIN\b', line):
        return True
    else:
        return False

def replacer_factory1(dictionary):
    def replacing(match):
        if len(dictionary) > 0:
            word = match.group()
            exchange = dictionary.get(word, word)
            return exchange
        else:
            return ""
    return replacing

def replacing1(text, dict):
    regex_patt_list = r'\b(?:' + '|'.join(dict) + r')\b'
    replacer = replacer_factory1(dict)
    return re.sub(regex_patt_list, replacer, text)

with open(file_path) as fin:
    with open(file_path + 'new', 'w') as fout:
        key = 0
        flag = 0
        sous_dict = dict["C"]
        cache_mem = []
        for line in fin:
            cache_mem.append(line)
            if find_END(line):
                #print(cache_mem)
                for x in cache_mem:
                    if x.strip() in dict.keys():
                        key = x.strip()
                        sous_dict = dict[key]
                    fout.write(replacing1(x,sous_dict))
                cache_mem = []

0