我在Windows 2008 R2服务器上有计划任务。该任务包括Start In目录条目。该任务运行,它运行的批处理文件执行它应该执行的操作。当我从命令提示符运行批处理文件时,我看不到任何错误。问题是“上次运行结果”是0x1
(函数调用不正确)。
我确实一次得到了这个错误的DOS语句IF EXISTS file.txt DO (Copy file.txt file1.txt)
,它通过删除DO
语句得到纠正。当前批处理文件不会显示任何错误或警告。
为什么我会收到0x1
结果?
运行的批处理文件:
PUSHD \\JUKEBOX4\Archives\CallRecording
REM only move csv and wma together. wma should be created last.
IF NOT EXIST C:\CallRecording (MKDIR C:\CallRecording)
FOR /f %%f IN ('DIR /b *.wma') DO (
IF EXIST %%~nf.csv (MOVE /Y %%~nf.* C:\CallRecording\)
)
POPD
CD /D "C:\Program Files (x86)\Olim, LLC\Collybus DR Upload"
CollybusUpload.exe
POPD
有关预定任务设置的信息:
C:\Program Files (x86)\Olim, LLC\Collybus DR Upload\CallRecordingUploadFromH.cmd
C:\Program Files (x86)\Olim, LLC\Collybus DR Upload
历史记录屏幕,任务完成条目
“任务计划程序成功完成任务”\呼叫记录从NH“上传到门户”,实例“{1449ad42-2210-427a-bd69-2c15e35340e6}”,操作“C:\ Windows \ SYSTEM32 \ cmd.exe”返回代码1。“
任务计划程序的第一个屏幕显示“成功”的“运行结果”
答案 0 :(得分:28)
似乎很多用户都遇到了这个问题。以下是一些修复:
右键点击您的任务> “属性”> “行动”> “编辑”| 只将文件名放在“程序/脚本”下,没有引号,只有“开始时”下的目录,如上所述,再没有引号。
右键点击您的任务> “属性”> “一般” |使用以下任何/所有测试:
答案 1 :(得分:2)
我发现我已经勾选了#34;运行用户是否登录"它会返回一个无声的失败。
当我更改tick"仅在用户登录时运行"相反,它对我有用。
答案 2 :(得分:2)
我遇到了同样的问题。它只是一个批处理文件,在手动启动时工作,但不能用作计划任务。
批处理文件中有驱动器号,如下所示:
put z:\folder\file.ext
好像你不应该使用驱动器字母,它们与创建它们的用户绑定 - 对我来说这个小改动使它再次起作用:
put \\server\folder\file.ext
答案 3 :(得分:1)
这个答案最初由提问者编辑成问题。
问题是批处理文件WAS抛出了一个无声错误。最终的POPD没有做任何工作,没有打开PUSHD而被错误地调用。
代码破碎:
CD /D "C:\Program Files (x86)\Olim, LLC\Collybus DR Upload" CALL CollybusUpload.exe POPD
正确的代码:
PUSHD "C:\Program Files (x86)\Olim, LLC\Collybus DR Upload" CALL CollybusUpload.exe POPD
答案 4 :(得分:1)
Windows任务计划程序(Windows server 2008r2)
我的错误(上次运行结果:0x1)
<强>标签强>
程序/脚本
和
从
开始
即使路径名中有空格......
以最高权限运行
和
为您的操作系统配置...
现在可以了!
上次运行结果:操作成功完成
答案 5 :(得分:0)
我发现问题与Powershell无法运行脚本有关,如果是这种情况,here就是解决方案。
答案 6 :(得分:0)
我在任务调度程序中运行了一个PowerShell脚本,但我忘了在一个提升的PowerShell控制台中启用执行策略不受限制:
Set-ExecutionPolicy Unrestricted
之后,错误消失(0x1)。
答案 7 :(得分:0)
在我们的服务器上,这是系统路径的问题。升级PHP运行时(使用其名称包含版本号的安装目录)并更新系统变量PATH
中的路径后,我们获得状态0x1
。系统重启纠正了该问题。重启Task Manager
服务也可能已经完成了。
答案 8 :(得分:0)
对于Powershell脚本
在多个Windows服务器上使用参数调度Powershell脚本时,我多次遇到此问题。 解决方案一直是使用-File参数:
排程愉快!
答案 9 :(得分:0)
这里也有同样的问题。就我而言,蝙蝠文件的空格为“” 删除文件名中的空格并更改为下划线后,bat文件起作用了
无法开始采样
“ x:\ Update&pull.bat”
重命名后
“ x:\ Update_and_pull.bat”
答案 10 :(得分:0)
就我而言,这是一个编码问题。我们想启动现有的批处理文件,结果是“返回代码 1”,并且没有执行所需的操作。我偶然发现批处理文件在记事本中显示为 UTF-8 编码(实际上没有任何原因,因为我们在文本中没有特殊字符)。我把它保存为ANSI,它为我们解决了问题。可能是文件中的一种编码损坏导致 Task Scheduler 和 cmd.exe 无法打开该文件,尽管它在记事本中可以正确显示。
答案 11 :(得分:-1)
事实证明,使用winscp的FTP下载调用作为批处理中的最后一件事导致了问题。插入echo命令后,它工作正常。猜猜问题源可能是winscp.exe,它没有正确地向操作系统报告当前任务的结束。
del "C:\_ftpcrawler\Account Export.csv" /S /Q
"C:\Program Files (x86)\WinSCP\WinSCP.exe" /console /script="C:\_isource\scripte\data.txt"
echo Download ausgeführt am %date%%time% >> C:\_isource\scripte\data.log