Автоматизация
Windows управляется командами не хуже Linux, просто про это меньше говорят. PowerShell — язык, на котором админ спрашивает систему о чём угодно и меняет что угодно, на одной машине или на сотне сразу.
Главная удача PowerShell: команды не надо запоминать, их можно угадывать. Каждая построена как «Глагол-Существительное»: Get — получить, Set — изменить, Stop — остановить. Хочешь службы — Get-Service. Процессы — Get-Process. Не знаешь команду — спроси систему: Get-Command *user*.
Get-Service # все службы и их состояние Get-Service -Name Spooler # одна служба (печать) Restart-Service Spooler # перезапустить — лечит половину проблем с печатью Get-Process | Sort-Object CPU -Descending | Select-Object -First 5 # топ-5 процессов по процессору
Символ | передаёт результат следующей команде, как в bash. Разница принципиальная: по конвейеру идут не строки, а объекты со свойствами. Не нужно выпиливать колонку текстовыми ножницами — обращаешься к свойству по имени:
Get-Service | Where-Object Status -eq 'Stopped' # только остановленные службы Get-ChildItem C:\Logs | Where-Object Length -gt 100MB # файлы логов тяжелее 100 МБ Get-WinEvent -LogName System -MaxEvents 20 # последние 20 событий системного журнала
Отчёт о свободном месте на дисках — файл disk-report.ps1:
# disk-report.ps1 — свободное место по всем дискам Get-Volume | Where-Object DriveLetter | Select-Object DriveLetter, @{n='СвободноГБ'; e={[math]::Round($_.SizeRemaining/1GB,1)}}, @{n='ВсегоГБ'; e={[math]::Round($_.Size/1GB,1)}}
В доменной среде тот же язык управляет Active Directory: Get-ADUser выгружает пользователей, New-ADUser заводит новых пачкой из таблицы. Это уже уровень задач, за которые доплачивают.
Так же, как терминал Linux: по полчаса в день на виртуальной машине, на своих задачах. Начни с Get-команд — они ничего не меняют и безопасны. Параллель с bash помогает: выучив одну оболочку, вторую берёшь за неделю, у нас есть такой же разбор по bash. На курсе Windows и Linux обе оболочки идут в связке с задачами стенда.
{ Освоить администрирование Windows }Cmd — старая оболочка с двумя десятками команд, живёт для совместимости. PowerShell — полноценный инструмент управления системой; всё новое в Windows администрируется им.
Скорее всего, политика выполнения: по умолчанию Windows запрещает запуск скриптов. Для своей машины её смягчают командой Set-ExecutionPolicy RemoteSigned от администратора. Это первый вопрос каждого новичка, теперь ты знаешь ответ заранее.
Уметь выполнить Get-команды и прочитать чужой скрипт — да. Писать модули — нет. В чек-листе навыков он идёт строчкой «автоматизация рутины», наравне с bash.
ИП Апалин Владимир Александрович
ИНН 470517286143
ОГРНИП 323784700274393
Оставьте контакты — перезвоним и ответим.
Заявка отправлена. Скоро свяжемся.