找回密码
 加入
搜索
查看: 2090|回复: 6

[AU3基础] (已解决)如何能只删除文件,保留文件夹?

  [复制链接]
发表于 2011-1-10 21:43:35 | 显示全部楼层 |阅读模式
本帖最后由 dearmb 于 2011-1-11 08:24 编辑

想做个更新文件的东东,复制粘贴即可
因为有些文件,直接覆盖,会报错,因此失败
所以想到把原来的文件全都删除,之后把文件拷进去
但是这样有个问题,原来的文件夹权限都被删没了,还要重加
有什么办法能只删除文件,而不删除文件夹呢?
此外问一下,fastcopy只能用run(命令行)的方式运行么?
有办法把fastcopy集成到自己编写的au3里么?
发表于 2011-1-10 21:46:32 | 显示全部楼层
如果它本身支持命令操作,就可以集成。
发表于 2011-1-10 22:06:13 | 显示全部楼层
遍历应该是可以的吧!
 楼主| 发表于 2011-1-10 22:22:46 | 显示全部楼层
如果它本身支持命令操作,就可以集成。
kodin 发表于 2011-1-10 21:46

怎么集成啊?我现在想到的,就是把fastcopy和au3脚本一起复制到同一个路径,然后运行au3脚本,似乎看着很不顺眼的说……想搞到一起……
 楼主| 发表于 2011-1-10 22:23:29 | 显示全部楼层
遍历应该是可以的吧!
gzh888666 发表于 2011-1-10 22:06

从头到尾的遍历删除么?应该可以,似乎比较麻烦,实在没办法的时候再用吧
发表于 2011-1-11 01:52:53 | 显示全部楼层
本帖最后由 netegg 于 2011-1-11 01:55 编辑
Func Empty($current)
        Local $search = FileFindFirstFile($current & "\*.*")
        While 1
                Dim $file = FileFindNextFile($search)
                If @error Or StringLen($file) < 1 Then ExitLoop
                If Not StringInStr(FileGetAttrib($current & "" & $file), "D") And ($file <> "." Or $file <> "..") Then
                        filedelete($current & "" & $file)
                EndIf
                If StringInStr(FileGetAttrib($current & "" & $file), "D") And ($file <> "." Or $file <> "..") Then
                        Empty($current & "" & $file)
                EndIf
        WEnd
EndFunc
 楼主| 发表于 2011-1-11 08:24:27 | 显示全部楼层
谢谢,突然想到很多文件也有权限问题,删了文件依然要改权限,谢谢!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-10-2 18:30 , Processed in 0.075419 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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