在 Batch 而不是 PowerShell 中执行相同的任务:迭代所有用户并找到 %temp% 文件夹以删除其中的文件



我有一个这样的Powershell脚本:它删除C:\users\%user1,2,3...etc%\temp中的任何文件或文件夹。它会遍历用户文件夹中的每个用户,并找到它是否有临时文件夹,然后删除里面的内容。

我需要知道在 Batch 中执行此操作以避免兼容性问题的最佳方法是什么?

$users = Get-ChildItem C:Users
foreach ($user in $users){
$folder = "$($user.fullname)AppDataLocaltemp"
If (Test-Path $folder) {
Get-ChildItem -Path $folder -Include * | remove-Item -recurse 
}
}

可以在批处理文件中执行以下操作,以遍历 C:\USERS 并删除 TEMP 文件夹中的项目:

for /d %%F in (c:users*) do del "%%Fappdatalocaltemp*" /s /q

如果在命令行中运行此功能,请仅使用百分号,将其用作批处理文件时,请使用百分号。

此命令循环遍历 C:\USERS 中的所有目录,然后使用静默和递归参数对 AppData\Local\Temp 文件夹运行 DEL。 这假定您的用户配置文件存储在 C:\USERS 中,如果您有理由需要在任何地方查找配置文件,则需要调整批处理文件以首先从注册表中查找配置文件路径。

与在线找到的所有代码一样,请在生产环境中运行之前进行测试。

最新更新