使用.bat文件在每天早上6点自动运行Stata时遇到问题。
.bat文件只是:
Start /W "" "C:\Program Files (x86)\Stata13\StataMP-64.exe" do "C:\Users\Daniel\Documents\Reportes\Reportes v3.do"
这个调用的do文件"报告v3.do",包含一系列全局目录,然后运行其他do文件中的四个任务:
cd "C:\Users\Daniel\Documents\Reportes\Do files v3"
do "Task 1.do", nostop
do "Task 2.do", nostop
等
手动运行,.bat文件正常运行。问题是当我在任务计划程序中将其添加为任务时,do文件会挂起某些估计命令。到目前为止,我已经在Stata的-alpha-和-xtreg-命令中遇到了这个问题。
具体来说,任务管理器显示Stata仍在运行并且数据已加载到内存中,但日志文件不会显示更多输出,数据库也不会更新。同样,Stata不允许我对.bat文件直接调用的do文件或第一个do文件中调用的do文件进行任何更改。如果我删除这些特定的估计命令,一切运行正常。
Stata窗口也没有出现,我想是因为它是作为后台任务运行的。另一个区别是,当从任务计划程序手动运行时,.bat文件在do文件运行时显示为Running,但是当自动运行时,它没有。
添加 - / HIGH-之后-Start-没有解决问题。禁用防病毒或创建四个.bat文件也不能单独运行每个任务。在.bat文件的末尾添加日志也不会显示任何内容。
这是我在批处理模式下工作的第一次经历,所以非常感谢任何帮助。
答案 0 :(得分:0)
最后找到了其他用户可能感兴趣的这个问题的答案。
由于我不太明白的原因,只有当用户启动了会话并且未选中管理员权限框时,才需要将任务设置为运行。否则,显然Windows会在一个单独的会话中运行任务,而这一点会导致我提到的问题。
如果有人对此为何会有一个很好的解释,请分享。但至少这解决了这个问题。