找回密码
 加入
搜索
查看: 501|回复: 7

[AU3基础] 通配符问题请教

[复制链接]
发表于 2023-5-2 21:47:47 | 显示全部楼层 |阅读模式
本帖最后由 sunyelover 于 2023-5-2 22:48 编辑


我想删除一个文件夹下面的文件,
如C盘的1目录下的autoit12345目录下面的autoitss.dll

C:\1\autoit12345\autoitss.dll

这个难点在于文件夹autoit后面那组数字是随机的,不是固定的,需要通配符,这个通配符有点难,我不会。那个大佬会,帮忙写一下 谢谢

 楼主| 发表于 2023-5-2 22:06:52 | 显示全部楼层
本帖最后由 sunyelover 于 2023-5-2 22:26 编辑

在互联网找到一个,他是删除所有文件,我只想删除一个文件,



#include <File.au3>
$Path = "C:\1\"  ;指定目录,路径自己改
$FileName = "autoit"
$Files = _FileListToArray($Path) ;获得指定目录下的文件
For $i = 1 To UBound($Files)-1
   If StringInStr($Files[$i], $FileName) Then
   FileDelete($Path & $Files[$i]) ;删除含有$FileName的文件
   EndIf
Next


发表于 2023-5-2 22:36:16 | 显示全部楼层
所以如果有多个你是打算删除哪一个??? 你的问题描述的也不清楚啊

#include <File.au3>
$Path = "C:\1\"  ;指定目录,路径自己改
$FileName = "autoit"
$Files = _FileListToArray($Path) ;获得指定目录下的文件
For $i = 1 To UBound($Files)-1
   If StringInStr($Files[$i], $FileName) Then
   FileDelete($Path & $Files[$i]) ;删除含有$FileName的文件
    exitloop       ;删除一个后结束循环
   EndIf
Next
 楼主| 发表于 2023-5-2 22:48:27 | 显示全部楼层
就删除一个 ,autoitss.dll 文件即可
发表于 2023-5-2 23:01:30 | 显示全部楼层
本帖最后由 3131210 于 2023-5-2 23:05 编辑


#include <File.au3>

Local $Path = 'C:\1\'  ;指定目录,路径自己改
Local $FileFolderName = 'autoit'
Local $FileName = 'autoitss.dll'

Local $aFileList = _FileListToArray($Path, $FileFolderName & '*', 2, 1)
If Not @error Then
        For $i = 1 To $aFileList[0]
                If FileExists($aFileList[$i] & '\' & $FileName) Then
                        FileDelete($aFileList[$i] & '\' & $FileName)
                        ExitLoop                    ;删除一个文件后结束循环
                EndIf
        Next
EndIf

评分

参与人数 1金钱 +20 收起 理由
sunyelover + 20 很给力!

查看全部评分

发表于 2023-5-2 23:12:13 来自手机 | 显示全部楼层
先枚举autoit*目录,如果目录存在则检查目录下是否存在对应的DLL 如果存在则删除。
发表于 2023-5-3 10:55:11 | 显示全部楼层
用正则表达式不就可以实现通配符了
 楼主| 发表于 2023-5-3 13:08:19 | 显示全部楼层
3131210 发表于 2023-5-2 23:01
#include

Local $Path = 'C:\1\'  ;指定目录,路径自己改

非常好,谢谢
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 07:13 , Processed in 0.108321 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表