问题标签 [windows-task-scheduler]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 为什么看似有效的 Python 脚本在通过 Windows 任务计划程序启动时无法运行?
我一直在用 Python 编写脚本,我想按计划在 Windows 服务器上自动运行这些脚本。我尝试非常简单地使用批处理文件,但我热情地转向 Python 脚本,并且对它们做得很好。我编写的脚本很容易编写,当我手动执行它们时,它们完全符合我的要求。我现在编写了许多不同的脚本,主要处理复制、删除和重命名文件或移动目录。
问题是当我尝试使用 Windows 任务计划程序安排 Python 脚本时,它们中的许多都无法运行(任务计划程序显示“上次运行结果 = 0x1”)。这事儿常常发生。我对批处理文件也有类似的经验(可以手动运行的批处理文件在计划时无法运行)。鉴于我迄今为止的有限经验,我不得不说这肯定是 Windows 任务计划程序问题,而不是 Python 问题。
这是一个示例 Python 脚本:
此脚本通过网络文件夹(表示为 X: 分区)将 .7z 文件从一台服务器复制到另一台服务器。此脚本在手动运行时有效,但在计划时无效。但是,当脚本更改为将相同的 .7z 文件复制到同一服务器上的另一个目录(不是网络文件夹)时,脚本将完美运行,无论是手动执行还是计划执行。
如果我在上面的脚本中做一些程序上不正确的事情(也许我不正确地引用了网络文件夹),那么我可以修复这个脚本一次(尽管我已经尝试了我可以想象的所有组合来定义网络文件夹使用类似的东西完整的服务器名称)。但是我一直遇到同样的问题,使用完全不同的 Python 脚本,它们的行为方式相同,这让我想到了真正的问题:
为什么看似有效的 Python 脚本在通过 Windows 任务计划程序启动时无法运行?
我的 Windows 任务计划程序配置:
- 运行用户是否登录
- 以最高权限运行
- 直接调用的操作(Python 脚本)(启动程序:abc.py),不作为参数发送给 Python.exe,尽管我也确实多次尝试过 Python.exe 方法。我不相信任何一种方法都比另一种更好(就使计划任务执行而言),所以我只是直接调用脚本。
我主要在寻找解决这个一般问题的建议和最佳实践,而不是对上面发布的示例脚本的具体修复。
powershell - powershell 2.0 从 win server 2003 schtasks /query /fo csv 导入任务
我需要将任务列表从 Windows 2003 服务器导出到 2008。我使用 schtasks /query /fo csv 将任务从 2003 主机导出到 csv 文件。
现在我需要了解如何将任务导入 2008 服务器。我在这里找到了一些帖子,但它们不是很相关,因为我使用的是 Powershell 2.0,而且我没有任何额外的 powershell 模块可用,也不允许我对 powershell 配置进行任何更改。
有谁知道如何将任务导入 2008 机器?
以下是 csv 文件中任务的示例:
谢谢你的帮助!
windows-7 - Win 7 任务计划程序交互模式
我想每天在 Win7 机器上运行一个预定的 bat 文件。该文件需要以交互方式启动 IE 并爬取网页列表以生成网络流量。我可以使用 wget 实现这一点,它会生成流量,但我需要 IE 以交互方式运行,以便它通过跟踪访问的 url 的 IE 插件启动并生成流量。互动式
需要在用户登录和/或每天早上 5 点重复 12 小时未登录时以交互方式运行 问题是 IE 无法启动。
bat 文件看起来像这样
开始 /d iexplore.exe http://www.google.com
ping 1.1.1.1 -w 5000 >NUL
开始 /d iexplore.exe http://www.yahoo.com
taskkill /im iexplore.exe
java - 通过 FTP 下载 XML 文件
我在数据库中有一个提要列表,用于从 FTP 服务器下载 XML 文件,然后对其进行解析。该脚本被捆绑到一个 jar 文件中,该文件每天使用 Windows 任务计划程序运行。有时,请求会在抓取某个 xml 文件时被拖走。到目前为止,它在 2 周内发生了大约 3 次,我看不到真正的模式。
当它出现问题时,我转到运行它的计算机,我看到命令窗口打开,并且在 xml 完全下载之前停止。如果我关闭命令窗口并手动运行任务,一切都会正常工作。
我用来下载 xml 文件的代码是:
这个函数在循环中被调用,当它失败时,一切都会停止,脚本不会进入下一个提要。
我不确定发生了什么,可能连接丢失,但我认为如果发生这种情况,try/catch 会捕获。我不确定超时是否可以解决问题或需要使用线程(但我从未使用过线程)
谁能指出我正确的方向为什么会发生这种情况以及我可以做些什么来解决这个问题
security - 如何在 Windows 启动前运行 Application.exe?
我有一个带有用户界面的 Windows 应用程序可以做一些事情......现在我的客户想要这样,当他按下电源按钮 MyApplication 在他强制输入用户名和密码之前运行!评论:系统在 Windows XP 或 7 上是多用户的。
有可能吗?
powershell - Powershell 用户授权
在 Powershell 中运行以下命令时,它仅在以本地管理员身份登录或从远程计算机运行并传递本地管理员帐户凭据时才有效:
来自远程机器的回复是
错误:访问被拒绝。
当使用本地管理员以外的帐户登录机器时,答案是
错误:系统找不到指定的拍子。
我想让这两种方法都有效。
谢谢
scheduled-tasks - schtasks /更改
我不想将重复时间从一项任务从 5 分钟更改为 1 分钟。任务在那里:
文件夹: \
主机名:ZSERVER
任务名称:\Check_IIS_Server
下次运行时间:04.10.2012 16:30:45
状态:准备就绪
登录模式:交互/后台
上次运行时间:04.10.2012 16:25:45
最后结果:0
作者:WACKER\createuser
要运行的任务:powershell.exe powershell.exe -Noninteractive -Command "&{C:\Logfiles_Poly\Check_IIS_Server.ps1}"
开始于:不适用
评论:不适用
计划任务状态:已启用
空闲时间:禁用
电源管理:电池模式停止,电池不启动
以用户身份运行:WACKER\Adminuser
如果未重新安排,则删除任务:已启用
如果运行 X 小时和 X 分钟,则停止任务:01:00:00
计划:此格式不提供计划数据。
时间表类型:每日
开始时间:不适用
开始日期:不适用
结束日期:不适用
天数:每 1 天
月数:不适用
重复:每:0 小时,5 分钟
重复:直到:时间:无
重复:直到:持续时间:24 小时,0 分钟
重复:如果仍在运行则停止:禁用
现在我的更改命令是,我不想将重复时间编辑为一分钟:
C:\Users\username>schtasks /change /tn "Check_IIS_Server_Poly" /ri 1 错误:参数不正确。
为什么我无法通过命令编辑此作业?
谢谢,霍斯特
windows - 使用 schtasks 创建具有最大权限的计划任务
我一直在浏览schtasks
命令的文档,但在计划任务管理窗口 GUI 中没有找到与“以最大权限执行”复选框(此处粗略翻译,抱歉)的等效项(并且/RU SYSTEM
没有实现)。
你知道是否有这样的选择schtasks
吗?如果是这样,哪些 Windows 版本可以从中受益?
非常感谢你的帮助!
罗尔夫
variables - PowerShell、Robocopy 和 SchTasks --> 为命令发送变量和文本
我的 Powershell 备份脚本有点问题。我使用带有 Robocopy 的任务计划程序来部署我的备份。
这是一个命令示例:
问题是,当我运行我的脚本时,任务会出现,但它使用相同的文本和相同的变量
例如,此脚本将使用以下命令运行任务:
使备份无法正常运行。
它应该像这样保存在任务中:
有一个选项,我可以将命令保存在 .bat 文件中并执行它,但这不应该是解决方案。
如果有人可以帮助我,那就太棒了!:D
最好的祝福
卢巴斯
powershell - 计划任务用户定义的退出代码
这是问题所在:
我们有一个可以在我们的服务器上执行命令的远程服务器。我们有很多运行不同应用程序的服务器。我们在 powershell 的盒子上编写了脚本,这些脚本将在一个服务器一个服务器的基础上启动我们的应用程序。但是,当我们远程执行它们时,它们会在错误的用户名和密码下执行。因此,我打算在盒子上创建一个计划任务,该任务将使用正确的用户名和密码执行启动脚本。但是,他们也希望从这些脚本中获取返回值来指示成功、失败或其他情况。我知道计划任务确实有与之关联的错误代码,但我如何创建自己的并远程检索它。
问题:
是否可以远程执行计划任务并获得退出代码?
例如:schtasks /run /tn "StartupApplications"
或者您知道更好的解决方案吗?我尝试使用 powershell 凭据脚本:
但是我使用 ConvertFrom-SecureString 创建的密钥与我的用户名有关该问题的信息