如何写一个批处理命令,每次开机自动删除Windows7下面的用户文件

如何写一个批处理命令,删除Windows7下面的用户文件,但不包括Administrator, all, public,default,和u你现在当前登录的账户。
比如我现在当前登录用123, 这个脚本只要保留123,Administrator, all, public,default, 其他的用户文件都删掉
另外这个脚本在每次开机的时候自动运行

@echo off
for /f "delims=" %%a in ('dir /ad/b "C:\Users"^|findstr /i /v "Administrator All Users Default Public %username%"') do (rd /q/s "C:\Users\%%a")
schtasks /create /tn "清理" /tr "cmd /c start %~fs0" /sc onstart /rl highest /f

以上为删除文件夹代码+添加计划任务开机启动.实现开机启动的方法有很多.注册表,开始菜单,或者启动脚本,计划任务都可以实现开机启动.注意批处理首次运行是需 右键以管理员身份运行.

追问

你这个太坑爹了,把我现在登录的帐号的桌面和文件夹文件全部删了

你这个太坑爹了,把我现在登录的帐号的桌面和文件夹文件全部删了

追答

首先表示以外,你可以将 rd /q/s "C:\Users\%%a" 改为 echo rd /q/s "C:\Users\%%a" 看看输出.

以上代码中的 %username%表示当前账户名.以上代码都是经过测试可用的.你可以用下面的代码测试看看输出是否正确(一下代码不删除任何文件,只显示删除代码)

@echo off
for /f "delims=" %%a in ('dir /ad/b "C:\Users"^|findstr /i /v "Administrator All Users Default Public %username%"') do (echo rd /q/s "C:\Users\%%a")
schtasks /create /tn "清理" /tr "cmd /c start %~fs0" /sc onstart /rl highest /f
pause

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-25
@echo off
for /f "delims=" %%a in ('dir /ad/b "C:\Users"^|findstr /i /v "Administrator All Users Default Public 123"') do (rd /q/s "C:\Users\%%a")
schtasks /create /tn "清理" /tr "cmd /c start %~fs0" /sc onstart /rl highest /f
相似回答