批处理文件 ren 命令访问被拒绝,但当我自己键入时有效

Posted

技术标签:

【中文标题】批处理文件 ren 命令访问被拒绝,但当我自己键入时有效【英文标题】:Batch file ren command access denied, but works when I type it myself 【发布时间】:2021-04-26 01:54:55 【问题描述】:

我有一个批处理文件,它从 Windows 存储其锁定屏幕图像的位置复制文件并将它们放入我自己的个人文件夹中,然后将它们重命名为 .jpg 以便我可以将它们用作我的活动桌面背景,但对于某些“ren”命令停止工作(拒绝访问)的原因。但是,如果我自己打开命令提示符并键入命令,它就可以工作。

无论我是否打开最终目标文件夹,我都会得到相同的结果。我也试过以管理员身份运行批处理文件,它没有改变任何东西。

我的代码如下。为了进行故障排除,我添加了两个超时命令,这样它会在几个步骤后停止,让我看看发生了什么。批处理文件保存在这里:“C:\Users\Adam\Desktop”

xcopy "C:\Users\Adam\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalState\Assets" "D:\Users\Adam\Pictures\Spotlight" /y
d:
cd D:\Users\Adam\Pictures\Spotlight
timeout /t 5 /nobreak
ren *.* *.jpg
timeout /t 30 /nobreak

提前致谢!

【问题讨论】:

CD 需要开关 /D 来更改根目录。 对不起,我不明白你的评论(可能是因为我是新手)。我打开一个 cmd 提示符并从 C:\Users\Adam 开始,如下所示(在“>”之后使用我的命令)C:\Users\Adam>d:D:\>cd D:\Users\Adam\Pictures\SpotlightD:\Users\Adam\Pictures\Spotlight> 然后,批处理文件 ren 命令访问是被拒绝,而如果我自己输入它就可以了。 我看不出你为什么不能只使用一个命令Copy /Y "%LocalAppData%\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalState\Assets\*" "%UserProfile%\Pictures\Spotlight\*.jpg"。如果你的位置真的在D:,那么Copy /Y "%LocalAppData%\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalState\Assets\*" "D:\Users\Adam\Pictures\Spotlight\*.jpg" 是的,有效。我将其更改为 xcopy "C:\Users\Adam\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalState\Assets" "D:\Users\Adam\Pictures\Spotlight\*.jpg" /y 但这只是一行 - 谢谢!您可以将此作为答案发布,以便我将其标记为完整吗? 【参考方案1】:

我看不出你为什么不能只用一个命令来做到这一点。

这个使用用户配置文件目录的标准位置作为目标:

Copy /Y "%LocalAppData%\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalState\Assets\*" "%UserProfile%\Pictures\Spotlight\*.jpg"

如果您的位置确实在D: 驱动器中,那么:

Copy /Y "%LocalAppData%\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalState\Assets\*" "D:\Users\Adam\Pictures\Spotlight\*.jpg"

我在这两个示例中都使用了内置的copy 命令,为此使用已弃用的xcopy.exe 实用程序没有任何好处,因为您没有使用它的任何可选功能。

【讨论】:

是的,我不确定我是否需要它仍然是 xcopy,但很高兴它现在可以在一行中工作!谢谢!也不知道为什么访问被拒绝,以防用户也关心被回答(我不打算详述)

以上是关于批处理文件 ren 命令访问被拒绝,但当我自己键入时有效的主要内容,如果未能解决你的问题,请参考以下文章

Runas命令拒绝访问

同一域的 IE9 中的 Script5 访问被拒绝

使用传单和本地主机拒绝位置访问

尽管获得了完全许可,但 aws iam 用户访问被拒绝

托管到IIS后无法启动浏览器访问被拒绝

为啥当我尝试移动目录时访问被拒绝?