利用脚本清理指定目录下的所有文件

前阵子帮朱工调整了扫描到文件到共享文件夹,当时朱工提出要能自动删除共享文件夹下所有文件的需求,我考虑到他的需求非常简单,我提出采用DOS批处理脚本加计划任务的方案为他解决,在计划任务内指定批处理脚本定期每天运行一次命令,批处理内容如下:

@echo off
del "C:\A SCAN\"*.* /q
del "C:\B SCAN\"*.* /q
del "C:\C SCAN\"*.* /q

这段代码非常简单,简单来说就是运行三次删除命令即可。可是到了第三天时,问题就来了,朱工发现这些共享的文件夹里不仅仅有扫描生成的文件,还有一些用户在访问共享文件夹时生成的目录,而脚本不能够达到要求,所以提出让我帮他在原有的基础上再次改进,晚上回到家时,我开始了新的编写:

@echo off
attrib -s -h -r "C:\test\"*.* && del "C:\test\"*.* /q
dir "C:\test\" /ad /b /s >a.txt
for /f  %%a in (a.txt) do rd %%a /s /q

我来简单说一下以上的脚本:首先是给C盘下test目录下所有文件重新定义权限,&&其实可以看做是回后后的下一个命令,继续之前的删除目录下所有文件,然后这里我们要用到一个就是例出test目录下所有的文件夹并把文件夹名称记录到a.txt文件中,最后是一个循环和变量,取出a.txt中的每一行为%%a然后执行rd也就是删除目录命令/s /q分别是目录下所有文件和静默执行。

经过本机测试完美达到效果,如果正常情况下那是没有错,可是我忽然想到朱工的共享目录貌似是C:\A Scan,那么目录下有空格貌似不一定行,因为从文件中取出的变量也会带空格,然后在rd执行阶段就会存在一个问题那就是rd path时空格没有加入”号,无法执行!另外也需要考虑在共享目录下也有可能生成带有空格的目录,那么也一定要加入新的变量,来达到取值的问题。也着实把自己二十年前所学的理论知识又好好挖了一遍,总算完成,脚本已经加了注释也就不多做解释,最终脚本如下:

@echo off
:删除上一次记录文件
del C:\Script\a.txt /q
del C:\Script\b.txt /q
del C:\Script\c.txt /q
:去除权限并删除目录下所有文件
attrib -s -h -r "C:\A Scan\"*.* && del "C:\A Scan\"*.* /q
attrib -s -h -r "C:\B Scan\"*.* && del "C:\B Scan\"*.* /q
attrib -s -h -r "C:\C Scan\"*.* && del "C:\C Scan\"*.* /q
:获取目录下所有子目录,并记录
dir "C:\A Scan\" /ad /b /s >a.txt
dir "C:\B Scan\" /ad /b /s >b.txt
dir "C:\C Scan\" /ad /b /s >c.txt
:从记录中删除目录下的所有目录及文件
set thestart="
set theend="
for /f "delims=" %%a in ('type a.txt') do rd %TheStart%%%a%TheEnd% /s /q
for /f "delims=" %%b in ('type b.txt') do rd %TheStart%%%b%TheEnd% /s /q
for /f "delims=" %%c in ('type c.txt') do rd %TheStart%%%c%TheEnd% /s /q
:PS:本脚本需要放在C:\Script\如果不放在该目录下,应该把前三段中目录名改成对应目录

关于软件资源类分享的免责声明:
本站为个人博客非盈利性站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并未做任何贩卖软件信息等行为,不存在任何商业目的及用途。
根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。"
您需知晓本站所有分享内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任。
如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇