¿Cómo puedo saber si STDIN está conectado a un terminal en Perl?¿Cómo puedo saber si STDIN está conectado a un terminal en Perl?
7
A
Respuesta
11
if (-t STDIN) {
# stdin is connected
} else {
# stdin is not connected
}
por lo general yo uso esto en conjunto con -t STDOUT, para averiguar si estoy corriendo de un shell interactivo, o desde cron, para permitir una mayor producción.
0
Una solución sería utilizar TTY:
[[email protected]] ~> tty
/dev/pts/0
[[email protected]] ~> echo y | tty
not a tty
Pero no muy bonita ...
11
También podría estar interesado en IO::Interactive de averiguar si Perl piensa que está interactuando con un usuario. Simplemente estar conectado a un tty no significa que el usuario va a ver lo que haces.
Cuestiones relacionadas
- 1. ¿Cómo puedo detectar si stdout está conectado a un tty en Perl?
- 2. ¿Cómo saber a qué puerto está conectado un dispositivo USB?
- 3. ¿Cómo puedo saber si mi iPhone/iPad está conectado a 2G o 3G?
- 4. ¿Cómo puedo detectar si sys.stdout está conectado al terminal o no?
- 5. ¿Cómo puedo saber si un archivo está en un sistema de archivos remoto con Perl?
- 6. Cómo saber quién está conectado a SQL Server
- 7. ¿Cómo puedo saber si un script Perl se está ejecutando en contexto CGI?
- 8. ¿Cómo puedo verificar si un dispositivo Android está conectado a la web?
- 9. ¿Cómo puedo verificar si un filehandle está abierto en Perl?
- 10. ¿Detecta si un usuario web está actualmente conectado a Google?
- 11. ¿Cómo saber si mi DirectoryEntry está realmente conectado a mi directorio LDAP?
- 12. ¿Cómo puedo saber si un proceso se está ejecutando?
- 13. Detectar en C si se está enviando a un terminal
- 14. ¿Cómo saber con Objective-C si el iPhone está conectado a una red wifi?
- 15. ¿Cómo puedo saber si un secuenciador está cerrado?
- 16. ¿Cómo puedo saber si un cliente web está bloqueando anuncios?
- 17. ¿Cómo puedo saber si mi script de Perl se está ejecutando en Windows?
- 18. ¿Cómo puedo saber si un niño pide stdin? ¿Cómo le digo que deje de hacer eso?
- 19. ¿Cómo verificar si un socket está conectado/desconectado en C#?
- 20. Determinar en script php si está conectado a internet?
- 21. ¿Cómo puedo verificar si un módulo Perl está instalado?
- 22. ¿Cómo saber qué proceso (stat: T) está conectado por gdb?
- 23. Cómo saber si un actor está inactivo
- 24. ¿Cómo puedo saber si la pantalla está activada en Android?
- 25. ¿Cómo comprobar si el usuario está conectado a internet wp7?
- 26. ¿Cómo puedo probar STDIN sin bloquear en Perl?
- 27. ¿Cómo se puede saber si la sesión de la terminal actual está en la pantalla GNU?
- 28. ¿Cómo puedo saber si la cámara está en uso?
- 29. backbone.js - manejo si un usuario está conectado o no
- 30. ¿Cómo puedo saber si un entero Java es nulo?
Esto tampoco es portátil. –