Как создать пакетный файл, который будет запускать несколько запросов в cmd и регистрировать их

Я хочу создать пакетный файл, который я могу сохранить на флэш-накопителе и взять с собой на компьютеры моих пользователей, чтобы определить их имя компьютера и лицензию на Office 2013. Затем я хотел бы, чтобы результаты были вставлены в текстовый файл на флэш-накопителе. .

Я знаю, что cscript "C:\Program Files\Microsoft Office\Office15\OSPP.VBS" /dstatus работает для получения последних 5 цифр ключа продукта, но я не знаю, как создать пакетный файл для запроса имени компьютера и как вставить эту информацию в текстовый файл. Это вообще возможно?


person user3573392    schedule 25.04.2014    source источник
comment
Не нужно заново изобретать велосипед. Produkey может сделать это за вас. Это также доступно для сценариев.   -  person Matt Williamson    schedule 25.04.2014
comment
Produkey - это не совсем то, что я ищу, в нем не указано, что он сохраняет информацию или что он работает с 2013. Кроме того, я хотел бы научиться делать это самостоятельно, чтобы я мог изменять и пересохранять пакетный файл для работы с другие приложения тоже. Но за ресурс спасибо :)   -  person user3573392    schedule 25.04.2014
comment
У меня нет коробок с 13 на них, чтобы проверить. Попробуйте и посмотрите, работает ли это.   -  person Matt Williamson    schedule 25.04.2014
comment
Кто-нибудь знает, что пакетный файл может все это сделать?   -  person user3573392    schedule 25.04.2014
comment
Все еще ищу ответ на этот вопрос или указатель в правильном направлении, но многого не нахожу.   -  person user3573392    schedule 28.04.2014


Ответы (2)


Предполагая, что ваш текстовый файл называется DataCollected.csv и если он находится рядом с пакетным файлом, некоторые подсказки [непроверенные]:

findstr /r "^%ComputerName%," "%~dp0DataCollected.csv" || for /f "delims=" %%a in ('cscript "C:\Program Files\Microsoft Office\Office15\OSPP.VBS" /dstatus') do echo %computername%,%%a>> "%~dp0DataCollected.csv"
person Parag Doke    schedule 29.04.2014

Вау, ты попал прямо в голову, Параг! спасибо

Теперь, чтобы сделать это еще более сложным, есть ли способ обнулить функцию записи, если нет лицензии Office 2013, и вместо этого искать 2010, если он не сможет найти 2013?

Microsoft (R) Windows Script Host версии 5.8 Copyright (C) Microsoft Corporation. Все права защищены. Ошибка ввода: не удается найти файл сценария "C:\Program Files\Microsoft Office\Office15\OSPP.VBS".

это то, что он возвращает на машинах без него. если нет, я могу просто отредактировать это в своем DataCollected.

РЕДАКТИРОВАТЬ: Это распечатывает данные, но перезаписывает каждый раз, когда я перезапускаю пакетный файл, почти там :)

person user3573392    schedule 29.04.2014
comment
Если этот ответ помог решить вашу проблему, вам нужно использовать функцию «Отметить как ответ» в stackoverflow. Далее, вы сейчас жадничаете :-). Пожалуйста, посмотрите, можете ли вы отредактировать вопрос и обновить его с учетом новых требований. Я считаю, что это должно быть выполнимо на основе наличия/отсутствия файла vbs. - person Parag Doke; 02.05.2014