10
votes

Script Python exécuté avec Makefile

J'écris des scripts python et je les exécute dans un makefile. Le script Python est utilisé pour traiter les données dans un pipeline. J'aimerais que Makefile exécute le script à chaque fois que je modifie mes scripts Python.

Quelqu'un a-t-il une idée de la façon de faire cela?


0 commentaires

3 Réponses :


20
votes

Ce n'est pas beaucoup d'informations, alors cette réponse est un peu vague. Le principe de base des maquillages consiste à énumérer des dépendances pour chaque cible; Dans ce cas, votre cible (appelons-le foo) dépend de votre script Python (appelons-le do-fooo.py):

foo: do-foo.py
    python do-foo.py > foo


2 commentaires

Je n'ai pas défini la dépendance à mes fichiers .PYPY correctement dans mon script. Merci


En tant que note, même si la question est effectivement résolue, j'aimerais développer cette réponse. Vous pouvez également définir la compilation ByTecode en tant que cible à l'aide des invocations de Python -M compileall pour produire la cible pyC / pyo fichiers.



0
votes

Si vous voulez que Makefile soit automatiquement "faite" immédiatement après l'enregistrement, pyinotify < / a>, qui est une enveloppe pour inotify , pourrait être la seule possibilité sous Linux. Il enregistre au noyau de détecter les modifications de FS et appelle votre fonction.

Voir mon Poste précédent sur ce sujet.


1 commentaires

bon à savoir! Mais je pense que ma question était un peu difficile, elle était plus une question de fabrication. Merci quand même!



4
votes

Et dans le cas où les scripts qui doivent être exécutés ne produisent aucun fichier de sortie utile pouvant être utilisé comme cible, vous pouvez simplement utiliser une cible factice: xxx


0 commentaires