2011-08-09 4 views
0

Comment puis-je rediriger ma sortie de script Python vers l'une des fenêtres de terminal ouvertes sous Ubuntu? Le script est engendré par la règle de filtrage KMail.Comment rediriger la sortie du script Python vers le terminal

+0

Êtes-vous parler sur les terminaux virtuels ou sur les fenêtres de terminal dans X (similaire à xterm)? –

+0

Parler de terminal dans X, que j'ouvre en exécutant l'application de terminal à partir Applications-> Accessoires. – Pablo

+3

La solution typique (à ce que je pense est votre problème sous-jacent) consiste à ajouter le script à un fichier journal sur le disque, puis utiliser 'tail -f' sur le fichier journal dans une fenêtre de terminal lorsque vous voulez regarder des choses (presque) en temps réel. Vous voudrez faire pivoter les fichiers journaux de temps en temps. –

Répondre

1

Création d'un simple serveur socket serait une méthode ... Mais je serais probablement utiliser fifos:

$ mkfifo /tmp/my_fifo 
$ cat producer.py 
f = open("/tmp/my_fifo", "w") 
f.write("hello, world!\n") 
f.close() 

Ensuite, vous pouvez lire de l'aide cat /tmp/my_fifo

Ou un simple fichier journal:

$ cat producer.py 
f = open("/tmp/my_log", "a") 
f.write("hello, world!\n") 
f.close() 

Ensuite, vous pouvez en lire en utilisant tail -f /tmp/my_log

+0

'os.mkfifo()' existe, donc votre premier exemple pourrait inclure cela. – glglgl

+0

C'est très vrai - je ne l'avais pas envisagé. –

Questions connexes