我希望我的脚本具有两种行为,一种是作为计划任务启动时的行为,另一种是手动启动时的行为。如何测试交互性?
编辑:这可以是cron作业,也可以通过计划任务通过Windows批处理文件启动。
我希望我的脚本具有两种行为,一种是作为计划任务启动时的行为,另一种是手动启动时的行为。如何测试交互性?
编辑:这可以是cron作业,也可以通过计划任务通过Windows批处理文件启动。
你应该在计划任务中添加一个命令行开关,并在脚本中检查它,根据需要修改行为。显式比隐式更好。
这种设计的一个好处是:无论如何调用脚本,你都可以测试两种不同的行为。
如果您想知道是否从终端读取(不确定是否足够区分,请澄清),您可以使用以下方法:
sys.stdin.isatty()
import sys
if "-scheduled" in sys.argv:
#--non-interactive code--
else:
#--interactive code--