Skip to main content

Основы работы CMD и Powershell

Файлы и папки

Просмотр содержимого каталога

Отображает список файлов и папок. Опции позволяют компактный вывод и включение скрытых файлов.

dir /b                 # CMD - только имена файлов и папок
dir /a                 # CMD - показать скрытые файлы
Get-ChildItem           # PowerShell - аналог команды dir
Get-ChildItem -Force    # PowerShell - показать скрытые файлы
Смена каталога
cd C:\Windows\System32                  # CMD
Set-Location C:\Windows\System32          # PowerShell
Создание каталога
md TempFolder                                    # CMD
New-Item -ItemType Directory -Path TempFolder       # PowerShell
Удаление файла
del /q old_log.txt                     # CMD - тихо, без подтверждения
Remove-Item old_log.txt -Force          # PowerShell
Удаление папки и её содержимого
rd /s /q "C:\Old Project"                # CMD - рекурсивно и тихо
Remove-Item "C:\Old Project" -Recurse -Force  # PowerShell
Просмотр содержимого файла
type config.txt              # CMD
Get-Content config.txt         # PowerShell
Работа с путями с пробелами и кириллицей
cd "C:\Program Files\My App"  
del "D:\Мои документы\Отчет за год.docx"  
Set-Location "C:\Program Files\My App"   # PowerShell
Remove-Item "D:\Мои документы\Отчет за год.docx" -Force   # PowerShell

Пользователи

Создание пользователя
net user newuser MyPassword /add               # CMD
New-LocalUser -Name "newuser" -Password (ConvertTo-SecureString "MyPassword" -AsPlainText -Force) # PowerShell
Удаление пользователя
net user newuser /delete                      # CMD
Remove-LocalUser -Name "newuser"                # PowerShell
Изменение группы или параметров пользователя
net localgroup Administrators newuser /add    # CMD - добавить в группу администраторов
Add-LocalGroupMember -Group "Administrators" -Member "newuser"  # PowerShell

Права и разрешения

Просмотр и изменение атрибутов файлов
attrib +r file.txt        # CMD - сделать файл только для чтения
attrib -r file.txt        # CMD - снять атрибут только для чтения
Get-Item file.txt | Set-ItemProperty -Name IsReadOnly -Value $true   # PowerShell
Get-Item file.txt | Set-ItemProperty -Name IsReadOnly -Value $false  # PowerShell

Диски и разделы

Проверка диска
chkdsk C: /f               # CMD - проверить и исправить ошибки
Get-Volume -DriveLetter C | Repair-Volume    # PowerShell
Свободное место
wmic logicaldisk get size,freespace,caption   # CMD
Get-Volume | Select-Object DriveLetter, SizeRemaining, Size  # PowerShell

Сетевые команды

Конфигурация интерфейсов
ipconfig /all                # CMD
Get-NetIPConfiguration        # PowerShell
Проверка доступности узла
ping ya.ru                   # CMD и PowerShell
Трассировка маршрута
tracert google.com           # CMD и PowerShell
Активные соединения
netstat -an                  # CMD
Get-NetTCPConnection          # PowerShell
Проверка DNS
nslookup ya.ru              # CMD и PowerShell

Процессы

Список процессов
tasklist                     # CMD
Get-Process                   # PowerShell
Завершение процессов
taskkill /pid 1234 /f         # CMD по PID
taskkill /im notepad.exe /f     # CMD по имени
Stop-Process -Id 1234 -Force    # PowerShell по PID
Stop-Process -Name notepad -Force  # PowerShell по имени

Система

Имя хоста
hostname                      # CMD
$env:COMPUTERNAME               # PowerShell
Проверка целостности файлов
sfc /scannow                  # CMD
Repair-WindowsImage -Online -CheckHealth   # PowerShell
Выключение и перезагрузка
shutdown /s /t 0               # CMD - выключение
shutdown /r /t 0               # CMD - перезагрузка
Stop-Computer                  # PowerShell - выключение
Restart-Computer               # PowerShell - перезагрузка

Поиск файлов

По имени
dir /s /b *.log                  # CMD - поиск файлов .log рекурсивно
Get-ChildItem -Path C:\ -Recurse -Filter *.log  # PowerShell
По размеру
# PowerShell пример поиска файлов >100MB
Get-ChildItem -Path C:\ -Recurse | Where-Object {$_.Length -gt 100MB}

PowerShell поиск файлов <1KB

Get-ChildItem -Path C:\Users\ -Recurse | Where-Object {$_.Length -lt 1KB}

Архивирование и сжатие

compact /c /s:C:\MyFolder         # CMD - сжать все файлы в папке
Compress-Archive -Path C:\MyFolder\* -DestinationPath C:\MyFolder.zip  # PowerShell

Логи и системный журнал

Просмотр событий через Event Viewer
eventvwr.msc                # CMD - открыть графический просмотр событий
Получение журналов через PowerShell
Get-EventLog -LogName System -Newest 50           # последние 50 записей системного журнала
Get-EventLog -LogName Application -EntryType Error   # ошибки в приложениях
Get-WinEvent -LogName Security | Select-Object -First 50   # новые события безопасности
Экспорт логов
wevtutil epl System C:\Logs\System.evtx        # CMD - экспорт журнала в файл
Get-EventLog -LogName System | Export-Csv C:\Logs\System.csv  # PowerShell в CSV

Полезные советы

  • Вывод команд в файл: dir /b > list.txt или Get-ChildItem | Out-File list.txt
  • Работа с длинными путями: PowerShell корректно обрабатывает пути >260 символов
  • Массовое удаление по шаблону: del *.tmp или Remove-Item *.tmp -Force
  • Поиск и фильтрация по размеру/дате/типу в PowerShell через Where-Object
  • Системные журналы можно фильтровать по дате, типу события и источнику