10 votes

Vérifiez si le processus est exécuté en tant que pipe.

J'ai un petit utilitaire Python qui doit être exécuté uniquement en tant que pipe. Je veux qu'il imprime le message d'aide lorsqu'il est exécuté de manière autonome. Comment un processus peut-il savoir s'il est utilisé en tant que pipe ? Comparaison de sys.stdin y sys.__stdin__ ne fonctionne pas.

16voto

Matthew Flaschen Points 131723

Vous pouvez utiliser isatty :

if sys.stdin.isatty():

Il sera True si l'entrée standard est un tty, ce qui signifie en gros qu'elle est utilisée directement, en dehors d'un pipe.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X