批处理脚本无法在计划时访问远程驱动器

时间:2014-08-13 13:43:02

标签: file batch-file scheduled-tasks

我有一个简单的批处理脚本,可以从映射到本地计算机上的Sharepoint驱动器本地复制文件。这在手动运行时运行正常,但在使用任务调度程序运行时,似乎脚本根本无法访问驱动器。即使是简单的DIR打印输出也会失败。同样值得注意的是,设置为在调度程序中运行脚本的用户拥有所涉及的所有内容的完全权限,并且是用于手动运行它的帐户。

计划任务的几个设置:

  • 设置为运行用户是否已登录
  • 以最高权限运行

知道如何在调度程序中使用它吗?

修改 脚本和任务运行历史的屏幕截图 http://imgur.com/a/wCsET

编辑2

callCopyFiles.bat

del "C:\apache\htdocs\IESite\Reports\*.*?"
FOR /f "delims=" %%L in (directorylist.txt) do (
    echo %%L >> log.txt
    CALL copyfiles.bat "%%L"
)

copyfiles.bat

FOR /F "delims=" %%I IN ('DIR %1 /s /b /O:-D') DO (
    COPY "%%I" "C:\apache\htdocs\IESite\Reports"
    goto :end
)
:ender

1 个答案:

答案 0 :(得分:0)

我的怀疑是callCopyFiles.bat中的这一行:

CALL copyfiles.bat "%%L"

失败,因为当批处理文件作为计划任务运行时,当前目录不同。

尝试更改此行以列出完整路径...类似于:

CALL C:\YourFolderHere\copyfiles.bat "%%L"

修改

根据评论,我认为您可能需要在Z:文件中映射copyfiles.bat驱动器。

编辑2

映射驱动器时不要指定凭据。

只需将NET USE Z: \\YourServer\ShareName添加到copyfiles.bat文件。