hi,
How can I know if a script is launched interactively or not because I'd like to make a script verbose or not depending if it is executed as interactive or not.
eg.
If I invoke it in a shell.. then it can be verbose
If it is launched from a crontab.. then it is less verbose.
Ced.
If you want to know if your program has been launched from an interactive terminal or from a system background process like cron or init, then you look to see if stdin is a tty. Unix is usually very careful about who has a "controlling tty" and who does not. In Python, file objects have an isatty() method that will return True or False.
import sys
isinteractive = sys.stdin.isatty()
if isinteractive:
...
else:
...
How you make a program this way manually (i.e. to make a program into cron) is slightly more complicated, but still all the tools are there in Python.
-Arcege
--
There's so many different worlds,
So many different suns.
And we have just one world,
But we live in different ones.
_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor