看到网上有一段用语删除win系统垃圾文件的bat脚本文件,现用python模仿实现该类似的功能。
#
-*- coding: UTF-8 -*-
import os
def gethome( ):
if os.name == ' nt ' :
if ' HOMEPATH ' in os.environ:
home = os.getenv( ' HOMEDRIVE ' ) + os.getenv( ' HOMEPATH ' )
else :
home = os.getenv( ' HOMEPATH ' )
return home
def deldir( pa ):
for root, dirs, files in os.walk( pa, topdown = False ):
for file in files:
file = os.path.join(root, file)
try :
os.remove(file)
print ' deleting file: %s ' % file
except Exception, oErr:
print oErr
for dir in dirs:
dir = os.path.join(root, dir)
try :
os.rmdir(dir)
print ' deleting dir: %s ' % dir
except Exception, oErr:
print oErr
def delextension( pa, extension ):
for root, dirs, files in os.walk( pa ):
for file in files:
file = os.path.join(root, file)
ext = os.path.splitext( file )[ 1 ]
if ext == extension:
try :
os.remove( file )
print ' deleting file: %s ' % file
except Exception, oErr:
print oErr
def main():
home = gethome( )
lsPath = os.path.join(home, ' Local Settings ' )
deldir( os.path.join(lsPath, ' Temporary Internet Files ' ) )
deldir( os.path.join(lsPath, ' Temp ' ) )
deldir( os.path.join(lsPath, ' recent ' ) )
deldir( os.path.join(os.getenv( ' systemdrive ' ), ' recycled ' ) )
delextension( os.getenv( ' windir ' ), ' .bak ' )
delextension( os.getenv( ' systemdrive ' ), ' .log ' )
delextension( os.getenv( ' systemdrive ' ), ' ._mp ' )
delextension( os.getenv( ' systemdrive ' ), ' .tmp ' )
delextension( os.getenv( ' systemdrive ' ), ' .gid ' )
delextension( os.getenv( ' systemdrive ' ), ' .chk ' )
delextension( os.getenv( ' systemdrive ' ), ' .old ' )
raw_input( ' 系统垃圾文件清理完毕,请按任意键退出! ' )
if __name__ == ' __main__ ' :
main()
import os
def gethome( ):
if os.name == ' nt ' :
if ' HOMEPATH ' in os.environ:
home = os.getenv( ' HOMEDRIVE ' ) + os.getenv( ' HOMEPATH ' )
else :
home = os.getenv( ' HOMEPATH ' )
return home
def deldir( pa ):
for root, dirs, files in os.walk( pa, topdown = False ):
for file in files:
file = os.path.join(root, file)
try :
os.remove(file)
print ' deleting file: %s ' % file
except Exception, oErr:
print oErr
for dir in dirs:
dir = os.path.join(root, dir)
try :
os.rmdir(dir)
print ' deleting dir: %s ' % dir
except Exception, oErr:
print oErr
def delextension( pa, extension ):
for root, dirs, files in os.walk( pa ):
for file in files:
file = os.path.join(root, file)
ext = os.path.splitext( file )[ 1 ]
if ext == extension:
try :
os.remove( file )
print ' deleting file: %s ' % file
except Exception, oErr:
print oErr
def main():
home = gethome( )
lsPath = os.path.join(home, ' Local Settings ' )
deldir( os.path.join(lsPath, ' Temporary Internet Files ' ) )
deldir( os.path.join(lsPath, ' Temp ' ) )
deldir( os.path.join(lsPath, ' recent ' ) )
deldir( os.path.join(os.getenv( ' systemdrive ' ), ' recycled ' ) )
delextension( os.getenv( ' windir ' ), ' .bak ' )
delextension( os.getenv( ' systemdrive ' ), ' .log ' )
delextension( os.getenv( ' systemdrive ' ), ' ._mp ' )
delextension( os.getenv( ' systemdrive ' ), ' .tmp ' )
delextension( os.getenv( ' systemdrive ' ), ' .gid ' )
delextension( os.getenv( ' systemdrive ' ), ' .chk ' )
delextension( os.getenv( ' systemdrive ' ), ' .old ' )
raw_input( ' 系统垃圾文件清理完毕,请按任意键退出! ' )
if __name__ == ' __main__ ' :
main()