1. Управление файлами и каталогами
Get-ChildItem (gci / ls / dir) – выводит список файлов и каталогов.
Синтаксис:
Get-ChildItem [-Path] <string> [-Recurse] [-Force]
Примеры:
Get-ChildItem # Список элементов в текущем каталоге
Get-ChildItem -Path C:\Users -Recurse # Рекурсивно вывести все элементы
Get-ChildItem -Force # Включить скрытые файлы
Set-Location (cd / sl) – смена текущего каталога.
Синтаксис:
Set-Location [-Path] <string>
Примеры:
Set-Location C:\Users # Перейти в каталог Users
Set-Location .. # Перейти в родительский каталог
Copy-Item (cp / copy) – копирует файлы или папки.
Синтаксис:
Copy-Item [-Path] <string> [-Destination] <string> [-Recurse] [-Force]
Примеры:
Copy-Item .\file.txt C:\Backup\file.txt
Copy-Item .\* C:\Backup -Recurse # Копировать все файлы рекурсивно
Move-Item (mv / move) – перемещает файлы или каталоги.
Синтаксис:
Move-Item [-Path] <string> [-Destination] <string> [-Force]
Примеры:
Move-Item .\file.txt C:\Archive\file.txt
Remove-Item (rm / del / rmdir) – удаляет файлы или каталоги.
Синтаксис:
Remove-Item [-Path] <string> [-Recurse] [-Force]
Примеры:
Remove-Item .\temp.txt # Удалить файл
Remove-Item C:\Temp -Recurse -Force # Удалить каталог со всем содержимым
New-Item – создаёт новый файл или каталог.
Синтаксис:
New-Item [-Path] <string> [-ItemType <string>]
Примеры:
New-Item -Path . -Name "NewFolder" -ItemType Directory
New-Item -Path . -Name "file.txt" -ItemType File
2. Управление системой и процессами
Get-Process (ps / gps) – выводит список запущенных процессов.
Синтаксис:
Get-Process [-Name] <string>
Примеры:
Get-Process # Показать все процессы
Get-Process -Name notepad # Показать только notepad
Stop-Process (kill) – завершает процесс.
Синтаксис:
Stop-Process [-Name] <string> [-Id] <int> [-Force]
Примеры:
Stop-Process -Name notepad
Stop-Process -Id 1234 -Force
Get-Service – выводит список сервисов Windows.
Синтаксис:
Get-Service [-Name] <string>
Примеры:
Get-Service # Показать все сервисы
Get-Service -Name wuauserv # Показать конкретный сервис
Start-Service / Stop-Service – запуск или остановка сервиса.
Синтаксис:
Start-Service [-Name] <string>
Stop-Service [-Name] <string>
Примеры:
Start-Service wuauserv
Stop-Service wuauserv
Restart-Computer – перезагрузка системы.
Синтаксис:
Restart-Computer [-Force] [-Wait] [-Delay <int>]
Пример:
Restart-Computer -Force
Get-EventLog – получение журналов событий.
Синтаксис:
Get-EventLog -LogName <string> [-Newest <int>]
Пример:
Get-EventLog -LogName System -Newest 10 # Последние 10 системных событий
3. Управление сетью
Test-Connection (ping) – проверяет подключение к другому компьютеру.
Синтаксис:
Test-Connection [-ComputerName] <string> [-Count <int>]
Пример:
Test-Connection google.com -Count 4
Get-NetIPAddress – показывает конфигурацию IP.
Синтаксис:
Get-NetIPAddress
Пример:
Get-NetIPAddress
Resolve-DnsName – DNS-запрос.
Синтаксис:
Resolve-DnsName [-Name] <string>
Пример:
Resolve-DnsName google.com
Get-NetTCPConnection – показывает TCP-соединения (аналог netstat).
Синтаксис:
Get-NetTCPConnection
Пример:
Get-NetTCPConnection
4. Переменные и окружение
Get-Variable / Set-Variable / Remove-Variable – управление переменными PowerShell.
Синтаксис:
Get-Variable -Name <string>
Set-Variable -Name <string> -Value <object>
Remove-Variable -Name <string>
Пример:
Set-Variable -Name myVar -Value 42
Get-Variable -Name myVar
Remove-Variable -Name myVar
Get-ChildItem Env: – вывод переменных окружения.
Синтаксис:
Get-ChildItem Env:
Пример:
Get-ChildItem Env:PATH
5. Вывод и форматирование
Write-Output / Write-Host – вывод текста на консоль.
Синтаксис:
Write-Output "text"
Write-Host "text"
Пример:
Write-Output "Привет, мир"
Write-Host "Внимание!" -ForegroundColor Red
Format-Table / Format-List – форматирование вывода.
Пример:
Get-Process | Format-Table -AutoSize
Get-Service | Format-List Name, Status
Out-File / Tee-Object – вывод в файл.
Пример:
Get-Process | Out-File C:\temp\processes.txt
Get-Process | Tee-Object -FilePath C:\temp\processes.txt
6. Скриптинг и управление потоками
If / Else – условная логика.
Пример:
if (Test-Path "C:\temp\file.txt") {
Write-Host "Файл существует"
} else {
Write-Host "Файл не найден"
}
ForEach-Object / ForEach – перебор коллекции.
Пример:
Get-ChildItem | ForEach-Object { Write-Host $_.Name }
Switch – множественный выбор.
Пример:
switch ($day) {
"Mon" { Write-Host "Понедельник" }
"Tue" { Write-Host "Вторник" }
}
Try / Catch / Finally – обработка ошибок.
Пример:
try {
Remove-Item "C:\temp\nofile.txt"
} catch {
Write-Host "Файл не найден"
} finally {
Write-Host "Операция завершена"
}