问题描述
在Windows 2012服务器上,有一个名为xyz.bat
的脚本
以任何可以运行它的用户身份在本地运行时,它可以正常工作。
通过以下方式在本地作为SYstem运行时:
psexec /s /i cmd.exe
它也可以正常工作。
转换为计划任务并以SYstem身份运行时,与脚本有关的所有内容都可以正常工作,除了composer install --no-dev
仍然会创建composer.lock(如果它不存在),但是不会从指定的存储库中提取文件。这是一个内部存储库,所有GIT访问均正常运行。
作为计划任务运行,其中我的用户是运行身份帐户,它也可以正常工作。
关于可能导致这种情况的任何想法?我已经准备好让管理员创建更多用户帐户来运行这些操作,但这似乎是必须做的,并且会导致维护问题。
解决方法
最终以以下方式重新执行计划的任务:
- 创建计划任务以我自己的用户身份运行
- 运行它,并验证它是否正常运行
- 清理运行时工件(删除作曲家自己做的事情)
- 更新计划任务以SYSTEM身份运行
- 通过单击运行任务(以前没有用过,但是现在可以了)