URL: https://linuxfr.org/forums/programmation-python/posts/cgi-et-commands-shell Title: cgi et commands shell Authors: dendscie Date: 2007年01月12日T15:11:58+01:00 Tags: Score: 0 Bonjour, Mon problème est le suivant : je cherche à faire une page web affichant des résultats du logiciel d'alignement de séquence BLAST. Mon script (sous apache ou sous un serveur python j'ai testé les 2) execute la commande suivante sur une séquence entrée dans un formulaire et stockée dans un fichier res = commands.getoutput("/usr/bin/blastall -i "+loc_tmp_fasta+" -p blastp -d £spaces£ £/spaces£"+db+" -m 8 -o "+loc_tmp_blast) les variables concaténée, sont les localisation des mes fichier : loc_tmp_fasta : le fichier de ma séquence requete db : la localisation de la base de donnée sur laquelle la requete est faite loc_tmp_blast : mes résultats une fois cette commande executée, je parse le fichier de résultat loc_tmp_blast à l'aide d'un parseur que j'ai codé (et qui fonctionne correctement), et print les résultats en html. Le problème est que tout semble bien se dérouler : la page s'affiche sans erreur, la variable res renvoie '0' (donc à priori pas d'erreur de blastall), les fichiers sont bien créés, mais mon fichier de resultats est vide, alors que la même commande exécutée sous l'interpreteur python, ou bien directement dans le shell, fonctionne bien et renvoi des résultats dans mon fichier loc_tmp_blast. J'ai effectué pas mal de tests, et ce n'est pas un pb de droit d'écriture Chose étrange, le script s'execute et affiche la page immédiatement (alors que le logiciel BLAST effectue des algorithmes assez lourds donc prend quand même un certain temps, de l'ordre de 5 secondes sous le shell, pour la requete de test). Pas de pb de time out, puisqu'avec une commande "sleep 100" la page ne s'affiche âs tant que les 100sec ne sont pas écoulées...

AltStyle によって変換されたページ (->オリジナル) /