Python post build用品牌和版本更改msi名称?

时间:2011-09-15 19:29:08

标签: python string

您好我为我工作的公司运行Build系统......

目前我正在使用字典函数来获取构建生成的msi的名称,并将其重命名为为该版本决定的命名约定。

def Rename_MSI(dict):
    global Src_Dir
    for msi in dict.keys():
        if os.path.exists(Src_Dir + "\\" + msi):
            print "renaming ", msi, "to ", dict[msi]
            os.rename(Src_Dir + "\\" + msi, Src_Dir + "\\" + dict[msi])
        else:
            print "Rename function failed", msi, "does not exist"
            sys.exit(3)

团队制作的名称也正在变得标准化,所以我确信我可以在不保持字典前进的情况下进行重命名。 MSI名称是来自构建的: ProductSolution_x64.msi

我需要将品牌添加到开头像这样 Brand_ProductSolution_x64.msi

这样的版本控制: Brand_ProductSolution_10_2 _?_ x64.msi

我想过这种功能,但我对切片并不是很好: STR [:LEN(STR)-8]

这样的事情?    newname =%+ str +%str [:len(str)-8]%(品牌,版本)

提前感谢您的任何帮助

1 个答案:

答案 0 :(得分:0)

import os

msi = "ProductSolution_x64.msi"

name,arch = os.path.splitext(msi)[0].split('_')    

newname = "%s_%s_%s_%s.msi" %(brand, name, version, arch)

应该工作......