大家好, 小弟学艺不精.. 有如下需求请大侠帮忙.
需求: 在多用户登录的电脑上, 能删除Win7每个用户文件夹下的缓存文件. 以下是我写的代码, 遇到错误, 请大家指正. 谢谢
#1, 脚本需要遍历 C:\users\
#2, 判断 C:\Users\xxxx\AppData\Local\Microsoft\outlook\ 文件夹下是否存在 outlook.ost 和 *.pst文件.
#3, 如果存在, 并且删除掉.
#4, 再循环 判断和删除下一个用户文件夹的 邮件缓存文件.
#5, 对删除成功的文件记录到文本日志文件.- @echo off
-
- ::枚举用户文件夹名字写入list.txt
- dir /ad /b c:\users > list.txt
-
- Set RootFolder = C:\Users\
- Set SubFolder = \AppData\Local\Microsoft\Outlook\
-
- echo %RootFolder%
- echo %SubFolder%
-
- ::读取list.txt 连接成绝对路径
- for /f %%i in (list.txt) do (
- echo %RootFolder% & %%i & %SubFolder%
-
- :: 连接成为绝对路径, (路径显示不正确.)
- Set MyPath = %RootFolder% & %%i & %SubFolder%
-
- ::判断路径是否存在, 如果存在就做删除操作.
- if exist %MyPth% (del /s /f %MyPath%outlook.ost)
-
- )
- PAUSE
复制代码 运行结果:
ECHO is off.
ECHO is off.
The syntax of the command is incorrect. |