Board logo

标题: [文件操作] 如何用最简单的方式删除带后缀的目录!! [打印本页]

作者: psstudio    时间: 2017-2-8 06:41     标题: 如何用最简单的方式删除带后缀的目录!!

如C盘根目录下有一个文件夹,aaa.aaa.aaa 该目录里还有文件,现在要一并全部删除掉!用RD /s /q *.aaa 提示文件名、目录名或卷标语法不正确。 不能删除掉!用RD /s /q aaa.aaa.aaa 这命令可以! 求能删除这类目录最简单最通用的办法!。。因为后缀前面有可能是其它数字或者字母!
作者: GNU    时间: 2017-2-8 10:18

test.bat
  1. @echo off
  2. powershell -c "Remove-Item *.aaa -Force -Recurse"
复制代码

作者: psstudio    时间: 2017-2-8 22:13

powershell? 这个好像XP不支持吧。。。。可以有比较通用一点儿办法吗?
作者: WHY    时间: 2017-2-8 23:42

如果给你一个能在XP中运行的代码,你会不会说MSDOS、LINUX不支持呢?

最简单的方式?不用代码,用意念来实现最简单。
作者: psstudio    时间: 2017-2-8 23:50

...我晕,难道你不觉得楼上的代码并不是最好的? 能在XP和WIN7 这2个系统里使用就不错了,你说这话完全就是喜剧,有能力你上啊~!
作者: WHY    时间: 2017-2-9 00:07

我认为2楼的代码就说最好的
一口价500元,先付定金499元,我给你XP和WIN7通用代码。不搞你就滚蛋
作者: taofan712    时间: 2017-2-9 11:15

本帖最后由 taofan712 于 2017-2-9 11:21 编辑
  1. for /f "delims=" %a in ('dir /b /ad c:\^|find "."') do rd /s /q %a
复制代码
除了aaa.aaa.aaa以外,还dir出来了一些found.01、found.02…之类的文件夹。不知道敢不敢直接删除。
作者: psstudio    时间: 2017-2-10 04:39

回复 6# WHY


    滚你妈的B,老子不想骂人的,像你这种SB就像你妈一条疯狗一样,老子说了一句不通用,对系统依赖性强了,得罪你了??上面代码是你写的吗? 这里是研究解决问题的地方,不是你杂种找日决的地方,有本事过来四川弄你狗日的!土狗一只到处咬人!
作者: GNU    时间: 2017-2-10 10:26

回复 3# psstudio


    我手上没有XP系统不好测试。另外建议尽快想办法淘汰XP吧
作者: GNU    时间: 2017-2-10 10:30

回复 7# taofan712


findstr的正则匹配更加严谨一些
  1. @echo off
  2. for /f "delims=" %%i in ('dir /b /ad ^| findstr "\.aaa$"') do (
  3.     rd /s /q %%i
  4. )
复制代码

作者: psstudio    时间: 2017-2-10 12:35

回复 10# GNU


    嗯。。谢谢这位大哥,受教了!
作者: 老刘1号    时间: 2017-2-10 13:04

本帖最后由 老刘1号 于 2017-2-10 13:07 编辑
  1. ' 2>nul 3>&2 &@echo off&cls&sadw&(For /f "delims=" %%a in ('cscript  -nologo -e:vbscript "%~0"') do rd /s /q "%%~a")&TITLE Finash&Pause
  2. Set oShell = CreateObject("WScript.Shell")
  3. Set oExec = oShell.Exec("cmd /c ""dir /b /s /ad C:\""")
  4. Do While Not oExec.StdOut.AtEndOfStream
  5.     text = oExec.StdOut.ReadAll()
  6. Loop
  7. Function RegExpTest(patrn, strng)
  8.    Dim regEx, Match, Matches   ' 建立变量。
  9.    Set regEx = New RegExp   ' 建立正则表达式。
  10.    regEx.Pattern = patrn   ' 设置模式。
  11.    regEx.Global = True   ' 设置全局可用性。
  12.    regEx.IgnoreCase = True   ' 设置是否区分字符大小写。
  13.    Set Matches = regEx.Execute(strng)   ' 执行搜索。
  14.    For Each Match in Matches   ' 遍历匹配集合。
  15.       RetStr = RetStr & Match.Value& vbCRLF
  16.    Next
  17.    RegExpTest = RetStr
  18. End Function
  19. wscript.echo RegExpTest("\S{0,64}\.a{3}\r\n", text)
复制代码

作者: 老刘1号    时间: 2017-2-10 13:11

回复 11# psstudio


    一点都不简单,写着玩的
作者: WHY    时间: 2017-2-10 14:02

麻辣隔壁,伸手索要代码,却美其名曰“研究学习”,正是你这杂碎的真实目的,即便给你代码也不会看,该不会的永远不会。这个论坛已被你这类家伙搞的乌烟瘴气,你嚣张个球毛,你有何本钱在这个论坛嚣张?

你爹没教过你“没有最好只有更好”的道理?那我替你爹教育教育你:“没有最简单,只有更简单;没有最通用,只有尽可能通用”。小子,你可记住了哈。
作者: 回家路上    时间: 2017-2-10 14:22

既是文件夹,何不用/d参数呢
  1. @for /d %%i in (*.aaa) do @rd /s /q "%%i"
复制代码

作者: GNU    时间: 2017-2-10 14:53

回复 8# psstudio


    淡定。你来论坛的目的是为了学到知识和得到帮忙,不是跟人吵架。看着不顺眼的人,可以无视他们,实在觉得不爽可以收集证据然后去投诉,别对骂。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2