Bonjour à tous,
J'ai un programme python qui me fait du traitement d'image et je souhaite automatiser un peu tout ça puisqu'un traitement dure à l'heure actuelle une vingtaine de minutes.
J'ai utilisé GNU Parallel pour me permettre d'avoir quelque chose du genre
Ce qui me permet de lancer mon programme sur tous les fichiers tif du folder.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 parallel "monprogramme --option1 --option2 --option3=2" ::: *.tif
Maintenant le problème c'est que pour un seul fichier je souhaite modifier la valeur d'option3 et enregistrer tout ça dans des dossiers séparés.
J'ai déjà essayé pas mal de choses:
Ceci ne fonctionne pas il n'enregistre pas les outputs dans le bon dossier du coup chaque output écrase l'ancien dans le répertoire courant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 parallel -- results outputdir "monprogramme --option1 --option2 --option3={.}" ::: {1.10}
J'ai pensé mettre tout ceci dans une grosse boucle en faisant un parallel d'un for mais j'ai peur que ce soit compliqué et inutile. J'ai aussi envisagé quelque chose comme
mais ça me parait complètement stupide même si ça permet peut-être de bien voir ce que je souhaite faire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 parallel --results outputdir "mkdir output{} | cd output{}/ | monprogramme --option1 --option2 --option3={} | cd .."
J'ai tenté également avec un mv après le code dans parallel mais je ne sais pas si c'est utile, j'ai peur qu'il y ait une différence entre l'itération réelle et celle du calcul parallèle.
Si quelqu'un connait un petit GNU parallel ou même les script shell je suis preneur.
Merci !
Partager