2013年02月18日 星期一 16:58
服务器上有个目录是专门存放war包的,随着时间积累,这些war包的历史版本越来越多,需要清理。
现在想用python写个脚本定期执行,请各位大牛指点。
目录结构如下:
war
├─1.1.0
│ ├─app-a
│ │ ├─01
│ │ │ app-a-1.1.0.1.war
│ │ │
│ │ ├─02
│ │ │ app-a-1.1.0.2.war
│ │ │
│ ├─app-b
│ │ ├─01
│ │ │ app-b-1.1.0.1.war
│ │ │
│ │ ├─03
│ │ │ app-b-1.1.0.3.war
│ │ │
├─1.2.0
│ ├─app-a
│ │ ├─01
│ │ │ app-a-1.2.0.1.war
│ │ │
│ │ ├─05
│ │ │ app-a-1.2.0.5.war
│ │ │
│ ├─app-c
│ │ ├─04
│ │ │ app-c-1.2.0.4.war
│ │ │
│ │ ├─05
│ │ │ app-c-1.2.0.5.war
│ │ │
2013年03月20日 星期三 18:23
可以这样:
WAR_DIR = '<YOUR WAR ROOT PATH>'
MAX_NUMBER_OF_HISTORY_VERSION = 20
def get_version_list():
result = []
depth = 0
for dirname, dirnames, filenames in os.walk(WAR_DIR):
depth += 1
if depth == 2:
for dirname in dirnames:
version = dirname
result.append(version)
break
# sort by version
return sorted(result, reverse=True)
def cleanup():
version_list = get_version_list()
if len(version_list) > MAX_NUMBER_OF_HISTORY_VERSION:
delete_version_list = version_list[MAX_NUMBER_OF_HISTORY_VERSION:]
for version in delete_version_list:
# 删除这些版本的文件
....
Zeuux © 2025
京ICP备05028076号