任务计划程序有问题 运行 CMD 文件在 运行 手动时工作

Task Scheduler Having Issues Running CMD file that works when its run manually

我有一个脚本可以删除我的 Epson Scans 文件夹中的所有文件。如果我 运行 手动编写脚本,它就可以完美运行。但出于某种原因,如果我在任务计划程序中设置任务,它不会删除文件吗?有谁知道为什么会这样?

注意:pclist.txt只是电脑名称列表

@echo off

for /F %%G in (pclist.txt) do ( 

pushd "\%%G\C$\Epson Scans" || exit /B 1
for /D %%I in ("*") do (
    rd /S /Q "%%~I"
)
del /Q "*"
popd

)

您确定文件 pclist.txt 位于 'probably' 目录 \Windows\system32 中吗?

当运行作为计划任务时,当前目录不一定是运行作为用户时使用的目录。

实现这一点的最简单方法是将完整路径放在括号内或在 @echo off.

下方添加以下行
IF "%CD%\" NEQ "%~dp0" PUSHD "%~dp0"