В этой, заключительной, части цикла я приведу примеры работы с типовыми задачами. Просто запустите команды по приведенному образцу, адаптируя их под свои системы, и посмотрите, как они работают.
Работа с файловыми системами
Get-PSDrive – посмотреть все диски WPS
Get-PSDrive -psprovider filesystem – посмотреть только диски файловой системы
Get-WmiObject Win32_logicaldisk | Select-Object deviceid,size, freespace – посмотреть букву диска, размер и свободное пространство на всех дисках (здесь используется обращение к WMI классу Win32_logicaldisk)
Get-ChildItem c:\ – просмотр каталога (то же что dir)
Get-ChildItem c:\windows -filter "*.dll" – просмотр каталога с фильтром
Get-ChildItem c:\windows –recurse - просмотр с вложенными каталогами
Get-ChildItem c:\windows | Measure-Object -Property length -min -max -average –sum – подсчет статистики по каталогу
Copy-Item c:\documents\file1.pdf c:\a\f1.pdf – копирование файла
Move-Item с:\documents\f1.pdf c:\a\f1.pdf – перемещение файла
Rename-Item f1.pdf f2.pdf – переименование файла
Remove-Item c:\a\f1.pdf – удаление файла
Get-Item с:\a\f1.pdf - просмотр свойств файла
Работа с документами
Get-Content c:\a\f1.csv - чтение файла
Get-Content c:\a\f1.csv | Measure-Object - вывод количества строк в файле
Get-Process | Out-File c:\a\processes1.txt – вывод результата работы команды в файл
Get-Service | ConvertTo-Html name,status –title "Servicelist" -body "List of services" |Set-Content с:\servicelist.htm – вывод результата работы команды в html файл
Работа с реестром
Set-Location hklm:\software – перейти в ветку реестра
Get-ChildItem hklm:\software – просмотр ветки реестра
New-Item –path hklm:\software -name test – создать новую ветку в реестре
Copy-Item hklm:\software\test hklm:\software\test_old - скопировать ветку реестра
Remove-Item "hklm:\software\test" –Recurse – удалить ветку реестра с вложениями
Автостарт
Get-Wmiobject Win32_StartupCommand – просмотр списка команд в автостарте windows
Общие папки
Get-WmiObject Win32_Share – просмотр списка общих папок
Работа с процессами
Get-Process – просмотр списка процессов
gps | Format-Table -GroupBy Name – вызов списка процессов с помощью псевдонима и с форматированием вывода
Get-Process –id 4011 – просмотр конкретного процесса
Start-Process powershell.exe -Credential (Get-Credential) – запуск процесса
Stop-Process -name iexplore – остановка процесса
Get-Process | where { $_.WS -gt 10MB } | stop-process – остановка процесса с условием
Работа с сервисами
Get-Service | Where-Object {$_.status –eq "running"} – просмотр запущенных сервисов
Get-Service | Where-Object {$_.status –eq "stopped"} – просмотр остановленных сервисов
Get-Service | sort Status | Format-Table -GroupBy Status – форматированный вывод списка сервисов
get-service iisadmin | % { $_.DependentServices } – вывод зависимых сервисов
Start-Service IISADMIN – старт сервиса
Stop-Service IISADMIN –force – старт сервиса вместе с зависимыми
Set-Service IISADMIN -startuptype "manual" – задание режима запуска сервиса
Установка нового сервиса
New-Service -Name "NewAppServer"
-binaryPathName c:\soft\appserver.exe
-Description "New App Server”
-DisplayName "New Application Server"
Start-Service NewAppServer
Работа с железом
Get-WmiObject Win32_Computersystem
Get-WmiObject Win32_OperatingSystem
Get-WmiObject Win32_OperatingSystem | select serialnumber
Get-WmiObject win32_Bios
Get-WmiObject Win32_BootConfiguration
Get-WmiObject Win32_WindowsProductActivation
Get-WmiObject Win32_OSRecoveryConfiguration
Get-WmiObject win32_processor
Get-WmiObject Win32_MemoryDevice
Get-WmiObject Win32_VideoController
Get-WmiObject Win32_SoundDevice
Get-WmiObject Win32_Diskdrive
Get-WmiObject Win32_Tapedrive
Get-WmiObject Win32_CDRomdrive
Get-WmiObject Win32_NetworkAdapter
Get-WmiObject Win32_USBController
Get-WmiObject Win32_Keyboard
Get-WmiObject Win32_PointingDevice
Get-WmiObject Win32_Printer
Get-WmiObject Win32_Printjob
Работа с Event Log
Get-EventLog –list – просмотр списка журналов
Get-EventLog Application – просмотр журнала
Get-EventLog Application -newest 30 – просмотр новых записей в журнале
Работа с учетными записями
Get-WmiObject Win32_Account - все записи
Get-WmiObject Win32_UserAccount - только пользователи
Get-WmiObject Win32_Group – только группы
Работа с ACL
Get-Acl hklm:/software/test – просмотр ACL для ветки реестра
Get-Acl c:\a – просмотр ACL для папки
Get-Acl c:\a\f1.txt – просмотр ACL для файла