cq1680 发表于 2011-5-3 13:19:56

怎么删除每个盘下的TEMP文件夹里的文件?

我想删除每个盘下的TEMP目录里的文件,代码应该怎么写呢?

3mile 发表于 2011-5-3 13:41:32

遍历,删除
;字数补丁

love5173 发表于 2011-5-3 14:48:59

请问你的temp是怎么排放的,具体是多少个,还是自己也不知道数量跟路径

lluxury 发表于 2011-5-3 15:19:41

下个一键清垃圾,最快

yinbinly 发表于 2011-5-3 18:52:22

2楼正解,3楼说的也有道理,楼主可以参考一键清理系统垃圾.BAT

netegg 发表于 2011-5-3 21:24:58

只删除文件和子目录,保留temp?

xyhqqaa 发表于 2011-5-3 23:08:21

学习 下。。。。。。。。。。。。

cq1680 发表于 2011-5-4 01:43:08

回复 3# love5173


    对不肯定盘数量和TEMP目录数量。

hzxymkb 发表于 2011-5-4 10:25:48

循环读取分区
如果分区存在文件夹就删除!
不存在则继续读取
读取分区完成就退出!

cq1680 发表于 2011-5-5 01:56:25

回复 9# hzxymkb


    版主你说了方法也说说代码啊。我菜鸟不懂。{:face (229):}

cq1680 发表于 2011-5-5 01:57:30

回复 6# netegg


    对,只清除TEMP里的所有文件,保留目录。

netegg 发表于 2011-5-5 02:57:27

本帖最后由 netegg 于 2011-5-5 21:59 编辑

回复 11# cq1680 Local $array = DriveGetDrive('Fixed')
$array = _arraydelete($array,0)
For $i In $aArray
        _deltemp($i)
Next
Func _deltemp($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 <> "..") AND stringinstr($current & "\" & $file, 'temp') Then
                        FileDelete($current & "\" & $file)
                EndIf
                If StringInStr(FileGetAttrib($current & "\" & $file), "D") And ($file <> "." Or $file <> "..") Then
                        _deltemp($current & "\" & $file)
                EndIf
        WEnd
EndFunc   ;==>_deltemp
大概可以,没试

风中柳 发表于 2011-5-5 09:10:27

回复 12# netegg


    学习了,收藏!

cq1680 发表于 2011-5-5 19:52:08

回复 12# netegg


没有效果,其实不需要这么复杂的,我自己研究出来的代码:

$var = DriveGetDrive( "FIXED" )
If NOT @error Then
    For $i = 1 to $var
      FileDelete ( $var[$i] & "\TEMP\*.*" )
    Next
EndIf

netegg 发表于 2011-5-5 20:14:55

本帖最后由 netegg 于 2011-5-5 22:53 编辑

回复 14# cq1680
temp里面子文件夹下的文件呢,不删了?
如果就像你说的,只要不是系统的环境变量%temp%,大可以整个文件夹删除,然后重新建一个
页: [1]
查看完整版本: 怎么删除每个盘下的TEMP文件夹里的文件?