6

我一般不写batches,但我目前有一个batch用于forfiles将我的 FLV 从一个文件夹复制到另一个文件夹。当我手动运行批处理时,它每次都有效,但是从计划的任务中,它会引发(0x1)错误。

forfiles -p "C:\Program Files\Adobe\Flash Media Server 4.5\applications\name\streams" -m *.flv -s -d -1 -c "cmd /c copy @file ^0x22C:\Program^ Files\Adobe\Flash^ Media^ Server^ 4.5\applications\name\output\"

不确定计划任务不喜欢什么语法。

更新

在我的计划任务下,我有以下操作:

Program/script:  name.bat
Start in (optional): \\servername\file\to\batch
4

7 回答 7

8

嗨,这可能有帮助,我也面临同样的问题。只需设置 startin 路径,如:

在此处输入图像描述

这里 start in path 是批处理文件的路径:就像您在程序脚本中输入:“E:\program related files\demo.bat”然后在 startin 中通过:E:\program related files & 完成!

谢谢

阿伦·夏尔马

于 2016-04-26T03:55:53.547 回答
4

当我的Start in (optional):路径是 UNC 路径时,它不起作用。所以我把我的批次移到服务器上,一切正常。

Windows 批处理文件中的 UNC

具有 UNC 路径的文件

于 2012-09-20T13:43:56.793 回答
2

请参阅下面的屏幕截图。您需要将用户更改为系统在此处输入图像描述

于 2014-09-29T07:08:51.010 回答
1

在 Server 2008 R2 上,在域用户凭据下运行批处理文件时,在本地安全策略>本地设置>用户权限分配中确认“作为批处理作业登录”安全性,即使是我的批处理(将日志文件复制到网络共享)不会按计划任务运行,直到我在选项卡常规中选择选项“以最高权限运行”(默认未选中!)还选择了无论用户是否登录都运行选项,带有单选按钮,但我猜测这是非常标准的,选择使用域用户帐户运行任务。

对于选项卡操作:直接在“程序/脚本:”中指定整个批处理文件名(包括其路径)可以正常工作(使用 Server 2008 R2) 在批处理文件中使用双引号不会导致任何问题。

于 2014-01-13T09:54:47.123 回答
0

此类问题的最常见原因是权限:计划任务并不总是使用您的用户凭据运行。如果您希望计划任务以您的身份运行,必须将其设置为或替代用户。

除此之外,我希望您的代码行是批处理文件的内容,您不要尝试直接运行此命令。还是你?

PS这些是什么,在你的代码中做什么^0x22^

于 2012-09-20T13:14:52.643 回答
0

我知道这是一个老问题,但只是想分享一些信息。

( 0x01)错误代码也可以引用未找到的资源。所以:

  • 批处理文件中引用的所有文件/文件夹都应该可供用户使用哪个帐户来运行该计划任务;
  • 使用网络位置时要注意结合“无论用户是否登录都运行”选项;
  • 上述选项可能很难使用,因为某些资源可能仅在登录后才可用。
于 2013-07-19T02:45:12.120 回答
0

要在计划任务中运行 .bat 文件,您需要在 start 选项中指定 .bat 文件路径 - 尽管 .bat 文件与 .exe 位于同一目录中。此外,我将其标记为以最高权限运行。做完这两件事后,任务突然起飞,没有任何问题!

windows计划任务图片

于 2017-11-08T22:11:50.397 回答