25 команд Windows, які мають бути під рукою у сисадміна: cheatsheet із прикладами

- Усі команди запускаються в cmd або PowerShell від імені адміністратора (
Win+X → Windows Terminal (Admin)). - Команди з точкою з комою (
;) чи «бектиком» — це PowerShell. Решта працює і в cmd, і в PowerShell однаково. - Деструктивні команди (
diskpart clean,robocopy /MIR,wusa /uninstall) спершу тестуйте на тестовому середовищі, а не на проді о 17:55 у п'ятницю.
🌐 Мережа
1. Повна інформація про мережеві інтерфейси. Перша команда, якою починається будь-яка мережева діагностика. Показує IP, маску, шлюз, DNS, MAC-адресу, чи DHCP.
ipconfig /all
2. Скинути DNS-кеш клієнта. Рятує, коли запис у DNS вже змінили, а машина досі резолвить старий IP. Класика для «у мене сайт не відкривається, а у всіх — відкривається».
ipconfig /flushdns
3. Перевипустити DHCP-адресу. Коли сетевий адаптер завис з чужою IP або не отримав нову.
ipconfig /release ipconfig /renew
4. Скинути TCP/IP-стек до дефолту. Коли після сумнівного VPN-клієнта, антивірусу чи «оптимізатора» інтернет перестав працювати — це перший крок перед тим, як лізти у драйвери.
netsh winsock reset netsh int ip reset
Після netsh winsock reset
обов'язково перезавантажте машину — інакше мережа залишиться в напіврозібраному стані. Статичні IP-налаштування збережуться, але правила Windows Firewall з нестандартних джерел можуть злетіти.
5. Хто слухає або тримає порт. Коли IIS не стартує бо «порт 443 зайнятий», а вгадати хто його зайняв — квест. PID у останньому стовпці.
netstat -ano | findstr :443
Далі по PID дізнаємось ім'я процесу:
tasklist /FI "PID eq 4532"
6. TCP-перевірка у PowerShell (заміна telnet). Windows давно не ставить telnet.exe за замовчуванням. Test-NetConnection робить те саме і навіть більше — одразу показує ping, trace і TCP-handshake.
Test-NetConnection smtp.office365.com -Port 587
Деталізований режим з RTT і роутингом:
Test-NetConnection 192.168.1.10 -Port 3389 -InformationLevel Detailed
7. DNS-діагностика. Коли треба порівняти відповіді різних DNS або перевірити конкретний запис (MX, TXT, SRV для AD).
nslookup mail.yourcompany.com 8.8.8.8
Те саме у PowerShell — зручніше для скриптів:
Resolve-DnsName _ldap._tcp.yourdomain.local -Type SRV
8. Шлях пакета і де губиться.
tracert показує хопи. pathping додатково збирає статистику втрат на кожному хопі за ~5 хвилин — безцінно для «то працює, то не працює».
tracert 8.8.8.8
pathping corp.yourcompany.com
💾 Диск і файли
9. Низькорівнева робота з дисками через diskpart. Інтерактивний шелл для розмічення. Коли Disk Management каже «не можу видалити цей розділ» — diskpart може все.
diskpart list disk select disk 1 list partition exit
Команда clean у diskpart затирає таблицю розділів вибраного диска миттєво і беззастережно. Відновлення — тільки через спеціалізовані утиліти й без гарантій. Перевіряйте двічі, який диск обрано (select disk N), перш ніж натискати clean.
10. Перевірка і ремонт файлової системи. Після BSOD, після raw-розділу, після жорсткого вимкнення. /f виправляє помилки, /r додатково шукає бед-сектори.
chkdsk C: /f /r /x
11. Індустріальний стандарт копіювання — robocopy. Заміна xcopy. Рестартабельне, багатопотокове, з логами, з правами доступу. Для міграції файл-сервера — безальтернативне.
robocopy C:Source D:Dest /MIR /COPYALL /R:2 /W:5 /MT:16 /LOG:migration.log /TEE
Розбір ключів: /MIR — дзеркальна синхронізація (видаляє те, чого нема у джерелі!), /COPYALL — копіювати все (включно з ACL і атрибутами), /R:2 /W:5 — 2 спроби з паузою 5с при помилках, /MT:16 — 16 потоків.
Ключ /MIR видаляє у пункті призначення файли, яких нема у джерелі. Якщо ви випадково поміняли місцями source і dest — за хвилину отримаєте порожню директорію. Для односторонньої копії без видалень використовуйте /E замість /MIR.
12. Перевірка цілісності системних файлів. Перше, що запускаєш, коли Windows починає «дивно поводитись»: пропали іконки в меню, не запускаються вбудовані застосунки, Explorer падає раз на годину.
sfc /scannow
13. Вільне місце у байтах (для скриптів). Коли треба витягти точну цифру у скрипт моніторингу без парсингу графічного виводу.
fsutil volume diskfree C:
Те саме в PowerShell:
Get-PSDrive C | Select-Object Used, Free
👥 Користувачі та Active Directory
14. Хто я, які маю SID і групи. Коли не розумієш, чому на одному ПК права є, а на іншому — нема. /groups показує всі групи, у яких ви опосередковано.
whoami /all
whoami /groups /fo list
15. Локальні користувачі і групи — net user / net localgroup. Старе добре, але працює завжди — навіть коли PowerShell-модулі недоступні.
net user administrator
net user svc_backup Pass123! /add
net localgroup administrators svc_backup /add
16. AD через PowerShell. Потрібен модуль RSAT: Active Directory Tools. Після встановлення — запит будь-якого атрибуту одним рядком.
Get-ADUser ivanov -Properties LastLogonDate, PasswordLastSet, LockedOut
Члени конкретної групи:
Get-ADGroupMember "Domain Admins" | Select Name, SamAccountName
17. HTML-звіт по GPO. «Чому в цього користувача не мапиться сетевий диск?» — відповідь тут. HTML-звіт зручно відкривається у браузері з усіма Result / Denied / WMI-фільтрами.
gpresult /h C:Tempgpo-report.html /f
Швидкий текстовий звіт лише для користувача:
gpresult /r /scope:user
18. Примусово застосувати групові політики. Після змін у GPO на контролері домену, щоб не чекати стандартний цикл 90-120 хвилин.
gpupdate /force
Якщо GPO потребує перезавантаження (для застосування):
gpupdate /force /boot
gpupdate /force перечитує всі GPO, навіть незмінені. На машинах з десятками політик це 1–2 хвилини CPU. Без /force оновлюються тільки ті, що змінилися — зазвичай цього достатньо.
⚙️ Процеси та служби
19. Перелік процесів.
tasklist — класика, одразу з фільтрами.
tasklist /FI "MEMUSAGE gt 500000" /FO TABLE
Те саме в PowerShell, але з можливістю далі обробляти результат як об'єкти:
Get-Process | Sort-Object WS -Descending | Select-Object -First 10 Name, WS, CPU
20. Прибити процес — taskkill. Коли програма «повисла» і не реагує на End Task у Диспетчері.
taskkill /F /PID 4532
Убити всі екземпляри Chrome разом з нащадками:
taskkill /F /IM chrome.exe /T
Варіант PowerShell:
Stop-Process -Name "outlook" -Force
21. Керування службами Windows — sc. Стан, старт, стоп, зміна режиму запуску — без відкривання services.msc.
sc query wuauserv
sc config spooler start= disabled
sc stop spooler && sc start spooler
Варіант PowerShell (рестарт з примусовим зупинкою залежностей):
Restart-Service -Name W32Time -Force
22. Перезавантаження, вимкнення, віддалено — shutdown. Особливо зручно для віддаленого ребуту сервера без RDP. Потрібні права адміна на цільовій машині.
shutdown /r /t 60 /c "Scheduled reboot for updates"
Негайний ребут іншого хоста в мережі:
shutdown /m \FILESRV01 /r /t 0 /f
Скасувати раніше заплановане:
shutdown /a
📋 Події та діагностика
23. Події з Event Log у консоль — wevtutil. Коли треба швидко подивитись останні критичні помилки без відкривання eventvwr.
wevtutil qe System /c:20 /rd:true /f:text /q:"*[System[Level=1 or Level=2]]"
Те саме в PowerShell, з часовим фільтром:
Get-WinEvent -FilterHashtable @{LogName='System'; Level=1,2; StartTime=(Get-Date).AddHours(-24)} | Select-Object TimeCreated, Id, Message -First 2024. Коротка довідка про машину. Версія ОС, час завантаження, hotfix-и, RAM, модель — все одним викликом. Часто достатньо для «чи актуальна у клієнта система».
systeminfo
Тільки ключові поля:
systeminfo | findstr /C:"OS Name" /C:"OS Version" /C:"System Boot Time"
25. Reliability Monitor — недооцінений інструмент. Візуальний timeline за 30 днів з відмітками падінь, синіх екранів, збоїв застосунків. Часто тут видно причину раніше, ніж у Event Viewer.
perfmon /rel
🔄 Оновлення та розгортання
26. Ремонт образу Windows — DISM. Коли sfc /scannow знайшов помилки, але не зміг виправити — звертається до DISM як до джерела правди. Команда довга (15–30 хв), але безпечна.
DISM /Online /Cleanup-Image /RestoreHealth
Прибрати старі версії компонентів WinSxS:
DISM /Online /Cleanup-Image /StartComponentCleanup
27. Видалити конкретне оновлення. Коли після вчорашнього Patch Tuesday в організації посипались RDP, принтери чи Outlook. Знайти винний KB і відкотити.
wusa /uninstall /kb:5034441 /quiet /norestart
Спочатку — переглянути список встановлених hotfix:
wmic qfe list brief /format:table
28. Пакетний менеджер winget. Встановлений за замовчуванням на Windows 10 21H2+ / 11. Замінює ручне скачування MSI-файлів з сайтів.
winget install Microsoft.PowerShell
winget upgrade --all
winget list --source winget
Бонус. Керування драйверами — pnputil. Перегляд, встановлення й видалення драйверів без GUI — незамінне для серверів і автоматизації.
pnputil /enum-drivers
pnputil /add-driver C:Driversintel_lan.inf /install
pnputil /delete-driver oem42.inf /uninstall /force
Як користуватися цим cheatsheet
Не намагайтесь запам'ятати всі команди одразу. Закиньте сторінку у закладки й користуйтесь як довідником. За 2-3 місяці активного використання ~15 команд осядуть у пам'яті намертво — це й будуть «ваші» команди, які потрібні у 80% випадків. Кнопка «Копіювати» в кутку кожного блоку — щоб не виділяти пальцем.
Якщо хочете розширений варіант з конкретними одно-лайнерами PowerShell для AD, файл-серверів і моніторингу — пишіть у коментарях, зробимо окремий розбір.
- Діагностика мережі:
ipconfig /all,Test-NetConnection,nslookup,tracert - Цілісність системи:
sfc /scannow,DISM /RestoreHealth,chkdsk /f /r - Міграція й копіювання:
robocopy /MIR(обережно з напрямом!) - Групові політики:
gpresult /h,gpupdate /force - Процеси:
tasklist,taskkill /F,Get-Process | Sort WS - Події:
Get-WinEvent,perfmon /rel - Віддалений перезапуск:
shutdown /m \host /r /t 0 /f