[Python] leggere lo standard output di un programma esterno

Matteo Perini perini.matteo a gmail.com
Ven 1 Giu 2012 12:11:49 CEST


Il 01/06/2012 10:12, Giovanni Marco Dall'Olio ha scritto:
>
> Io non sono molto esperto di programmazione di sistema, pero mi 
> vengono in mente un paio di  modi per risolvere il problema:
>
>   * usare un .lock file, ovvero fare in modo che la applicazione crei 
> un un file temporaneo quando si avvia e che lo distrugga quando 
> termina. Per esempio, firefox usa (o usava) questo sistema.
>   * su un sistema unix, lanciare subprocess.check_output("ps aux") e 
> verificare se l'applicazione è in esecuzione
>   * forse si puó usare anche un try-except, peró potrebbe essere 
> difficile distinguere se la videocamera non risponde perché è occupata 
> o se invece non risponde perché ci sono altri problemi, e.g. non è 
> collegata.
>
> Probabilmente esistono soluzioni piú eleganti che permettono di 
> definire code di jobs ed eseguire il comando quando la videocamera si 
> libera, peró non ti saprei consigliare una libreria particolare.
>
Grazie della risposta.
Penso proverò con un file di lock però temo che avrò qualche problema a 
far "aspettare" la chiamate del processo fino a quando .lock non viene 
distrutto.
Questo pomeriggio ci provo.
Grazie mille.
Matteo


Maggiori informazioni sulla lista Python