Полное руководство: как использовать командную строку и PowerShell в Windows
Использовать командную строку и PowerShell в Windows можно через поиск в меню «Пуск» или Win+X. Для системных изменений обязателен запуск от имени администратора, а в Windows 11 по умолчанию открыт «Терминал» с вкладками.
Оглавление
Как открыть и запустить от имени администратора
В Windows 10 и 11 открыть консоль можно через меню «Пуск» (поиск по словам «cmd» или «powershell») или через системное меню Win+X. В Windows 11 по умолчанию вместо отдельных окон используется приложение «Терминал» (Windows Terminal), которое объединяет CMD и PowerShell во вкладках.
Для изменения системных настроек, управления службами или проверки файлов консоль обязательно нужно запускать с повышенными правами. Это делается правой кнопкой мыши по ярлыку в Пуске -> «Запуск от имени администратора» или комбинацией клавиш Ctrl+Shift+Enter при поиске в меню «Пуск».
Базовые команды CMD и PowerShell
Потеря данных: Использование команд на удаление (del, Remove-Item, format, rd /s) без полного понимания синтаксиса и флагов (например, -Recurse или /q) может привести к безвозвратному удалению файлов.
Базовые команды CMD (текстовый ввод):
ipconfig /all— показать IP, MAC-адреса и DNS.ping [адрес]— проверить доступность узла.sfc /scannow— проверить и восстановить целостность системных файлов.netstat -ano— посмотреть открытые порты и идентификаторы процессов.
Базовые команды PowerShell (объектная модель):
Get-Process— список запущенных процессов.Get-Service— список служб и их статус.Test-NetConnection [адрес]— расширенная проверка сети и портов.Get-Command— поиск всех доступных в системе команд.
Работа со скриптами и политика выполнения
Поломка системы: Запуск непроверенных скриптов (.ps1, .bat, .cmd), скопированных из интернета, от имени администратора может привести к изменению критических настроек ОС или установке вредоносного ПО.
По умолчанию PowerShell блокирует запуск любых пользовательских скриптов (.ps1).
Снижение безопасности: Установка политики выполнения PowerShell в значение Unrestricted (Неограничено) вместо RemoteSigned разрешает запуск любых, в том числе вредоносных, скриптов из интернета без предупреждения.
Для безопасной работы со скриптами необходимо изменить политику командой:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser (требует подтверждения).
Особенности установки и различия оболочек
| Характеристика | CMD | PowerShell |
|---|---|---|
| Тип данных | Только текст | Объекты (можно передавать процесс из одной команды в другую как структурированный объект) |
| Актуальность | Устарел | Рекомендуется для любых новых задач в Windows |
В PowerShell работают привычные команды из Linux и CMD, такие как ls, dir, cd, cat, ping. Это сделано для удобства пользователей, но под ними скрыты команды PowerShell (например, ls — это псевдоним для Get-ChildItem).
Для получения подробной информации без поиска в интернете используйте встроенную справку: Get-Help [имя_команды] -Full или Get-Help [имя_команды] -Examples.
Если вы используете Windows 10, настоятельно рекомендуется установить Windows Terminal. Он поддерживает вкладки, разделение экрана, горячие клавиши и GPU-ускорение отрисовки текста, в отличие от устаревшего окна conhost.exe.
Российский контекст: Базовое использование CMD и PowerShell не зависит от региона, так как это локальные компоненты ОС. Однако, если потребуется установить современную версию PowerShell 7 или Windows Terminal (для Windows 10), Microsoft Store может быть недоступен или требовать специфических настроек. В этом случае PowerShell 7 можно скачать в виде установщика (.msi) напрямую с официального репозитория GitHub (github.com/PowerShell/PowerShell).
Частые ошибки
- Ошибка «выполнение скриптов отключено». Возникает при попытке запустить файл
.ps1без изменения политики выполнения. Решение: выполнитьSet-ExecutionPolicy RemoteSigned -Scope CurrentUser. - Попытка решать сложные задачи через CMD. CMD работает только с текстом, что усложняет фильтрацию и обработку данных. Решение: переходить на PowerShell, использующий объектную модель.
- Случайное удаление файлов. Использование команд удаления без проверки пути или флагов. Решение: всегда перепроверять путь перед нажатием Enter и избегать использования
/qили-Recurseбез необходимости.
FAQ
Можно ли использовать команды из Linux в PowerShell?
Да, PowerShell поддерживает псевдонимы (aliases), такие как ls, cd, cat, которые на самом деле являются встроенными командами PowerShell (например, ls вызывает Get-ChildItem).
Как получить справку по конкретной команде без интернета?
Используйте встроенную справку: введите Get-Help [имя_команды] -Full для подробного описания или Get-Help [имя_команды] -Examples, чтобы увидеть готовые примеры использования.
Чем Windows Terminal лучше стандартной консоли?
Windows Terminal поддерживает вкладки, разделение экрана, настраиваемые горячие клавиши и GPU-ускорение отрисовки текста, в отличие от устаревшего стандартного окна conhost.exe.