У меня есть следующий код, который получает текущее состояние набора лицензий:
set licensefile="D:\PLM\Solid Edge ST10\Preferences\SElicense.dat"
set _output=lmutil lmstat -c %licensefile% -f "solidedgeclassic"
for /f "tokens=2 delims=()=" %%G IN ('%_output% ^|find "issued"') DO set line=%%G
Это, устанавливает% line% равным следующей строке:
Total of 6 licenses issued; Total of 5 licenses in use
OfКонечно, эти значения могут быть изменены, но предложение всегда будет одинаковым.Я хотел бы, чтобы пакетный скрипт возвращал ошибку, если 5 >= 6
.
Как я могу это сделать?
РЕДАКТИРОВАТЬ: Результатоператор _output:
lmutil - Copyright (c) 1989-2017 Flexera Software LLC. All Rights Reserved.
Flexible License Manager status on Thu 11/22/2018 09:05
[Detecting lmgrd processes...]
License server status: 27001@VIRT04
License file(s) on VIRT04: C:\SEFlex\Program\SELicense.dat:
VIRT04: license server UP v11.14.0
Vendor daemon status (on virt04):
selmd: UP v11.14.0
Feature usage info:
Users of solidedgeclassic: (Total of 6 licenses issued; Total of 3 licenses in use)
"solidedgeclassic" v110.0, vendor: selmd, expiry: permanent(no expiration date)
floating license
person1 PC-CAS016 PC-CAS016 (v110.0) (virt04/27001 1218), start Thu 11/22 8:00
person2 PC-CAS09 PC-CAS09 (v110.0) (virt04/27001 599), start Thu 11/22 8:06
person4 PC-CAS015 PC-CAS015 (v110.0) (virt04/27001 645), start Thu 11/22 8:51
Press any key to continue . . .