Основы работы 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 - Системные журналы можно фильтровать по дате, типу события и источнику