cmd获取ansyslicense信息
1、os的popen可用获取cmd命令执行的内容信息
import os info = os.popen(cmd).read() # 执行cmd命令并获取执行输出的内容
2、ansys license 获取命令
'"C:\Program Files\ANSYS Inc\Shared Files\Licensing\winx64\lmutil" lmstat -a -c 1055@hostname # (hostname 为 licnese server的主机名)
3、汇总
import os def get_num(info): n1 = int(info.split("of")[2][1]) n2 = int(info.split("of")[3][1]) # print(n1, n2, type(n1)) return n1 - n2 def have_num(): li = [ "255.255.255.255", "255.255.255.256", "255.255.255.257", ] info = '' for i in li: info += os.popen( '"C:\Program Files\ANSYS Inc\Shared Files\Licensing\winx64\lmutil" lmstat -a -c 1055@%s' % i).read() info = info.split("\n") solver = hpc = 0 for i in info: if 'Users of anshpc_pack' in i: hpc += get_num(i) elif 'Users of cfd_solve_level1' in i: solver += get_num(i) print("可用的hpc license数量为:", hpc) print("可用的solver license数量为:", solver) num = 0 if solver: num = 4 if hpc: num += 8 * 4 ** (hpc-1) return num if __name__ == '__main__': print(have_num())
浙公网安备 33010602011771号