linqy的个人博客分享 http://blog.sciencenet.cn/u/linqy

博文

利用.bat删除文件以及解决中文字符串的问题

已有 5329 次阅读 2019-3-6 10:44 |系统分类:科研笔记

一、删除文件

rem 删除D:\temp目录下7天前的文件
Forfiles /p D:\temp /s /d -7 /m *.* /c "cmd /c del /q /f @path" 
rem 删除C:\inetpub\logs目录下14天前的文件
Forfiles /p C:\inetpub\logs /s /d -14 /m *.* /c "cmd /c del /q /f @path"

2). 各参数的含义

rem: 注释命令,只是起一个注释的作用

/p:指定要删除的目录

/s:表示递归搜索子目录

/d:-14表示14天前的文件,-7表示7天前的文件

/m:*.* 表示所有文件类型,如果要删除特定文件格式,可自行指定(如:只删除txt文件,可写成 *.txt )

/c:自行指定的命令,后面双引号括起来的是删除文件命令

    自行指定的命令 "cmd /c del /q /f @path" 中:
        /c: 表示执行完批处理命令后,关闭CMD窗口

        del: 删除文件的命令

        /q:安静模式。删除全局通配符时,不要求确认

        /f:强制删除只读文件。

3). 使用方式及会用到的地方

使用方式:可以在Windows任务计划程序中,创建定时任务来执行该批处理文件(如:每天什么时间执行、执行频率......)。

会用到的地方:用于删除占用资源且没有用的文件,可用于定时删除服务器上的很久以前的临时文件、IIS服务器log......

优点:只需简单几行命令,完成设定来实现目的是比较快的。


1.针对仅仅是删除文件夹下的文件的操作:

使用del命令,单纯的删除文件操作,如下:

del /f /s /q C:\Users\dell\AppData\Local\Temp\*.*

2.删除文件夹操作

使用rd命令,删除空文件夹,如下:

rd /s /q  C:\Users\dell\AppData\Local\Temp\A


3.删除文件和文件夹操作:

使用的是del命令+rd命令,先删除文件,在进入相应文件夹删除文件夹下的文件夹,如下:

del /f /s /q C:\Users\dell\AppData\Local\Temp\*.*

cd C:\Users\dell\AppData\Local\Temp

rd /s /q  C:\Users\dell\AppData\Local\Temp


最后,我贴出我的删除文件.bat的全部内容。代码如下:

@echo off

:loop 

del /f /s /q C:\Users\dell\AppData\Local\Temp\*.*

cd C:\Users\dell\AppData\Local\Temp

rd /s /q  C:\Users\dell\AppData\Local\Temp

@ping 127.0.0.1 -n 1800 >nul   

goto loop

这个命令是删除temp文件下的所有文件及文件夹,并且是一次操作后1800s后重复执行。


三、解决文件路径中的有中文字符的问题

bat文件右键用“ 编辑”  打开,

另存为时,UTF-8保存为ANSI 格式。即可解决运行是乱码问题。




https://blog.sciencenet.cn/blog-3134052-1165995.html

上一篇:利用.bat来删除文件以及文件夹
下一篇:C# combox绑定数据的问题
收藏 IP: 221.214.6.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-11-25 19:34

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部