请教 AU3遍历并删除文件
比如说C:/有文件夹C:/123 C:/225 C:/323 C:/423 C:/523 C:/623 ...
都有相同的文件C:/*23/1.txt请问一下代码要怎么写?
谢 谢 回复 1# 13gu For $i = 1 To 9 ; 123 - 923文件夹
FileDelete("C:\" & $i & "23\1.txt")
Next基础语法要先看帮助文档 回复 2# chamlien
For $i = 1 To 9 ; 123 - 923文件夹
如果这个文件名和长度不确定怎么写,
比如说不是1到 9
谢 谢 ...
FileFindFirstFile('C:/*23/1.txt')
FileFindNextFile(
... 回复 4# afan
还是没有看懂。。。 回复 5# 13gu Local $hSearch = FileFindFirstFile('C:\*23')
If $hSearch = -1 Then Exit MsgBox(48, '', '错误: 没有匹配搜索模式的目录')
Local $sFileName = '', $sFileX = ''
While 1
$sFileName = FileFindNextFile($hSearch)
If @error Then ExitLoop
$sFileX = $sFileName & '\1.txt'
If FileExists($sFileX) Then FileDelete($sFileX)
WEnd
FileClose($hSearch) 好的,谢 谢 老大,试了好几次都不会删除,WIN7系统。。。。 回复 8# 13gu
跟系统没关吧,仔细核对自己代码中的路径。
BTW, 自己的主贴要点击回复或引用他人的贴 别人才能收到信息 及时跟帖 学习了,不错啊 {:face (356):}
结合批处理,一行代码解决
RunWait(@ComSpec & ' /c for /f "delims=" %a in (' & "'dir /b/ad'" & ') do echo %~dpnxa|find "23">nul &&del /f/q "%~dpnxa\1.txt"',"c:\",@SW_HIDE) 本帖最后由 13gu 于 2016-3-4 16:53 编辑
回复 11# zghwelcome
非常感谢,能不能再问一个问题,如果文件夹名是不规则的要怎么写比较好?
C:/*.*.*.* 就是这样的文件夹名 回复 9# afan
好的,谢 谢 本帖最后由 zghwelcome 于 2016-3-5 10:21 编辑
回复 12# 13gu
你最终目的是什么,是要删除C盘根目录下文件夹里面的一个特定名字的文件吗?如果是,这么写RunWait(@ComSpec & ' /c for /f "delims=" %a in (' & "'dir /b/ad'" & ') do if exist "%~dpnxa\1.txt" del /f/q "%~dpnxa\1.txt"',"c:\",@SW_HIDE)这里是假设要删除 C 盘根目录下文件夹里面的 1.txt,而二级目录以下的 1.txt不会被删除 ,
如 c:\test\1.txt会被删除 ,而c:\test\txt\1.txt 则不会被删除
如果要删除C盘目录下所有子目录的 1.txt
RunWait(@ComSpec & ' /c del /s/q/f 1.txt',"c:\",@SW_HIDE) 回复 14# zghwelcome
就是第一个意思,要删除C盘根目录文件夹里的1.txt
非常感谢,学习了不少东西
页:
[1]