Всем доброго дня. Помогите :)
Задача: Обновить ПК в домене до последней версии винды
Проблема: Не могу правильно составить батники для удобной работы
Что нужно: Батник следующего содержания-:
- Введите имя ПК: (тут я ввожу имя пк)
- psexec =Выводит информацию о введенном ПК (Локаль, билд десятки, версию винды, битность, свободное место на диске С)
- Меню выбора действий (которое запускает в новом окне скрипты следующего содержания):
--1. Залить и обновить RU x64 (installw10ru64.bat)
--2. Залить и обновить UA x64 (installw10ua64.bat)
--3. Залить и обновить RU x32 (installw10ru86.bat)
- возврат к старту (ввод имени пк). //для возможности запустить ещё одно обновление в новом окне.
В идеале, было бы круто сделать чтобы скрипт сам выбирал нужный скрипт исходя из версии винды и битности, но у меня не получилось загнать вывод psexec в переменную.
Мои наработки:
Скрипт 1 - Проверка информации о системе
@echo off
:start
set /P id=Enter PC Name:
psexec \\%id% powershell Get-UICulture; write-host "Windows 10 Build:" (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion').ReleaseId; write-host "Windows Architrcture:" (Get-WmiObject win32_operatingsystem).osarchitecture; cmd /c ver; Get-WmiObject Win32_LogicalDisk
pause
goto start
Скрипт 2 - Копирование дистрибутива с шары на диск С и запуск тихого обновления //пример батника installw10ru64.bat
:start
set /P id=Enter PC Name :
robocopy /E /R:1 /W:1 "\\192.168.5.5\w10ru64" "\\%id%\c$\w10ru64"
psexec \\%id% c:\w10ru\setup.exe /auto upgrade /quiet /showoobe none /priority low /dynamicupdate disable
}
pause
goto start
Уважвемые гуру командной строки, помогите сверстать скрипт :)
- Если такое возможно - одним файлом, который будет запускать от того же имени другие окна с заданным скриптом копирования нужной папки и запуском обновления.
- Нужна проверка существования папки с дистрибутивом на целевом пк (тоже не сумел передать в переменную). Папки на диске С: (w10ru64, w10ua64, w10ru86).
Заранее огромное спасибо