Как получить версию файла / версию продукта из файла в командной строке Windows 7, чтобы использовать его в переменной в файле .bat
?
2 ответа
Насколько я понимаю, вам нужен filever.exe для этого. Как указано в комментариях. Кроме того, я разорвал ниже слово в слово отсюда
Как использовать инструмент Filever.exe для получения конкретной информации о файле в Windows
Из того, что я filever
о выводе файлового сервера , он всегда в столбцах, и вам нужен пятый столбец (версия). Так что простого for
должно хватить:
for /f "tokens=5 delims= " %%v in ('filever myFile.dll /b') do echo %%v
Вы можете проверить с помощью sigcheck.exe
который является частью Sysinternals Suite, например
$ sigcheck.exe -q -n app.exe
5.0.0.1241
При указании -q
(тихо, без баннера) и -n
будет показан только номер версии файла, чтобы вы могли назначить его в переменной.
Если вы используете Sigcheck64, 64-битную версию для Nano Server, которая не поддерживает 32- битные программы, параметр -q
был заменен на -nobanner
. Например
$ sigcheck.exe -nobanner -n app.exe
5.0.0.1241
Источник: В чем разница между Sigcheck и Sigcheck64? и справочная страница SigCheck.