① DOS下按照文件的创建时间排序
用“DIR 盘符: /O D”
/D表示按照时间顺序排序
/S大小顺序
/E按扩展名顺序
② 怎么用dos写一个批处理,要求按时间删除旧文件,只保留最新文件,因为我要做数据库定时备份,在线等
用for命令处理dir /b/o-d的列表,跳过前面不需要删除的部分。dir /o-d是按时间倒序排列。
for /f "skip=1 tokens=* delims=" %i in ('dir /b/o-d 你的备份目录) do @del /f/q "%i"
上面的命令只是给出一个大概的样子,调整skip=后面的参数,可以选择跳过几个文件不删除,剩下的你还要自己调试一下。建议你先在@后面加上echo 进行调试,以免误删不能删除的文件。调试好后再去掉echo。
③ 急请求在DOS下怎么样检看文件日期
输入DIR。
分类为:
建立日期 时间 类型 名称
呵呵。
我理解错误了。呵呵
你输入【dir/t a 文件名】就能查看最后访问的日期了。
把上面的指令里面的A改成C是显示创建日期
改成W是显示上次写入时间
试试吧。
④ 用DOS命令按日期删除文件
两种方案:
一、用rd内部命令
若你要删除的文件夹没有子文件夹,可以先用“cd
目录”进入欲删除目录
,然后用del
*.*
把所在的文件夹的所有文件删除,再
“cd..”返回上一级目录,用“rd
文件夹名”把文件夹删除。(注:用rd命令删除文件夹必须里面的所有文件删除才可以,并且,所以的文件夹没有子文件夹,若有子文件夹则先删除后再操作)
二、用deltree外部命令
首选回到系统根目录下如c:
查找此命令所在的位置
“dir
deltree
/s"
,再用cd进入此命令对应的目录。
然后再用
deltree
[盘符:]
[路径]
文件夹名称
如要删除c:\windows目录下的love文件夹则对应的命令就为
"deltree
c:\windows\love"(注:deltree会删除该文件夹下所有的文件及文件夹。它是一个外部命令。若xp没有自带,则需找一个含有此命令的启动光盘启动。若分区格式为ntfs格式的则还需找相应的光盘启动ntfs-for
dos)
参考
.
⑤ 如何用dos命令删除硬盘里面一段日期的文件
forfiles 命令
例:forfiles /p "c:\test" /s /m *.log /d -30 /c "cmd /c del @path /q /f"
删除 c:\test及子目录下 所有log扩展名 修改时间在30天以前的文件
cmd forfiles /? 查看使用方法
forfiles 命令在win2003以上(win7、win8、win2008等)系统有,winxp 和 win2000没有这个命令,想使用的话,可以从win2003的system32里面一个到xp或2000的system32下
⑥ 用DOS命令按日期删除文件
@date /T|find "2006-07-30" && echo "条件符合!执行任务"
就这么一句话,简单吧!
@符号的作用是让这条命令不回显,不明白也无所谓!
首先用date /T 命令得到当前日期(如果需要以时间为条件的话,可以用time命令),然后将他的结果传递给find命令(传递时用 | 这个符号),find命令则在date /T的结果中搜寻指定的关键字,这里你可以设置为你需要的日期,比如"2006-10-01" 注意要把关键字(也就是你的条件)放在双引号内
或者"2006-07-30"等等,随便日期(但需要注意千万不要省略写成2006-7-30)
&&的意思是前边的命令成立的情况下执行后边的命令,我这里随便弄个命令 echo 毫无任何意义
你把它改成 你需要执行的命令即可!
@date /T|find "2006-07-30" && DEL C:\123\*.* /s/f/q
再免费教你点,考虑到你要自动执行任务,但del在删除文件的时候会提示你确认,所以你可以在在删除命令后边加上 /q命令,它就不提示了,再加个/s命令则能把123目录下的所有子目录以及子目录下的文件都删掉,这也许是你想要的结果,再加/f的作用是强制删除
这里你可以找个折中的办法就是如果要判断日期大于2006-07-30则可以判断当前日期是否为2006-08-01即可
命令是死的,人是活的
⑦ dos下如何根据文件创建的时间来删除文件
第一步:进入Windows的MS-DOS窗口(Windows 2000/XP叫命令行提示符),进入要查找空文件夹的驱动器,执行:
dir /ad/b/s | sort /r >empties.bat。
小提示
上面命令行中“|”的输入方法是按住Shift键按“”键。
第二步:命令运行后,当前目录下会生成一个Empties.bat文件,其中包含了逆序排列的所有文件夹的清单。用Word或记事本打开该文件,把每一行内容分别放入一对英文引号之内,然后在每一行前面插入“rd ”前缀(rd后加一个空格)。
以Word为例,按Ctrl H打开“查找和替换”功能,查找“^p”(不含引号,下同。“^p”可以使用以下方法输入:在“查找和替换”对话框中点“高级”按钮,然后点击“特殊字符→段落标记”),替换成“^prd ”(rd后面加一个空格),然后手工修正第一行和最后一行的内容。保存修改后的Empties.bat文件,进入命令行窗口执行这个批处理文件。Empties.bat将试图删除(即rd命令的作用)每一个文件夹,但包含内容的文件夹不可能用rd命令删除,结果就删除了所有空的文件夹。
知其所以然:我们来了解一下前面Dir命令的运行原理:“/ad”要求Dir命令选出所有目录;“/b”表示只显示文件夹名称(不显示Dir命令的标题信息或摘要);“/s”表示搜索,即查找当前文件夹及其所有的子文件夹。Dir命令的输出通过管道命令(“|”)传递给Sort命令。Sort命令的作用是排序,“/r”选项表示逆序排列。
最后,Sort命令的输出被重定向(“>”)到Empties.bat文件。由于要求Sort命令逆序排列输出结果,所以Empties.bat文件中子文件夹总是位于父文件夹的前面,因而删除文件夹时,空的子文件夹总是先被删除,空的父文件夹也得以被删除。可以看到,巧妙运用Windows内建命令,许多表面上看起来复杂的任务也可以轻而易举地完成!
小提示:Dir的三个小招数
★查看文件夹全部隐藏文件:如果想查看Windows文件夹和它所有子文件夹中全部的隐藏文件,只需输入 C:Windows.* /AH/S/B/P。
★轻松创建长文件名文件列表:你可以创建一个批处理文件如Getlist.bat,其中的内容只有DIR *.* /B >LIST.TXT,将它复制到要创建文件列表的文件夹,然后双击运行即可将文件夹所有文件的列表保存到List.txt文件中。
★多个目录齐现身:如果想同时列出C盘和D盘根目录下的内容,那么只要输入C: D:即可。
⑧ 如何使用dos来比较一个文件夹内所有文件的修改时间
安装一个模拟linux shell的命令包就好弄了。
DOS下直接按时间排序文件列表,在目标目录下执行:dir /a | sort /r ,然后就能看到最上面的就是最新的文件了。
如果目录下面还有很多子目录就不好弄了。可能需要用tree命令,具体记不清了,需要可以给我私信。
⑨ DOS中要判断某个文件名带日期的的文件是否存在要怎么写 比如OFD_98_20111226_63.TXT这样
IF EXIST OFD_98_20111226_63.txt (
有,做点儿什么
) ELSE (
没有,做点别的?
)
⑩ 请教DOS高手 在DOS下搜索文件是怎样打命令的呢
可以用DIR命令,该命令是很常用,用途又很广的一个命令,详细的命令格式可以通过输入 dir /? 来查看,关于搜索含有cns的文件,格式一般为:
dir *cns*.* /s /p
解释是,在所有子目录中搜索文件名称为 任意字符+cns+任意字符.任意字符的文件,并且分页显示./s是指搜索当前目录下所有的子目录,而/p则是将结果分页显示.
建议在使用前,先用 CD\ 命令将当前路径切换到根目录.
附DIR命令说明:
显示目录中的文件和子目录列表。
DIR [drive:][path][filename] [/A[[:]attributes]] [/B] [/C] [/D] [/L] [/N]
[/O[[:]sortorder]] [/P] [/Q] [/S] [/T[[:]timefield]] [/W] [/X] [/4]
[drive:][path][filename]
指定要列出的驱动器、目录和/或文件。
/A 显示具有指定属性的文件。
attributes D 目录 R 只读文件
H 隐藏文件 A 准备存档的文件
S 系统文件 - 表示“否”的前缀
/B 使用空格式(没有标题信息或摘要)。
/C 在文件大小中显示千位数分隔符。这是默认值。用 /-C 来
停用分隔符显示。
/D 跟宽式相同,但文件是按栏分类列出的。
/L 用小写。
/N 新的长列表格式,其中文件名在最右边。
/O 用分类顺序列出文件。
sortorder N 按名称(字母顺序) S 按大小(从小到大)
E 按扩展名(字母顺序) D 按日期/时间(从先到后)
G 组目录优先 - 颠倒顺序的前缀
/P 在每个信息屏幕后暂停。
/Q 显示文件所有者。
/S 显示指定目录和所有子目录中的文件。
/T 控制显示或用来分类的时间字符域。
timefield C 创建时间
A 上次访问时间
W 上次写入的时间
/W 用宽列表格式。
/X 显示为非 8dot3 文件名产生的短名称。格式是 /N 的格式,
短名称插在长名称前面。如果没有短名称,在其位置则
显示空白。
/4 用四位数字显示年
可以在 DIRCMD 环境变量中预先设定开关。通过添加前缀 - (破折号)
来替代预先设定的开关。例如,/-W。