Команды PowerShell с описанием и примерами


Name
----
%
?
A:
ac
Add-Computer
Add-Content
Add-History
Add-Member
Add-PSSnapin
Add-Type
Alias
asnp
B:
C:
cat
cd
cd..
cd\
Certificate
chdir
Checkpoint-Computer
clc
Clear-Content
Clear-EventLog
Clear-History
Clear-Host
Clear-Item
Clear-ItemProperty
Clear-Variable
clear
clhy
cli
clp
cls
clv
Compare-Object
compare
Complete-Transaction
Connect-WSMan
Convert-Path
ConvertFrom-CSV
ConvertFrom-SecureString
ConvertFrom-StringData
ConvertTo-CSV
ConvertTo-Html
ConvertTo-SecureString
ConvertTo-XML
Copy-Item
Copy-ItemProperty
copy
cp
cpi
cpp
cvpa
D:
dbp
Debug-Process
del
diff
dir
Disable-ComputerRestore
Disable-PSBreakpoint
Disable-PSRemoting
Disable-PSSessionConfiguration
Disable-WSManCredSSP
Disconnect-WSMan
E:
ebp
echo
Enable-ComputerRestore
Enable-PSBreakpoint
Enable-PSRemoting
Enable-PSSessionConfiguration
Enable-WSManCredSSP
Enter-PSSession
Environment
epal
epcsv
epsn
erase
etsn
Exit-PSSession
Export-Alias
Export-Clixml
Export-Console
Export-Counter
Export-CSV
Export-FormatData
Export-ModuleMember
Export-PSSession
exsn
F:
fc
FileSystem
fl
ForEach-Object
foreach
Format-Custom
Format-List
Format-Table
Format-Wide
ft
Function
fw
G:
gal
gbp
gc
gci
gcm
gcs
gdr
Get-Acl
Get-Alias
Get-AuthenticodeSignature
Get-ChildItem
Get-Command
Get-ComputerRestorePoint
Get-Content
Get-Counter
Get-Credential
Get-Culture
Get-Date
Get-Event
Get-EventLog
Get-EventSubscriber
Get-ExecutionPolicy
Get-FormatData
Get-Help
Get-History
Get-Host
Get-HotFix
Get-Item
Get-ItemProperty
Get-Job
Get-Location
Get-Member
Get-Module
Get-PfxCertificate
Get-Process
Get-PSBreakpoint
Get-PSCallStack
Get-PSDrive
Get-PSProvider
Get-PSSession
Get-PSSessionConfiguration
Get-PSSnapin
Get-Random
Get-Service
Get-TraceSource
Get-Transaction
Get-UICulture
Get-Unique
Get-Variable
Get-Verb
Get-WinEvent
Get-WmiObject
Get-WSManCredSSP
Get-WSManInstance
ghy
gi
gjb
gl
gm
gmo
gp
gps
Group-Object
group
gsn
gsnp
gsv
gu
gv
gwmi
h
H:
help
history
I:
icm
iex
ihy
ii
Import-Alias
Import-Clixml
Import-Counter
Import-CSV
Import-LocalizedData
Import-Module
Import-PSSession
ImportSystemModules
Invoke-Command
Invoke-Expression
Invoke-History
Invoke-Item
Invoke-WmiMethod
Invoke-WSManAction
ipal
ipcsv
ipmo
ipsn
ise
iwmi
J:
Join-Path
K:
kill
L:
Limit-EventLog
lp
ls
M:
man
md
Measure-Command
Measure-Object
measure
mi
mkdir
more
mount
Move-Item
Move-ItemProperty
move
mp
mv
N:
nal
ndr
New-Alias
New-Event
New-EventLog
New-Item
New-ItemProperty
New-Module
New-ModuleManifest
New-Object
New-PSDrive
New-PSSession
New-PSSessionOption
New-Service
New-TimeSpan
New-Variable
New-WebServiceProxy
New-WSManInstance
New-WSManSessionOption
ni
nmo
nsn
nv
O:
ogv
oh
Out-Default
Out-File
Out-GridView
Out-Host
Out-Null
Out-Printer
Out-String
P:
Pop-Location
popd
prompt
ps
Push-Location
pushd
pwd
Q:
r
R:
rbp
rcjb
rd
rdr
Read-Host
Receive-Job
Register-EngineEvent
Register-ObjectEvent
Register-PSSessionConfiguration
Register-WmiEvent
Registry
Remove-Computer
Remove-Event
Remove-EventLog
Remove-Item
Remove-ItemProperty
Remove-Job
Remove-Module
Remove-PSBreakpoint
Remove-PSDrive
Remove-PSSession
Remove-PSSnapin
Remove-Variable
Remove-WmiObject
Remove-WSManInstance
ren
Rename-Item
Rename-ItemProperty
Reset-ComputerMachinePassword
Resolve-Path
Restart-Computer
Restart-Service
Restore-Computer
Resume-Service
ri
rjb
rm
rmdir
rmo
rni
rnp
rp
rsn
rsnp
rv
rvpa
rwmi
S:
sajb
sal
saps
sasv
sbp
sc
Select-Object
Select-String
Select-XML
select
Send-MailMessage
Set-Acl
Set-Alias
Set-AuthenticodeSignature
Set-Content
Set-Date
Set-ExecutionPolicy
Set-Item
Set-ItemProperty
Set-Location
Set-PSBreakpoint
Set-PSDebug
Set-PSSessionConfiguration
Set-Service
Set-StrictMode
Set-TraceSource
Set-Variable
Set-WmiInstance
Set-WSManInstance
Set-WSManQuickConfig
set
Show-EventLog
si
sl
sleep
Sort-Object
sort
sp
spjb
Split-Path
spps
spsv
Start-Job
Start-Process
Start-Service
Start-Sleep
Start-Transaction
Start-Transcript
start
Stop-Computer
Stop-Job
Stop-Process
Stop-Service
Stop-Transcript
Suspend-Service
sv
swmi
T:
TabExpansion
Tee-Object
tee
Test-ComputerSecureChannel
Test-Connection
Test-ModuleManifest
Test-Path
Test-WSMan
Trace-Command
type
U:
Undo-Transaction
Unregister-Event
Unregister-PSSessionConfiguration
Update-FormatData
Update-List
Update-TypeData
Use-Transaction
V:
Variable
W:
Wait-Event
Wait-Job
Wait-Process
Where-Object
where
wjb
Write-Debug
Write-Error
Write-EventLog
Write-Host
Write-Output
Write-Progress
Write-Verbose
Write-Warning
write
WSMan
X:
Y:
Z:

Category
--------
Alias
Alias
Function
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Provider
Alias
Function
Function
Alias
Alias
Function
Function
Provider
Alias
Cmdlet
Alias
Cmdlet
Cmdlet
Cmdlet
Function
Cmdlet
Cmdlet
Cmdlet
Alias
Alias
Alias
Alias
Alias
Alias
Cmdlet
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Alias
Alias
Alias
Alias
Function
Alias
Cmdlet
Alias
Alias
Alias
Cmdlet
Cmdlet
Function
Cmdlet
Cmdlet
Cmdlet
Function
Alias
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Provider
Alias
Alias
Alias
Alias
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Function
Alias
Provider
Alias
Cmdlet
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Provider
Alias
Function
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Function
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Cmdlet
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Function
Function
Alias
Function
Alias
Alias
Alias
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Function
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Alias
Alias
Alias
Alias
Alias
Function
Cmdlet
Function
Alias
Function
Cmdlet
Alias
Alias
Function
Alias
Alias
Cmdlet
Cmdlet
Alias
Alias
Function
Function
Alias
Cmdlet
Cmdlet
Alias
Alias
Alias
Function
Alias
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Alias
Alias
Alias
Function
Alias
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Function
Cmdlet
Alias
Function
Alias
Cmdlet
Alias
Alias
Function
Alias
Function
Alias
Alias
Alias
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Provider
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Function
Alias
Alias
Alias
Alias
Alias
Alias
Cmdlet
Cmdlet
Cmdlet
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Cmdlet
Alias
Alias
Alias
Cmdlet
Alias
Alias
Alias
Cmdlet
Alias
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Alias
Function
Function
Cmdlet
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Function
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Function
Provider
Function
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Alias
Provider
Function
Function
Function

Synopsis
--------
ForEach-Object 
Where-Object 
Set-Location A: 
Add-Content 
Добавление локального компьютера в домен или рабочую группу.               
Добавляет содержимое в заданные элементы, например слова в файл.           
Добавляет записи в журнал сеанса.                                          
Добавляет определенный пользователем элемент в экземпляр объекта оболочк...
Добавляет одну или несколько оснасток Windows PowerShell в текущий сеанс.  
Добавляет тип (класс) Microsoft .NET Framework в сеанс Windows PowerShell. 
Предоставляет доступ к псевдонимам Windows PowerShell и представленным и...
Add-PSSnapin 
Set-Location B: 
Set-Location C: 
Get-Content 
Set-Location 
.... 
.... 
Обеспечивает доступ к хранилищам сертификатов X.509 и сертификатам из об...
Set-Location 
Создает точку восстановления системы на локальном компьютере.              
Clear-Content 
Удаляет содержимое элемента без удаления самого элемента, например, удал...
Удаляет все записи из заданных журналов событий на локальном или удаленн...
Удаляет записи из журнала сеанса.                                          
.... 
Удаляет содержимое элемента без удаления самого элемента.                  
Удаляет значение свойства без удаления самого свойства.                    
Удаляет значение переменной.                                               
Clear-Host 
Clear-History 
Clear-Item 
Clear-ItemProperty 
Clear-Host 
Clear-Variable 
Сравнивает два набора объектов.                                            
Compare-Object 
Фиксирует активную транзакцию.                                             
Подключается к службе WinRM на удаленном компьютере.                       
Преобразует путь Windows PowerShell в путь поставщика Windows PowerShell.  
Преобразует свойства объекта из CSV-формата (с разделителями-запятыми) в...
Преобразует защищенную строку в зашифрованную стандартную строку.          
Преобразует строку, содержащую одну или несколько пар типа ключ-значение...
Преобразует объекты Microsoft .NET Framework в набор строк переменной дл...
Преобразует объекты Microsoft .NET Framework в код HTML, который может о...
Преобразует зашифрованные стандартные строки в защищенные строки. Можно ...
Создает XML-представление объекта.                                         
Копирует элемент из одного местоположения в другое внутри одного простра...
Копирует свойство и его значение из одного указанного местоположения в д...
Copy-Item 
Copy-Item 
Copy-Item 
Copy-ItemProperty 
Convert-Path 
Set-Location D: 
Disable-PSBreakpoint 
Отлаживает один или несколько процессов, выполняющихся на локальном комп...
Remove-Item 
Compare-Object 
Get-ChildItem 
Отключает функцию восстановления системы на указанном диске файловой сис...
Отключает точки останова для текущей консоли.                              
.... 
Запрещает доступ к конфигурациям сеанса на локальном компьютере.           
Отключает проверку подлинности поставщика услуг безопасности CredSSP на ...
Отключает клиент от службы WinRM на удаленном компьютере.                  
Set-Location E: 
Enable-PSBreakpoint 
Write-Output 
Включает функцию восстановления системы на указанном диске файловой сист...
Включает точки останова для текущей консоли.                               
Настраивает компьютер для получения удаленных команд.                      
Разрешает доступ к конфигурациям сеанса на локальном компьютере.           
Включает проверку подлинности поставщика услуг безопасности CredSSP на к...
Начинает интерактивный сеанс с удаленным компьютером.                      
Предоставляет доступ к переменным среды Windows.                           
Export-Alias 
Export-Csv 
Export-PSSession 
Remove-Item 
Enter-PSSession 
Завершает интерактивный сеанс с удаленным компьютером.                     
Экспортирует сведения об определенных на текущий момент псевдонимах в файл.
Создает XML-представление объекта или объектов и сохраняет его в файле.    
Экспортирует имена оснасток в текущем сеансе в файл консоли.               
Командлет Export-Counter получает объекты PerformanceCounterSampleSet и ...
Преобразует объекты Microsoft .NET Framework в набор строк переменной дл...
Сохраняет данные форматирования текущего сеанса в файле форматирования.    
Задает экспортируемые элементы модуля.                                     
Импортирует команды из другого сеанса и сохраняет их в модуле Windows Po...
Exit-PSSession 
Set-Location F: 
Format-Custom 
Предоставляет доступ к файлам и каталогам.                                 
Format-List 
Выполняет операцию для каждого из последовательности объектов ввода.       
ForEach-Object 
Использует пользовательское представление для форматирования вывода.       
Форматирует вывод как список свойств, в котором каждое свойство выводитс...
Форматирует вывод в виде таблицы.                                          
Форматирует объекты в виде широкой таблицы, в которой отображается тольк...
Format-Table 
Предоставляет доступ к функциям, определенным в Windows PowerShell.        
Format-Wide 
Set-Location G: 
Get-Alias 
Get-PSBreakpoint 
Get-Content 
Get-ChildItem 
Get-Command 
Get-PSCallStack 
Get-PSDrive 
Получает дескриптор безопасности для ресурса, такого как файл или раздел...
Возвращает псевдонимы, действительные в ходе текущего сеанса.              
Получает сведения о подписи Authenticode в файле.                          
Извлекает элементы и их потомки из заданных местоположений.                
Возвращает базовые сведения о командлетах и о других элементах команд Wi...
Получает точки восстановления системы на локальном компьютере.             
Извлекает содержимое элемента, находящегося в заданном местоположении.     
Получает данные счетчиков производительности на локальном компьютере и у...
Получает объект хранения учетных данных на основе имени пользователя и п...
Получает текущее значение культуры, установленное в операционной системе.  
Получает текущие значение даты и времени.                                  
Получает события из очереди событий.                                       
Получает события, зарегистрированные в журнале событий, или список журна...
Получает подписчики на события в текущем сеансе.                           
Получает политики выполнения для текущего сеанса.                          
Получает данные форматирования для текущего сеанса.                        
Отображает сведения о командах и концепциях Windows PowerShell.            
Возвращает список команд, введенных за время текущего сеанса.              
Получает объект, представляющий текущую основную программу. Отображает т...
Получает исправления, примененные на локальном компьютере или на удаленн...
Получает элемент, находящийся в заданном местоположении.                   
Получает свойства заданного элемента.                                      
Получает фоновые задания Windows PowerShell, активные в текущем сеансе.    
Получает сведения о текущем рабочем местоположении.                        
Получает свойства и методы объектов.                                       
Получает модули, которые были импортированы или могут быть импортированы...
Получает данные о PFX-файлах сертификата в компьютере.                     
Получает процессы, выполняющиеся на локальном или удаленном компьютере.    
Получает настроенные в текущем сеансе точки останова.                      
Отображает текущий стек вызова.                                            
Получает диски Windows PowerShell, используемые в текущем сеансе.          
Получает сведения об указанном поставщике Windows PowerShell.              
Получает сеансы Windows PowerShell (объекты PSSession) в текущем сеансе.   
Получает зарегистрированные конфигурации сеансов на компьютере.            
Возвращает оснастки Windows PowerShell на данном компьютере.               
Получает случайное число или случайным образом выбирает объекты из колле...
Получает службы на локальном или удаленном компьютере.                     
Возвращает компоненты Windows PowerShell, подготовленные к трассировке.    
Получает текущую (активную) транзакцию.                                    
Получает текущие параметры культуры пользовательского интерфейса операци...
Возвращает уникальные элементы из отсортированного списка.                 
Получает переменные, определенные для текущей консоли.                     
.... 
Получает события из журналов событий и файлов журналов отслеживания собы...
Получает экземпляры классов WMI или сведения о доступных классах.          
Получает связанную с поставщиком услуг безопасности конфигурацию для кли...
Отображает сведения об управлении для экземпляра ресурса, заданного URI ...
Get-History 
Get-Item 
Get-Job 
Get-Location 
Get-Member 
Get-Module 
Get-ItemProperty 
Get-Process 
Группирует объекты, в которых указанные свойства имеют одно и то же знач...
Group-Object 
Get-PSSession 
Get-PSSnapin 
Get-Service 
Get-Unique 
Get-Variable 
Get-WmiObject 
Get-History 
Set-Location H: 
.... 
Get-History 
Set-Location I: 
Invoke-Command 
Invoke-Expression 
Invoke-History 
Invoke-Item 
Импортирует список псевдонимов из файла.                                   
Импортирует файл CLIXML и создает соответствующие объекты в оболочке Win...
Импортирует файлы журналов счетчиков производительности (BLG, CSV, TSV) ...
Преобразует свойства объекта из CSV-файла (с разделителями-запятыми) в C...
Импортирует относящиеся к конкретному языку данные в скрипты и функции н...
Добавляет модули в текущий сеанс.                                          
Импортирует в текущий сеанс команды из другого сеанса.                     
.... 
Выполняет команды на локальном и удаленных компьютерах.                    
Выполняет команды или выражения на локальном компьютере.                   
Выполняет команды из журнала сеанса.                                       
Выполняет действие по умолчанию над указанным элементом.                   
Вызывает методы инструментария управления Windows (WMI)                    
Вызывает действие на объекте, заданном при помощи URI ресурса и селекторов.
Import-Alias 
Import-Csv 
Import-Module 
Import-PSSession 
powershell_ise.exe 
Invoke-WmiMethod 
Set-Location J: 
Соединяет корневой и вложенный пути в один. Поставщик задает разделители...
Set-Location K: 
Stop-Process 
Set-Location L: 
Задает свойства журнала событий, устанавливающие ограничения размера жур...
Out-Printer 
Get-ChildItem 
Set-Location M: 
help 
mkdir 
Измеряет время выполнения блоков скриптов и командлетов.                   
Рассчитывает числовые свойства объектов, а также количество знаков, слов...
Measure-Object 
Move-Item 
.... 
.... 
New-PSDrive 
Перемещает элемент из одного местоположения в другое.                      
Перемещает свойство из одного местоположения в другое.                     
Move-Item 
Move-ItemProperty 
Move-Item 
Set-Location N: 
New-Alias 
New-PSDrive 
Создает новый псевдоним.                                                   
Создает новое событие.                                                     
Создает новый журнал событий и новый источник событий на локальном или у...
Создает новый элемент.                                                     
Создает новое свойство элемента и задает значение этого свойства. Наприм...
Создает новый динамический модуль, который существует только в памяти.     
Создает новый манифест модуля.                                             
Создает экземпляр объекта Microsoft .NET Framework или COM object.         
Создает диск Windows PowerShell в текущем сеансе.                          
Создает постоянное подключение к локальному или удаленному компьютеру.     
Создает объект, содержащий дополнительные параметры для PSSession.         
Создает новую службу Windows.                                              
Создает объект TimeSpan.                                                   
Создает новую переменную.                                                  
Создает прокси-объект веб-службы, позволяющий использовать веб-службу и ...
Создает новый экземпляр ресурса управления.                                
Создает хэш-таблицу параметров сеанса WS-Management для использования в ...
New-Item 
New-Module 
New-PSSession 
New-Variable 
Set-Location O: 
Out-GridView 
Out-Host 
Отправляет выходные данные в модуль форматирования по умолчанию и в кома...
Отправляет вывод в файл.                                                   
Отправляет результаты в интерактивную таблицу в отдельном окне.            
Отправляет вывод в командную строку.                                       
Удаляет вывод вместо того, чтобы отправить его на консоль.                 
Отправляет вывод на принтер.                                               
Отправляет объекты основному приложению в виде последовательности строк.   
Set-Location P: 
Меняет текущее местоположение на местоположение, указанное в последней з...
Pop-Location 
.... 
Get-Process 
Добавляет текущее местоположение в начало списка местоположений ("стек").  
Push-Location 
Get-Location 
Set-Location Q: 
Invoke-History 
Set-Location R: 
Remove-PSBreakpoint 
Receive-Job 
Remove-Item 
Remove-PSDrive 
Считывает из консоли строку ввода.                                         
Получает результаты фоновых заданий Windows PowerShell в текущем сеансе.   
Создает подписку на события, создаваемые обработчиком Windows PowerShell...
Создает подписку на события, создаваемые объектами Microsoft .NET Framew...
Создает и регистрирует новую конфигурацию сеанса.                          
Подписывает на событие инструментария управления Windows (WMI).            
Предоставляет доступ к разделам и значениям системного реестра в Windows...
Удаление локального компьютера из домена или рабочей группы.               
Удаляет события из очереди событий.                                        
Удаляет журнал событий или отменяет регистрацию источника событий.         
Удаляет заданные элементы.                                                 
Удаляет свойство элемента и его значение.                                  
Удаляет фоновое задание Windows PowerShell.                                
Удаляет модули из текущего сеанса.                                         
Удаляет из текущей консоли точки останова.                                 
Удаляет диск Windows PowerShell из заданного местоположения.               
Закрывает один или несколько сеансов Windows PowerShell (PSSession).       
Удаляет оснастки Windows PowerShell из текущего сеанса.                    
Удаляет переменную и ее значение.                                          
Удаляет экземпляр существующего класса инструментария управления Windows...
Удаляет экземпляр ресурса управления.                                      
Rename-Item 
Переименовывает элемент в пространстве имен поставщика Windows PowerShell. 
Переименовывает свойство элемента.                                         
Сбрасывает пароль учетной записи компьютера.                               
Разрешает значения подстановочных знаков в пути и отображает содержимое,...
Перезапускает ("перезагружает") операционную систему локального и удален...
Останавливает, а затем запускает заново одну или несколько служб.          
Запускает восстановление системы на локальном компьютере.                  
Возобновляет работу приостановленных служб.                                
Remove-Item 
Remove-Job 
Remove-Item 
Remove-Item 
Remove-Module 
Rename-Item 
Rename-ItemProperty 
Remove-ItemProperty 
Remove-PSSession 
Remove-PSSnapin 
Remove-Variable 
Resolve-Path 
Remove-WmiObject 
Set-Location S: 
Start-Job 
Set-Alias 
Start-Process 
Start-Service 
Set-PSBreakpoint 
Set-Content 
Выбирает указанные свойства объекта или набора объектов. Также он может ...
Находит текст в строках и файлах.                                          
Находит текст в XML-строке или документе.                                  
Select-Object 
Отправляет сообщение электронной почты.                                    
Изменяет дескриптор безопасности указанного ресурса, например файла или ...
Создает или изменяет псевдоним (альтернативное имя) командлета или друго...
Добавляет подпись Authenticode, чтобы подписать скрипт Windows PowerShel...
Записывает новое содержимое в элемент или заменяет им старое.              
Устанавливает системное время на компьютере.                               
Изменяет пользовательские параметры политики выполнения Windows PowerShell.
Заменяет значение элемента на значение, указанное в команде.               
Создает или изменяет значение свойства элемента.                           
Присваивает текущему местоположению заданное значение.                     
Устанавливает точку останова на строке, команде или переменной.            
Позволяет включать и отключать функции отладки скриптов, устанавливать у...
Изменяет свойства зарегистрированной конфигурации сеанса.                  
Запускает, останавливает и приостанавливает службу и изменяет ее свойства. 
Задает и применяет правила кодирования в выражениях, скриптах и блоках с...
Настраивает, запускает и останавливает трассировку компонентов Windows P...
Задает значение переменной. Если переменная с указанным именем не сущест...
Создает или обновляет экземпляр существующего класса инструментария упра...
Вносит изменения в относящиеся к ресурсу сведения об управлении.           
Настраивает локальный компьютер для удаленного управления.                 
Set-Variable 
Отображает журналы событий локального или удаленного компьютера в средст...
Set-Item 
Set-Location 
Start-Sleep 
Сортирует объекты по значениям свойств.                                    
Sort-Object 
Set-ItemProperty 
Stop-Job 
Возвращает указанную часть пути.                                           
Stop-Process 
Stop-Service 
Запускает фоновое задание Windows PowerShell.                              
Запускает один или несколько процессов на локальном компьютере.            
Запускает остановленные службы.                                            
Приостанавливает выполнение скрипта или сеанса на указанный период времени.
Запускает транзакцию.                                                      
Создает запись всего сеанса Windows PowerShell или его части в текстовом...
Start-Process 
Останавливает локальный и удаленные компьютеры (завершает работу компьют...
Останавливает фоновое задание Windows PowerShell.                          
Останавливает один или несколько выполняющихся процессов.                  
Останавливает одну или несколько выполняющихся служб.                      
Останавливает запись.                                                      
Приостанавливает одну или несколько выполняющихся служб.                   
Set-Variable 
Set-WmiInstance 
Set-Location T: 
.... 
Сохраняет выходные данные команды в файле или переменной и отображает их...
Tee-Object 
Проверяет и исправляет безопасный канал между локальным компьютером и ег...
Отправляет пакеты эхо-запросов ICMP (запросы проверки связи) одному или ...
Проверяет, что файл манифеста модуля точно описывает содержимое модуля.    
Проверяет, существуют ли все элементы пути.                                
Проверяет, запущена ли служба WinRM на локальном или удаленном компьютере. 
Настраивает и запускает трассировку указанного выражения или команды.      
Get-Content 
Set-Location U: 
Откатывает активную транзакцию.                                            
Отменяет подписку на событие.                                              
Удаляет зарегистрированные конфигурации сеанса с компьютера.               
Обновляет данные форматирования для текущего сеанса.                       
Добавляет и удаляет элементы в значении свойства, содержащего коллекцию ...
Обновляет текущую расширенную конфигурацию типов, перезагружая файлы *.t...
Добавляет блок скрипта в активную транзакцию.                              
Set-Location V: 
Предоставляет доступ к переменным Windows PowerShell и их значениям.       
Set-Location W: 
Ожидает определенного события, прежде чем продолжить выполнение.           
Отключает командную строку до завершения выполнения одного или нескольки...
Ожидает остановки процессов, прежде чем принимать следующий ввод.          
Создает фильтр, который определяет, какие объекты будут переданы по кома...
Where-Object 
Wait-Job 
Выводит сообщение отладки на консоль.                                      
Записывает объект в поток ошибок.                                          
Записывает событие в журнал событий.                                       
Записывает в основную программу пользовательский вывод.                    
Отправляет заданные объекты очередной команде в конвейере. Если команда ...
Отображает индикатор выполнения в командном окне Windows PowerShell.       
Записывает текст в поток подробных сообщений.                              
Записывает предупреждающее сообщение.                                      
Write-Output 
Обеспечивает доступ к конфигурационной информации веб-служб WS-Management. 
Set-Location X: 
Set-Location Y: 
Set-Location Z: 


about_aliases
about_Arithmetic_Operators
about_arrays
about_Assignment_Operators
about_Automatic_Variables
about_Break
about_command_precedence
about_Command_Syntax
about_Comment_Based_Help
about_CommonParameters
about_Comparison_Operators
about_Continue
about_Core_Commands
about_data_sections
about_debuggers
about_do
about_environment_variables
about_escape_characters
about_eventlogs
about_execution_policies
about_For
about_Foreach
about_format.ps1xml
about_functions
about_functions_advanced
about_functions_advanced_methods
about_functions_advanced_param...
about_functions_cmdletbindinga...
about_hash_tables
about_History
about_If
about_job_details
about_jobs
about_join
about_Language_Keywords
about_Line_Editing
about_locations
about_logical_operators
about_methods
about_modules
about_objects
about_operators
about_parameters
about_Parsing
about_Path_Syntax
about_pipelines
about_preference_variables
about_profiles
about_prompts
about_properties
about_providers
about_pssession_details
about_pssessions
about_PSSnapins
about_Quoting_Rules
about_Redirection
about_Ref
about_regular_expressions
about_remote
about_remote_FAQ
about_remote_jobs
about_remote_output
about_remote_requirements
about_remote_troubleshooting
about_requires
about_Reserved_Words
about_Return
about_scopes
about_script_blocks
about_script_internationalization
about_scripts
about_Session_Configurations
about_Signing
about_Special_Characters
about_split
about_Switch
about_Throw
about_transactions
about_trap
about_try_catch_finally
about_type_operators
about_types.ps1xml
about_Variables
about_While
about_wildcards
about_Windows_PowerShell_2.0
about_Windows_PowerShell_ISE
about_WMI_Cmdlets
about_WS-Management_Cmdlets
default

HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile

Описывает использование альтернативных имен командлетов и команд           
Описание арифметических операторов, используемых в Windows PowerShell.     
Описание компактной структуры размещения элементов данных                  
Описание использования операторов для присваивания значений                
Описание переменных, в которых хранятся сведения о состоянии оболочки      
Описывает инструкции, которые можно использовать для немедленного          
Описывает, как Windows PowerShell определяет выполняемую команду.          
Описывает синтаксис, используемый в справке для Windows PowerShell.        
Описание написания разделов справки на основе комментариев для             
Описание параметров, которые могут использоваться с любым командлетом.     
Описание операторов сравнения, используемых в Windows PowerShell.          
Описывает использование инструкции Continue для немедленного перехода      
Выводит список командлетов, предназначенных для работы с поставщиками      
Описывает разделы Data, позволяющие отделить текстовые строки и            
Описывает отладчик Windows PowerShell.                                     
Выполняет список инструкций один или несколько раз в зависимости           
Описывает, как обращаться к переменным среды Windows из Windows            
Представляет escape-символы Windows PowerShell и их назначение.            
Windows PowerShell создает журнал событий Windows с именем "Windows        
Описывает политики выполнения Windows PowerShell и способы                 
Описывает команду языка, которую можно использовать для выполнения         
Описывает команду языка, позволяющую перебрать все элементы в              
Файлы Format.ps1xml в Windows PowerShell определяют формат по              
Описывает, как создавать и использовать функции в Windows PowerShell.      
Представляет расширенные функции, которые работают подобно                 
Описывает, каким образом функции, имеющие атрибут CmdletBinding, могут     
Описывает, как добавлять статические и динамические параметры в функции,   
Описывает атрибут, который объявляет функцию, действие которой             
Описывает, как создавать, использовать и сортировать хэш-таблицы           
Описывает, как извлекать команды из журнала команд.                        
Описывает команду языка, которую можно использовать для                    
Содержит сведения о фоновых заданиях на локальных и удаленных              
Сведения о выполнении команд и выражений в фоновых заданиях Windows        
Описание принципов действия оператора -join, объединяющего                 
Описание ключевых слов языка скриптов Windows PowerShell.                  
Описание способов редактирования команд в командной строке Windows         
Описание способов доступа к элементам из рабочего местоположения           
Описание операторов, объединяющих инструкции Windows PowerShell.           
Описание способов использования методов для выполнения действий с          
Описание процедур установки, импорта и использования модулей               
Основные сведения об объектах в Windows PowerShell.                        
Описание операторов, поддерживаемых в Windows PowerShell.                  
Описание работы с параметрами командлетов в Windows PowerShell.            
Описание синтаксического анализа команд в Windows PowerShell.              
Описание форматов полного и относительного имени пути в Windows            
Объединение команд в конвейеры в Windows PowerShell                        
Переменные, которые настраивают поведение Windows PowerShell               
Содержит описание, как создавать и использовать профиль Windows            
Описывает функцию Prompt и показывает, как создать пользовательску         
Содержит описание использования свойств объектов в Windows                 
Описание принципов, по которым поставщики Windows PowerShell               
Предоставляет подробное описание сеансов Windows PowerShell и их           
Содержит описание сеансов Windows PowerShell (сеансы PSSession) и          
Описывает оснастки Windows PowerShell, содержит сведения об                
Описывает правила использования одиночных и двойных кавычек в Windows      
Описывает порядок перенаправления вывода из Windows PowerShell             
Описывает порядок создания и использования типа ссылочной переменной.      
Описание регулярных выражений в Windows PowerShell.                        
Описывает, как выполнять удаленные команды в Windows PowerShell.           
Содержит вопросы о выполнении удаленных команд в Windows                   
Описывает, как выполнять фоновые задания на удаленных компьютерах.         
Описывает, как интерпретировать и форматировать выходные данные            
Описывает требования к системе и конфигурации для выполнения удаленных     
Описывает, как устранять неполадки удаленных операций в                    
Запрещает выполнение скриптов при отсутствии указанных оснасток            
Содержит список зарезервированных слов, которые имеют специальное          
Выход из текущей области действия, которая может быть функцией,            
Объясняется концепция области действия в Windows PowerShell и              
Определение блока скрипта и описание использования блоков скрипта          
Описание возможностей интернационализации скриптов Windows                 
Описание написания и выполнения скриптов в Windows PowerShell.             
Описание конфигураций сеансов, определяющих, пользователей, которые могут  
Описание процедуры подписания скриптов для их соответствия политикам       
Описание специальных символов, которые можно использовать, чтобы           
Описание использования оператора split для разбивки одной или              
Описание использования инструкции Switch для обработки нескольких          
Описание ключевого слова Throw, генерирующего ошибку с                     
Описание способов управления операциями транзакций в Windows               
Описывает ключевое слово, обрабатывающее прерывающие ошибки.               
Описание использования блоков Try, Catch и Finally для обработки           
Описывает операторы, работающие с типами Microsoft .NET Framework.         
Описывает, как с помощью файлов Types.ps1xml расширить типы                
Описание хранения переменными значений, используемых в Windows             
Описывает инструкцию языка, которую можно использовать для                 
Описывает использование подстановочных знаков в Windows PowerShell.        
Описание новых возможностей Windows PowerShell версии 2.0.                 
Описание функций интегрированной среды скриптов (ISE) Windows              
Содержит общие сведения об инструментарии управления Windows (WMI)         
Содержит общие сведения о протоколе WS-Management, помогающие              
Отображает справочные сведения о командлетах и концепциях Windows          




Name
----
ac
asnp
clc
cli
clp
clv
compare
cpi
cpp
cvpa
dbp
diff
ebp
epal
epcsv
fc
fl
foreach
%
ft
fw
gal
gbp
gc
gci
gcm
gdr
gcs
ghy
gi
gl
gm
gmo
gp
gps
group
gsv
gsnp
gu
gv
gwmi
iex
ihy
ii
ipmo
iwmi
ipal
ipcsv
measure
mi
mp
nal
ndr
ni
nv
nmo
oh
ogv
ise
rbp
rdr
ri
rni
rnp
rp
rmo
rsnp
rv
rwmi
rvpa
sal
sasv
sbp
sc
select
si
sl
swmi
sleep
sort
sp
saps
start
spps
spsv
sv
tee
where
?
write
cat
cd
clear
cp
h
history
kill
lp
ls
man
mount
md
mv
popd
ps
pushd
pwd
r
rm
rmdir
echo
cls
chdir
copy
del
dir
erase
move
rd
ren
set
type
icm
clhy
gjb
rcjb
rjb
sajb
spjb
wjb
nsn
gsn
rsn
ipsn
epsn
etsn
exsn
Get-WinEvent
Get-Counter
Import-Counter
Export-Counter
Disable-WSManCredSSP
Enable-WSManCredSSP
Get-WSManCredSSP
Set-WSManQuickConfig
Test-WSMan
Invoke-WSManAction
Connect-WSMan
Disconnect-WSMan
Get-WSManInstance
Set-WSManInstance
Remove-WSManInstance
New-WSManInstance
New-WSManSessionOption
Get-Command
Get-Help
Get-History
Invoke-History
Add-History
Clear-History
Register-PSSessionConfiguration
Unregister-PSSessionConfiguration
Get-PSSessionConfiguration
Set-PSSessionConfiguration
Enable-PSSessionConfiguration
Disable-PSSessionConfiguration
Enable-PSRemoting
Invoke-Command
New-PSSession
Get-PSSession
Remove-PSSession
Start-Job
Get-Job
Receive-Job
Stop-Job
Wait-Job
Remove-Job
Enter-PSSession
Exit-PSSession
New-PSSessionOption
ForEach-Object
Where-Object
Set-PSDebug
Set-StrictMode
New-Module
Import-Module
Export-ModuleMember
Get-Module
Remove-Module
New-ModuleManifest
Test-ModuleManifest
Add-PSSnapin
Remove-PSSnapin
Get-PSSnapin
Export-Console
Format-List
Format-Custom
Format-Table
Format-Wide
Out-Null
Out-Default
Out-Host
Out-File
Out-Printer
Out-String
Out-GridView
Get-FormatData
Export-FormatData
Register-ObjectEvent
Register-EngineEvent
Wait-Event
Get-Event
Remove-Event
Get-EventSubscriber
Unregister-Event
New-Event
Add-Member
Add-Type
Compare-Object
ConvertTo-Html
ConvertFrom-StringData
Export-CSV
Import-CSV
ConvertTo-CSV
ConvertFrom-CSV
Export-Alias
Invoke-Expression
Get-Alias
Get-Culture
Get-Date
Get-Host
Get-Member
Get-Random
Get-UICulture
Get-Unique
Export-PSSession
Import-PSSession
Import-Alias
Import-LocalizedData
Select-String
Measure-Object
New-Alias
New-TimeSpan
Read-Host
Set-Alias
Set-Date
Start-Sleep
Tee-Object
Measure-Command
Update-List
Update-TypeData
Update-FormatData
Write-Host
Write-Progress
New-Object
Select-Object
Group-Object
Sort-Object
Get-Variable
New-Variable
Set-Variable
Remove-Variable
Clear-Variable
Export-Clixml
Import-Clixml
ConvertTo-XML
Select-XML
Write-Debug
Write-Verbose
Write-Warning
Write-Error
Write-Output
Set-PSBreakpoint
Get-PSBreakpoint
Remove-PSBreakpoint
Enable-PSBreakpoint
Disable-PSBreakpoint
Get-PSCallStack
Send-MailMessage
Get-TraceSource
Set-TraceSource
Trace-Command
Start-Transcript
Stop-Transcript
Add-Content
Clear-Content
Clear-ItemProperty
Join-Path
Convert-Path
Copy-ItemProperty
Get-EventLog
Clear-EventLog
Write-EventLog
Limit-EventLog
Show-EventLog
New-EventLog
Remove-EventLog
Get-ChildItem
Get-Content
Get-ItemProperty
Get-WmiObject
Invoke-WmiMethod
Move-ItemProperty
Get-Location
Set-Location
Push-Location
Pop-Location
New-PSDrive
Remove-PSDrive
Get-PSDrive
Get-Item
New-Item
Set-Item
Remove-Item
Move-Item
Rename-Item
Copy-Item
Clear-Item
Invoke-Item
Get-PSProvider
New-ItemProperty
Split-Path
Test-Path
Get-Process
Stop-Process
Wait-Process
Debug-Process
Start-Process
Remove-ItemProperty
Remove-WmiObject
Rename-ItemProperty
Register-WmiEvent
Resolve-Path
Get-Service
Stop-Service
Start-Service
Suspend-Service
Resume-Service
Restart-Service
Set-Service
New-Service
Set-Content
Set-ItemProperty
Set-WmiInstance
Get-Transaction
Start-Transaction
Complete-Transaction
Undo-Transaction
Use-Transaction
New-WebServiceProxy
Get-HotFix
Test-Connection
Enable-ComputerRestore
Disable-ComputerRestore
Checkpoint-Computer
Get-ComputerRestorePoint
Restart-Computer
Stop-Computer
Restore-Computer
Add-Computer
Remove-Computer
Test-ComputerSecureChannel
Reset-ComputerMachinePassword
Get-Acl
Set-Acl
Get-PfxCertificate
Get-Credential
Get-ExecutionPolicy
Set-ExecutionPolicy
Get-AuthenticodeSignature
Set-AuthenticodeSignature
ConvertFrom-SecureString
ConvertTo-SecureString
WSMan
Alias
Environment
FileSystem
Function
Registry
Variable
Certificate
about_aliases
about_Arithmetic_Operators
about_arrays
about_Assignment_Operators
about_Automatic_Variables
about_Break
about_command_precedence
about_Command_Syntax
about_Comment_Based_Help
about_CommonParameters
about_Comparison_Operators
about_Continue
about_Core_Commands
about_data_sections
about_debuggers
about_do
about_environment_variables
about_escape_characters
about_eventlogs
about_execution_policies
about_For
about_Foreach
about_format.ps1xml
about_functions
about_functions_advanced
about_functions_advanced_methods
about_functions_advanced_param...
about_functions_cmdletbindinga...
about_hash_tables
about_History
about_If
about_jobs
about_job_details
about_join
about_Language_Keywords
about_Line_Editing
about_locations
about_logical_operators
about_methods
about_modules
about_objects
about_operators
about_parameters
about_Parsing
about_Path_Syntax
about_pipelines
about_preference_variables
about_profiles
about_prompts
about_properties
about_providers
about_pssessions
about_pssession_details
about_PSSnapins
about_Quoting_Rules
about_Redirection
about_Ref
about_regular_expressions
about_remote
about_remote_FAQ
about_remote_jobs
about_remote_output
about_remote_requirements
about_remote_troubleshooting
about_requires
about_Reserved_Words
about_Return
about_scopes
about_scripts
about_script_blocks
about_script_internationalization
about_Session_Configurations
about_Signing
about_Special_Characters
about_split
about_Switch
about_Throw
about_transactions
about_trap
about_try_catch_finally
about_types.ps1xml
about_type_operators
about_Variables
about_While
about_wildcards
about_Windows_PowerShell_2.0
about_Windows_PowerShell_ISE
about_WMI_Cmdlets
about_WS-Management_Cmdlets
default
A:
B:
C:
cd..
cd\
Clear-Host
D:
Disable-PSRemoting
E:
F:
G:
Get-Verb
H:
help
I:
ImportSystemModules
J:
K:
L:
M:
mkdir
more
N:
O:
P:
prompt
Q:
R:
S:
T:
TabExpansion
U:
V:
W:
X:
Y:
Z:

Category
--------
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Alias
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Cmdlet
Provider
Provider
Provider
Provider
Provider
Provider
Provider
Provider
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
HelpFile
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function

Synopsis
--------
Add-Content 
Add-PSSnapin 
Clear-Content 
Clear-Item 
Clear-ItemProperty 
Clear-Variable 
Compare-Object 
Copy-Item 
Copy-ItemProperty 
Convert-Path 
Disable-PSBreakpoint 
Compare-Object 
Enable-PSBreakpoint 
Export-Alias 
Export-Csv 
Format-Custom 
Format-List 
ForEach-Object 
ForEach-Object 
Format-Table 
Format-Wide 
Get-Alias 
Get-PSBreakpoint 
Get-Content 
Get-ChildItem 
Get-Command 
Get-PSDrive 
Get-PSCallStack 
Get-History 
Get-Item 
Get-Location 
Get-Member 
Get-Module 
Get-ItemProperty 
Get-Process 
Group-Object 
Get-Service 
Get-PSSnapin 
Get-Unique 
Get-Variable 
Get-WmiObject 
Invoke-Expression 
Invoke-History 
Invoke-Item 
Import-Module 
Invoke-WmiMethod 
Import-Alias 
Import-Csv 
Measure-Object 
Move-Item 
Move-ItemProperty 
New-Alias 
New-PSDrive 
New-Item 
New-Variable 
New-Module 
Out-Host 
Out-GridView 
powershell_ise.exe 
Remove-PSBreakpoint 
Remove-PSDrive 
Remove-Item 
Rename-Item 
Rename-ItemProperty 
Remove-ItemProperty 
Remove-Module 
Remove-PSSnapin 
Remove-Variable 
Remove-WmiObject 
Resolve-Path 
Set-Alias 
Start-Service 
Set-PSBreakpoint 
Set-Content 
Select-Object 
Set-Item 
Set-Location 
Set-WmiInstance 
Start-Sleep 
Sort-Object 
Set-ItemProperty 
Start-Process 
Start-Process 
Stop-Process 
Stop-Service 
Set-Variable 
Tee-Object 
Where-Object 
Where-Object 
Write-Output 
Get-Content 
Set-Location 
Clear-Host 
Copy-Item 
Get-History 
Get-History 
Stop-Process 
Out-Printer 
Get-ChildItem 
help 
New-PSDrive 
mkdir 
Move-Item 
Pop-Location 
Get-Process 
Push-Location 
Get-Location 
Invoke-History 
Remove-Item 
Remove-Item 
Write-Output 
Clear-Host 
Set-Location 
Copy-Item 
Remove-Item 
Get-ChildItem 
Remove-Item 
Move-Item 
Remove-Item 
Rename-Item 
Set-Variable 
Get-Content 
Invoke-Command 
Clear-History 
Get-Job 
Receive-Job 
Remove-Job 
Start-Job 
Stop-Job 
Wait-Job 
New-PSSession 
Get-PSSession 
Remove-PSSession 
Import-PSSession 
Export-PSSession 
Enter-PSSession 
Exit-PSSession 
Получает события из журналов событий и файлов журналов отслеживания собы...
Получает данные счетчиков производительности на локальном компьютере и у...
Импортирует файлы журналов счетчиков производительности (BLG, CSV, TSV) ...
Командлет Export-Counter получает объекты PerformanceCounterSampleSet и ...
Отключает проверку подлинности поставщика услуг безопасности CredSSP на ...
Включает проверку подлинности поставщика услуг безопасности CredSSP на к...
Получает связанную с поставщиком услуг безопасности конфигурацию для кли...
Настраивает локальный компьютер для удаленного управления.                 
Проверяет, запущена ли служба WinRM на локальном или удаленном компьютере. 
Вызывает действие на объекте, заданном при помощи URI ресурса и селекторов.
Подключается к службе WinRM на удаленном компьютере.                       
Отключает клиент от службы WinRM на удаленном компьютере.                  
Отображает сведения об управлении для экземпляра ресурса, заданного URI ...
Вносит изменения в относящиеся к ресурсу сведения об управлении.           
Удаляет экземпляр ресурса управления.                                      
Создает новый экземпляр ресурса управления.                                
Создает хэш-таблицу параметров сеанса WS-Management для использования в ...
Возвращает базовые сведения о командлетах и о других элементах команд Wi...
Отображает сведения о командах и концепциях Windows PowerShell.            
Возвращает список команд, введенных за время текущего сеанса.              
Выполняет команды из журнала сеанса.                                       
Добавляет записи в журнал сеанса.                                          
Удаляет записи из журнала сеанса.                                          
Создает и регистрирует новую конфигурацию сеанса.                          
Удаляет зарегистрированные конфигурации сеанса с компьютера.               
Получает зарегистрированные конфигурации сеансов на компьютере.            
Изменяет свойства зарегистрированной конфигурации сеанса.                  
Разрешает доступ к конфигурациям сеанса на локальном компьютере.           
Запрещает доступ к конфигурациям сеанса на локальном компьютере.           
Настраивает компьютер для получения удаленных команд.                      
Выполняет команды на локальном и удаленных компьютерах.                    
Создает постоянное подключение к локальному или удаленному компьютеру.     
Получает сеансы Windows PowerShell (объекты PSSession) в текущем сеансе.   
Закрывает один или несколько сеансов Windows PowerShell (PSSession).       
Запускает фоновое задание Windows PowerShell.                              
Получает фоновые задания Windows PowerShell, активные в текущем сеансе.    
Получает результаты фоновых заданий Windows PowerShell в текущем сеансе.   
Останавливает фоновое задание Windows PowerShell.                          
Отключает командную строку до завершения выполнения одного или нескольки...
Удаляет фоновое задание Windows PowerShell.                                
Начинает интерактивный сеанс с удаленным компьютером.                      
Завершает интерактивный сеанс с удаленным компьютером.                     
Создает объект, содержащий дополнительные параметры для PSSession.         
Выполняет операцию для каждого из последовательности объектов ввода.       
Создает фильтр, который определяет, какие объекты будут переданы по кома...
Позволяет включать и отключать функции отладки скриптов, устанавливать у...
Задает и применяет правила кодирования в выражениях, скриптах и блоках с...
Создает новый динамический модуль, который существует только в памяти.     
Добавляет модули в текущий сеанс.                                          
Задает экспортируемые элементы модуля.                                     
Получает модули, которые были импортированы или могут быть импортированы...
Удаляет модули из текущего сеанса.                                         
Создает новый манифест модуля.                                             
Проверяет, что файл манифеста модуля точно описывает содержимое модуля.    
Добавляет одну или несколько оснасток Windows PowerShell в текущий сеанс.  
Удаляет оснастки Windows PowerShell из текущего сеанса.                    
Возвращает оснастки Windows PowerShell на данном компьютере.               
Экспортирует имена оснасток в текущем сеансе в файл консоли.               
Форматирует вывод как список свойств, в котором каждое свойство выводитс...
Использует пользовательское представление для форматирования вывода.       
Форматирует вывод в виде таблицы.                                          
Форматирует объекты в виде широкой таблицы, в которой отображается тольк...
Удаляет вывод вместо того, чтобы отправить его на консоль.                 
Отправляет выходные данные в модуль форматирования по умолчанию и в кома...
Отправляет вывод в командную строку.                                       
Отправляет вывод в файл.                                                   
Отправляет вывод на принтер.                                               
Отправляет объекты основному приложению в виде последовательности строк.   
Отправляет результаты в интерактивную таблицу в отдельном окне.            
Получает данные форматирования для текущего сеанса.                        
Сохраняет данные форматирования текущего сеанса в файле форматирования.    
Создает подписку на события, создаваемые объектами Microsoft .NET Framew...
Создает подписку на события, создаваемые обработчиком Windows PowerShell...
Ожидает определенного события, прежде чем продолжить выполнение.           
Получает события из очереди событий.                                       
Удаляет события из очереди событий.                                        
Получает подписчики на события в текущем сеансе.                           
Отменяет подписку на событие.                                              
Создает новое событие.                                                     
Добавляет определенный пользователем элемент в экземпляр объекта оболочк...
Добавляет тип (класс) Microsoft .NET Framework в сеанс Windows PowerShell. 
Сравнивает два набора объектов.                                            
Преобразует объекты Microsoft .NET Framework в код HTML, который может о...
Преобразует строку, содержащую одну или несколько пар типа ключ-значение...
Преобразует объекты Microsoft .NET Framework в набор строк переменной дл...
Преобразует свойства объекта из CSV-файла (с разделителями-запятыми) в C...
Преобразует объекты Microsoft .NET Framework в набор строк переменной дл...
Преобразует свойства объекта из CSV-формата (с разделителями-запятыми) в...
Экспортирует сведения об определенных на текущий момент псевдонимах в файл.
Выполняет команды или выражения на локальном компьютере.                   
Возвращает псевдонимы, действительные в ходе текущего сеанса.              
Получает текущее значение культуры, установленное в операционной системе.  
Получает текущие значение даты и времени.                                  
Получает объект, представляющий текущую основную программу. Отображает т...
Получает свойства и методы объектов.                                       
Получает случайное число или случайным образом выбирает объекты из колле...
Получает текущие параметры культуры пользовательского интерфейса операци...
Возвращает уникальные элементы из отсортированного списка.                 
Импортирует команды из другого сеанса и сохраняет их в модуле Windows Po...
Импортирует в текущий сеанс команды из другого сеанса.                     
Импортирует список псевдонимов из файла.                                   
Импортирует относящиеся к конкретному языку данные в скрипты и функции н...
Находит текст в строках и файлах.                                          
Рассчитывает числовые свойства объектов, а также количество знаков, слов...
Создает новый псевдоним.                                                   
Создает объект TimeSpan.                                                   
Считывает из консоли строку ввода.                                         
Создает или изменяет псевдоним (альтернативное имя) командлета или друго...
Устанавливает системное время на компьютере.                               
Приостанавливает выполнение скрипта или сеанса на указанный период времени.
Сохраняет выходные данные команды в файле или переменной и отображает их...
Измеряет время выполнения блоков скриптов и командлетов.                   
Добавляет и удаляет элементы в значении свойства, содержащего коллекцию ...
Обновляет текущую расширенную конфигурацию типов, перезагружая файлы *.t...
Обновляет данные форматирования для текущего сеанса.                       
Записывает в основную программу пользовательский вывод.                    
Отображает индикатор выполнения в командном окне Windows PowerShell.       
Создает экземпляр объекта Microsoft .NET Framework или COM object.         
Выбирает указанные свойства объекта или набора объектов. Также он может ...
Группирует объекты, в которых указанные свойства имеют одно и то же знач...
Сортирует объекты по значениям свойств.                                    
Получает переменные, определенные для текущей консоли.                     
Создает новую переменную.                                                  
Задает значение переменной. Если переменная с указанным именем не сущест...
Удаляет переменную и ее значение.                                          
Удаляет значение переменной.                                               
Создает XML-представление объекта или объектов и сохраняет его в файле.    
Импортирует файл CLIXML и создает соответствующие объекты в оболочке Win...
Создает XML-представление объекта.                                         
Находит текст в XML-строке или документе.                                  
Выводит сообщение отладки на консоль.                                      
Записывает текст в поток подробных сообщений.                              
Записывает предупреждающее сообщение.                                      
Записывает объект в поток ошибок.                                          
Отправляет заданные объекты очередной команде в конвейере. Если команда ...
Устанавливает точку останова на строке, команде или переменной.            
Получает настроенные в текущем сеансе точки останова.                      
Удаляет из текущей консоли точки останова.                                 
Включает точки останова для текущей консоли.                               
Отключает точки останова для текущей консоли.                              
Отображает текущий стек вызова.                                            
Отправляет сообщение электронной почты.                                    
Возвращает компоненты Windows PowerShell, подготовленные к трассировке.    
Настраивает, запускает и останавливает трассировку компонентов Windows P...
Настраивает и запускает трассировку указанного выражения или команды.      
Создает запись всего сеанса Windows PowerShell или его части в текстовом...
Останавливает запись.                                                      
Добавляет содержимое в заданные элементы, например слова в файл.           
Удаляет содержимое элемента без удаления самого элемента, например, удал...
Удаляет значение свойства без удаления самого свойства.                    
Соединяет корневой и вложенный пути в один. Поставщик задает разделители...
Преобразует путь Windows PowerShell в путь поставщика Windows PowerShell.  
Копирует свойство и его значение из одного указанного местоположения в д...
Получает события, зарегистрированные в журнале событий, или список журна...
Удаляет все записи из заданных журналов событий на локальном или удаленн...
Записывает событие в журнал событий.                                       
Задает свойства журнала событий, устанавливающие ограничения размера жур...
Отображает журналы событий локального или удаленного компьютера в средст...
Создает новый журнал событий и новый источник событий на локальном или у...
Удаляет журнал событий или отменяет регистрацию источника событий.         
Извлекает элементы и их потомки из заданных местоположений.                
Извлекает содержимое элемента, находящегося в заданном местоположении.     
Получает свойства заданного элемента.                                      
Получает экземпляры классов WMI или сведения о доступных классах.          
Вызывает методы инструментария управления Windows (WMI)                    
Перемещает свойство из одного местоположения в другое.                     
Получает сведения о текущем рабочем местоположении.                        
Присваивает текущему местоположению заданное значение.                     
Добавляет текущее местоположение в начало списка местоположений ("стек").  
Меняет текущее местоположение на местоположение, указанное в последней з...
Создает диск Windows PowerShell в текущем сеансе.                          
Удаляет диск Windows PowerShell из заданного местоположения.               
Получает диски Windows PowerShell, используемые в текущем сеансе.          
Получает элемент, находящийся в заданном местоположении.                   
Создает новый элемент.                                                     
Заменяет значение элемента на значение, указанное в команде.               
Удаляет заданные элементы.                                                 
Перемещает элемент из одного местоположения в другое.                      
Переименовывает элемент в пространстве имен поставщика Windows PowerShell. 
Копирует элемент из одного местоположения в другое внутри одного простра...
Удаляет содержимое элемента без удаления самого элемента.                  
Выполняет действие по умолчанию над указанным элементом.                   
Получает сведения об указанном поставщике Windows PowerShell.              
Создает новое свойство элемента и задает значение этого свойства. Наприм...
Возвращает указанную часть пути.                                           
Проверяет, существуют ли все элементы пути.                                
Получает процессы, выполняющиеся на локальном или удаленном компьютере.    
Останавливает один или несколько выполняющихся процессов.                  
Ожидает остановки процессов, прежде чем принимать следующий ввод.          
Отлаживает один или несколько процессов, выполняющихся на локальном комп...
Запускает один или несколько процессов на локальном компьютере.            
Удаляет свойство элемента и его значение.                                  
Удаляет экземпляр существующего класса инструментария управления Windows...
Переименовывает свойство элемента.                                         
Подписывает на событие инструментария управления Windows (WMI).            
Разрешает значения подстановочных знаков в пути и отображает содержимое,...
Получает службы на локальном или удаленном компьютере.                     
Останавливает одну или несколько выполняющихся служб.                      
Запускает остановленные службы.                                            
Приостанавливает одну или несколько выполняющихся служб.                   
Возобновляет работу приостановленных служб.                                
Останавливает, а затем запускает заново одну или несколько служб.          
Запускает, останавливает и приостанавливает службу и изменяет ее свойства. 
Создает новую службу Windows.                                              
Записывает новое содержимое в элемент или заменяет им старое.              
Создает или изменяет значение свойства элемента.                           
Создает или обновляет экземпляр существующего класса инструментария упра...
Получает текущую (активную) транзакцию.                                    
Запускает транзакцию.                                                      
Фиксирует активную транзакцию.                                             
Откатывает активную транзакцию.                                            
Добавляет блок скрипта в активную транзакцию.                              
Создает прокси-объект веб-службы, позволяющий использовать веб-службу и ...
Получает исправления, примененные на локальном компьютере или на удаленн...
Отправляет пакеты эхо-запросов ICMP (запросы проверки связи) одному или ...
Включает функцию восстановления системы на указанном диске файловой сист...
Отключает функцию восстановления системы на указанном диске файловой сис...
Создает точку восстановления системы на локальном компьютере.              
Получает точки восстановления системы на локальном компьютере.             
Перезапускает ("перезагружает") операционную систему локального и удален...
Останавливает локальный и удаленные компьютеры (завершает работу компьют...
Запускает восстановление системы на локальном компьютере.                  
Добавление локального компьютера в домен или рабочую группу.               
Удаление локального компьютера из домена или рабочей группы.               
Проверяет и исправляет безопасный канал между локальным компьютером и ег...
Сбрасывает пароль учетной записи компьютера.                               
Получает дескриптор безопасности для ресурса, такого как файл или раздел...
Изменяет дескриптор безопасности указанного ресурса, например файла или ...
Получает данные о PFX-файлах сертификата в компьютере.                     
Получает объект хранения учетных данных на основе имени пользователя и п...
Получает политики выполнения для текущего сеанса.                          
Изменяет пользовательские параметры политики выполнения Windows PowerShell.
Получает сведения о подписи Authenticode в файле.                          
Добавляет подпись Authenticode, чтобы подписать скрипт Windows PowerShel...
Преобразует защищенную строку в зашифрованную стандартную строку.          
Преобразует зашифрованные стандартные строки в защищенные строки. Можно ...
Обеспечивает доступ к конфигурационной информации веб-служб WS-Management. 
Предоставляет доступ к псевдонимам Windows PowerShell и представленным и...
Предоставляет доступ к переменным среды Windows.                           
Предоставляет доступ к файлам и каталогам.                                 
Предоставляет доступ к функциям, определенным в Windows PowerShell.        
Предоставляет доступ к разделам и значениям системного реестра в Windows...
Предоставляет доступ к переменным Windows PowerShell и их значениям.       
Обеспечивает доступ к хранилищам сертификатов X.509 и сертификатам из об...
Описывает использование альтернативных имен командлетов и команд           
Описание арифметических операторов, используемых в Windows PowerShell.     
Описание компактной структуры размещения элементов данных                  
Описание использования операторов для присваивания значений                
Описание переменных, в которых хранятся сведения о состоянии оболочки      
Описывает инструкции, которые можно использовать для немедленного          
Описывает, как Windows PowerShell определяет выполняемую команду.          
Описывает синтаксис, используемый в справке для Windows PowerShell.        
Описание написания разделов справки на основе комментариев для             
Описание параметров, которые могут использоваться с любым командлетом.     
Описание операторов сравнения, используемых в Windows PowerShell.          
Описывает использование инструкции Continue для немедленного перехода      
Выводит список командлетов, предназначенных для работы с поставщиками      
Описывает разделы Data, позволяющие отделить текстовые строки и            
Описывает отладчик Windows PowerShell.                                     
Выполняет список инструкций один или несколько раз в зависимости           
Описывает, как обращаться к переменным среды Windows из Windows            
Представляет escape-символы Windows PowerShell и их назначение.            
Windows PowerShell создает журнал событий Windows с именем "Windows        
Описывает политики выполнения Windows PowerShell и способы                 
Описывает команду языка, которую можно использовать для выполнения         
Описывает команду языка, позволяющую перебрать все элементы в              
Файлы Format.ps1xml в Windows PowerShell определяют формат по              
Описывает, как создавать и использовать функции в Windows PowerShell.      
Представляет расширенные функции, которые работают подобно                 
Описывает, каким образом функции, имеющие атрибут CmdletBinding, могут     
Описывает, как добавлять статические и динамические параметры в функции,   
Описывает атрибут, который объявляет функцию, действие которой             
Описывает, как создавать, использовать и сортировать хэш-таблицы           
Описывает, как извлекать команды из журнала команд.                        
Описывает команду языка, которую можно использовать для                    
Сведения о выполнении команд и выражений в фоновых заданиях Windows        
Содержит сведения о фоновых заданиях на локальных и удаленных              
Описание принципов действия оператора -join, объединяющего                 
Описание ключевых слов языка скриптов Windows PowerShell.                  
Описание способов редактирования команд в командной строке Windows         
Описание способов доступа к элементам из рабочего местоположения           
Описание операторов, объединяющих инструкции Windows PowerShell.           
Описание способов использования методов для выполнения действий с          
Описание процедур установки, импорта и использования модулей               
Основные сведения об объектах в Windows PowerShell.                        
Описание операторов, поддерживаемых в Windows PowerShell.                  
Описание работы с параметрами командлетов в Windows PowerShell.            
Описание синтаксического анализа команд в Windows PowerShell.              
Описание форматов полного и относительного имени пути в Windows            
Объединение команд в конвейеры в Windows PowerShell                        
Переменные, которые настраивают поведение Windows PowerShell               
Содержит описание, как создавать и использовать профиль Windows            
Описывает функцию Prompt и показывает, как создать пользовательску         
Содержит описание использования свойств объектов в Windows                 
Описание принципов, по которым поставщики Windows PowerShell               
Содержит описание сеансов Windows PowerShell (сеансы PSSession) и          
Предоставляет подробное описание сеансов Windows PowerShell и их           
Описывает оснастки Windows PowerShell, содержит сведения об                
Описывает правила использования одиночных и двойных кавычек в Windows      
Описывает порядок перенаправления вывода из Windows PowerShell             
Описывает порядок создания и использования типа ссылочной переменной.      
Описание регулярных выражений в Windows PowerShell.                        
Описывает, как выполнять удаленные команды в Windows PowerShell.           
Содержит вопросы о выполнении удаленных команд в Windows                   
Описывает, как выполнять фоновые задания на удаленных компьютерах.         
Описывает, как интерпретировать и форматировать выходные данные            
Описывает требования к системе и конфигурации для выполнения удаленных     
Описывает, как устранять неполадки удаленных операций в                    
Запрещает выполнение скриптов при отсутствии указанных оснасток            
Содержит список зарезервированных слов, которые имеют специальное          
Выход из текущей области действия, которая может быть функцией,            
Объясняется концепция области действия в Windows PowerShell и              
Описание написания и выполнения скриптов в Windows PowerShell.             
Определение блока скрипта и описание использования блоков скрипта          
Описание возможностей интернационализации скриптов Windows                 
Описание конфигураций сеансов, определяющих, пользователей, которые могут  
Описание процедуры подписания скриптов для их соответствия политикам       
Описание специальных символов, которые можно использовать, чтобы           
Описание использования оператора split для разбивки одной или              
Описание использования инструкции Switch для обработки нескольких          
Описание ключевого слова Throw, генерирующего ошибку с                     
Описание способов управления операциями транзакций в Windows               
Описывает ключевое слово, обрабатывающее прерывающие ошибки.               
Описание использования блоков Try, Catch и Finally для обработки           
Описывает, как с помощью файлов Types.ps1xml расширить типы                
Описывает операторы, работающие с типами Microsoft .NET Framework.         
Описание хранения переменными значений, используемых в Windows             
Описывает инструкцию языка, которую можно использовать для                 
Описывает использование подстановочных знаков в Windows PowerShell.        
Описание новых возможностей Windows PowerShell версии 2.0.                 
Описание функций интегрированной среды скриптов (ISE) Windows              
Содержит общие сведения об инструментарии управления Windows (WMI)         
Содержит общие сведения о протоколе WS-Management, помогающие              
Отображает справочные сведения о командлетах и концепциях Windows          
Set-Location A:
Set-Location B:
Set-Location C:
.... 
.... 
.... 
Set-Location D:
.... 
Set-Location E:
Set-Location F:
Set-Location G:
.... 
Set-Location H:
.... 
Set-Location I:
.... 
Set-Location J:
Set-Location K:
Set-Location L:
Set-Location M:
.... 
.... 
Set-Location N:
Set-Location O:
Set-Location P:
.... 
Set-Location Q:
Set-Location R:
Set-Location S:
Set-Location T:
.... 
Set-Location U:
Set-Location V:
Set-Location W:
Set-Location X:
Set-Location Y:
Set-Location Z:





Add-Computer

ИМЯ
    Add-Computer
    
ОПИСАНИЕ
    Добавление локального компьютера в домен или рабочую группу.
    
СИНТАКСИС
    Add-Computer [-DomainName] <string> [-Credential <PSCredential>] [-OUPath 
    string>] [-Server <string>] [-Unsecure] [-PassThru] [-Confirm] [-WhatIf] [
    CommonParameters>]
    
    Add-Computer [-WorkGroupName] <string> [-Credential <PSCredential>] [-PassT
    hru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Add-Computer добавляет локальный компьютер в домен или рабочую гр
    уппу или перемещает его из одного домена в другой. Также он создает учетную
     запись домена, если компьютер добавлен в домен без учетной записи.
    
    Параметры этого командлета можно использовать для задания подразделения и к
    онтроллера домена или для выполнения незащищенного присоединения.
    
    Для получения результатов выполнения команды используются параметры Verbose
     и PassThru.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь".
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Параметры учетной записи текущего 
        пользователя
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -DomainName <string>
        Задает домен для учетной записи компьютера. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -OUPath <string>
        Задает подразделение для учетной записи домена. Введите полное различаю
        щееся имя подразделения.  По умолчанию используется подразделение, прин
        ятое по умолчанию для объектов-компьютеров в домене.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Подразделение, принятое по умолчан
        ию для всех объектов-компьютеров в домене
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает результаты выполнения команды. По умолчанию этот командлет н
        е формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Server <string>
        Задает имя контроллера домена, выполняющего добавление компьютера в дом
        ен. Введите имя в формате DomainName\ComputerName. По умолчанию использ
        уется значение "Локальный компьютер".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Unsecure [<SwitchParameter>]
        Выполняет незащищенное присоединение.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WorkGroupName <string>
        Задает имя рабочей группы для компьютера. Если этот параметр не задан, 
        компьютер присоединяется к домену.
        
        Требуется?                    true
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Объекты невозможно передать командлету Add-Computer по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.ComputerChangeInfo
        Если задан параметр PassThru, командлет Add-Computer возвращает объект 
        ComputerChangeInfo. В противном случае этот командлет не формирует ника
        ких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>add-computer -domainname Domain01; restart-computer
    
    
    Описание
    -----------
    Эти команды добавляют локальный компьютер в домен Domain01, используя учетн
    ые данные текущего пользователя.
    
    Первая команда добавляет компьютер в домен. Вторая команда использует коман
    длет Restart-Computer для перезапуска компьютера, что завершает операцию пр
    исоединения. Точка с запятой (;) разделяет две команды.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>add-computer -workgroupname WORKGROUP-A
    
    
    Описание
    -----------
    Эта команда добавляет локальный компьютер в рабочую группу Workgroup-A.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>add-computer -DomainName Domain01 -Server Domain01\DC01 -passthru -ve
    rbose
    
    
    Описание
    -----------
    Эта команда добавляет локальный компьютер в домен Domain01 при помощи контр
    оллера домена Domain01\DC01. 
    
    В команде используются параметры PassThru и Verbose для получения подробных
     сведений о результатах выполнения команды.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>Add-Computer -domainname Domain02 -OUPath OU=testOU,DC=domain,DC=Doma
    in,DC=com
    
    
    Описание
    -----------
    Эта команда добавляет компьютеры Server01 и Server02 в домен Domain02. Для 
    задания подразделения для новых учетных записей используется параметр OUPat
    h.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>Add-Computer -domainname Domain02 -cred Domain02\Admin02 -passthru
    
    
    Описание
    -----------
    Эта команда добавляет локальный компьютер в домен Domain02, используя учетн
    ые данные администратора домена. В команде используется параметр PassThru д
    ля формирования краткого отчета о результатах выполнения команды.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135194
    Checkpoint-Computer 
    Remove-Computer 
    Restart-Computer 
    Restore-Computer 
    Stop-Computer 
    Test-Connection 



Add-Content

ИМЯ
    Add-Content
    
ОПИСАНИЕ
    Добавляет содержимое в заданные элементы, например слова в файл.
    
СИНТАКСИС
    Add-Content [-LiteralPath] <string[]> [-Value] <Object[]> [-Credential <PSC
    redential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <st
    ring[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParamet
    ers>]
    
    Add-Content [-Path] <string[]> [-Value] <Object[]> [-Credential <PSCredenti
    al>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>
    ] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Add-Content добавляет содержимое в заданный элемент или файл. Сод
    ержимое можно задать непосредственно в команде либо путем указания объекта,
     в котором оно хранится.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Переопределяет атрибут "только для чтения", позволяя добавить содержимо
        е в файл, доступный только для чтения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Добавляет только указанные элементы. Значение этого параметра определяе
        т значение параметра Path. Введите элемент пути или шаблон, например "*
        .txt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к элементам, которые получают дополнительное содержимое. В 
        отличие от значения параметра Path, значение параметра LiteralPath испо
        льзуется точно в том виде, в котором оно введено. Никакие символы не ин
        терпретируются как подстановочные знаки. Если путь включает escape-симв
        олы, его нужно заключить в одиночные кавычки. Одиночные кавычки указыва
        ют оболочке Windows PowerShell, что никакие символы не следует интерпре
        тировать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий добавленное содержимое. По умолчанию 
        этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к элементам, которые получают дополнительное содержимое. По
        дстановочные знаки разрешены. Если нужно указать несколько путей, разде
        лите их запятыми.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Value <Object[]>
        Задает добавляемое содержимое. Введите строку в кавычках, например "Эти
         данные предназначены только для внутреннего использования", или укажит
        е объект с содержимым, например объект DateTime, созданный командлетом 
        Get-Date. 
        
        Нельзя указать содержимое файла, задав путь к файлу, потому что путь яв
        ляется обычной строкой, однако содержимое можно получить с помощью кома
        нды Get-Content и передать его параметру Value.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Object
        Добавляемые объекты (Value) можно передавать командлету Add-Content по 
        конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.String
        При использовании параметра Passthru командлет Add-Content создает объе
        кт System.String, представляющий содержимое. В противном случае этот ко
        мандлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        При передаче командлету Add-Content объекта по конвейеру перед добавлен
        ием в элемент объект преобразуется в строку. Формат строки определяется
         типом объекта, но может отличаться от используемого по умолчанию форма
        та отображения объекта. Для управления форматом строки используйте пара
        метры форматирования отправляющего командлета.
        
        Командлет Add-Content также можно вызывать с помощью встроенного псевдо
        нима "ac". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлет Add-Content предназначен для работы с данными, предоставляемы
        ми любым поставщиком. Чтобы получить список поставщиков, доступных в те
        кущем сеансе, введите команду "Get-PsProvider". Дополнительные сведения
         см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>add-content -path *.txt -exclude help* -value "END"
    
    
    Описание
    -----------
    В результате выполнения данной команды во все текстовые файлы текущего ката
    лога, кроме файлов, имена которых начинаются с "help", записывается строка 
    "END".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>add-content -Path file1.log, file2.log -Value (get-date) -passthru
    
    
    Описание
    -----------
    В результате выполнения данной команды в конец файлов File1.log и File2.log
     записывается дата, которая затем отображается в командной строке. В данной
     команде для извлечения даты используется командлет Get-Date, затем дата пе
    редается командлету Add-Content через параметр Value. Объект, представляющи
    й добавленное содержимое, передается дальше по конвейеру через параметр Pas
    sThru. Так как командлет, принимающий передаваемый объект, не задан, этот о
    бъект отображается в командной строке.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>add-content -path monthly.txt -value (get-content c:\rec1\weekly.txt)
    
    
    Описание
    -----------
    В результате выполнения данной команды содержимое файла Weekly.txt записыва
    ется в конец файла Monthly.txt. В данной команде для извлечения содержимого
     файла Weekly.txt используется командлет Get-Content, затем содержимое пере
    дается командлету Add-Content через параметр Value. Использование круглых с
    кобок гарантирует, что командлет Add-Content начнет работу только после зав
    ершения работы Get-Content.
    
    Также можно скопировать содержимое файла Weekly.txt в переменную, например 
    $w, а затем с помощью параметра Value передать ее командлету Add-Content. В
     этом случае команда примет вид "add-content -path monthly.txt -value $w".
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>add-content -value (get-content test.log) -path C:\tests\test134\logs
    \test134.log
    
    
    Описание
    -----------
    Эта команда создает новые каталог и файл и копирует содержимое существующег
    о файла в созданный файл.
    
    Для добавления содержимого в данной команде используется командлет Add-Cont
    ent. Значение параметра Value представляет собой команду Get-Content, котор
    ая получает содержимое из существующего файла, Test.log. 
    
    Значение параметра Path — это путь, который на момент запуска команды не су
    ществует. В данном примере существуют только каталоги C:\Tests. Остальные к
    аталоги и файл Test134.log создаются командой.
    
    Параметр Force для этой команды не требуется. Командлет Add-Content создает
     каталоги для завершения заданного пути даже без параметра Force.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113278
    about_Providers 
    Get-Content 
    Set-Content 
    Clear-Content 
    Get-Item 



Add-History

ИМЯ
    Add-History
    
ОПИСАНИЕ
    Добавляет записи в журнал сеанса.
    
СИНТАКСИС
    Add-History [[-InputObject] <PSObject[]>] [-PassThru] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Add-History добавляет записи в конец журнала сеанса, содержащего 
    список команд, введенных за время текущего сеанса. 
    
    Командлет Get-History позволяет получить эти команды и передать их командле
    ту Add-History либо экспортировать команды в файл CSV или XML, после чего и
    мпортировать команды и передать импортированный файл командлету Add-History
    . Этот командлет позволяет добавить определенные команды в журнал или созда
    ть единый файл журнала, в котором содержатся команды, введенные в течение н
    ескольких сеансов.
    
ПАРАМЕТРЫ
    -InputObject <PSObject[]>
        Добавляет указанный объект HistoryInfo в журнал сеанса. Этот параметр п
        озволяет отправить объект HistoryInfo из командлета Get-History, Import
        -Clixml или Import-Csv в командлет Add-History.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект истории для каждой записи журнала. По умолчанию этот 
        командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.HistoryInfo
        Объект HistoryInfo можно передать командлету Add-History по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или Microsoft.PowerShell.Commands.HistoryInfo
        Если задан параметр PassThru, командлет Add-History создает объект Hist
        oryInfo. В противном случае этот командлет не формирует никаких выходны
        х данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Журнал сеанса представляет собой список команд, введенных за время сеан
        са, вместе с идентификатором. В журнале сеанса представлен порядок выпо
        лнения, состояние, время начала и завершения выполнения команды. При вв
        оде каждой команды Windows PowerShell добавляет ее в журнал, чтобы обес
        печить возможность ее повторного использования.  Дополнительные сведени
        я о журнале сеанса см. в разделе about_History.
        
        Команды, добавляемые в журнал, указываются при помощи параметра InputOb
        ject. Командлет Add-History принимает только объекты HistoryInfo, анало
        гичные тем, что формирует для каждой команды командлет Get-History. Пер
        едача пути и имени файла либо списка команд не поддерживается. 
        
        Параметр -InputObject можно использовать для передачи командлету Add-Hi
        story файла с объектами HistoryInfo. Для этого экспортируйте результаты
         команды Get-History в файл с помощью Export-Csv или Export-Clixml, а з
        атем импортируйте файл с помощью Import-Csv или Import-Clixml. После эт
        ого можно передать файл с импортированными объектами HistoryInfo команд
        лету Add-History по конвейеру или в переменной. Дополнительные сведения
         см. в примерах.
        
        Файл объектов HistoryInfo, передаваемый командлету Add-History, должен 
        содержать сведения о типах, заголовки столбцов и все свойства объектов 
        HistoryInfo. Если объекты должны быть переданы командлету Add-History, 
        не используйте в командлете Export-Csv параметр NoTypeInformation и не 
        удаляйте сведения о типах, заголовки столбцов и какие-либо поля в этом 
        файле. 
        
        Чтобы отредактировать журнал сеанса, экспортируйте журнал в файл CSV ил
        и XML, отредактируйте этот файл, импортируйте его и воспользуйтесь кома
        ндлетом Add-History для добавления его в текущий журнал сеанса.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-history | export-csv c:\testing\history.csv
    
    C:\PS>import-csv history.csv | add-history
    
    
    Описание
    -----------
    Эти команды добавляют команды, набранные в сеансе Windows PowerShell, в жур
    нал другого сеанса Windows PowerShell. Первая команда извлекает объекты, пр
    едставляющие команды в журнале, и экспортирует их в файл History.csv. Втора
    я команда должна быть набрана в командной строке другого сеанса. Она исполь
    зует командлет Import-Csv для импорта объектов в файле History.csv. Операто
    р конвейера передает объекты командлету Add-History, который добавляет объе
    кты, представляющие команды в файле History.csv, в текущий журнал сеанса.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>import-clixml c:\temp\history.xml | add-history -passthru | foreach-o
    bject {invoke-history}
    
    
    Описание
    -----------
    Эта команда импортирует команды из файла History.xml, добавляет их в текущи
    й журнал сеанса и исполняет команды из объединенного журнала. 
    
    Первая команда использует командлет Import-Clixml для импорта журнала коман
    д, экспортированных в файл History.xml. Оператор конвейера (|) передает ком
    анды в качестве параметра командлету Add-History, который добавляет их в те
    кущий журнал сеанса. Параметр PassThru обеспечивает передачу объектов, пред
    ставляющих добавленные команды, дальше по конвейеру. 
    
    Затем команда использует командлет ForEach-Object, чтобы применить команду 
    Invoke-History ко всем командам в объединенном журнале. Команда Invoke-Hist
    ory оформляется как блок скрипта, который заключается в фигурные скобки ({}
    ), поскольку для командлета ForEach-Object необходимо использовать блок скр
    ипта для применения даже одной команды.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-history -id 5 -count 5 | add-history
    
    
    Описание
    -----------
    Эта команда добавляет первые пять команд журнала команд в конец списка в жу
    рнале сеанса. Командлет Get-History используется для извлечения пяти команд
    , завершающихся командой 5. Оператор конвейера (|) передает их командлету A
    dd-History, который добавляет их в текущий журнал. Команда Add-History не в
    ключает никаких параметров, но Windows PowerShell связывает объекты, переда
    нные по конвейеру, с параметром InputObject.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$a = import-csv c:\testing\history.csv
    
    C:\PS>add-history -inputobject $a -passthru
    
    
    Описание
    -----------
    Эти команды добавляют команды в файле History.csv в текущий журнал сеанса. 
    Первая команда использует командлет Import-Csv для импорта команд в файл Hi
    story.csv и сохранения их содержимого в переменную $a. Вторая команда с пом
    ощью командлета Add-History добавляет команды из файла History.csv в текущи
    й журнал сеанса. Параметр InputObject задает переменную $a, а параметр Pass
    Thru формирует объект для вывода в командной строке. Если параметр PassThru
     не используется, командлет Add-History ничего не выводит на дисплей.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>add-history -inputobject (import-clixml c:\temp\history01.xml)
    
    
    Описание
    -----------
    Эта команда добавляет команды в файле History01.xml в текущий журнал сеанса
    . Параметр InputObject используется для передачи результатов команды в круг
    лых скобках командлету Add-History. Команда, заключенная в круглые скобки и
     выполняемая первой, импортирует файл History01.xml в Windows PowerShell. З
    атем Add-History добавляет команды в файле в журнал сеанса.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113279
    about_History 
    Get-History 
    Invoke-History 
    Clear-History 



Add-Member

ИМЯ
    Add-Member
    
ОПИСАНИЕ
    Добавляет определенный пользователем элемент в экземпляр объекта оболочки W
    indows PowerShell.
    
СИНТАКСИС
    Add-Member [-MemberType] {AliasProperty | CodeProperty | Property | NotePro
    perty | ScriptProperty | Properties | PropertySet | Method | CodeMethod | S
    criptMethod | Methods | ParameterizedProperty | MemberSet | Event | All} [-
    Name] <string> -InputObject <psobject> [[-Value] <Object>] [[-SecondValue] 
    <Object>] [-Force] [-PassThru] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Add-Member добавляет определенный пользователем элемент в экземпл
    яр объекта Windows PowerShell. Он позволяет добавлять следующие типы элемен
    тов: AliasProperty, CodeProperty, NoteProperty, ScriptProperty, PropertySet
    , CodeMethod, MemberSet и ScriptMethod. Первоначальное значение элемента за
    дается с помощью параметра Value. При добавлении элементов AliasProperty, S
    criptProperty, CodeProperty и CodeMethod можно указать дополнительные сведе
    ния с помощью параметра SecondValue.
    
    Дополнительные элементы добавляются в конкретный экземпляр объекта, передав
    аемый по конвейеру командлету Add-Member или указанный с помощью параметра 
    InputObject. Дополнительный элемент доступен, только пока существует соотве
    тствующий экземпляр объекта. Командлет Export-Clixml позволяет сохранить эк
    земпляр вместе с дополнительными элементами в файле. Данные из такого файла
     могут использоваться командлетом Import-Clixml для восстановления экземпля
    ра объекта.
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Добавляет новый элемент, даже если элемент с таким именем уже существуе
        т. Не работает с основными элементами типа.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объект, в который добавляется новый элемент. Введите переменную,
         содержащую объекты, либо команду или выражение для получения объектов.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -MemberType <PSMemberTypes>
        Задает тип добавляемого элемента.  Этот параметр является обязательным.
        
        Допустимые значения этого параметра: 
        -- AliasProperty: свойство, определяющее новое имя существующего свойст
        ва;
        -- CodeMethod: метод, ссылающийся на статический метод класса Microsoft
         .NET Framework;
        -- CodeProperty: свойство, ссылающееся на статическое свойство класса .
        NET Framework;
        -- MemberSet: заранее определенный набор свойств и методов, например PS
        Base, PSObject и PSTypeNames;
        -- Method: метод базового объекта .NET Framework;  
        -- NoteProperty: свойство со статическим значением;
        -- ParameterizedProperty: свойство, принимающее параметры и значения па
        раметров; 
        -- Property: свойство базового объекта .NET Framework;
        -- PropertySet: заранее определенный набор свойств объекта;
        -- ScriptMethod: метод, значением которого является результат выполнени
        я скрипта;
        -- ScriptProperty: свойство, значением которого является результат выпо
        лнения скрипта;
        
        -- All: получает все типы элементов;  
        -- Methods: получает все типы методов объекта (например, method, codeme
        thod, scriptmethod);
        -- Properties: получает все типы свойств объекта (например, property, c
        odeproperty, aliasproperty, scriptproperty).
        
        Не у всех объектов имеются элементы каждого из типов. Если указать тип 
        элемента, который у объекта отсутствует, оболочка Windows PowerShell ве
        рнет ошибку.
        
        Недопустимо использовать с командлетом Add-Member тип элемента Event.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Name <string>
        Задает имя добавляемого элемента.
        
        Если имя параметра "Name" опущено, его значение должно быть вторым безы
        мянным значением в команде. Если имя этого параметра указано, порядок п
        араметров может быть любым.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Передает по конвейеру расширенный объект. По умолчанию этот командлет н
        е формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SecondValue <Object>
        Задает необязательные дополнительные сведения об элементах AliasPropert
        y, ScriptProperty, CodeProperty или CodeMethod. Если с его помощью доба
        вляется элемент AliasProperty, этот параметр должен быть типом данных. 
        К значению AliasProperty добавляется преобразование (приведение) к указ
        анному типу данных. Например, при добавлении элемента AliasProperty, оп
        ределяющего альтернативное имя свойства строки, можно также указать пар
        аметр SecondValue типа System.Int32, указывающий, что значение свойства
         строки при доступе к нему с помощью соответствующего элемента AliasPro
        perty должно быть преобразовано в целое число.
        
        Параметр SecondValue можно использовать для указания дополнительного эл
        емента ScriptBlock при добавлении элемента ScriptProperty. В таком случ
        ае первый элемент ScriptBlock, заданный в параметре Value, используется
         для получения значения переменной. Второй элемент ScriptBlock, заданны
        й в параметре SecondValue, используется для задания значения переменной
        .
        
        Требуется?                    false
        Позиция?                    4
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Value <Object>
        Задает первоначальное значение добавленного элемента. При добавлении эл
        емента AliasProperty, CodeProperty или CodeMethod можно предоставить не
        обязательные дополнительные сведения с помощью параметра SecondValue.
        
        Требуется?                    false
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой тип объекта можно передать командлету Add-Member по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Object
        Если задан параметр PassThru, командлет Add-Member возвращает расширенн
        ый объект. В противном случае этот командлет не формирует никаких выход
        ных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Добавлять элементы можно только в объекты PSObject. Чтобы узнать, прина
        длежит ли объект к типу PSObject, используется оператор "is". Например,
         для проверки объекта, хранящегося в переменной $obj, следует ввести ко
        манду "$obj -is [PSObject]".
        
        Имена параметров MemberType, Name, Value и SecondValue указывать необяз
        ательно. Если в команде отсутствуют имена параметров, безымянные значен
        ия параметров необходимо указывать в следующем порядке: MemberType, Nam
        e, Value, SecondValue. При указании имен параметры могут следовать в лю
        бом порядке.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$a = (get-childitem)[0]
    
    C:\PS> $a | add-member -membertype noteproperty -name Status -value done
    
    C:\PS> $a | get-member -type noteproperty
    
       TypeName: System.IO.DirectoryInfo
    
    Name          MemberType   Definition
    ----          ----------   ----------
    PSChildName   NoteProperty System.String PSChildName=Co
    PSDrive       NoteProperty System.Management.Automation
    PSIsContainer NoteProperty System.Boolean PSIsContainer
    PSParentPath  NoteProperty System.String PSParentPath=M
    PSPath        NoteProperty System.String PSPath=Microso
    PSProvider    NoteProperty System.Management.Automation
    Status        NoteProperty System.String Status=done
    
    
    Описание
    -----------
    Эти команды добавляют свойство-примечание Status в объект DirectoryInfo, во
    звращенный командлетом Get-ChildItem, и присваивают ему значение "done". 
    
    Первая команда получает первый объект, возвращаемый командлетом Get-Childit
    em (индекс 0).
    
    Вторая команда добавляет свойство-примечание.
    
    Третья команда передает обновленный объект командлету Get-Member с помощью 
    оператора конвейера (|). Вывод показывает, что свойство было добавлено.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$a = (get-childitem)[0]
    
    C:\PS> $a | add-member -membertype aliasproperty -name FileLength -value Le
    ngth 
    
    C:\PS> $a.filelength
    
    
    Описание
    -----------
    Эти команды добавляют свойство-псевдоним FileLength в объект DirectoryInfo,
     возвращенный командлетом Get-ChildItem. Новое свойство является псевдонимо
    м для свойства Length. 
    
    Первая команда получает первый объект, возвращаемый командлетом Get-Childit
    em (индекс 0).
    
    Вторая команда добавляет свойство-псевдоним.
    
    Третья команда возвращает значение нового свойства FileLength.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$a = "a string"
    
    C:\PS> $a = $a | add-member -membertype noteproperty -name StringUse -value
     Display -passthru
    
    C:\PS> $a.StringUse
    
    
    Описание
    -----------
    Эти команды добавляют свойство StringUse для строки. Так как строка не явля
    ется объектом PSObject, необходимо включить в команду параметр PassThru, чт
    обы сохранить расширенную строку в переменной. Последняя команда примера вы
    водит новое свойство.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$a = "this is a string"
    
    C:\PS> $a = add-member -inputobject $a -membertype scriptmethod -name words
     `
    -value {$this.split()} -passthru
    
    C:\PS> $a.words()
    
    
    Описание
    -----------
    Эти команды добавляют в строковый объект метод-скрипт. Метод-скрипт предост
    авляет доступ к методу Split() класса System.String библиотеки классов .NET
     Framework, обеспечивая удобный способ получения отдельных слов строки путе
    м вызова метода "Words" для объекта-строки. Обратите внимание, что использу
    ется параметр PassThru, чтобы командлет Add-Member возвратил расширенный об
    ъект-строку для сохранения в переменной $a.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$event = get-eventlog -logname system -newest 1
    
    C:\PS> $event.TimeWritten | get-member
    
    C:\PS> add-member -inputobject $event -membertype aliasproperty -name When 
    `
    -value TimeWritten -secondvalue System.String
    
    C:\PS> $event.When | get-member
    
    
    Описание
    -----------
    Эти команды добавляют элемент AliasProperty в объект EventLogEntry, возвращ
    енный командлетом Get-EventLog. Свойство AliasProperty называется "When" и 
    является псевдонимом имеющегося у объекта свойства TimeWritten. Параметр Se
    condValue указывает, что при доступе к свойству с помощью псевдонима AliasP
    roperty значение свойства должно быть преобразовано в тип System.String. Св
    ойство TimeWritten является объектом типа DateTime.
    
    В первой команде с помощью командлета Get-EventLog извлекается последнее со
    бытие из системного журнала событий и сохраняется в переменной $event. 
    
    Вторая команда получает доступ к свойству TimeWritten этого события и перед
    ает его по конвейеру командлету Get-Member, чтобы показать, что это свойств
    о принадлежит к типу DateTime. Командлет Add-Member затем используется для 
    добавления элемента AliasProperty в экземпляр объекта EventLogEntry, сохран
    енного в переменной $event. Параметр Name используется для присвоения новом
    у элементу имени "When", а параметр Value — для указания того, что этот эле
    мент является псевдонимом свойства "TimeWritten". Параметр SecondValue указ
    ывает, что при использовании этого нового элемента тип возвращаемого им зна
    чения должен быть преобразован из System.DateTime в System.String. 
    
    Третья команда обращается к новому элементу и передает его по конвейеру ком
    андлету Get-Member, чтобы показать, что он принадлежит к типу System.String
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>function Copy-Property ($From, $To)
    
    {
      foreach ($p in Get-Member -InputObject $From -MemberType Property)
      {
         Add-Member -InputObject $To -MemberType NoteProperty -Name $p.Name 
         -Value $From.$($p.Name) -Force
    
         $To.$($p.Name) = $From.$($p.Name)
       }
    }
    
    
    Описание
    -----------
    Эта функция копирует все свойства одного объекта в другой объект.
    
    В первой команде функции объявляется имя функции и перечисляются ее парамет
    ры. 
    
    В цикле Foreach с помощью командлета Get-Member происходит получение всех с
    войств объекта "From". Команды, расположенные внутри цикла Foreach, последо
    вательно применяются к каждому из свойств.
    
    Команда Add-Member добавляет свойство объекта "From" объекту "To" в качеств
    е свойства NoteProperty. Использование параметра Force позволяет добавлять 
    элементы с одинаковыми именами.
    
    В последней команде новому свойству присваивается имя исходного свойства.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113280
    Get-Member 
    Export-Clixml 
    Import-Clixml 



Add-PSSnapin

ИМЯ
    Add-PSSnapin
    
ОПИСАНИЕ
    Добавляет одну или несколько оснасток Windows PowerShell в текущий сеанс.
    
СИНТАКСИС
    Add-PSSnapin [-Name] <string[]> [-PassThru] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Add-PSSnapin добавляет зарегистрированные оснастки Windows PowerS
    hell в текущий сеанс. После добавления оснасток в текущем сеансе можно испо
    льзовать командлеты и поставщики, которые поддерживаются этими оснастками.
    
    Чтобы добавить оснастки во все будущие сеансы Windows PowerShell, следует д
    обавить команду Add-PSSnapin в профиль Windows PowerShell. Дополнительные с
    ведения см. в разделе about_Profiles.
    
ПАРАМЕТРЫ
    -Name <string[]>
        Задает имя оснастки. (Это параметр Name, его не следует путать с параме
        тром AssemblyName или ModuleName.)
        
        Чтобы определить имена зарегистрированных в системе оснасток, введите к
        оманду "get-pssnapin -registered".
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий каждую добавленную оснастку. По умолч
        анию этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Объекты невозможно передать командлету Add-PSSnapin по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PSSnapInInfo
        При использовании параметра PassThru командлет Add-PSSnapin возвращает 
        объект PSSnapInInfo, представляющий оснастку. В противном случае этот к
        омандлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы получить дополнительные сведения об оснастках Windows PowerShell,
         см. раздел about_PSSnapins. Сведения о создании оснастки Windows Power
        Shell см. в разделе "Как создать оснастку Windows PowerShell" в библиот
        еке MSDN (Microsoft Developer Network) по адресу http://go.microsoft.co
        m/fwlink/?LinkId=144762.
        
        Командлет Add-PSSnapin добавляет оснастку только в текущий сеанс. Чтобы
         добавить оснастку во все сеансы Windows PowerShell, ее следует добавит
        ь в профиль Windows PowerShell. Дополнительные сведения см. в разделе a
        bout_Profiles.
        
        Может быть добавлена любая оснастка Windows PowerShell, зарегистрирован
        ная при помощи программы установки Microsoft .NET Framework. Дополнител
        ьные сведения см. в разделе "Регистрация командлетов, поставщиков и вед
        ущих приложений" библиотеки MSDN по адресу http://go.microsoft.com/fwli
        nk/?LinkID=143619. 
        
        Для получения списка оснасток, зарегистрированных на компьютере, введит
        е команду "get-pssnapin -registered". 
        
        Перед добавлением оснастки командлет Add-PSSnapin проверяет версию осна
        стки, чтобы удостовериться в ее совместимости с текущей версией Windows
         PowerShell. Если версия оснастки не поддерживается, Windows PowerShell
         сообщает об ошибке.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>add-PSSnapIn Microsoft.Exchange, Microsoft.Windows.AD
    
    
    Описание
    -----------
    Эта команда добавляет оснастки Microsoft Exchange и Active Directory в теку
    щий сеанс.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-pssnapin -registered | add-pssnapin -passthru
    
    
    Описание
    -----------
    Эта команда добавляет в сеанс все зарегистрированные оснастки Windows Power
    Shell. В ней используется командлет Get-PSSnapin с параметром Registered дл
    я получения объектов, представляющих каждую из зарегистрированных оснасток.
     Оператор конвейера (|) передает результат командлету Add-PSSnapin, который
     добавляет их в сеанс. Параметр PassThru возвращает объекты, представляющие
     каждую из добавленных оснасток.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-pssnapin
    
    
    Описание
    -----------
    В этом примере демонстрируется процесс регистрации оснастки в вашей системе
     и добавления оснастки в текущий сеанс. В примере используется ManagementFe
    atures, фиктивная оснастка, которая реализована в файле ManagementCmdlets.d
    ll.
    
    Первая команда возвращает оснастки, добавленные в текущий сеанс, включая ос
    настки, которые установлены с Windows PowerShell. В этом примере Management
    Features не возвращается. Это означает, что данная оснастка не была добавле
    на в сеанс. 
    
        get-pssnapin
    
    
    Вторая команда возвращает оснастки, которые были зарегистрированы в системе
     (включая те оснастки, которые уже добавлены в сеанс). Оснастки, установлен
    ные с Windows PowerShell, не включаются в этот список.
    
        get-pssnapin -registered
    
     
    В данном случае команда не возвращает никаких оснасток. Такой результат ука
    зывает на то, что оснастка ManagementFeatures не зарегистрирована в системе
    .
    
    Третья команда создает псевдоним Installutil для пути к средству InstallUti
    l, входящего в состав платформы .NET Framework.
    
        set-alias installutil $env:windir\Microsoft.NET\Framework\v2.0.50727\in
    stallutil.exe
    
    
    Четвертая команда использует средство InstallUtil для регистрации оснастки.
     В команде указывается путь к файлу ManagementCmdlets.dll, имя файла или "и
    мя модуля" оснастки.
    
        installutil C:\Dev\Management\ManagementCmdlets.dll
    
    
    Пятая команда совпадает со второй. Необходимо убедиться, что регистрация ос
    настки ManagementCmdlets прошла успешно.
    
        get-pssnapin -registered
    
    Шестая команда использует командлет Add-PSSnapin для добавления оснастки Ma
    nagementFeatures в сеанс. В этой команде указывается имя оснастки (Manageme
    ntFeatures), а не имя файла.
    
        add-pssnapin ManagementFeatures
    
    Чтобы убедиться, что оснастка добавлена в сеанс, в седьмой команде использу
    ется параметр Module командлета Get-Command. Этот параметр позволяет вернут
    ь элементы, добавленные в сеанс, по оснастке или модулю. 
    
        get-command -module ManagementFeatures
    
    Чтобы определить оснастку или модуль, из которой был вызван командлет, можн
    о также использовать свойство PSSnapin объекта, возвращаемого командлетом G
    et-Command. В восьмой команде для определения значения свойства PSSnapin ко
    манды Set-Alias используется обращение к элементам объекта с помощью точки.
     
    
        (get-command set-alias).pssnapin
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113281
    Get-PSSnapin 
    Remove-PSSnapin 
    about_Profiles 



Add-Type

ИМЯ
    Add-Type
    
ОПИСАНИЕ
    Добавляет тип (класс) Microsoft .NET Framework в сеанс Windows PowerShell.
    
СИНТАКСИС
    Add-Type -AssemblyName <string[]> [-IgnoreWarnings] [-PassThru] [<CommonPar
    ameters>]
    
    Add-Type [-Name] <string> [-MemberDefinition] <string[]> [-CodeDomProvider 
    <CodeDomProvider>] [-CompilerParameters <CompilerParameters>] [-Language {C
    Sharp | CSharpVersion3 | VisualBasic | JScript}] [-Namespace <string>] [-Ou
    tputAssembly <string>] [-OutputType <OutputAssemblyType>] [-ReferencedAssem
    blies <string[]>] [-UsingNamespace <string[]>] [-IgnoreWarnings] [-PassThru
    ] [<CommonParameters>]
    
    Add-Type [-Path] <string[]> [-CompilerParameters <CompilerParameters>] [-Ou
    tputAssembly <string>] [-OutputType <OutputAssemblyType>] [-ReferencedAssem
    blies <string[]>] [-IgnoreWarnings] [-PassThru] [<CommonParameters>]
    
    Add-Type [-TypeDefinition] <string> [-CodeDomProvider <CodeDomProvider>] [-
    CompilerParameters <CompilerParameters>] [-Language {CSharp | CSharpVersion
    3 | VisualBasic | JScript}] [-OutputAssembly <string>] [-OutputType <Output
    AssemblyType>] [-ReferencedAssemblies <string[]>] [-IgnoreWarnings] [-PassT
    hru] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Add-Type позволяет определить в сеансе Windows PowerShell класс .
    NET Framework. После этого можно создавать объекты соответствующего класса 
    (с помощью командлета New-Object) и использовать их, как любые другие объек
    ты .NET Framework.  Если добавить команду Add-Type в профиль Windows PowerS
    hell, то класс будет доступен во всех сеансах Windows PowerShell.
    
    Тип можно задать, указав существующую сборку или файлы с исходным кодом; мо
    жно также указать исходный код в строке или сохранить его в виде переменной
    . Кроме того, можно просто указать метод, а команда Add-Type определит и со
    здаст класс. С помощью этой функции в Windows PowerShell можно вызывать неу
    правляемые функции. Если задать исходный код, командлет Add-Type скомпилиру
    ет этот код и создаст хранимую в памяти сборку, содержащую новые типы .NET 
    Framework.
    
    С помощью параметров командлета Add-Type можно задать альтернативный язык и
     компилятор (по умолчанию используется CSharp), параметры компилятора, зави
    симости сборки, пространство имен класса, а также имена типа и получаемой в
     результате сборки.
    
ПАРАМЕТРЫ
    -AssemblyName <string[]>
        Задает имя сборки, включающей типы. Команда Add-Type получает типы из у
        казанной сборки. Этот параметр требуется указывать в случае создания ти
        пов на основании имени сборки.
        
        Введите полное или простое имя (также называемое "частичным именем") сб
        орки. В имени сборки разрешается использовать подстановочные знаки. В с
        лучае указания простого или частичного имени командлет Add-Type разреша
        ет его в полное имя, а затем загружает сборку с использованием этого по
        лного имени. 
        
        В качестве значения этого параметра нельзя указывать путь или имя файла
        . Чтобы указать путь к DLL-файлу, следует использовать параметр Path.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -CodeDomProvider <CodeDomProvider>
        Задает генератор кода или компилятор. Команда Add-Type использует указа
        нный компилятор для компиляции исходного кода. По умолчанию используетс
        я компилятор CSharp.  Этот параметр следует применять в том случае, есл
        и используемый язык нельзя указать с помощью параметра Language.  Указы
        ваемый в параметре CodeDomProvider компилятор должен поддерживать созда
        ние сборок из исходного кода.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Компилятор CSharp
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CompilerParameters <CompilerParameters>
        Задает параметры для компилятора исходного кода. Эти параметры передают
        ся компилятору без проверки.
        
        Этот параметр позволяет использовать компилятор для создания исполняемо
        го файла и внедрения ресурсов или задать для компилятора параметры кома
        ндной строки, например "/unsafe". Этот параметр реализует класс Compile
        rParameters (System.CodeDom.Compiler.CompilerParameters).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -IgnoreWarnings [<SwitchParameter>]
        Игнорирует предупреждения компилятора. Этот параметр позволяет запретит
        ь командлету Add-Type обрабатывать предупреждения как ошибки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Language <Language>
        Задает язык, используемый в исходном коде. Команда Add-Type использует 
        значение языка для выбора нужного компилятора кода. 
        
        Допустимые значения: CSharp, CSharpVersion3, VisualBasic и JScript. По 
        умолчанию используется значение CSharp.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                CSharp
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MemberDefinition <string[]>
        Задает новые свойства или методы класса. Команда Add-Type создает шабло
        н кода, необходимый для поддержки этих свойств и методов.
        
        С помощью этой функции в Windows PowerShell можно вызывать неуправляемы
        е функции. Дополнительные сведения см. в примерах.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя создаваемого класса. Этот параметр требуется указывать при с
        оздании типа на основании определения элемента.
        
        Имя типа и пространство имен должны быть уникальными в пределах одного 
        сеанса. Невозможно выгрузить тип или изменить его. Если требуется измен
        ить код типа, необходимо изменить его имя или запустить новый сеанс Win
        dows PowerShell. В противном случае команда завершится с ошибкой.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Namespace <string>
        Задает пространство имен типа. 
        
        Если этот параметр не указан в команде, тип создается в пространстве им
        ен Microsoft.PowerShell.Commands.AddType.AutoGeneratedTypes. Если этот 
        параметр указан в команде и имеет значение пустой строки или $null, тип
         создается в глобальном пространстве имен.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Microsoft.PowerShell.Commands.AddT
        ype.AutoGeneratedTypes
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -OutputAssembly <string>
        Создает DLL-файл для сборки с заданным именем и расположением. Введите 
        путь (необязательно) и имя файла. Подстановочные знаки разрешены. По ум
        олчанию команда Add-Type создает сборку только в памяти.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -OutputType <OutputAssemblyType>
        Задает тип выходных данных результирующей сборки.  Допустимые значения:
         Library, ConsoleApplication и WindowsApplication. 
        По умолчанию тип выходных данных не задан. 
        
        Этот параметр допустим, только если в команде задана результирующая сбо
        рка.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект System.Runtime, представляющий добавленные типы. По у
        молчанию этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к файлам с исходным кодом или DLL-файлам сборки, содержащим
         типы. 
        
        Если задать файлы с исходным кодом, командлет Add-Type скомпилирует код
         в этих файлах и создаст хранимую в памяти сборку с этими типами. Расши
        рение имени файла, указываемое в значении параметра Path, определяет ко
        мпилятор, который будет использовать командлет Add-Type.
        
        Если задать файл сборки, команда Add-Type будет использовать типы из эт
        ой сборки. Чтобы указать сборку, хранимую в памяти, или глобальный кэш 
        сборок, следует использовать параметр AssemblyName.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ReferencedAssemblies <string[]>
        Задает сборки, от которых зависит тип. По умолчанию команда Add-Type сс
        ылается на сборки System.dll и System.Management.Automation.dll. При ук
        азании сборок с помощью этого параметра ссылки на эти сборки добавляютс
        я к ссылкам на сборки по умолчанию.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -TypeDefinition <string>
        Задает исходный код, содержащий определения типа. Введите исходный код 
        в виде строки или автономной строки, либо укажите переменную, содержащу
        ю исходный код. Дополнительные сведения об автономных строках см. в раз
        деле about_Quoting_Rules.
        
        Включите в определение типа объявление пространства имен. Если опустить
         объявление пространства имен, имя типа может совпасть с именем или ярл
        ыком другого типа, в результате чего другой тип может быть непреднамере
        нно перезаписан. Например, если определить тип с именем "Exception", то
         скрипты, в которых "Exception" используется в качестве псевдонима для 
        System.Exception, перестанут работать.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UsingNamespace <string[]>
        Задает другие пространства имен, необходимые для класса. Назначение это
        го параметра похоже на назначение ключевого слова "Using" в C#.
        
        По умолчанию Add-Type ссылается на пространство имен System. В случае и
        спользования параметра MemberDefinition Add-Type по умолчанию также ссы
        лается на пространство имен System.Runtime.InteropServices. При указани
        и пространств имен с помощью параметра UsingNamespace ссылки на эти про
        странства имен добавляются к ссылкам на пространства имен по умолчанию.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Объекты невозможно передать командлету Add-Type по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.RuntimeType
        При использовании параметра PassThru командлет Add-Type возвращает объе
        кт System.RuntimeType, представляющий новый тип. В противном случае это
        т командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Добавляемые типы существуют только в рамках текущего сеанса.  Чтобы исп
        ользовать типы во всех сеансах, их следует добавить в профиль Windows P
        owerShell. Дополнительные сведения о профиле см. в разделе about_Profil
        es.
        
        Имена типов (и пространства имен) должны быть уникальными в пределах од
        ного сеанса.  Невозможно выгрузить тип или изменить его. Если требуется
         изменить код типа, необходимо изменить его имя или запустить новый сеа
        нс Windows PowerShell. В противном случае команда завершится с ошибкой.
        
        Класс CodeDomProvider для некоторых языков, например IronPython и JShar
        p, не позволяет сформировать выходные данные. Поэтому типы, написанные 
        на этих языках, нельзя использовать с командлетом Add-Type.
        
        Этот командлет основан на классе CodeDomProvider. Дополнительные сведен
        ия об этом классе см. в описании пакета SDK Microsoft .NET Framework.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$source = @"
    public class BasicTest
    {
        public static int Add(int a, int b)
        {
            return (a + b);
        }
    
        public int Multiply(int a, int b)
        {
            return (a * b);
        }
    }
    "@
    
    C:\PS> Add-Type -TypeDefinition $source
    
    C:\PS> [BasicTest]::Add(4, 3)
    
    C:\PS> $basicTestObject = New-Object BasicTest 
    C:\PS> $basicTestObject.Multiply(5, 2)
    
    
    Описание
    -----------
    Эти команды добавляют в сеанс класс BasicTest при указании исходного кода, 
    хранимого в переменной. У типа имеется статический метод Add и нестатически
    й метод Multiply.
    
    Первая команда хранит исходный код класса в переменной $source.
    
    Вторая команда использует командлет Add-Type для добавления класса в сеанс.
     Поскольку используется встроенный исходный код, для указания кода в переме
    нной $source команда использует параметр TypeDefinition.
    
    Оставшиеся команды используют новый класс.
    
    Третья команда вызывает статический метод Add класса BasicTest. Для указани
    я статических элементов класса используются двойные двоеточия (::).
    
    Четвертая команда использует командлет New-Object для создания экземпляра к
    ласса BasicTest. Она сохраняет новый объект в переменной $basicTestObject. 
    
    Пятая команда использует метод Multiply объекта $basicTestObject.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>[BasicTest] | get-member
    
    C:\PS> [BasicTest] | get-member -static
    
    C:\PS> $basicTestObject | get-member
    
    C:\PS> [BasicTest] | get-member
    
    
       TypeName: System.RuntimeType
    
    Name                           MemberType Definition
    ----                           ---------- ----------
    Clone                          Method     System.Object Clone()
    Equals                         Method     System.Boolean Equals
    FindInterfaces                 Method     System.Type[] FindInt
    ...
    
    
    C:\PS> [BasicTest] | get-member -static
    
       TypeName: BasicTest
    
    Name            MemberType Definition
    ----            ---------- ----------
    Add             Method     static System.Int32 Add(Int32 a, Int32 b)
    Equals          Method     static System.Boolean Equals(Object objA,
    ReferenceEquals Method     static System.Boolean ReferenceEquals(Obj
    
    
    C:\PS> $basicTestObject | get-member
    
       TypeName: BasicTest
    
    Name        MemberType Definition
    ----        ---------- ----------
    Equals      Method     System.Boolean Equals(Object obj)
    GetHashCode Method     System.Int32 GetHashCode()
    GetType     Method     System.Type GetType()
    Multiply    Method     System.Int32 Multiply(Int32 a, Int32 b)
    ToString    Method     System.String ToString()
    
    
    Описание
    -----------
    Эти команды используют командлет Get-Member для проверки объектов, созданны
    х в предыдущем примере с помощью командлетов Add-Type и New-Object.
    
    Первая команда использует командлет Get-Member, чтобы получить тип и элемен
    ты класса BasicTest, добавленного в сеанс с помощью командлета Add-Type. Ко
    мандлет Get-Member позволяет узнать, чтоб объект имеет тип System.RuntimeTy
    pe, являющийся производным для класса System.Object.
    
    Вторая команда использует параметр Static командлета Get-Member, чтобы полу
    чить статические свойства и статические методы класса BasicTest. Результат 
    содержит метод Add.
    
    Третья команда использует командлет Get-Member, чтобы получить элементы объ
    екта, хранящегося в переменной $BasicTestObject. Это экземпляр объекта клас
    са $BasicType, созданного с помощью командлета New-Object. 
    
    Результат выполнения команды показывает, что значение переменной $basicTest
    Object является экземпляром класса BasicTest и содержит элемент Multiply.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$accType = add-type -assemblyname accessib* -passthru
    
    
    Описание
    -----------
    Эта команда добавляет в текущий сеанс классы из сборки Accessibility. Коман
    да использует параметр AssemblyName для указания имени сборки. Подстановочн
    ый знак позволяет получить нужную сборку, даже если точное имя сборки или е
    го написание неизвестно.
    
    Команда использует параметр PassThru, чтобы создать объекты, представляющие
     классы, добавляемые в сеанс, и сохраняет эти объекты в переменной $accType
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>add-type -path c:\ps-test\Hello.vb
    
    [VBFromFile]::SayHello(", World")
    
    # From Hello.vb
    Public Class VBFromFile
    
    Public Shared Function SayHello(sourceName As String) As String
    Dim myValue As String = "Hello"
    
    return myValue + sourceName
    End Function
    End Class
    
    C:\PS> [VBFromFile]::SayHello(", World")
    Hello, World
    
    
    Описание
    -----------
    В этом примере командлет Add-Type используется для добавления в текущий сеа
    нс класса VBFromFile, определенного в файле Hello.vb. Текст файла Hello.vb 
    показан в результатах выполнения команды.
    
    Первая команда использует командлет Add-Type для добавления в текущий сеанс
     типа, определенного в файле Hello.vb. Для указания исходного файла в этой 
    команде используется параметр path. 
    
    Вторая команда вызывает функцию SayHello в качестве статического метода кла
    сса VBFromFile.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$signature = @"
    [DllImport("user32.dll")]
    public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);
    "@
    
    $showWindowAsync = Add-Type -memberDefinition $signature -name "Win32ShowWi
    ndowAsync" -namespace Win32Functions -passThru
    
    # Minimize the Windows PowerShell console
    $showWindowAsync::ShowWindowAsync((Get-Process -id $pid).MainWindowHandle, 
    2) 
    
    # Restore it
    $showWindowAsync::ShowWindowAsync((Get-Process -id $pid).MainWindowHandle, 
    4)
    
    
    Описание
    -----------
    Команды в этом примере показывают, как вызывать в Windows PowerShell собств
    енные API Windows. Командлет Add-Type использует механизм вызова неуправляе
    мого кода, чтобы вызвать в Windows PowerShell функцию из файла User32.dll.
    
    Первая команда сохраняет в переменной $signature сигнатуру C# функции ShowW
    indowAsync. (Дополнительные сведения см. в разделе "Функция ShowWindowAsync
    " библиотеки MSDN по адресу  (на английском языке).) Чтобы получаемый в рез
    ультате метод был доступен в сеансе Windows PowerShell, к стандартной сигна
    туре было добавлено ключевое слово "public".
    
    Вторая команда использует командлет Add-Type для добавления функции ShowWin
    dowAsync в сеанс Windows PowerShell в качестве статического метода класса, 
    создаваемого командлетом Add-Type. Команда использует параметр MemberDefini
    tion для задания определения метода, сохраняемого в переменной $signature.
     
    Команда использует параметры Name и Namespace для задания имени и пространс
    тва имен класса. Она использует параметр PassThru, чтобы создать объект, пр
    едставляющий типы, и сохраняет этот объект в переменной $showWindowAsync.
    
    В третьей и четвертой командах используется новый статический метод ShowWin
    dowAsync. Этот метод принимает два параметра — дескриптор окна и целое знач
    ение, определяющее отображение окна.
    
    Третья команда вызывает метод ShowWindowAsync. Она использует командлет Get
    -Process с автоматической переменной $pid, чтобы получить процесс, в которо
    м работает текущий сеанс Windows PowerShell. После этого она использует сво
    йство MainWindowHandle текущего процесса и значение 2, соответствующее знач
    ению SW_MINIMIZE.
    
    Чтобы восстановить окно, четвертая команда использует для определения полож
    ения окна значение 4, что соответствует значению SW_RESTORE. (Положению SW_
    MAXIMIZE соответствует значение 3.)
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>Add-Type -MemberDefinition $jsMethod -Name "PrintInfo" -Language JScr
    ipt
    
    
    Описание
    -----------
    Эта команда использует командлет Add-Type, чтобы добавить в сеанс Windows P
    owerShell метод из встроенного кода JScript. Для отправки исходного кода, х
    ранящегося в переменной $jsMethod, используется параметр MemberDefinition. 
    Команда использует переменную Name, чтобы задать имя класса, создаваемого с
     помощью командлета Add-Type для данного метода, и параметр Language, чтобы
     указать, что используется язык JScript.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>Add-Type -Path FSharp.Compiler.CodeDom.dll
    
    
    C:\PS> Add-Type -Path FSharp.Compiler.CodeDom.dll
    C:\PS> $provider = New-Object Microsoft.FSharp.Compiler.CodeDom.FSharpCodeP
    rovider
    
    C:\PS> $fSharpCode = @" 
    let rec loop n = 
    if n <= 0 then () else begin
    print_endline (string_of_int n);
    loop (n-1)
    end
    "@
    
    C:\PS> $fsharpType = Add-Type -TypeDefinition $fSharpCode -CodeDomProvider 
    $provider -PassThru | where { $_.IsPublic }
    C:\PS> $fsharpType::loop(4)
    4
    3
    2
    1
    
    
    Описание
    -----------
    В этом примере показано, как с помощью командлета Add-Type добавить в сеанс
     Windows PowerShell компилятор кода FSharp. Чтобы запустить этот пример в W
    indows PowerShell, требуется сборка FSharp.Compiler.CodeDom.dll, устанавлив
    аемая вместе с языком FSharp.
    
    Первая команда в этом примере использует командлет Add-Type с параметром Pa
    th, чтобы задать сборку. Командлет Add-Type получает типы из сборки.
    
    Вторая команда использует командлет New-Object, чтобы создать экземпляр пос
    тавщика кода FSharp, и сохраняет результат в переменной $provider.
    
    Третья команда сохраняет код FSharp, который определяет метод Loop в переме
    нной $FSharpCode.
    
    Четвертая команда использует командлет Add-Type, чтобы сохранить в переменн
    ой $fSharpType общие типы, определенные в переменной $fSharpCode. Параметр 
    TypeDefinition задает исходный код, в котором определены типы. Параметр Cod
    eDomProvider задает компилятор исходного кода. 
    
    Параметр PassThru означает, что командлет Add-Type должен вернуть объект Ru
    ntime, представляющий типы, а оператор конвейера (|) передает объект Runtim
    e командлету Where-Object, который возвращает только общие типы. Фильтр Whe
    re-Object используется потому, что поставщик FSharp создает для поддержки к
    онечного общего типа типы, не являющиеся общими.
    
    Пятая команда вызывает метод Loop в качестве статического метода типа, хран
    ящегося в переменной $fSharpType.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135195
    Add-Member 
    New-Object 



Alias

ИМЯ ПОСТАВЩИКА
    Alias
    
ДИСКИ
    Alias:
    
ОПИСАНИЕ
    Предоставляет доступ к псевдонимам Windows PowerShell и представленным ими 
    значениям.
    
ОПИСАНИЕ
    Поставщик Windows PowerShell Alias позволяет извлекать, добавлять, изменять
    , очищать и удалять псевдонимы в Windows PowerShell. 
    
    Псевдоним представляет собой альтернативное имя командлета, функции или исп
    олняемого файла. Оболочка Windows PowerShell включает набор встроенных псев
    донимов. Кроме того, пользователь может добавлять собственные псевдонимы в 
    текущий сеанс и свой профиль Windows PowerShell.
    
    Поставщик Alias представляет собой плоское пространство имен, содержащее то
    лько объекты псевдонимов. У псевдонимов нет дочерних элементов.
    
    Каждый псевдоним является экземпляром класса System.Management.Automation.A
    liasInfo.
    
    Поставщик Alias отображает свое хранилище данных как диск Alias:. Для работ
    ы с псевдонимами можно изменить свое положение на диск Alias: с помощью сле
    дующей команды:
    
        set-location alias:
    
    Можно также работать в оболочке Windows PowerShell с любого другого диска. 
    Для ссылки на псевдоним из другого положения в пути следует использовать им
    я диска "Alias:". 
    
    Оболочка Windows PowerShell включает набор командлетов, предназначенных для
     просмотра и изменения псевдонимов:
    
        Export-Alias
        Get-Alias
        Import-Alias
        New-Alias
        Set-Alias
    
    При использовании этих командлетов не нужно указывать диск "Alias:" в имени
    .
    
    Поставщик Alias поддерживает все командлеты, содержащие слово Item, кроме к
    омандлета Invoke-Item. Кроме того, он поддерживает командлеты Get-Content и
     Set-Content. Поставщик Alias не поддерживает командлеты, содержащие слово 
    ItemProperty. Кроме того, поставщик Alias не поддерживает параметр Filter в
     любых командлетах.
    
    Все изменения в псевдонимах затрагивают только текущий сеанс. Чтобы сохрани
    ть изменения, их следует добавить в профиль Windows PowerShell. Можно также
     использовать командлеты Export-Alias и Import-Alias.
    
ВОЗМОЖНОСТИ
    
    
ЗАДАЧИ
    ЗАДАЧА: Обращение к диску Alias:
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда меняет текущее положение на диск Alias:. Эту команду можно 
        использовать с любого диска в оболочке Windows PowerShell. Чтобы вернут
        ься к диску файловой системы, введите имя диска. Например, введите кома
        нду "set-location c:".
        
        set-location alias:
        
        
        
        
        
    ЗАДАЧА: Получение псевдонимов
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда возвращает список всех псевдонимов в текущем сеансе. Эту ко
        манду можно использовать на любом диске Windows PowerShell.
        
        get-item -path alias:
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Это команда возвращает псевдоним "ls". Так как он содержит путь, его мо
        жно использовать на любом допустимом диске Windows PowerShell.
        
        get-item -path alias:ls
        
        
        Если диск Alias: уже открыт, имя этого диска в пути можно не указывать.
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда возвращает список псевдонимов, связанных с командлетом Get-
        ChildItem. Для хранения имени командлета в ней используется свойство De
        finition.
        
        get-item -path alias:* | where-object {$_.Definition -eq "Get-Childitem
        "}
        
        
        Если элемент с псевдонимом является исполняемым файлом, свойство Defini
        tion содержит полный путь к файлу.
        -------------------------- ПРИМЕР 4 --------------------------
        
        Эта команда возвращает список всех псевдонимов, если текущим положением
         является диск Alias:. Подстановочный знак (*) используется для указани
        я на все содержимое текущего положения.
        
        get-item -path *
        
        
        На диске Alias: точка (.), представляющая текущее положение, и подстано
        вочный знак (*), представляющий все элементы текущего положения, имеют 
        одинаковый эффект. Например, одинаковый результат получится при выполне
        нии команд "get-item -path ." и "get-item *".
        
        
    ЗАДАЧА: Создание нового псевдонима
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда создает псевдоним "serv" для командлета Get-Service. Так ка
        к текущим местоположением является диск Alias:, значение параметра Path
         — точка (.). Точка обозначает текущее местоположение.
        
        Эта команда также использует динамический параметр Options для задания 
        параметров псевдонима AllScope и Constant. Параметр Options доступен в 
        командлете New-Item только если открыт диск Alias:.
        
        new-item -path . -name serv -value Get-Service -Options "AllScope,Const
        ant"
        
        
        Если диск Alias: уже открыт, имя этого диска в пути можно не указывать.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Псевдоним может быть создан для любого элемента, вызывающего команду. Э
        та команда создает псевдоним "np" для Notepad.exe.
        
        new-item -path alias:np -value c:\windows\notepad.exe
        
        
        
        -------------------------- ПРИМЕР 3 --------------------------
        
        Можно создать псевдоним для любой функции. Эта возможность позволяет со
        здать псевдоним, включающий как командлет, так и его параметры.
        
        Первая команда создает функцию CD32, которая изменяет текущий каталог н
        а каталог System32. Вторая команда создает псевдоним "go" для функции C
        D32. Разделителем команд служит точка с запятой (;).
        
        После завершения команды для вызова функции CD32 можно использовать люб
        ую из команд CD32 и "go".
        
        function CD32 {set-location -path c:\windows\system32} set-item -path a
        lias:go -value CD32
        
        
        
        
        
    ЗАДАЧА: Отображение свойств и методов псевдонимов
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда использует командлет Get-Item для получения всех псевдонимо
        в. Результаты с помощью оператора конвейера (|) передаются командлету G
        et-Member, который отображает методы и свойства объекта.
        
        get-item -path alias:* | get-member
        
        
        При передаче командлету Get-Member по конвейеру коллекции объектов, нап
        ример коллекции псевдонимов на диске Alias:, командлет Get-Member обраб
        атывает каждый объект коллекции отдельно. Затем командлет Get-Member во
        звращает информацию о каждом найденном типе объекта. Если все объекты п
        ринадлежат к одному типу, выводятся сведения о единственном типе объект
        а. В данном случае все псевдонимы являются объектами AliasInfo.
        
        Для получения сведений о коллекции объектов AliasInfo используйте парам
        етр InputObject командлета Get-Member. Например, используйте следующую 
        команду:
        
            Get-Member -InputObject (Get-Item alias:*)
        
        При использовании параметра InputObject командлет Get-Member выполняет 
        оценку всей коллекции, а не отдельных объектов из нее.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда перечисляет значения свойств псевдонима "dir". Она использу
        ет командлет Get-Item для получения объекта, представляющего псевдоним 
        "dir". Оператор конвейера (|) передает результаты команде Format-List. 
        Команда Format-List использует параметр Property с подстановочным знако
        м (*) для форматирования и отображения значений всех свойств псевдонима
         "dir".
        
        get-item alias:dir | format-list -property *
        
        
        
        
        
    ЗАДАЧА: Изменение свойств псевдонима
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Для изменения значения свойства Options псевдонима можно использовать к
        омандлет Set-Item с динамическим параметром Options.
        
        Эта команда устанавливает параметры AllScope и ReadOnly для псевдонима 
        "dir". В ней используется динамический параметр Options командлета Set-
        Item. Параметр Options доступен для Set-Item только при использовании с
         поставщиком Alias или Function.
        
        set-item -path alias:dir -options "AllScope,ReadOnly"
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда использует командлет Set-Item для изменения псевдонима "gp"
         так, чтобы он представлял командлет Get-Process вместо командлета Get-
        ItemProperty. Параметр Force является обязательным, поскольку для значе
        ния параметра Options псевдонима "gp" установлен режим ReadOnly. Так ка
        к команда вводится при открытом диске Alias:, диск в пути не указываетс
        я.
        
        set-item -path gp -value get-process -force
        
        
        Это изменение затрагивает четыре свойства, определяющих связь между псе
        вдонимом и командой. Чтобы просмотреть влияние изменения, введите следу
        ющую команду:
        
            get-item -path gp | format-list -property *
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда использует командлет Rename-Item для изменения имени псевдо
        нима "popd" на "pop".
        
        rename-item -path alias:popd -newname pop
        
        
        
        
        
    ЗАДАЧА: Копирование псевдонима
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда копирует псевдоним "pushd", создавая новый псевдоним "push"
         для командлета Push-Location.
        
        copy-item -path alias:pushd -destination alias:push
        
        
        При создании нового псевдонима его свойство Description имеет значение 
        "None". Его свойство Options также имеет значение "None".
        
        Если команда вводится при открытом диске Alias:, можно не указывать имя
         диска в значении параметра Path.
        
        
    ЗАДАЧА: Удаление псевдонима
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда удаляет псевдоним "serv" из текущего сеанса. Эту команду мо
        жно использовать на любом диске Windows PowerShell.
        
        remove-item -path alias:serv
        
        
        Если диск Alias: уже открыт, имя этого диска в пути можно не указывать.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда удаляет псевдонимы, начинающиеся со знака "s". Она не удаля
        ет псевдонимы, доступные только для чтения.
        
        clear-item -path alias:s*
        
        
        
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда удаляет все псевдонимы из текущего сеанса, кроме тех, котор
        ые содержат Constant в значении свойства Options. Если не задан парамет
        р Force, команда не удаляет псевдонимы со значением ReadOnly свойства O
        ptions.
        
        remove-item alias:* -force
        
        
        
        
        
    
    
ДИНАМИЧЕСКИЕ ПАРАМЕТРЫ
    -Options <System.Management.Automation.ScopedItemOptions>
        Определяет значение свойства Options псевдонима.
        
            None
                Без параметров. Это значение по умолчанию.
                
            Constant
                Невозможно удалить псевдоним и изменить его свойства. Значение 
                "Constant" доступно только при создании псевдонима. Нельзя прис
                воить значение "Constant" параметру существующего псевдонима.
                
            Private
                Псевдоним виден только в текущей области, но не в дочерних обла
                стях.
                
            ReadOnly
                Свойства псевдонима изменить нельзя, если только не использоват
                ь параметр Force. Для удаления псевдонима воспользуйтесь команд
                летом Remove-Item.
                
            AllScope
                Псевдоним копируется во все новые создаваемые области.
                
        
        Поддерживаемые командлеты: New-Item, Set-Item
        
    
ПРИМЕЧАНИЯ
    
ССЫЛКИ ПО ТЕМЕ
    about_Aliases 
    about_Providers 



cd..

cd.. 



cd\

cd\ 



Certificate

ИМЯ ПОСТАВЩИКА
    Certificate
    
ДИСКИ
    Cert:
    
ОПИСАНИЕ
    Обеспечивает доступ к хранилищам сертификатов X.509 и сертификатам из оболо
    чки Windows PowerShell.
    
ОПИСАНИЕ
    Политика безопасности оболочки Windows PowerShell позволяет использовать по
    дписи Authenticode для подписания скриптов с помощью цифровых сертификатов 
    X.509 с открытым ключом. Функции подписывания Windows PowerShell не полны, 
    но позволяют пользователям подписывать скрипты и позволяют оболочке Windows
     PowerShell распознавать подписанные и неподписанные скрипты и определять с
    крипты, исходящие из Интернета.
    Поставщик сертификатов Windows PowerShell позволяет перемещаться по простра
    нству имен сертификатов и просматривать хранилища сертификатов и сертификат
    ы. Он также позволяет копировать, перемещать и удалять сертификаты и хранил
    ища сертификатов и открывать оснастку "Сертификаты" в консоли управления (M
    MC).
    Поставщик сертификатов представляет пространство имен сертификатов в виде д
    иска Cert: в Windows PowerShell. Cert: имеет три описанных ниже уровня.
    Места хранения (Microsoft.PowerShell.Commands.X509StoreLocation), которые п
    редставляют собой контейнеры высокого уровня для группировки сертификатов т
    екущего пользователя и всех пользователей. Каждая система имеет место хране
    ния CurrentUser и LocalMachine (все пользователи).
    
    -- Хранилища сертификатов (System.Security.Cryptography.X509Certificates.X5
    09Store), которые представляют собой физические хранилища для хранения и уп
    равления сертификатами.
    
    Сертификаты X.509 (System.Security.Cryptography.X509Certificates.X509Certif
    icate2), каждый из которых представляет сертификат X.509 в компьютере. Серт
    ификаты идентифицируются по их отпечаткам.
    
    Поставщик сертификатов Windows PowerShell поддерживает командлеты Set-Locat
    ion, Get-Location, Get-Item, Get-ChildItem и Invoke-Item.
    Кроме того, оснастка "Безопасность" в Windows PowerShell (Microsoft.PowerSh
    ell.Security), которая содержит поставщик сертификатов, также включает осна
    стки для получения и установки подписей Authenticode и получения сертификат
    ов. Чтобы получить список командлетов в оснастке "Безопасность", введите ко
    манду "get-command -module *security".
    
ВОЗМОЖНОСТИ
    
    
ЗАДАЧИ
    ЗАДАЧА: Перемещение по диску "Cert:"
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда использует командлет Set-Location, чтобы изменить текущее м
        естоположение диска "Cert:".
        
        set-location cert:
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда использует команду Set-Location, чтобы изменить текущее мес
        тоположение хранилища корневого сертификата в месте хранения LocalMachi
        ne. Используйте обратную косую черту (\) или косую черту (/), чтобы пок
        азать уровень диска "Cert:".
        
        set-location -path LocalMachine\Root
        
        
        Если диск "Cert:" указывайте путь, начиная с имени диска.
        
        
    ЗАДАЧА: Отображение содержимого диска "Cert:".
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда использует командлет Get-ChildItem, чтобы показать хранилищ
        а сертификатов в месте хранения сертификатов CurrentUser.
        
        get-childitem -path cert:\CurrentUser
        
        
        Если текущим положением является диск "Cert:":, имя диска можно не указ
        ывать.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда использует командлет Get-ChildItem, чтобы показать сертифик
        аты в хранилище сертификатов "My".
        
        get-childitem -path cert:\CurrentUser\My
        
        
        Если текущим положением является диск "Cert:":, имя диска можно не указ
        ывать.
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда использует командлет Get-Item, чтобы получить хранилище сер
        тификатов "My", а параметр Property командлета Format-List с подстаново
        чным знаком (*), чтобы показать все свойства хранилища.
        
        get-item -path cert:\CurrentUser\My | format-list *
        
        
        
        -------------------------- ПРИМЕР 4 --------------------------
        
        Эта команда получает сертификат и показывает все его свойства. Она испо
        льзует командлет Get-ChildItem, чтобы получить сертификат, а параметр P
        roperty командлета Format-List с подстановочным знаком (*), чтобы показ
        ать все свойства сертификата.
        Сертификат идентифицируется своим отпечатком.
        
        get-childitem -path cert:\CurrentUser\my\6B8223358119BB08840DEE50FD8AF9
        EA776CE66B | format-list -property *
        
        
        
        -------------------------- ПРИМЕР 5 --------------------------
        
        Эта команда использует командлет Get-ChildItem, чтобы получить все серт
        ификаты в компьютере, и его динамический параметр CodeSigningCert, чтоб
        ы получить только сертификаты с заверителем подписи кода.
        
        get-childitem -path * -codesigningcert -recurse
        
        
        
        
        
    ЗАДАЧА: Открытие оснастки "Сертификаты" консоли управления (MMC)
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда открывает оснастку "Сертификаты" консоли управления (MMC), 
        чтобы управлять указанным сертификатом.
        
        invoke item cert:\CurrentUser\my\6B8223358119BB08840DEE50FD8AF9EA776CE6
        6B
        
        
        
        
        
    
    
ДИНАМИЧЕСКИЕ ПАРАМЕТРЫ
    -CodeSigningCert <System.Management.Automation.SwitchParameter>
        Получает только сертификаты с заверителем подписи кода.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Get-ChildItem
        
    
ПРИМЕЧАНИЯ
    
ССЫЛКИ ПО ТЕМЕ
    about_Providers 
    about_Signing 
    Get-AuthenticodeSignature 
    Set-AuthenticodeSignature 
    Get-PfxCertificate 



Checkpoint-Computer

ИМЯ
    Checkpoint-Computer
    
ОПИСАНИЕ
    Создает точку восстановления системы на локальном компьютере.
    
СИНТАКСИС
    Checkpoint-Computer [-Description] <string> [[-RestorePointType] <string>] 
    [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Checkpoint-Computer создает точку восстановления системы на локал
    ьном компьютере. Этот командлет работает только в Windows Vista и Windows X
    P.
    
ПАРАМЕТРЫ
    -Description <string>
        Задает описательное имя для точки восстановления. Это обязательный пара
        метр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -RestorePointType <string>
        Задает тип точки восстановления. По умолчанию используется значение APP
        LICATION_INSTALL.
        
        Допустимые значения: APPLICATION_INSTALL, APPLICATION_UNINSTALL, DEVICE
        _DRIVER_INSTALL, MODIFY_SETTINGS и CANCELLED_OPERATION.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                APPLICATION_INSTALL
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Объекты невозможно передать командлету Checkpoint-Computer по конвейеру
        .
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        В этом командлете используется метод CreateRestorePoint класса SystemRe
        store с событием BEGIN_SYSTEM_CHANGE.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>checkpoint-computer -description "Install MyApp"
    
    
    Описание
    -----------
    Эта команда создает точку восстановления системы с именем "Install MyApp". 
    Используется тип точки восстановления по умолчанию APPLICATION_INSTALL.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>checkpoint-computer -description "ChangeNetSettings" -RestorePointTyp
    e MODIFY_SETTINGS
    
    
    Описание
    -----------
    Эта команда создает точку восстановления системы типа MODIFY_SETTINGS с име
    нем "ChangeNetSettings".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135197
    Add-Computer 
    Remove-Computer 
    Restart-Computer 
    Restore-Computer 
    Stop-Computer 
    Test-Connection 



Clear-Content

ИМЯ
    Clear-Content
    
ОПИСАНИЕ
    Удаляет содержимое элемента без удаления самого элемента, например, удаляет
     текст из файла.
    
СИНТАКСИС
    Clear-Content [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Excl
    ude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-Confirm
    ] [-WhatIf] [-UseTransaction] [<CommonParameters>]
    
    Clear-Content [-Path] <string[]> [-Credential <PSCredential>] [-Exclude <st
    ring[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-Confirm] [-Wha
    tIf] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Clear-Content удаляет содержимое элемента без удаления самого эле
    мента, например, удаляет текст из файла. В результате элемент существует, н
    о является пустым. Командлет Clear-Content действует аналогично командлету 
    Clear-Item, но предназначен для работы с файлами, а не псевдонимами и перем
    енными.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету очистить содержимое файла, даже если файл доступен
         только для чтения. Реализация варьируется от поставщика к поставщику. 
        Дополнительные сведения см. в разделе About_Providers. Даже при использ
        овании параметра Force командлет не может переопределить ограничения бе
        зопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Очищает только указанные элементы. Значение этого параметра определяет 
        значение параметра Path. Введите элемент пути или шаблон, например "*.t
        xt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к элементам, содержимое которых требуется удалить. В отличи
        е от значения параметра Path, значение параметра LiteralPath использует
        ся точно в том виде, в котором оно введено. Никакие символы не интерпре
        тируются как подстановочные знаки. Если путь включает escape-символы, е
        го нужно заключить в одиночные кавычки. Одиночные кавычки указывают обо
        лочке Windows PowerShell, что никакие символы не следует интерпретирова
        ть как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к элементам, содержимое которых требуется удалить. Подстано
        вочные знаки разрешены. Пути должны быть путями к элементам, а не конте
        йнерам. Например, нужно указать путь к одному или нескольким файлам, а 
        не путь к каталогу. Подстановочные знаки разрешены. Этот параметр обяза
        телен, но его имя ("Path") можно не указывать.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Объекты невозможно передать командлету Clear-Content по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Clear-Content также можно вызывать с помощью встроенного псев
        донима "clc". Дополнительные сведения см. в разделе About_Aliases.
        
        Если имя параметра -Path опущено, его значение в списке параметров кома
        нды должно быть указано первым. Например, "clear-content c:\mydir\*.txt
        ". Если указать имя параметра, можно приводить параметры в любом порядк
        е.
        
        Командлет Clear-Content можно использовать с поставщиком файловой систе
        мы оболочки Windows PowerShell, а также с другими поставщиками, работаю
        щими с содержимым. Чтобы очистить элементы, которые не считаются содерж
        имым, например элементы, управляемые поставщиками сертификатов и реестр
        а Windows PowerShell, используйте командлет Clear-Item.
        
        Командлет Clear-Content предназначен для работы с данными, предоставляе
        мыми любым поставщиком. Чтобы получить список поставщиков, доступных в 
        текущем сеансе, введите команду "Get-PsProvider". Дополнительные сведен
        ия см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>clear-content ..\SmpUsers\*\init.txt
    
    
    Описание
    -----------
    Эта команда удаляет все содержимое файлов с именем "init.txt", содержащихся
     во всех вложенных каталогах каталога SmpUsers. Содержимое файлов удаляется
    , при этом сами файлы остаются.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>clear-content -path * -filter *.log -force
    
    
    Описание
    -----------
    Эта команда удаляет содержимое всех файлов из текущего каталога с расширени
    ем ".log", включая файлы с атрибутом "только для чтения". Звездочка (*) в п
    ути означает все элементы из текущего каталога. Параметр Force позволяет пр
    именять команду к файлам с атрибутом "только для чтения". Использование фил
    ьтра, чтобы задать применение команды только для файлов с расширением ".log
    " вместо указания "*.log" в пути, повышает быстродействие команды.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>clear-content c:\Temp\* -Include Smp* -Exclude *2* -whatif
    
    
    Описание
    -----------
    Эта команда требует получить прогноз результатов выполнения команды: "clear
    -content c:\temp\* -include smp* -exclude *2*" Отображается список файлов, 
    которые будут очищены. В данном случае это файлы из каталога Temp, имена ко
    торых начинаются с комбинации символов "Smp" и не содержат символ "2". Чтоб
    ы выполнить данную команду, запустите ее без указания параметра Whatif.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113282
    about_Providers 
    Get-Content 
    Set-Content 
    Add-Content 
    Get-Item 



Clear-EventLog

ИМЯ
    Clear-EventLog
    
ОПИСАНИЕ
    Удаляет все записи из заданных журналов событий на локальном или удаленном 
    компьютере.
    
СИНТАКСИС
    Clear-EventLog [-LogName] <string[]> [[-ComputerName] <string[]>] [-Confirm
    ] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Clear-EventLog удаляет все записи из заданных журналов событий на
     локальном компьютере или на удаленных компьютерах. Чтобы использовать кома
    ндлет Clear-EventLog, необходимо быть членом группы "Администраторы" на ком
    пьютере, на котором очищаются журналы.
    
    Командлеты, в имени которых содержится существительное EventLog (командлеты
     EventLog), работают только с классическими журналами событий. Чтобы получа
    ть события из журналов, основанных на технологии журнала событий Windows (в
     Windows Vista и более поздних версиях Windows), используйте командлет Get-
    WinEvent.
    
ПАРАМЕТРЫ
    -ComputerName <string[]>
        Задает удаленный компьютер. По умолчанию используется значение "Локальн
        ый компьютер".
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя удаленного компью
        тера. Чтобы указать локальный компьютер, введите имя компьютера, точку 
        (.) или "localhost".
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName командлета Get-EventLog можно использовать, даж
        е если компьютер не настроен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                Локальный компьютер
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -LogName <string[]>
        Задает журналы событий. Введите имена (значение свойства Log; а не свой
        ства LogDisplayName) одного или нескольких журналов событий, разделенны
        е запятыми.  Подстановочные знаки запрещены. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Объекты невозможно передать командлету Clear-EventLog по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать командлет Clear-EventLog в Windows Vista и более поз
        дних версиях Windows, необходимо запускать Windows PowerShell командой 
        "Запуск от имени администратора".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>clear-eventlog "Windows PowerShell"
    
    
    Описание
    -----------
    Эта команда удаляет записи из журнала событий "Windows PowerShell" на локал
    ьном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>clear-eventlog -logname ODiag, OSession -computername localhost, Serv
    er02
    
    
    Описание
    -----------
    Эта команда удаляет все записи в журналах центра диагностики Microsoft Offi
    ce (ODiag) и сеансов Microsoft Office (OSession) на локальном компьютере и 
    на удаленном компьютере Server02.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>clear-eventlog -log application, system -confirm
    
    
    Описание
    -----------
    Эта команда запрашивает подтверждение перед удалением записей в заданных жу
    рналах событий.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>function clear-all-event-logs ($computerName="localhost")
    {
        $logs = get-eventlog -computername $computername -list | foreach {$_.Lo
    g} 
        $logs | foreach {clear-eventlog -comp $computername -log $_ }
        get-eventlog -computername $computername -list
    }
    
    C:\PS> clear-all-event-logs -comp Server01
    
      Max(K) Retain OverflowAction        Entries Log                          
                                                                               
     
      ------ ------ --------------        ------- ---                          
                                                                               
     
      15,168      0 OverwriteAsNeeded           0 Application                  
                                                                               
      
      15,168      0 OverwriteAsNeeded           0 DFS Replication              
                                                                               
      
         512      7 OverwriteOlder              0 DxStudio                     
                                                                               
      
      20,480      0 OverwriteAsNeeded           0 Hardware Events              
                                                                               
      
         512      7 OverwriteOlder              0 Internet Explorer            
                                                                               
      
      20,480      0 OverwriteAsNeeded           0 Key Management Service       
                                                                               
      
      16,384      0 OverwriteAsNeeded           0 Microsoft Office Diagnostics 
                                                                               
      
      16,384      0 OverwriteAsNeeded           0 Microsoft Office Sessions    
                                                                               
      
      30,016      0 OverwriteAsNeeded           1 Security                     
                                                                               
      
      15,168      0 OverwriteAsNeeded           2 System                       
                                                                               
      
      15,360      0 OverwriteAsNeeded           0 Windows PowerShell
    
    
    Описание
    -----------
    Эта функция очищает все журналы событий на указанных компьютерах и отобража
    ет результирующий список журналов событий.
    
    Обратите внимание, что в журналы System и Security было добавлено несколько
     записей после очистки журналов, но до их отображения.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135198
    Get-EventLog 
    Limit-EventLog 
    New-EventLog 
    Remove-EventLog 
    Show-EventLog 
    Write-EventLog 
    Get-WinEvent 



Clear-History

ИМЯ
    Clear-History
    
ОПИСАНИЕ
    Удаляет записи из журнала сеанса.
    
СИНТАКСИС
    Clear-History [[-Id] <Int32[]>] [[-Count] <int>] [-Newest] [-Confirm] [-Wha
    tIf] [<CommonParameters>]
    
    Clear-History [[-Count] <int>] [-CommandLine <string[]>] [-Newest] [-Confir
    m] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Clear-History удаляет команды из журнала команд, т. е. из списка 
    команд, введенных за время текущего сеанса. 
    
    При вызове без параметров командлет Clear-History удаляет из журнала сеанса
     все команды, однако для удаления определенных команд необходимо использова
    ть параметры командлета Clear-History.
    
ПАРАМЕТРЫ
    -CommandLine <string[]>
        Удаляет команды, содержащие заданные текстовые строки. При вводе нескол
        ьких строк командлет Clear-History удалит команды, содержащие любую из 
        введенных строк.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Count <int>
        Удаляет указанное число записей, начиная с наиболее старой записи, заре
        гистрированной в журнале.
        
        При использовании параметров Count и Id в одной команде командлет удали
        т количество записей, заданное параметром Count, начиная с записи, зада
        нной параметром Id.  Например, если Count =10, а Id = 30, командлет Cle
        ar-History удалит записи 21-30 включительно.
        
        При использовании параметров Count и CommandLine в одной команде команд
        лет Clear-History удалит количество записей, заданное параметром Count,
         начиная с записи, заданной параметром CommandLine.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Id <Int32[]>
        Удаляет команды с указанными идентификаторами записи. 
        
        Чтобы определить идентификатор записи команды, используйте команду Get-
        History.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Newest [<SwitchParameter>]
        Удаляет последние записи из журнала сеанса. По умолчанию Clear-History 
        удаляет из журнала сеанса наиболее старые записи.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Объекты невозможно передать командлету Clear-History по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    None
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Журнал сеанса представляет собой список команд, введенных за время сеан
        са. Можно просматривать журнал, добавлять и удалять команды, а также вы
        полнять команды, хранящиеся в журнале. Дополнительные сведения см. в ра
        зделе about_History.
        
        Удаление команды из журнала не приводит к изменению идентификаторов ост
        альных записей журнала команд.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>clear-history
    
    
    Описание
    -----------
    Удаляет все команды в журнале сеанса.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>clear-history -id 23, 25
    
    
    Описание
    -----------
    Удаляет команды с идентификаторами записи, равными 23 и 25.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>clear-history -command *help*, *command
    
    
    Описание
    -----------
    Удаляет команды, в которых содержится строка "help" или которые заканчивают
    ся словом "command".
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>clear-history -count 10 -newest
    
    
    Описание
    -----------
    Удаляет 10 последних команд из журнала.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>clear-history -id 10 -count 3
    
    
    Описание
    -----------
    Удаляет три наиболее старые команды, начиная с записи с идентификатором, ра
    вным 10.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135199
    about_History 
    Get-History 
    Add-History 
    Invoke-History 



Clear-Host

Clear-Host 



Clear-Item

ИМЯ
    Clear-Item
    
ОПИСАНИЕ
    Удаляет содержимое элемента без удаления самого элемента.
    
СИНТАКСИС
    Clear-Item [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Exclude
     <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-Confirm] [
    -WhatIf] [-UseTransaction] [<CommonParameters>]
    
    Clear-Item [-Path] <string[]> [-Credential <PSCredential>] [-Exclude <strin
    g[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-Confirm] [-WhatIf
    ] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Clear-Item удаляет значение элемента без удаления самого элемента
    . Например, с помощью командлета Clear-Item можно удалить значение переменн
    ой, не удаляя саму переменную. Значение, используемое для представления очи
    щаемого элемента, определяется каждым поставщиком Windows PowerShell. Коман
    длет Clear-Item действует аналогично командлету Clear-Content, но предназна
    чен для работы с псевдонимами и переменными, а не с файлами.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету очистить элементы, которые не могут быть изменены 
        другим образом, например псевдонимы только для чтения. Командлет не мож
        ет очищать константы. Реализация варьируется от поставщика к поставщику
        . Дополнительные сведения см. в разделе About_Providers. Даже при испол
        ьзовании параметра Force командлет не может переопределить ограничения 
        безопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Очищает только указанные элементы. Значение этого параметра определяет 
        значение параметра Path. Введите элемент пути или шаблон, например "*.t
        xt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к очищаемым элементам. В отличие от значения параметра Path
        , значение параметра LiteralPath используется точно в том виде, в котор
        ом оно введено. Никакие символы не интерпретируются как подстановочные 
        знаки. Если путь включает escape-символы, его нужно заключить в одиночн
        ые кавычки. Одиночные кавычки указывают оболочке Windows PowerShell, чт
        о никакие символы не следует интерпретировать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к очищаемым элементам. Подстановочные знаки разрешены. Этот
         параметр обязателен, но его имя ("Path") можно не указывать.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Можно передать строку пути командлету Clear-Item по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Clear-Item поддерживается только несколькими поставщиками Win
        dows PowerShell, включая поставщиков Alias, Environment, Function, Regi
        stry и Variable. Поэтому командлет Clear-Item можно использовать для уд
        аления содержимого элементов в пространствах имен поставщиков.
         
        Командлет Clear-Item нельзя использовать для удаления содержимого файла
        , так как он не поддерживается поставщиком Windows PowerShell FileSyste
        m. Для очистки файлов используется командлет Clear-Content.
        
        Командлет Clear-Item также можно вызывать с помощью встроенного псевдон
        има "cli". Чтобы получить дополнительные сведения, введите команду "get
        -help about_Aliases".
        
        Командлет Clear-Item предназначен для работы с данными, предоставляемым
        и любым поставщиком. Чтобы получить список поставщиков, доступных в тек
        ущем сеансе, введите команду "Get-PsProvider". Дополнительные сведения 
        см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>clear-item Variable:TestVar1
    
    
    Описание
    -----------
    Эта команда удаляет значение переменной Testvar1. Переменная по-прежнему су
    ществует, однако ее значение равно Null. 
      
    Имя переменной предваряется префиксом "Variable:" для указания того, что ее
     поставщиком является Windows PowerShell Variable. Аналогичный результат мо
    жно получить, переключившись в пространство имен поставщика Variable Window
    s PowerShell и выполнив команду Clear-Item.
    
        PS C:> Set-location Variable:
        PS Variable:\> clear-item Testvar1
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>clear-item Alias:log* -include *1* -exclude *3* -whatif
    
    What if: Performing operation "Clear Item" on Target "Item: log1".
    
    
    Описание
    -----------
    Эта команда спрашивает оболочку PowerShell о том, что произойдет при выполн
    ении команды "clear-item alias:log* -include *1* -exclude *3". В ответ обол
    очка Windows PowerShell сообщает, что будет удалено значение псевдонима log
    1. 
    
    Эта команда никак не повлияет на псевдонимы log, log2 и log13. Поставщик пс
    евдонимов не допускает наличия псевдонимов без значений, поэтому при очистк
    е псевдонима удаляется и сам псевдоним.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>clear-item registry::HKLM\Software\MyCompany\MyKey -confirm
    
    
    Описание
    -----------
    Эта команда удаляет все записи реестра из подраздела MyKey. Для этого необх
    одимо ввести подтверждение. Эта команда не удаляет подраздел MyKey; другие 
    разделы и записи реестра также не затрагиваются. Параметры Include и Exclud
    e можно использовать для задания определенных разделов реестра, однако их н
    ельзя использовать для задания записей реестра. Для удаления конкретных зап
    исей реестра используйте команду Remove-ItemProperty. Для удаления значения
     записи реестра используйте команду Clear-ItemProperty.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113283
    about_Providers 
    Copy-Item 
    Get-Item 
    Invoke-Item 
    Move-Item 
    Set-Item 
    New-Item 
    Remove-Item 
    Rename-Item 



Clear-ItemProperty

ИМЯ
    Clear-ItemProperty
    
ОПИСАНИЕ
    Удаляет значение свойства без удаления самого свойства.
    
СИНТАКСИС
    Clear-ItemProperty [-LiteralPath] <string[]> [-Name] <string> [-Credential 
    <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include
     <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonPar
    ameters>]
    
    Clear-ItemProperty [-Path] <string[]> [-Name] <string> [-Credential <PSCred
    ential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <strin
    g[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters
    >]
    
    
ОПИСАНИЕ
    Командлет Clear-ItemProperty удаляет значение свойства, не удаляя само свой
    ство. Данный командлет можно использовать для удаления данных параметра рее
    стра.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt" и
        ли "s*". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету удалять свойства элементов, которые были бы недост
        упны пользователю другими способами. Реализация варьируется от поставщи
        ка к поставщику. Дополнительные сведения см. в разделе About_Providers.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Очищает только указанные элементы. Значение этого параметра определяет 
        значение параметра Path. Введите элемент пути или шаблон, например "*.t
        xt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к очищаемому свойству. В отличие от значения параметра Path
        , значение параметра LiteralPath используется точно в том виде, в котор
        ом оно введено. Никакие символы не интерпретируются как подстановочные 
        знаки. Если путь включает escape-символы, его нужно заключить в одиночн
        ые кавычки. Одиночные кавычки указывают оболочке Windows PowerShell, чт
        о никакие символы не следует интерпретировать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя очищаемого свойства, например имя раздела реестра. Подстанов
        очные знаки запрещены.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий очищенное свойство элемента. По умолч
        анию этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к очищаемому свойству. Подстановочные знаки разрешены.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Можно передать строку пути командлету Clear-ItemProperty по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PSCustomObject
        Если задан параметр PassThru, командлет Clear-ItemProperty формирует об
        ъект PSCustomObject, представляющий очищенное свойство элемента. В прот
        ивном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Clear-ItemProperty можно использовать для удаления данных из 
        параметров реестра без удаления самих параметров. Если значение имеет т
        ип данных Binary или DWORD, то при его очистке ему присваивается значен
        ие "0". Для других типов данных очищаемому параметру присваивается пуст
        ое значение.
        
        Командлет Clear-ItemProperty также можно вызывать с помощью встроенного
         псевдонима "clp". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлет Clear-ItemProperty предназначен для работы с данными, предост
        авляемыми любым поставщиком. Чтобы получить список поставщиков, доступн
        ых в текущем сеансе, введите команду "Get-PSProvider". Дополнительные с
        ведения см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>clear-itemproperty -path HKLM:\Software\MyCompany\MyApp -name Options
    
    
    Описание
    -----------
    Эта команда удаляет данные из параметра реестра Options подраздела MyApp ра
    здела HKEY_LOCAL_MACHINE\Software\MyCompany.
    
    Так как команда запускается с диска файловой системы (C:), она содержит пол
    ный путь к диску HKLM: и подразделу Software\MyCompany\MyApp. Для задания з
    начения Options используется параметр Name.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113284
    about_Providers 
    Copy-ItemProperty 
    New-ItemProperty 
    Move-ItemProperty 
    Rename-ItemProperty 
    Get-ItemProperty 
    New-ItemProperty 



Clear-Variable

ИМЯ
    Clear-Variable
    
ОПИСАНИЕ
    Удаляет значение переменной.
    
СИНТАКСИС
    Clear-Variable [-Name] <string[]> [-Exclude <string[]>] [-Force] [-Include 
    <string[]>] [-PassThru] [-Scope <string>] [-Confirm] [-WhatIf] [<CommonPara
    meters>]
    
    
ОПИСАНИЕ
    Командлет Clear-Variable удаляет данные, хранящиеся в переменной, но не сам
    у переменную. В результате переменная получает значение NULL (пустое). Если
     переменная имеет указанный тип данных или объектный тип, командлет Clear-V
    ariable оставляет тип объекта, хранимого в переменной, прежним.
    
ПАРАМЕТРЫ
    -Exclude <string[]>
        Исключает указанные элементы. Значение данного параметра определяет зна
        чение параметра Name. Введите часть имени или шаблон, например "s*". По
        дстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету очистить переменную, даже если она доступна только
         для чтения. Даже при использовании параметра Force командлет не может 
        очистить константу.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Очищает только указанные элементы. Значение данного параметра определяе
        т значение параметра Name. Введите часть имени или шаблон, например "s*
        ". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имя очищаемой переменной. Подстановочные знаки разрешены. Этот п
        араметр обязателен, но его имя ("Name") можно не указывать.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий очищенную переменную. По умолчанию эт
        от командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Scope <string>
        Задает область действия псевдонима. Допустимые значения: "Global", "Loc
        al", "Script" или номер относительно текущей области (от 0 до количеств
        а областей, где 0 — текущая область, а 1 — ее родительская область). По
         умолчанию используется значение "Local". Дополнительные сведения см. в
         разделе about_Scopes.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Объекты невозможно передать командлету Clear-Variable по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PSVariable
        Если задан параметр PassThru, командлет Clear-Variable создает объект S
        ystem.Management.Automation.PSVariable, представляющий очищенную переме
        нную. В противном случае этот командлет не формирует никаких выходных д
        анных.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы удалить переменную вместе со значением можно использовать командл
        еты Remove-Variable или Remove-Item.
        
        Командлет Clear-Variable не удаляет значения переменных, являющихся кон
        стантами или принадлежащих системе, даже если используется параметр -Fo
        rce.
        
        Если очищаемой переменной не существует, этот командлет не выполняет ни
        каких действий. Он не создает переменную со значением NULL.
        
        Командлет Clear-Variable также можно вызывать с помощью встроенного псе
        вдонима "clv". Дополнительные сведения см. в разделе About_Aliases.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>clear-variable my* -global
    
    
    Описание
    -----------
    Эта команда удаляет значения глобальных переменных, имена которых начинаютс
    я на "my".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$a=3
    
    C:\PS>&{ clear-variable a }
    
    C:\PS>$a
    3
    
    
    Описание
    -----------
    Эти команды показывают, что при очистке переменной в дочерней области значе
    ние в родительской области не удаляется. Первая команда присваивает перемен
    ной $a значение 3. Вторая команда использует оператор вызова (&) для выполн
    ения команды Clear-Variable в новой области. В результате в дочерней област
    и переменная очищается (хотя ее и не существовало), а в локальной — нет. Тр
    етья команда, получающая значение переменной $a, показывает, что значение 3
     осталось неизменным.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>clear-variable -name processes
    
    
    Описание
    -----------
    Эта команда удаляет значение переменной $processes. После этого переменная 
    $processes продолжает существовать, но имеет значение NULL.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113285
    Get-Variable 
    Set-Variable 
    New-Variable 
    Remove-Variable 



Compare-Object

ИМЯ
    Compare-Object
    
ОПИСАНИЕ
    Сравнивает два набора объектов.
    
СИНТАКСИС
    Compare-Object [-ReferenceObject] <PSObject[]> [-DifferenceObject] <PSObjec
    t[]> [-CaseSensitive] [-Culture <string>] [-ExcludeDifferent] [-IncludeEqua
    l] [-PassThru] [-Property <Object[]>] [-SyncWindow <int>] [<CommonParameter
    s>]
    
    
ОПИСАНИЕ
    Командлет Compare-Object сравнивает два набора объектов. Один набор объекто
    в является эталонным, а другой — отличающимся. 
    
    Результат сравнения позволяет узнать, было ли обнаружено значение свойства 
    только в объекте из эталонного набора (символ <=), только в объекте из отли
    чающегося набора (символ =>) или, если указан параметр IncludeEqual, в обои
    х объектах (символ ==).
    
ПАРАМЕТРЫ
    -CaseSensitive [<SwitchParameter>]
        Указывает, что сравнение должно выполняться с учетом регистра.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Culture <string>
        Задает культуру, используемую при сравнении.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -DifferenceObject <PSObject[]>
        Задает объекты, которые будут сравниваться с эталонными.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -ExcludeDifferent [<SwitchParameter>]
        Отображает только совпадающие характеристики сравниваемых объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -IncludeEqual [<SwitchParameter>]
        Отображает совпадающие характеристики сравниваемых объектов. По умолчан
        ию отображаются только те характеристики, которые различаются в эталонн
        ом и отличающемся объектах.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Передает по конвейеру различающиеся объекты. По умолчанию этот командле
        т не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Property <Object[]>
        Задает сравниваемые свойства эталонного и отличающегося объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ReferenceObject <PSObject[]>
        Объекты, используемые при сравнении в качестве эталона.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SyncWindow <int>
        Задает область поиска, в которой выполняется попытка повторной синхрони
        зации порядка при отсутствии совпадений. По умолчанию используется знач
        ение [Int32]::MaxValue.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                [Int32]::MaxValue
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Можно передать объект DifferenceObject командлету Compare-Object по кон
        вейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или отличающиеся объекты
        Если задан параметр PassThru, командлет Compare-Object возвращает отлич
        ающиеся объекты. В противном случае этот командлет не формирует никаких
         выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>compare-object -referenceobject $(get-content C:\test\testfile1.txt) 
    -differenceobject $(get-content C:\test\testfile2.txt)
    
    
    Описание
    -----------
    Эта команда сравнивает содержимое двух текстовых файлов. Она выводит только
     те строки, которые имеются только в одном из двух файлов, но не в обоих.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>compare-object -referenceobject $(get-content C:\Test\testfile1.txt) 
    -differenceobject $(get-content C:\Test\testfile2.txt) -includeequal
    
    
    Описание
    -----------
    Эта команда построчно сравнивает содержимое двух текстовых файлов. Она выво
    дит все строки обоих файлов, указывая при этом для каждой строки, имеется л
    и она только в файле Textfile1.txt, файле Textfile2.txt или в обоих файлах.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$processes_before = get-process
    
    C:\PS> notepad
    
    C:\PS> $processes_after  = get-process
    
    C:\PS> compare-object -referenceobject $processes_before -differenceobject 
    $processes_after
    
    
    Описание
    -----------
    Эти команды сравнивают два набора объектов процессов. 
    
    Первая команда с помощью командлета Get-Process получает выполняющиеся на к
    омпьютере процессы. Они сохраняются в переменной $processes_before. 
    
    Вторая команда запускает Блокнот (Notepad).
    
    В третьей команде снова используется командлет Get-Process и полученные про
    цессы сохраняются в переменной $processes_after. 
    
    Четвертая команда с помощью командлета Compare-Object выполняет сравнение д
    вух наборов объектов процессов. Она выводит список различий между ними, в к
    оторый входит новый экземпляр Блокнота (Notepad).
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113286
    Group-Object 
    Measure-Object 
    Sort-Object 
    ForEach-Object 
    New-Object 
    Select-Object 
    Tee-Object 
    Where-Object 



Complete-Transaction

ИМЯ
    Complete-Transaction
    
ОПИСАНИЕ
    Фиксирует активную транзакцию.
    
СИНТАКСИС
    Complete-Transaction [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Complete-Transaction фиксирует активную транзакцию. При фиксации 
    транзакции ее команды завершаются и данные, на которые повлияли эти команды
    , изменяются.
    
    Для фиксации транзакции с несколькими подписчиками необходимо ввести по одн
    ой команде Complete-Transaction для каждой команды Start-Transaction.
    
    Командлет Complete-Transaction входит в набор командлетов, поддерживающих о
    бработку транзакций в Windows PowerShell. Дополнительные сведения см. в раз
    деле about_Transactions.
    
ПАРАМЕТРЫ
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Объекты невозможно передать командлету Complete-Transaction по конвейер
        у.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        Невозможно откатить зафиксированную транзакцию и зафиксировать транзакц
        ию, откат которой был выполнен.
        
        Откатить можно только активную транзакцию. Чтобы откатить другую транза
        кцию, необходимо сначала зафиксировать или откатить активную транзакцию
        .
        
        По умолчанию, если невозможно зафиксировать какую-либо часть транзакции
         (например, когда выполнение команды в транзакции завершается ошибкой),
         выполняется откат всей транзакции.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>cd hkcu:\software
    
    PS HKCU:\software> start-transaction
    
    PS HKCU:\software> new-item MyCompany -UseTransaction
    PS HKCU:\software> dir m*
    
       Hive: HKEY_CURRENT_USER\software
    
    SKC  VC Name                           Property
    ---  -- ----                           --------
     82   1 Microsoft                      {(default)}
    
    PS HKCU:\software> complete-transaction
    PS HKCU:\software> dir m*
    
       Hive: HKEY_CURRENT_USER\Software
    
    SKC  VC Name                           Property
    ---  -- ----                           --------
     82   1 Microsoft                      {(default)}
      0   0 MyCompany                      {}
    
    
    Описание
    -----------
    В этом примере показан результат работы командлета Complete-Transaction, ис
    пользуемого для фиксации транзакции.
    
    Команда Start-Transaction запускает транзакцию. Команда New-Item использует
     параметр UseTransaction для включения команды в транзакцию.
    
    Результат выполнения первой команды "dir" (Get-ChildItem) показывает, что н
    овый элемент еще не добавлен в реестр.
    
    Команда Complete-Transaction фиксирует транзакцию, что ведет к изменению ре
    естра. Результат выполнения второй команды "dir" показывает, что реестр изм
    енен.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>cd hkcu:\software
    
    PS HKCU:\software> start-transaction
    PS HKCU:\software> new-item MyCompany -UseTransaction
    
       Hive: HKEY_CURRENT_USER\Software
    
    SKC  VC Name                           Property
    ---  -- ----                           --------
      0   0 MyCompany                      {}
    
    PS HKCU:\software> start-transaction
    PS HKCU:\Software> Get-Transaction
    
    RollbackPreference   SubscriberCount  Status
    ------------------   ---------------  ------
    Error                2                Active
    
    PS HKCU:\software> new-itemproperty -path MyCompany -name MyKey -value -Use
    Transaction
    
    MyKey
    -----
    123
    
    PS HKCU:\software> complete-transaction
    PS HKCU:\software> get-transaction
    
    RollbackPreference   SubscriberCount  Status
    ------------------   ---------------  ------
    Error                1                Active
    
    PS HKCU:\software> dir m*
    
       Hive: HKEY_CURRENT_USER\Software
    
    SKC  VC Name                           Property
    ---  -- ----                           --------
     82   1 Microsoft                      {(default)}
    
    PS HKCU:\software> complete-transaction
    PS HKCU:\software> dir m*
    
       Hive: HKEY_CURRENT_USER\Software
    
    SKC  VC Name                           Property
    ---  -- ----                           --------
     82   1 Microsoft                      {(default)}
      0   1 MyCompany                      {MyKey}
    
    
    Описание
    -----------
    В этом примере показано, как использовать командлет Complete-Transaction дл
    я фиксации транзакции с несколькими подписчиками. 
    
    Чтобы зафиксировать транзакцию, в которой участвует несколько подписчиков, 
    необходимо выполнить по одной команде Complete-Transaction для каждой коман
    ды Start-Transaction. Данные изменяются только после выполнения последней к
    оманды Complete-Transaction. 
    
    Для наглядности в этом примере команды вводятся в командной строке. На прак
    тике транзакции обычно запускаются в составе скрипта, где запуск следующей 
    транзакции выполняется с помощью функции или вспомогательного скрипта, назы
    ваемого главным скриптом.
    
    В этом примере транзакция запускается командой Start-Transaction. Команда N
    ew-Item с параметром UseTransaction добавляет раздел MyCompany в раздел Sof
    tware. Несмотря на то что команда New-Item возвращает объект раздела, измен
    ения данных в реестре пока не происходит.
    
    Вторая команда Start-Transaction добавляет второго подписчика в существующу
    ю транзакцию. Команда Get-Transaction подтверждает, что количество подписчи
    ков равно 2. Команда New-ItemProperty с параметром UseTransaction добавляет
     запись реестра в новый раздел MyCompany. Как и в предыдущем случае, команд
    а возвращает значение, но реестр не изменяется.
    
    Первая команда Complete-Transaction уменьшает количество подписчиков на 1. 
    Это подтверждается командой Get-Transaction. Однако изменения данных не про
    исходит, о чем свидетельствует результат выполнения команды "dir m*" (Get-C
    hildItem).
    
    Вторая команда Complete-Transaction фиксирует всю транзакцию и изменяет дан
    ные в реестре. Это подтверждается второй командой "dir m*", отображающей из
    менения.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>cd hkcu:\software
    
    PS HKCU:\software> start-transaction
    
    PS HKCU:\software> new-item MyCompany -UseTransaction
    
    PS HKCU:\software> dir m*
    
       Hive: HKEY_CURRENT_USER\Software
    
    SKC  VC Name                           Property
    ---  -- ----                           --------
     82   1 Microsoft                      {(default)}
    
    
    PS HKCU:\software> dir m* -UseTransaction
    
       Hive: HKEY_CURRENT_USER\Software
    
    SKC  VC Name                           Property
    ---  -- ----                           --------
     82   1 Microsoft                      {(default)}
      0   0 MyCompany                      {}
    
    PS HKCU:\software> complete-transaction
    
    
    Описание
    -----------
    В этом примере показана полезность использования в транзакции команд Get-* 
    и других команд, не изменяющих данные. При использовании в транзакции коман
    да Get-* получает объекты, являющиеся частью транзакции. Это позволяет узна
    ть, как будут выглядеть изменения до их фиксации.
    
    В этом примере выполняется запуск транзакции. Команда New-Item с параметром
     UseTransaction добавляет новый раздел реестра в составе транзакции.
    
    Новый раздел будет добавлен в реестр только после выполнения команды Comple
    te-Transaction, поэтому обычная команда "dir" (Get-ChildItem) отображает со
    держимое реестра без нового раздела. 
    
    Однако если выполнить команду "dir" с параметром UseTransaction, эта команд
    а становится частью транзакции и получает элементы транзакции, даже если он
    и еще не добавлены к данным.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135200
    about_Transactions 
    Start-Transaction 
    Get-Transaction 
    Undo-Transaction 
    Use-Transaction 



Connect-WSMan

ИМЯ
    Connect-WSMan
    
ОПИСАНИЕ
    Подключается к службе WinRM на удаленном компьютере.
    
СИНТАКСИС
    Connect-WSMan [-ApplicationName <string>] [-ComputerName <string>] [-Port 
    int>] [-UseSSL] [-Authentication <Authentication>] [-ComputerName <string>]
     [-Credential <PSCredential>] [-Port <int>] [-SessionOption <hashtable>] [
    CommonParameters>]
    
    Connect-WSMan [-ConnectionURI <Uri>] [-Authentication <Authentication>] [-C
    omputerName <string>] [-Credential <PSCredential>] [-Port <int>] [-SessionO
    ption <hashtable>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Connect-WSMan подключается к службе WinRM на удаленном компьютере
     и открывает постоянное подключение к этому удаленному компьютеру. Этот ком
    андлет можно использовать в контексте поставщика WS-Management для подключе
    ния к службе WinRM на удаленном компьютере. Однако его также можно использо
    вать для подключения к службе WinRM на удаленном компьютере до перехода к п
    оставщику WS-Management. Удаленный компьютер будет присутствовать в корнево
    м каталоге поставщика WS-Management. 
    
    Дополнительные сведения о том, как отключиться от службы WinRM на удаленном
     компьютере, см. в разделе Disconnect-WSMan.
    
ПАРАМЕТРЫ
    -ApplicationName <string>
        Задает имя приложения для подключения. По умолчанию параметр Applicatio
        nName имеет значение "WSMAN". Полный идентификатор удаленной конечной т
        очки имеет следующий формат:
              <протокол>://<сервер>:<порт>/
        Пример:
              http://server01:8080/WSMAN
        
        Службы IIS, которые обрабатывают сеанс, перенаправляют запросы с данной
         конечной точкой указанному приложению. Значение по умолчанию "WSMAN" п
        одходит для большинства случаев. Этот параметр предназначен для использ
        ования, когда большое число компьютеров устанавливают удаленные подключ
        ения к одному компьютеру, на котором работает Windows PowerShell. В это
        м случае для повышения эффективности веб-службы WS-Management размещают
        ся в службах IIS.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                wsman
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authentication <Authentication>
        Задает механизм проверки подлинности, используемый на сервере. Возможны
        е значения:
        
        - Basic: при использовании схемы Basic имя пользователя и пароль переда
        ются серверу или прокси-серверу открытым текстом.
        - Default: использовать метод проверки подлинности, реализованный прото
        колом WS-Management. Это значение используется по умолчанию.
        - Digest: при использовании схемы Digest проверка подлинности проводитс
        я по принципу "запрос-ответ". В качестве запроса поступает строка данны
        х, указанная сервером.
        - Kerberos: выполняется взаимная проверка подлинности компьютера и серв
        ера с использованием сертификатов Kerberos.
        - Negotiate: при использовании схемы Negotiate между компьютером и серв
        ером или прокси происходит обмен данными по принципу "запрос-ответ", в 
        ходе которого определяется схема, используемая для проверки подлинности
        . Например, это значение параметра разрешает согласование одного из дву
        х методов проверки подлинности: Kerberos или NTLM.
        - CredSSP: использовать проверку подлинности CredSSP (Credential Securi
        ty Service Provider), при которой пользователю разрешается делегировать
         учетные данные. Этот вариант предназначен для команд, которые запускаю
        тся на одном удаленном компьютере, но собирают данные с других удаленны
        х компьютеров или выполняют на них дополнительные команды. 
        
        Внимание При проверке подлинности CredSSP учетные данные пользователя 
        делегируются с локального компьютера на удаленный компьютер. Такой подх
        од повышает угрозы безопасности удаленных операций. Если безопасность у
        даленного компьютера нарушена, при передаче на него учетных данных эти 
        данные могут быть использованы для управления сетевым сеансом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Default
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string>
        Задает компьютер, к которому требуется применить операцию управления. З
        начение может быть полным доменным именем, именем NetBIOS или IP-адресо
        м. Чтобы задать локальный компьютер, введите имя компьютера, "localhost
        " или точку (.). Локальный компьютер используется по умолчанию. Если по
        льзователь и удаленный компьютер находятся в разных доменах, необходимо
         использовать полное доменное имя. Значение этого параметра можно перед
        ать командлету по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                localhost
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ConnectionURI <Uri>
        Задает конечную точку соединения. Строка имеет следующий формат: 
        
             <протокол>://<сервер>:<порт>/
        
        Следующая строка представляет собой правильно отформатированное значени
        е для этого параметра: 
        
             http://Server01:8080/WSMAN. Значение URI должно быть указано полно
        стью.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". Введите имя пользователя, например "User01", "Domain01\
        User01" или "User@Domain.com". Или укажите объект PSCredential, наприме
        р возвращенный командлетом Get-Credential. При вводе имени пользователя
         появится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -OptionSet <hashtable>
        Передает службе набор параметров для изменения или уточнения запроса. П
        ередаваемые параметры похожи на параметры, используемые в оболочках ком
        андной строки, тем, что они зависят от конкретной службы. Можно задать 
        произвольное количество параметров. 
        
        В следующем примере показано синтаксическое выражение, позволяющее пере
        дать значения 1, 2 и 3 параметрам a, b и c соответственно:
        
              -OptionSet @{a=1;b=2;c=3}
        
        Требуется?                    
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Port <int>
        Задает порт, используемый клиентом для подключения к службе WinRM. Если
         в качестве транспорта выбран HTTP, по умолчанию используется порт 80. 
        Если в качестве транспорта выбран HTTPS, по умолчанию используется порт
         443. При использовании в качестве транспорта HTTPS значение параметра 
        ComputerName должно соответствовать общему имени сертификата сервера. О
        днако, если в качестве элемента параметра SessionOption указан параметр
         SkipCNCheck, общее имя сертификата сервера не обязательно должно соотв
        етствовать имени узла сервера. Параметр SkipCNCheck следует использоват
        ь только в случае доверенных компьютеров.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SessionOption <hashtable>
        Определяет расширенные параметры сеанса WS-Management. Введите объект S
        essionOption, созданный с помощью командлета New-WSManSessionOption. До
        полнительные сведения о доступных параметрах см. в разделе New-WSManSes
        sionOption.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseSSL [<SwitchParameter>]
        Указывает, что для установки подключения к удаленному компьютеру должен
         использоваться протокол SSL (Secure Sockets Layer). По умолчанию SSL н
        е используется. 
        
        Протокол WS-Management шифрует все передаваемое по сети содержимое Wind
        ows PowerShell. Параметр UseSSL позволяет указать, что необходимо испол
        ьзовать дополнительную меру защиты: протокол HTTPS вместо HTTP. Если ук
        азан этот параметр, однако используемый для подключения порт не поддерж
        ивает SSL, команда завершается с ошибкой.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает никаких входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Выполнять команды управления или запрашивать данные управления на удале
        нном компьютере можно без создания сеанса WS-Management. Это делается с
         помощью параметра ComputerName командлетов Invoke-WSManAction и Get-WS
        ManInstance. При использовании параметра ComputerName Windows PowerShel
        l создает временное подключение, которое используется для выполнения то
        лько одной команды. После выполнения команды подключение закрывается.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Connect-WSMan -computer server01
    
    PS C:\Users\testuser> cd wsman:
    PS WSMan:\> 
    PS WSMan:\> dir
    
    
       WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
    
    ComputerName                                  Type
    ------------                                  ----
    localhost                                     Container
    server01                                      Container
    
    
    Описание
    -----------
    Эта команда создает подключение к удаленному компьютеру server01.
    
    Командлет Connect-WSMan обычно используется в контексте поставщика WS-Manag
    ement для подключения к удаленному компьютеру, в данном случае компьютеру s
    erver01. Однако с его помощью можно устанавливать подключения к удаленным к
    омпьютерам и до перехода к поставщику WS-Management. Эти подключения будут 
    присутствовать в списке ComputerName.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$cred = Get-Credential Administrator
    Connect-WSMan -computer server01 -credential $cred
    
    PS C:\Users\testuser> cd wsman:
    PS WSMan:\>
    PS WSMan:\> dir
    
    
       WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
    
    ComputerName                                  Type
    ------------                                  ----
    localhost                                     Container
    server01                                      Container
    
    
    Описание
    -----------
    Эта команда создает подключение к удаленному компьютеру server01 с использо
    ванием учетных данных администратора.
    
    Первая команда с помощью командлета Get-Credential получает учетные данные 
    администратора и сохраняет их в переменной $cred.  Командлет Get-Credential
     запрашивает у пользователя пароль из сочетания имени пользователя и пароля
    . Пользователь получает запрос в виде диалогового окна
    или в командной строке (в зависимости от параметров системного реестра).
    
    Вторая команда с помощью параметра Credential передает учетные данные, сохр
    аненные в переменной $cred, командлету Connect-WSMan. Командлет Connect-WSM
    an затем подключается к удаленному компьютеру server01, используя учетные д
    анные администратора.
    
    Командлет Connect-WSMan обычно используется в контексте поставщика WS-Manag
    ement для подключения к удаленному компьютеру (в данном случае server01). О
    днако с его помощью можно устанавливать подключения к удаленным компьютерам
     и до перехода к поставщику WS-Management, и эти подключения будут присутст
    вовать в списке ComputerName.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>Connect-WSMan -computer server01 -port 80
    
    PS C:\Users\testuser> cd wsman:
    PS WSMan:\> 
    PS WSMan:\> dir
    
    
       WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
    
    ComputerName                                  Type
    ------------                                  ----
    localhost                                     Container
    server01                                      Container
    
    
    Описание
    -----------
    Эта команда создает подключение к удаленному компьютеру server01 через порт
     80.
    
    Командлет Connect-WSMan обычно используется в контексте поставщика WS-Manag
    ement для подключения к удаленному компьютеру, в данном случае компьютеру s
    erver01. Однако с его помощью можно устанавливать подключения к удаленным к
    омпьютерам и до перехода к поставщику WS-Management. Эти подключения будут 
    присутствовать в списке ComputerName.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$a = New-WSManSessionOption -operationtimeout 30000
    Connect-WSMan -computer server01 -sessionoption $a
    
    PS C:\Users\testuser> cd wsman:
    PS WSMan:\> 
    PS WSMan:\> dir
    
    
       WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
    
    ComputerName                                  Type
    ------------                                  ----
    localhost                                     Container
    server01                                      Container
    
    
    Описание
    -----------
    Эта команда создает подключение к удаленному компьютеру server01 с использо
    ванием параметров подключения, заданных командой New-WSManSessionOption.
    
    Первая команда с помощью командлета New-WSManSessionOption сохраняет набор 
    параметров подключения в переменной $a. В данном случае параметры сеанса за
    дают время ожидания подключения, составляющее 30 секунд (30 000 миллисекунд
    ).
    
    Вторая команда с помощью параметра SessionOption передает параметры, сохран
    енные в переменной $a, командлету Connect-WSMan. Командлет Connect-WSMan за
    тем подключается к удаленному компьютеру server01, используя заданные парам
    етры сеанса.
    
    Командлет Connect-WSMan обычно используется в контексте поставщика WS-Manag
    ement для подключения к удаленному компьютеру, в данном случае компьютеру s
    erver01. Однако с его помощью можно устанавливать подключения к удаленным к
    омпьютерам и до перехода к поставщику WS-Management. Эти подключения будут 
    присутствовать в списке ComputerName.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkId=141437
    Disable-WSManCredSSP 
    Disconnect-WSMan 
    Enable-WSManCredSSP 
    Get-WSManCredSSP 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManInstance 
    New-WSManSessionOption 
    Remove-WSManInstance 
    Set-WSManInstance 
    Set-WSManQuickConfig 
    Test-WSMan 



Convert-Path

ИМЯ
    Convert-Path
    
ОПИСАНИЕ
    Преобразует путь Windows PowerShell в путь поставщика Windows PowerShell.
    
СИНТАКСИС
    Convert-Path [-LiteralPath] <string[]> [-UseTransaction] [<CommonParameters
    >]
    
    Convert-Path [-Path] <string[]> [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Convert-Path преобразует путь Windows PowerShell в путь поставщик
    а Windows PowerShell.
    
ПАРАМЕТРЫ
    -LiteralPath <string[]>
        Задает преобразуемый путь. Значение параметра LiteralPath используется 
        точно в том виде, в котором оно введено. Никакие символы не интерпретир
        уются как подстановочные знаки. Если путь включает escape-символы, его 
        нужно заключить в одиночные кавычки. Одиночные кавычки указывают оболоч
        ке Windows PowerShell, что никакие символы не следует интерпретировать 
        как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает преобразуемый путь Windows PowerShell.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Путь (но не литеральный путь) можно передать командлету Convert-Path по
         конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String
        Командлет Convert-Path возвращает строку с преобразованным путем.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлеты, в именах которых содержится существительное Path (командлет
        ы Path), оперируют именами путей и возвращают эти имена в сокращенном ф
        ормате, который поддерживается всеми поставщиками Windows PowerShell. О
        ни предназначены для использования в программах и скриптах, в которых т
        ребуется отображать имя пути или его часть в конкретном формате. Исполь
        зуйте их аналогично другим командам для работы с путями, таким как Dirn
        ame, Normpath, Realpath и Join.
        
        Командлеты для работы с путями можно использовать с несколькими поставщ
        иками, включая FileSystem, Registry и Certificate.
        
        Командлет Convert-Path предназначен для работы с данными, предоставляем
        ыми любым поставщиком. Чтобы получить список поставщиков, доступных в т
        екущем сеансе, введите команду "Get-PSProvider". Дополнительные сведени
        я см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>convert-path ~
    
    
    Описание
    -----------
    Эта команда позволяет развернуть текущий рабочий каталог.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>convert-path HKLM:\software\microsoft
    
    
    Описание
    -----------
    Эта команда преобразует путь, заданный поставщиком Windows PowerShell, в ст
    андартный путь реестра.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113289
    about_Providers 
    Test-Path 
    Split-Path 
    Resolve-Path 
    Join-Path 



ConvertFrom-CSV

ИМЯ
    ConvertFrom-CSV
    
ОПИСАНИЕ
    Преобразует свойства объекта из CSV-формата (с разделителями-запятыми) в CS
    V-версии исходных объектов.
    
СИНТАКСИС
    ConvertFrom-CSV [[-Delimiter] <char>] [-InputObject] <PSObject[]> [-Header 
    <string[]>] [<CommonParameters>]
    
    ConvertFrom-CSV -UseCulture [-InputObject] <PSObject[]> [-Header <string[]>
    ] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет ConvertFrom-CSV создает объекты из CSV-строк переменной длины, со
    зданных с помощью командлета ConvertTo-CSV. 
    
    Параметры командлета ConvertFrom-CSV позволяют задать строку заголовков сто
    лбцов, определяющую имена свойств конечных объектов, задать разделитель эле
    ментов или сделать так, чтобы командлет ConvertFrom-CSV использовал в качес
    тве разделителя значений установленный для текущей культуры разделитель эле
    ментов списков.
    
    Объекты, создаваемые командлетом ConvertFrom-CSV, являются CSV-версиями исх
    одных объектов. Значения свойств CSV-объектов являются строковыми версиями 
    значений свойств исходных объектов. У CSV-версий объектов нет методов.
    
    Можно также преобразовывать объекты в строки CSV в файле и обратно, использ
    уя для этого командлеты Export-CSV и Import-CSV. Эти командлеты очень похож
    и на командлеты ConvertTo-CSV и ConvertFrom-CSV за тем лишь исключением, чт
    о они сохраняют CSV-строки в файл.
    
ПАРАМЕТРЫ
    -Delimiter <char>
        Задает разделитель значений свойств в строках CSV. По умолчанию использ
        уется запятая (,). Введите символ, например двоеточие (:). Чтобы задать
         точку с запятой (;), заключите ее в кавычки.
        
        Если указать символ, отличный от разделителя, используемого в строках C
        SV, командлет ConvertFrom-CSV не сможет создать объекты из строк CSV. В
        место этого он возвращает строки.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                ','
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Header <string[]>
        Задает строку заголовков столбцов для импортируемой строки. Заголовки с
        толбцов определяют имена свойств объекта, создаваемого с помощью команд
        лета ConvertFrom-CSV. 
        
        Введите список заголовков столбцов, разделенных запятыми. Заключите каж
        дый элемент в кавычки (одиночные или двойные). Не заключайте строку заг
        оловка в кавычки. Если количество введенных заголовков столбцов меньше,
         чем количество столбцов, у оставшихся столбцов не будет заголовков. Ес
        ли количество заголовков столбцов превышает количество столбцов, лишние
         заголовки игнорируются.
        
        При использовании параметра Header пропустите строку заголовков столбцо
        в из строк CSV. В противном случае командлет ConvertFrom-CSV создаст из
         элементов строки заголовков лишний объект.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <PSObject[]>
        Задает строки CSV для преобразования в объекты. Укажите переменную, сод
        ержащую строки CSV, либо введите команду или выражение, получающие их. 
        Кроме того, можно передать CSV-строки командлету ConvertFrom-CSV по кон
        вейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -UseCulture [<SwitchParameter>]
        Использовать в качестве разделителя в строках разделитель элементов спи
        ска из текущей культуры. По умолчанию используется запятая (,). 
        
        Чтобы найти разделитель элементов списка для текущей культуры, воспольз
        уйтесь следующей командой: (Get-Culture).TextInfo.ListSeparator. Если у
        казать символ, отличный от разделителя, используемого в строках CSV, ко
        мандлет ConvertFrom-CSV не сможет создать объекты из строк CSV. Вместо 
        этого он возвращает строки.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Запятая
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строки CSV можно перенаправить в конвейер ConvertFrom-CSV.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Командлет ConvertFrom-CSV возвращает объекты, описываемые свойствами в 
        строках CSV.
    
    
ПРИМЕЧАНИЯ
    
    
        Поскольку импортируемые объекты являются CSV-версиями типа объекта, они
         не распознаются и не форматируются записями форматирования типов Windo
        ws PowerShell, которые используются для форматирования объектов данного
         типа, не являющихся CSV-версиями.
        
        В формате CSV каждый объект представляется списком разделенных запятыми
         значений свойств этого объекта. Значения свойств преобразуются в строк
        овый формат (с помощью метода ToString() объекта), поэтому они обычно п
        редставляются именами значений свойств. Командлет ConvertTo-Csv не эксп
        ортирует методы объекта.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$p = get-process | convertto-csv
    
    C:\PS> $p | convertfrom-csv
    
    
    Описание
    -----------
    Эти команды преобразуют процессы на локальном компьютере в формат CSV, а за
    тем восстанавливают их в виде объектов.
    
    Первая команда с помощью командлета Get-Process получает выполняющиеся на л
    окальном компьютере процессы. С помощью оператора конвейера (|) они передаю
    тся командлету ConvertTo-CSV, который переводит объекты процессов в формат 
    CSV. Строки CSV сохраняются в переменной $p.
    
    Вторая команда с помощью оператора конвейера передает строки CSV из перемен
    ной $p в командлет ConvertFrom-CSV. Этот командлет преобразует строки CSV в
     CSV-версии исходных объектов процессов.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$date = get-date | convertto-csv -delimiter ";"
    
    C:\PS> convertfrom-csv -inputobject $date -delimiter ";"
    
    
    Описание
    -----------
    Эти команды преобразуют объект данных в формат CSV, а затем в формат CSV-об
    ъекта.
    
    Первая команда с помощью командлета Get-Date получает текущее значение даты
     и времени. Оператор конвейера (|) передает дату командлету ConvertTo-CSV, 
    который преобразует объект даты в набор строк CSV. Параметр Delimiter испол
    ьзуется в этой команде для указания разделителя в виде точки с запятой. Стр
    оки сохраняются в переменной $date.
    
    Вторая команда использует командлет ConvertFrom-CSV, чтобы преобразовать ст
    роки CSV в переменной $date обратно в формат объекта. Команда использует па
    раметр InputObject, чтобы задать строки CSV, и параметр Delimiter, чтобы за
    дать разделитель в виде точки с запятой.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$j = start-job -scriptblock { get-process } | convertto-csv
    
    C:\PS> $header = "MoreData","StatusMessage","Location","Command","State","F
    inished","InstanceId","SessionId","Name","ChildJobs","Output","Error","Prog
    ress","Verbose","Debug","Warning","StateChanged"
    
    # Delete header from $j
    C:\PS> $j = $j[0], $j[2..($j.count - 1)]
    
    $j | convertfrom-csv -header $header
    
    MoreData      : True
    StatusMessage : 
    Location      : localhost
    Command       : get-process
    State         : Running
    Finished      : System.Threading.ManualResetEvent
    InstanceId    : 6fcb6578-7f42-4d93-9f23-9937f6aac1a2
    SessionId     : 1
    Name          : Job1
    ChildJobs     : System.Collections.Generic.List`1[System.Management.Automat
    ion.Job]
    Output        : System.Management.Automation.PSDataCollection`1[System.Mana
    gement.Automation.PSObject]
    Error         : System.Management.Automation.PSDataCollection`1[System.Mana
    gement.Automation.ErrorRecord]
    Progress      : System.Management.Automation.PSDataCollection`1[System.Mana
    gement.Automation.ProgressRecord]
    Verbose       : System.Management.Automation.PSDataCollection`1[System.Stri
    ng]
    Debug         : System.Management.Automation.PSDataCollection`1[System.Stri
    ng]
    Warning       : System.Management.Automation.PSDataCollection`1[System.Stri
    ng]
    StateChanged  :
    
    
    Описание
    -----------
    В этом примере показано, как с помощью параметра Header командлета ConvertF
    rom-Csv изменять имена свойств в конечном импортированном объекте.
    
    Первая команда с помощью командлета Start-Job запускает на локальном компью
    тере фоновое задание, выполняющее команду Get-Process. С помощью оператора 
    конвейера (|) полученный объект задания передается командлету ConvertTo-CSV
    , который преобразует его в формат CSV. С помощью оператора присваивания (=
    ) полученные данные CSV сохраняются в переменной $j.
    
    Вторая команда сохраняет заголовок в переменной $header. В отличие от загол
    овка по умолчанию, в этом заголовке вместо имени "HasMoreData" используется
     имя "MoreData", а вместо имени "JobStateInfo" — имя "State".
    
    Третья команда удаляет исходный заголовок (вторая строка) из строк CSV и во
    звращает его в переменную $j.
    
    Четвертая команда с помощью командлета ConvertFrom-CSV преобразует строки C
    SV в CSV-версию объекта задания. Команда пересылает содержимое переменной $
    j в командлет ConvertFrom-CSV с помощью оператора конвейера (|). Полученный
     объект имеет свойства "MoreData" и "State", как и было указано в заголовке
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>(get-culture).textinfo.listseparator
    
    C:\PS> ConvertFrom-Csv -inputobject $services -UseCulture
    
    
    Описание
    -----------
    Команда использует командлет ConvertFrom-CSV, чтобы преобразовать строки CS
    V объекта-службы, которые были получены с помощью командлета ConvertTo-CSV.
     В этой команде параметр UseCulture используется для того, чтобы командлет 
    ConvertFrom-CSV использовал в качестве разделителя значений разделитель эле
    ментов списка текущей культуры.
    
    При использовании параметра UseCulture необходимо проследить за тем, чтобы 
    разделитель элементов списка текущей культуры совпадал с разделителем, испо
    льзуемым в строках CSV. В противном случае командлету ConvertFrom-CSV не уд
    астся создать объекты на основании строк CSV.
    
    В этом примере команда Get-Culture служит для проверки разделителя элементо
    в списка перед использованием команды ConvertFrom-CSV.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135201
    ConvertTo-CSV 
    Export-CSV 
    Import-CSV 



ConvertFrom-SecureString

ИМЯ
    ConvertFrom-SecureString
    
ОПИСАНИЕ
    Преобразует защищенную строку в зашифрованную стандартную строку.
    
СИНТАКСИС
    ConvertFrom-SecureString [-Key <Byte[]>] [-SecureString] <SecureString> [<C
    ommonParameters>]
    
    ConvertFrom-SecureString [[-SecureKey] <SecureString>] [-SecureString] <Sec
    ureString> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет ConvertFrom-SecureString преобразует защищенную строку (System.Se
    curity.SecureString) в зашифрованную стандартную строку (System.String).
     В отличие от защищенной строки, зашифрованную стандартную строку можно сох
    ранить в файле для последующего использования. Зашифрованную стандартную ст
    року можно преобразовать обратно в защищенный строковый формат с использова
    нием командлета ConvertTo-SecureString. Если ключ шифрования задан с исполь
    зованием параметров Key или SecureKey, то используется алгоритм шифрования 
    Rijndael. Длина указанного ключа должна составлять 128, 192 или 256 бит, та
    к как алгоритм шифрования Rijndael поддерживает только ключи такой длины. Е
    сли ключ не задан, то для шифрования стандартного представления строки испо
    льзуется интерфейс Windows Data Protection API (DPAPI).
    
ПАРАМЕТРЫ
    -Key <Byte[]>
        Задает ключ шифрования как массив байтов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SecureKey <SecureString>
        Задает ключ шифрования как защищенную строку. Перед использованием в ка
        честве ключа значение защищенной строки преобразуется в массив байтов.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SecureString <SecureString>
        Задает защищенную строку для преобразования в зашифрованную стандартную
         строку.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Security.SecureString
        Можно передать объект SecureString командлету ConvertFrom-SecureString 
        по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String
        ConvertFrom-SecureString возвращает стандартный строковый объект.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы создать защищенную строку из символов, введенных в командной стро
        ке, используйте параметр AsSecureString командлета Read-Host.
        
        При использовании параметров Key или SecureKey для указания ключа его д
        лина должна быть допустимой. Например, 128-разрядный ключ может быть ук
        азан как массив байтов из 16 чисел. Аналогичным образом, 192-разрядный 
        и 256-разрядный ключи соответствуют массивам байтов из 24 и 32 чисел.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$securestring = read-host -assecurestring
    
    
    Описание
    -----------
    Эта команда создает защищенную строку из введенных в командной строке симво
    лов. После ввода команды введите строку, которую нужно сохранить как защище
    нную строку. При вводе каждого знака на экране будет отображаться звездочка
     (*).
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$standardstring = convertfrom-securestring  $securestring
    
    
    Описание
    -----------
    Эта команда преобразует защищенную строку в переменной $securestring в заши
    фрованную стандартную строку. Полученная в результате зашифрованная стандар
    тная строка хранится в переменной $standardstring.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$key = (3,4,2,3,56,34,254,222,1,1,2,23,42,54,33,233,1,34,2,7,6,5,35,4
    3)
    
    C:\PS> $standardstring = convertfrom-securestring  $securestring -key $key
    
    
    Описание
    -----------
    Эта команда преобразует защищенную строку, хранимую в переменной $securestr
    ing, в зашифрованную стандартную строку с использованием алгоритма Rijndael
     со 192-разрядным ключом. Полученная в результате зашифрованная стандартная
     строка хранится в переменной $standardstring.
    
    Первая команда сохраняет ключ в переменной $key. Ключ является массивом из 
    24 цифр, каждая из которых меньше 256.
     
    Поскольку каждая цифра представляет байт (8 битов), ключ состоит из 24 цифр
     — всего 192 разряда (8 x 24). Это допустимая длина ключа для алгоритма Rij
    ndael. Каждое отдельное значение меньше 256, так как это максимальное значе
    ние, которое может храниться в байте без знака.
    
    Вторая команда использует ключ в переменной $key для преобразования защищен
    ной строки в зашифрованную стандартную строку.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113287
    ConvertTo-SecureString 
    Read-Host 



ConvertFrom-StringData

ИМЯ
    ConvertFrom-StringData
    
ОПИСАНИЕ
    Преобразует строку, содержащую одну или несколько пар типа ключ-значение в 
    хэш-таблицу.
    
СИНТАКСИС
    ConvertFrom-StringData [-StringData] <string> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет ConvertFrom-StringData преобразует строку, содержащую одну или не
    сколько пар ключ-значение в хэш-таблицу.  Поскольку каждая пара ключ-значен
    ие должна располагаться в отдельной строке, в качестве формата ввода часто 
    используются автономные строки.
    
    Командлет ConvertFrom-StringData считается безопасным командлетом, который 
    можно использовать в разделе DATA скрипта или функции. При использовании в 
    разделе DATA содержимое строки должно соответствовать правилам раздела DATA
    . Дополнительные сведения см. в разделе about_Data_Sections.
    
ПАРАМЕТРЫ
    -StringData <string>
        Задает строку, подлежащую преобразованию. Можно использовать этот парам
        етр или передавать строку командлету ConvertFrom-StringData с помощью к
        онвейера. Имя параметра указывать необязательно.
        
        Значением этого параметра должна быть строка, заключенная в одиночные к
        авычки, или строка, заключенная в двойные кавычки, или автономная строк
        а, содержащая одну или несколько пар ключ-значение. Каждая пара ключ-зн
        ачение должна быть расположена на отдельной строке или отделена знаком 
        новой строки (`n).
                
        В строку можно включать комментарии, но они не должны находиться на одн
        ой строке с парой ключ-значение. Комментарии не включаются в хэш-таблиц
        у. 
                
        Автономная строка — это строка, содержащая одну или несколько строк с к
        авычками, которые интерпретируются посимвольно. Дополнительные сведения
         см. в разделе about_Quoting_Rules.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Можно передать строку, содержащую пару ключ-значение, командлету Conver
        tFrom-StringData по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Collections.Hashtable
        Командлет ConvertFrom-StringData возвращает хэш-таблицу, созданную из п
        ар ключ-значение.
    
    
ПРИМЕЧАНИЯ
    
    
        Автономная строка — это строка, содержащая одну или несколько строк с к
        авычками, которые интерпретируются посимвольно. Дополнительные сведения
         см. в разделе about_Quoting_Rules.
        
        Командлет ConvertFrom-StringData может оказаться полезным в скриптах, п
        редполагающих отображение сообщений пользователей на нескольких языках.
         Хэш-таблицы, напоминающие словари, позволяют изолировать текстовые стр
        оки от кода, например в файлах ресурсов, и форматировать текстовые стро
        ки для использования в средствах перевода.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$here = @'
    Msg1 = The string parameter is required.
    Msg2 = Credentials are required for this command.
    Msg3 = The specified variable does not exist.
    '@
    
    C:\PS> convertfrom-stringdata -stringdata $here
    
    Name                           Value
    ----                           -----
    Msg3                           The specified variable does not exist.
    Msg2                           Credentials are required for this command.
    Msg1                           The string parameter is required.
    
    
    Описание
    -----------
    Эти команды преобразуют автономные строки с сообщениями в одиночных кавычка
    х в хэш-таблицу. В строках с одиночными кавычками значения переменных не по
    дставляются и выражения не вычисляются.
    
    Первая команда создает автономную строку и сохраняет ее в переменной $here.
     
    
    Вторая команда использует командлет ConvertFrom-StringData, чтобы преобразо
    вать автономную строку из переменной $here в хэш-таблицу.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$p = @"
    ISE = Windows PowerShell Integrated Scripting Environment
    "@
    
    C:\PS> $p | get-member
    
       TypeName: System.String
    
    Name             MemberType            Definition
    ----             ----------            ----------
    Clone            Method                System.Object Clone()
    ...
    
    
    C:\PS> $hash = convertfrom-stringdata -stringdata $p
    
    C:\PS> $hash | get-member
    
       TypeName: System.Collections.Hashtable
    
    Name              MemberType            Definition
    ----              ----------            ----------
    Add               Method                System.Void Add(Object key, Object
    ...
    
    
    Описание
    -----------
    Эта команда показывает, что командлет ConvertFrom-StringData преобразовывае
    т автономную строку в хэш-таблицу.
    
    Первая команда создает заключенную в двойные кавычки автономную строку, сод
    ержащую одну пару ключ-значение, и сохраняет ее в переменной $p. 
    
    Вторая команда с помощью оператора конвейера (|) передает переменную $p ком
    андлету Get-Member. Результат показывает, что переменная $p является строко
    й (System.String).
    
    Третья команда использует командлет ConvertFrom-StringData, чтобы преобразо
    вать автономную строку в переменной $p в хэш-таблицу. Эта команда сохраняет
     результат в переменной $hash.
    
    Последняя команда с помощью оператора конвейера (|) передает переменную $ha
    sh командлету Get-Member. Результат показывает, что содержимое переменной $
    hash является хэш-таблицей (System.Collections.Hashtable).
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>convertfrom-stringdata -stringdata @'
       Name = Disks.ps1
       # Category is optional.
       Category = Storage
       Cost = Free
    '@
    
    Name                           Value
    ----                           -----
    Cost                           Free
    Category                       Storage
    Name                           Disks.ps1
    
    
    Описание
    -----------
    Эта команда преобразует автономную строку с одиночными кавычками, содержащу
    ю несколько пар ключ-значение, в хэш-таблицу. 
    
    В этой команде значением параметра StringData является автономная строка, а
     не переменная, содержащая автономную строку. Допустимы оба формата.
    
    Автономная строка содержит примечание об одной из строк. В строках можно ис
    пользовать примечания, при условии что они не расположены на одной строке с
     парой ключ-значение.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$a = convertfrom-stringdata -stringdata "Top = Red `n Bottom = Blue"
    
    C:\PS> "Top = " + $a.Top
    Top = Red
    
    C:\PS> "Bottom = " + $a.Bottom
    Bottom = Blue
    
    
    Описание
    -----------
    В этом примере обычная заключенная в двойные кавычки строка (не автономная 
    строка) преобразуется в хэш-таблицу и сохраняется в переменной $a.
    
    Чтобы выполнить требование о необходимости размещения каждой пары ключ-знач
    ение на отдельной строке, в нем для разделения пар используется знак новой 
    строки Windows PowerShell (`n).
    
    Результатом является хэш-таблица входных строк. Оставшиеся команды служат д
    ля вывода результата.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$TextMsgs = DATA {
      ConvertFrom-StringData @'
        Text001 = The $Notebook variable contains the     name of the user's sy
    stem notebook.
        Text002 = The $MyNotebook variable contains the     name of the user's 
    private notebook.
    '@
    }
    
    C:\PS> $TextMsgs.Text001
    The $Notebook variable contains the name of the user's system notebook.
    
    
    C:\PS> $TextMsgs.Text002
    The $MyNotebook variable contains the name of the user's private notebook.
    
    
    Описание
    -----------
    В этом примере показано использование команды ConvertFrom-StringData в разд
    еле DATA скрипта. Инструкции, расположенные ниже раздела DATA, служат для о
    тображения текста для пользователя.
    
    Поскольку текст содержит имена переменных, его необходимо заключить в одино
    чные кавычки, чтобы переменные интерпретировались как текст, и вместо них н
    е подставлялись значения. Использовать переменные в разделе DATA запрещаетс
    я.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>$here = @'
    Msg1 = The string parameter is required.
    Msg2 = Credentials are required for this command.
    Msg3 = The specified variable does not exist.
    '@
    
    C:\PS> $hash = $here | convertfrom-stringdata 
    
    C:\PS> $hash
    
    Name     Value
    ----     -----
    Msg3     The specified variable does not exist.
    Msg2     Credentials are required for this command.
    Msg1     The string parameter is required.
    
    
    Описание
    -----------
    В этом примере показано, что для передачи строки командлету ConvertFrom-Str
    ingData можно использовать оператор конвейера (|). 
    
    Первая команда сохраняет автономную строку в переменной $here. Вторая коман
    да с помощью оператора конвейера (|) передает переменную $here командлету C
    onvertFrom-StringData. Эта команда сохраняет результат в переменной $hash.
    
    Последняя команда отображает значение переменной $hash.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113288
    about_Data_Sections 
    about_Quoting_Rules 
    about_Script_Internationalization 



ConvertTo-CSV

ИМЯ
    ConvertTo-CSV
    
ОПИСАНИЕ
    Преобразует объекты Microsoft .NET Framework в набор строк переменной длины
    , содержащих разделенные запятыми значения (CSV).
    
СИНТАКСИС
    ConvertTo-CSV [[-Delimiter] <char>] [-InputObject] <psobject> [-NoTypeInfor
    mation] [<CommonParameters>]
    
    ConvertTo-CSV [-UseCulture] [-InputObject] <psobject> [-NoTypeInformation] 
    [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет ConvertTo-CSV возвращает набор строк переменной длины, содержащих
     разделенные запятыми значения (CSV), которые представляют отправляемые объ
    екты. С помощью командлета ConvertFrom-CSV можно воссоздавать объекты на ба
    зе строк CSV. В результате будут получаться объекты, которые являются CSV-в
    ерсиями исходных объектов и содержат строковые представления значений свойс
    тв, но не содержат методов.
    
    Можно также использовать командлеты Export-CSV и Import-CSV для преобразова
    ния объектов .NET Framework в строки CSV и обратно. Командлет Export-CSV ан
    алогичен командлету ConvertTo-CSV за исключением того, что он сохраняет стр
    оки CSV в файл.
    
    С помощью параметров командлета ConvertTo-CSV можно задать отличный от запя
    той разделитель или сделать так, чтобы командлет ConvertTo-CSV использовал 
    разделитель по умолчанию для текущей культуры. 
    
    Дополнительные сведения см. в описании командлета Export-CSV и раздел "Прим
    ечания".
    
ПАРАМЕТРЫ
    -Delimiter <char>
        Задает разделитель значений свойств. По умолчанию используется запятая 
        (,). Введите символ, например двоеточие (:). 
        
        Чтобы задать точку с запятой (;), заключите ее в кавычки. В противном с
        лучае она будет интерпретироваться в качестве разделителя команд.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                , (запятая)
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объекты для экспорта в формате строк CSV. Введите переменную, со
        держащую объекты, либо получающую их команду или выражение. Кроме того,
         можно передать объекты командлету ConvertTo-CSV по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -NoTypeInformation [<SwitchParameter>]
        Исключает из конечных результатов заголовок с типами данных. По умолчан
        ию строка результатов содержит элемент "#TYPE ", после которого указыва
        ется полное имя типа объекта .NET Framework.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseCulture [<SwitchParameter>]
        Использует в качестве разделителя данных разделитель элементов списка и
        з текущей культуры. По умолчанию используется запятая (,).
        
        Этот параметр бывает полезным в скриптах, которые распространяются сред
        и пользователей в разных странах мира. Чтобы найти разделитель элементо
        в списка для текущей культуры, воспользуйтесь следующей командой: (Get-
        Culture).TextInfo.ListSeparator.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Запятая
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект .NET Framework можно передать командлету ConvertTo-CSV по 
        конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String
        Результат в формате CSV возвращается в виде коллекции строк.
    
    
ПРИМЕЧАНИЯ
    
    
        В формате CSV каждый объект представляется списком разделенных запятыми
         значений его свойств. Значения свойств преобразуются в строковый форма
        т (с помощью метода ToString() объекта), поэтому они обычно представляю
        тся именами значений свойств. Командлет ConvertTo-CSV не экспортирует м
        етоды объекта. 
        
        Получаемые в результате строки CSV имеют следующий формат.
        
        -- Первая строка содержит элемент "#TYPE", за которым следует полное им
        я типа объекта .NET Framework, например "#TYPE System.Diagnostics.Proce
        ss". Чтобы исключить из вывода эту строку, воспользуйтесь параметром No
        TypeInformation.
        
        -- Следующая строка представляет заголовки столбцов. Она содержит списо
        к разделенных запятыми имен всех свойств первого объекта. 
        
        -- Оставшиеся строки содержат списки разделенных запятыми значений свой
        ств каждого из объектов.
        
        При передаче командлету ConvertTo-CSV нескольких объектов командлет Con
        vertTo-CSV формирует строки на основании свойств первого отправленного 
        объекта. Если у оставшихся объектов нет одного из указанных свойств, то
         значение этого свойства для соответствующего объекта равно NULL, что о
        бозначается двумя последовательными запятыми. Если же у оставшихся объе
        ктов имеются дополнительные свойства, эти свойства игнорируются командл
        етом.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-process powershell | convertto-csv
    
    #TYPE System.Diagnostics.Process
    "__NounName","Name","Handles","VM","WS","PM","NPM","Path","Company","CPU","
    FileVersion","ProductVersion","Description",
    "Product","BasePriority","ExitCode","HasExited","ExitTime","Handle","Handle
    Count","Id","MachineName","MainWindowHandle"
    ,"MainWindowTitle","MainModule","MaxWorkingSet","MinWorkingSet","Modules","
    NonpagedSystemMemorySize","NonpagedSystemMem
    orySize64","PagedMemorySize","PagedMemorySize64","PagedSystemMemorySize","P
    agedSystemMemorySize64","PeakPagedMemorySize
    ","PeakPagedMemorySize64","PeakWorkingSet","PeakWorkingSet64","PeakVirtualM
    emorySize","PeakVirtualMemorySize64","Priori
    tyBoostEnabled","PriorityClass","PrivateMemorySize","PrivateMemorySize64","
    PrivilegedProcessorTime","ProcessName","Proc
    essorAffinity","Responding","SessionId","StartInfo","StartTime","Synchroniz
    ingObject","Threads","TotalProcessorTime","U
    serProcessorTime","VirtualMemorySize","VirtualMemorySize64","EnableRaisingE
    vents","StandardInput","StandardOutput","Sta
    ndardError","WorkingSet","WorkingSet64","Site","Container"
    "Process","powershell","216","597544960","60399616","63197184","21692","C:\
    WINDOWS\system32\WindowsPowerShell\v1.0\powe
    rshell.exe","Microsoft Corporation","3.4788223","6.1.6587.1 (fbl_srv_powers
    hell(nigels).070711-0102)","6.1.6587.1","Win
    dows PowerShell","Microsoft® Windows® Operating System","8",,"False",,"860"
    ,"216","5132",".","5636936","Windows PowerSh
    ell 2.0 (04/17/2008 00:10:40)","System.Diagnostics.ProcessModule (powershel
    l.exe)","1413120","204800","System.Diagnosti
    cs.ProcessModuleCollection","21692","21692","63197184","63197184","320080",
    "320080","63868928","63868928","60715008","6
    0715008","598642688","598642688","True","Normal","63197184","63197184","00:
    00:00.2028013","powershell","15","True","1",
    "System.Diagnostics.ProcessStartInfo","4/21/2008 3:49:19 PM",,"System.Diagn
    ostics.ProcessThreadCollection","00:00:03.51
    00225","00:00:03.3072212","597544960","597544960","False",,,,"60399616","60
    399616",,
    
    
    Описание
    -----------
    Эта команда преобразует один объект процесса в формат CSV. Команда с помощь
    ю командлета Get-Process получает выполняющийся на локальном компьютере про
    цесс PowerShell. С помощью оператора конвейера (|) результат выполнения это
    й команды передается в командлет ConvertTo-CSV, который преобразует его в н
    абор строк разделенных запятыми значений.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$date = get-date
    
    C:\PS> convertto-csv -inputobject $date -delimiter ";" -notypeinformation
    
    
    Описание
    -----------
    Этот пример преобразует объект даты в формат CSV. 
    
    Первая команда с помощью командлета Get-Date получает текущее значение даты
    . Оно сохраняется в переменной $date. 
    
    Вторая команда использует командлет ConvertTo-CSV, чтобы преобразовать объе
    кт DateTime в переменной $date в формат CSV. Команда использует параметр In
    putObject, чтобы задать подлежащий преобразованию объект. Параметр Delimite
    r используется в этой команде для указания разделителя свойств объекта. Что
    бы исключить из вывода строку #TYPE, используется параметр NoTypeInformatio
    n.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-eventlog -log "windows powershell" | convertto-csv -useculture
    
    
    Описание
    -----------
    Эта команда преобразует журнал событий Windows PowerShell на локальном комп
    ьютере в набор строк CSV. 
    
    С помощью командлета Get-EventLog эта команда получает события из журнала W
    indows PowerShell. С помощью оператора конвейера (|) она передает события к
    омандлету ConvertTo-CSV, который преобразует события в формат CSV. В этой к
    оманде используется параметр UseCulture, указывающий, что в качестве раздел
    ителя значений должен использоваться разделитель элементов списка текущей к
    ультуры.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135203
    Import-CSV 
    Export-CSV 
    ConvertFrom-CSV 



ConvertTo-Html

ИМЯ
    ConvertTo-Html
    
ОПИСАНИЕ
    Преобразует объекты Microsoft .NET Framework в код HTML, который может отоб
    ражаться в веб-браузере.
    
СИНТАКСИС
    ConvertTo-Html [[-Head] <string[]>] [[-Title] <string>] [[-Body] <string[]>
    ] [-CssUri <Uri>] [[-Property] <Object[]>] [-As <string>] [-InputObject 
    object>] [-PostContent <string[]>] [-PreContent <string[]>] [<CommonParamet
    ers>]
    
    ConvertTo-Html [-Fragment] [[-Property] <Object[]>] [-As <string>] [-InputO
    bject <psobject>] [-PostContent <string[]>] [-PreContent <string[]>] [
    onParameters>]
    
    
ОПИСАНИЕ
    Командлет ConvertTo-Html преобразует объекты .NET Framework в код HTML, кот
    орый может отображаться в веб-браузере. Этот командлет можно использовать д
    ля вывода результатов выполнения команды на веб-страницу.
    
    Параметры командлета ConvertTo-Html позволяют выбирать свойства объектов, з
    адавать формат таблиц или списков, определять заголовок HTML-страницы, доба
    влять текст перед объектом и после него, а также возвращать только фрагмент
     с таблицей или списком, а не полную страницу.
    
    При передаче командлету ConvertTo-Html нескольких объектов Windows PowerShe
    ll создает таблицу (или список) на основании свойств первого переданного об
    ъекта. Если у оставшихся объектов нет одного из указанных свойств, то значе
    нию этого свойства для такого объекта будет соответствовать пустая ячейка. 
    Если же у оставшихся объектов имеются дополнительные свойства, значения эти
    х свойств будут проигнорированы.
    
ПАРАМЕТРЫ
    -As <string>
        Определяет форматирование объекта — таблица или список. Допустимые знач
        ения: TABLE и LIST. По умолчанию используется значение TABLE.
        
        В случае указания значения TABLE создается таблица HTML, напоминающая ф
        ормат таблицы Windows PowerShell. В строке заголовка отображаются имена
         свойств. Каждая строка таблицы соответствует одному объекту и содержит
         значения всех свойств этого объекта.
        
        В случае указания значения LIST для каждого объекта создается таблица H
        TML из двух столбцов, напоминающая формат списка Windows PowerShell. В 
        первом столбце отображается имя свойства, а во втором — его значение.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Таблица
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Body <string[]>
        Задает текст для добавления после открывающего тега <BODY>. По умолчани
        ю в этом месте нет текста.
        
        Требуется?                    false
        Позиция?                    4
        Значение по умолчанию                Нет текста.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CssUri <Uri>
        Задает универсальный идентификатор ресурса (URI) каскадной таблицы стил
        ей (CSS), применяемой к HTML-файлу.  URI включается в ссылку на таблицу
         стилей в выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Fragment [<SwitchParameter>]
        Создает только таблицу HTML. Теги HTML, HEAD, TITLE и BODY будут опущен
        ы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Head <string[]>
        Задает содержимое тега <HEAD>. По умолчанию используется код "<title>HT
        ML TABLE</title>".  Если параметр Head задан, то параметр Title игнорир
        уется.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                <title>HTML TABLE</title>
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объекты, которые должны быть представлены в коде HTML. Введите п
        еременную, содержащую объекты, либо получающую их команду или выражение
        .
        
        При задании с помощью этого параметра нескольких объектов, например при
         перечислении всех работающих на компьютере служб, командлет ConvertTo-
        Html создает таблицу, в которой отображаются свойства коллекции или мас
        сива объектов (System.Object[]). Чтобы создать таблицу из отдельных объ
        ектов, следует передавать их командлету ConvertTo-Html с помощью операт
        ора конвейера.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -PostContent <string[]>
        Задает текст для добавления после закрывающего тега </TABLE>. По умолча
        нию в этом месте нет текста.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет текста
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PreContent <string[]>
        Задает текст для добавления перед открывающим тегом <TABLE>. По умолчан
        ию в этом месте нет текста.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет текста
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Property <Object[]>
        Включает в код HTML заданные свойства объектов.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Title <string>
        Задает заголовок HTML-файла, т. е. текст, помещаемый между тегами <TITL
        E>.
        
        Требуется?                    false
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект .NET можно передать командлету ConvertTo-Html по конвейеру
        .
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String
        Командлет ConvertTo-Html возвращает набор строк, которые вместе составл
        яют корректный HTML-документ.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать этот командлет, передайте ему один или несколько объ
        ектов с помощью конвейера или задайте объект с помощью параметра InputO
        bject. Если командлет получает несколько объектов, то результат примене
        ния этих двух подходов различается.
        
        -- Если несколько объектов передаются командлету по конвейеру, то Windo
        ws PowerShell отправляет объекты командлету по одному. В результате ком
        андлет ConvertTo-Html создает таблицу, в которой отображаются отдельные
         объекты. Например, если по конвейеру передать командлету ConvertTo-Htm
        l запущенные на компьютере процессы, то в полученной таблице будут соде
        ржатся все процессы. 
        
        -- Если для передачи нескольких объектов используется параметр InputObj
        ect, командлет ConvertTo-Html получает эти объекты в виде коллекции или
         массива. В результате он создает таблицу, в которой содержится массив 
        и его свойства, а не элементы массива. Например, если с помощью парамет
        ра InputObject передать командлету ConvertTo-Html запущенные на компьют
        ере процессы, то в таблице будет показан массив объектов (System.Object
        []) и его свойства. 
        
        Для соответствия определению DTD-файла xhtml1-strict.dtd соответствующи
        м образом изменяется тег DOCTYPE:
        (</
        /www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">)
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>convertto-html -inputobject (get-date)
    
    
    Описание
    -----------
    Эта команда создает HTML-страницу, на которой отображаются свойства текущей
     даты. Параметр InputObject используется для передачи результатов выполнени
    я командлета Get-Date командлету ConvertTo-Html.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-alias | convertto-html > aliases.htm
    
    C:\PS> invoke-item aliases.htm
    
    
    Описание
    -----------
    Эта команда создает HTML-страницу, на которой перечислены псевдонимы Window
    s PowerShell для текущей консоли.
    
    Команда получает псевдонимы с помощью командлета Get-Alias. Для передачи пс
    евдонимов командлету ConvertTo-Html, который создает HTML-страницу, использ
    уется оператор конвейера (|).
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-eventlog -logname "Windows PowerShell | convertto-html > pslog.ht
    m
    
    
    Описание
    -----------
    Эта команда создает HTML-страницу с именем pslog.htm, на которой отображают
    ся события, зарегистрированные в журнале событий Windows PowerShell на лока
    льном компьютере.
    
    Для получения событий из журнала Windows PowerShell, используется командлет
     Get-EventLog, а для передачи этих событий командлету ConvertTo-Html исполь
    зуется оператор конвейера (|). 
    
    Кроме того, команда использует оператор перенаправления (>), чтобы переслат
    ь код HTML в файл pslog.htm.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-process | convertto-html -property Name, Path, Company -title "Pr
    ocess Information" > proc.htm; ii proc.htm
    
    
    Описание
    -----------
    Эти команды создают и открывают HTML-страницу, на которой перечислены значе
    ния имени, пути и компании для процессов на локальном компьютере. 
    
    Первая команда с помощью командлета Get-Process получает объекты, которые п
    редставляют выполняющиеся на компьютере процессы. Команда передает объекты 
    процессов в командлет ConvertTo-Html с помощью оператора конвейера (|). 
    
    Команда использует параметр Property, чтобы выбрать три свойства объектов п
    роцессов для включения в таблицу. Параметр Title используется в команде для
     задания заголовка HTML-страницы. Кроме того, команда использует оператор п
    еренаправления (>), чтобы переслать полученный код HTML в файл Proc.htm. 
    
    Вторая команда использует командлет Invoke-Item (псевдоним ii), чтобы откры
    ть файл Proc.htm в браузере по умолчанию. Две команды разделены точкой с за
    пятой (;).
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-service | convertto-html -CssUri "test.css"
    
    <//www.
    w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html>
    <head>
    <title>HTML TABLE</title>
    <link rel="stylesheet" type="text/css" href="test.css" />
    ...
    
    
    Описание
    -----------
    Эта команда создает HTML-страницу для объектов-служб, возвращаемых командле
    том Get-Service. Чтобы указать каскадную таблицу стилей для HTML-страницы, 
    в этой команде используется параметр CssUri. 
    
    Параметр CssUri добавляет в итоговый HTML-документ дополнительный тег <link
     rel="stylesheet" type="text/css". Атрибут HREF в этом теге содержит имя та
    блицы стилей.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-service | convertto-html -as LIST > services.htm
    
    
    Описание
    -----------
    Эта команда создает HTML-страницу для объектов-служб, возвращаемых командле
    том Get-Service. Параметр As используется в этой команде для указания форма
    та списка. Оператор перенаправления (>) передает полученный код HTML в файл
     Services.htm.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-date | cth -fragment
    
    <table>
    <colgroup>...</colgroup>
    <tr><th>DisplayHint</th>
    Week</th><th>DayOfYear</th>
    Kind</th><th>Millisecond</th>
    h>Ticks</th><th>TimeOfDay</th>
    /tr>
    <tr><td>DateTime</td>
    12:00:00 AM</td><td>5</td>
    >126</td><td>10</td>
    d><td>633455808041237213</td><td>10:40:04.12
    37213</td><td>2008</td>
    </table>
    
    
    Описание
    -----------
    Эта команда с помощью командлета ConvertTo-Html создает таблицу HTML для те
    кущей даты. С помощью командлета Get-Date команда получает текущее значение
     даты. А затем с помощью оператора конвейера (|) результаты передаются кома
    ндлету ConvertTo-Html (обозначенному псевдонимом "cth"). 
    
    Команда ConvertTo-Html включает параметр Fragment, который ограничивает выв
    од только таблицей HTML. В результате другие элементы HTML-страницы, наприм
    ер теги <HEAD> и <BODY>, пропускаются.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>get-eventlog -log "Windows PowerShell" | convertto-html -property id,
     level, task
    
    
    Описание
    -----------
    Эта команда с помощью командлета Get-EventLog получает события из журнала с
    обытий Windows PowerShell. 
    
    С помощью оператора конвейера (|) она передает события командлету ConvertTo
    -Html, который преобразует события в формат HTML. 
    
    Команда ConvertTo-Html использует параметр Property, чтобы выбрать только с
    ледующие свойства события: ID, Level и Task.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>get-service A* | ConvertTo-Html -title "Windows Services: Server01" -
    body (get-date) -pre "<P>Generated by Corporate IT</P
    >" -post "For details, contact Corporate IT." > services.htm; ii services.h
    tm
    
    
    Описание
    -----------
    Эта команда создает и открывает веб-страницу, на которой отображается списо
    к служб компьютера, имена которых начинаются на "A". Она использует парамет
    ры Title, Body, PreContent и PostContent командлета ConvertTo-Html, чтобы н
    астроить содержимое страницы.
    
    Первая часть команды получает начинающиеся на "A" службы компьютера с помощ
    ью командлета Get-Service. Затем результаты передаются в командлет ConvertT
    o-Html с помощью оператора конвейера (|). Кроме того, команда использует оп
    ератор перенаправления (>), чтобы переслать результат в файл Services.htm. 
    
    Двоеточие (;) отделяет первую команду от второй, в которой с помощью команд
    лета Invoke-Item (псевдоним "ii") файл Services.htm открывается в браузере 
    по умолчанию.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113290
    ConvertTo-CSV 
    ConvertTo-Xml 



ConvertTo-SecureString

ИМЯ
    ConvertTo-SecureString
    
ОПИСАНИЕ
    Преобразует зашифрованные стандартные строки в защищенные строки. Можно так
    же преобразовать обычный текст в защищенные строки. Используется с командле
    тами ConvertFrom-SecureString и Read-Host.
    
СИНТАКСИС
    ConvertTo-SecureString [-Key <Byte[]>] [-String] <string> [<CommonParameter
    s>]
    
    ConvertTo-SecureString [[-AsPlainText]] [[-Force]] [-String] <string> [<Com
    monParameters>]
    
    ConvertTo-SecureString [[-SecureKey] <SecureString>] [-String] <string> [<C
    ommonParameters>]
    
    
ОПИСАНИЕ
    Командлет ConvertTo-SecureString преобразует зашифрованные стандартные стро
    ки в защищенные строки. Можно также преобразовать обычный текст в защищенны
    е строки. Используется с командлетами ConvertFrom-SecureString и Read-Host.
     Защищенная строка, созданная командлетом, может использоваться с командлет
    ами или функциями, которые требует параметра типа SecureString. Защищенную 
    строку можно преобразовать обратно в зашифрованную стандартную строку с исп
    ользованием командлета ConvertFrom-SecureString. Это позволит сохранить ее 
    в файле для последующего использования.
    
    Если преобразуемая стандартная строка была зашифрована с помощью командлета
     ConvertFrom-SecureString с использованием указанного ключа, тот же ключ до
    лжен быть введен в качестве значения параметра Key или SecureKey командлета
     ConvertTo-SecureString.
    
ПАРАМЕТРЫ
    -AsPlainText [<SwitchParameter>]
        Указывает обычную текстовую строку для преобразования в защищенную стро
        ку. Командлеты защищенной строки помогают защитить секретный текст.  Те
        кст шифруется в целях конфиденциальности и после использования удаляетс
        я из памяти компьютера. Если этот параметр используется, чтобы обеспечи
        ть ввод обычного текста, то защита ввода таким образом невозможна.  Что
        бы использовать этот параметр, необходимо также указать параметр Force.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Подтверждает, что пользователь понимает последствия использования парам
        етра AsPlainText и по-прежнему намерен использовать его.
        
        Требуется?                    false
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Key <Byte[]>
        Указывает ключ шифрования для преобразования защищенной строки в зашифр
        ованную стандартную строку. Допустимые значения длины ключа: 16, 24 и 3
        2 байта.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SecureKey <SecureString>
        Указывает ключ шифрования для преобразования защищенной строки в зашифр
        ованную стандартную строку. Ключ должен быть предоставлен в формате защ
        ищенной строки. Перед использованием в качестве ключа защищенная строка
         преобразуется в массив байтов. Допустимые значения длины ключа: 16, 24
         и 32 байта.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -String <string>
        Задает строку для преобразования в защищенную строку.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Стандартную зашифрованную строку можно передать командлету ConvertTo-Se
        cureString по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Security.SecureString
        ConvertTo-SecureString возвращает объект SecureString.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$secure = read-host -assecurestring
    
    C:\PS> $secure
    System.Security.SecureString
    
    C:\PS> $encrypted = convertfrom-securestring -securestring $secure
    C:\PS> $encrypted
    01000000d08c9ddf0115d1118c7a00c04fc297eb010000001a114d45b8dd3f4aa11ad7c0abd
    ae9800000000002000000000003660000a8000000100000005df63cea84bfb7d70bd6842e7
    efa79820000000004800000a000000010000000f10cd0f4a99a8d5814d94e0687d7430b1000
    00008bf11f1960158405b2779613e9352c6d14000000e6b7bf46a9d485ff211b9b2a2df3bd
    6eb67aae41
    
    C:\PS> $secure2 = convertto-securestring -string $encrypted
    C:\PS> $secure2
    System.Security.SecureString
    
    
    Описание
    -----------
    В этом примере показано, как создать защищенную строку из введенных пользов
    ателем данных, преобразовать защищенную строку в зашифрованную стандартную 
    строку, а затем преобразовать ее обратно в защищенную строку.
    Первая команда использует параметр AsSecureString командлета Read-Host, что
    бы создать защищенную строку. После ввода команды любые введенные символы п
    реобразуются в защищенную строку и сохраняются в переменную $secure.
    Вторая команда отображает значение переменной $secure. Поскольку переменная
     $secure содержит защищенную строку, Windows PowerShell отображает только т
    ип System.Security.SecureString. 
    Третья команда использует ключ командлет ConvertFrom-SecureString для преоб
    разования защищенной строки в переменной $secure в зашифрованную стандартну
    ю строку. Эта команда сохраняет результат в переменной $encrypted. Четверта
    я команда отображает зашифрованную строку в значении переменной $encrypted.
    Пятая команда использует ключ командлет ConvertTo-SecureString для преобраз
    ования зашифрованной стандартной строки в переменной $encrypted обратно в з
    ащищенную строку. Эта команда сохраняет результат в переменной $secure2. Ше
    стая команда отображает значение переменной $secure2. Тип SecureString указ
    ывает на успешное выполнение команды.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$secure = read-host -assecurestring
    
    C:\PS> $encrypted = convertfrom-securestring -secureString $secure -key (1.
    .16)
    
    C:\PS> $encrypted | set-content encrypted.txt
    
    C:\PS> $secure2 = get-content encrypted.txt | convertto-securestring -key (
    1..16)
    
    
    Описание
    -----------
    В этом примере показано, как создать защищенную строку из зашифрованной ста
    ндартной строки, сохраненной в файл.
    Первая команда использует параметр AsSecureString командлета Read-Host, что
    бы создать защищенную строку. После ввода команды любые введенные символы п
    реобразуются в защищенную строку и сохраняются в переменную $secure. 
    Вторая команда использует ключ командлет ConvertFrom-SecureString для преоб
    разования защищенной строки в переменной $secure в зашифрованную стандартну
    ю строку, используя указанный ключ. Содержимое сохраняется в переменной $en
    crypted.
    Третья команда использует оператор конвейера (|) для отправки значения пере
    менной $encrypted командлету Set-Content, который сохраняет значение в файл
    е Encrypted.txt.
    Четвертая команда использует командлет Get-Content для извлечения зашифрова
    нной стандартной строки из файла Encrypted.txt. Команда использует оператор
     конвейера для отправки зашифрованной строки командлету ConvertTo-SecureStr
    ing, который преобразует ее в защищенную строку, используя указанный ключ. 
    Результаты сохраняются в переменной $secure2.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$secure_string_pwd = convertto-securestring "P@ssW0rD" -asplaintext 
    -force
    
    
    Описание
    -----------
    Эта команда преобразует обычную текстовую строку "P@ssW0rD" в защищенную с
    троку и сохраняет результат в переменной $secure_string_pwd. Чтобы использо
    вать параметр AsPlainText, команда также должна содержать параметр Force.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113291
    ConvertFrom-SecureString 
    Read-Host 



ConvertTo-XML

ИМЯ
    ConvertTo-XML
    
ОПИСАНИЕ
    Создает XML-представление объекта.
    
СИНТАКСИС
    ConvertTo-XML [-InputObject] <psobject> [-As <string>] [-Depth <int>] [-NoT
    ypeInformation] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет ConvertTo-Xml создает XML-представление одного или нескольких объ
    ектов Microsoft .NET Framework. Чтобы использовать этот командлет, передайт
    е ему один или несколько объектов с помощью конвейера или задайте объект с 
    помощью параметра InputObject. 
    
    При передаче командлету ConvertTo-XML нескольких объектов с помощью конвейе
    ра или использовании для этого параметра InputObject командлет ConvertTo-XM
    L возвращает один XML-документ, содержащий представления всех объектов.
    
    Этот командлет похож на командлет Export-Clixml, за исключением того, что E
    xport-Clixml сохраняет полученный код XML в файл. Командлет ConvertTo-XML в
    озвращает код XML, чтобы его можно было далее обрабатывать с помощью Window
    s PowerShell.
    
ПАРАМЕТРЫ
    -As <string>
        Определяет формат вывода. Допустимые значения:
        
        -- String: возвращает отдельную строку;
        -- Stream: возвращает массив строк; 
        -- Document: возвращает объект XmlDocument.
        
        По умолчанию используется значение Stream.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Stream
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Depth <int>
        Задает число уровней вложенных объектов, которые включаются в XML-предс
        тавление. По умолчанию используется значение 1.
        
        Например, если свойства объекта также содержат объекты, то для сохранен
        ия XML-представления свойств этих вложенных объектов необходимо указать
         глубину, равную 2. 
        
        Значение по умолчанию можно переопределить для типа объекта в файлах Ty
        pes.ps1xml. Дополнительные сведения см. в разделе about_Types.ps1xml.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                1
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объект, подлежащий преобразованию. Введите переменную, содержащу
        ю объекты, либо команду или выражение для получения объектов. Кроме тог
        о, можно передать объекты командлету ConvertTo-XML по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  true
        
    -NoTypeInformation [<SwitchParameter>]
        Исключает атрибут Type из узлов объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету ConvertTo-XML по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String или System.Xml.XmlDocument
        Значение параметра As определяет тип объекта, возвращаемого командлетом
         ConvertTo-XML.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-date | convertto-xml
    
    
    Описание
    -----------
    Эта команда преобразует текущую дату (объект DateTime) в формат XML.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>convertto-xml -as Document -inputObject (get-process) -depth 3
    
    
    Описание
    -----------
    Эта команда преобразует объекты процессов, представляющие все процессы на к
    омпьютере, в XML-документ. Объекты расширяются до трех уровней.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135204
    Export-Clixml 
    Import-Clixml 
    ConvertTo-Html 
    ConvertTo-Csv 



Copy-Item

ИМЯ
    Copy-Item
    
ОПИСАНИЕ
    Копирует элемент из одного местоположения в другое внутри одного пространст
    ва имен.
    
СИНТАКСИС
    Copy-Item [-LiteralPath] <string[]> [[-Destination] <string>] [-Container] 
    [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-For
    ce] [-Include <string[]>] [-PassThru] [-Recurse] [-Confirm] [-WhatIf] [-Use
    Transaction] [<CommonParameters>]
    
    Copy-Item [-Path] <string[]> [[-Destination] <string>] [-Container] [-Crede
    ntial <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-I
    nclude <string[]>] [-PassThru] [-Recurse] [-Confirm] [-WhatIf] [-UseTransac
    tion] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Copy-Item копирует элемент из одного местоположения в пространств
    е имен в другое. Командлет Copy-Item не удаляет копируемые элементы. Типы э
    лементов, которые может копировать командлет, определяются наличием поставщ
    иков Windows PowerShell. Например, при использовании командлета с поставщик
    ом FileSystem копируются файлы и папки, а при работе с поставщиком реестра 
    копируются разделы и записи реестра.
    
ПАРАМЕТРЫ
    -Container [<SwitchParameter>]
        Обеспечивает сохранность объектов-контейнеров во время копирования.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Destination <string>
        Задает путь к местоположению, в которое требуется скопировать элементы.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету копировать элементы, которые не могут быть изменен
        ы другим образом, например копировать файл или псевдоним только для чте
        ния.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Определяет только элементы, которые будут обработаны командлетом, и иск
        лючает все остальные.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к элементу. Значение параметра LiteralPath используется точ
        но в том виде, в котором оно введено. Никакие символы не интерпретируют
        ся как подстановочные знаки. Если путь включает escape-символы, его нуж
        но заключить в одиночные кавычки. Одиночные кавычки указывают оболочке 
        Windows PowerShell, что никакие символы не следует интерпретировать как
         escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий каждый копируемый элемент. По умолчан
        ию этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к копируемым элементам.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Recurse [<SwitchParameter>]
        Задает рекурсивную копию.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Copy-ItemProperty по
         конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или объект, представляющий скопированный элемент.
        При использовании параметра PassThru командлет Copy-Item возвращает объ
        ект, представляющий скопированный элемент. В противном случае этот кома
        ндлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Copy-Item аналогичен командам "cp" или "copy" других оболочек
        . 
        
        Командлет Copy-Item предназначен для работы с данными, предоставляемыми
         любым поставщиком. Чтобы получить список поставщиков, доступных в теку
        щем сеансе, введите команду "Get-PsProvider". Дополнительные сведения с
        м. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>copy-item C:\Wabash\Logfiles\mar1604.log.txt -destination C:\Presenta
    tion
    
    
    Описание
    -----------
    Эта команда копирует файл mar1604.log.txt в каталог C:\Presentation. При вы
    полнении команды исходный файл не удаляется.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>copy-item C:\Logfiles -destination C:\Drawings -recurse
    
    
    Описание
    -----------
    Эта команда копирует все содержимое папки Logfiles в каталог Drawings. При 
    наличии в исходном каталоге вложенных каталогов с файлами они также копирую
    тся вместе со своими деревьями файлов. Параметр Container по умолчанию имее
    т значение true. Это сохраняет структуры каталогов.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>copy-item C:\Logfiles -destination C:\Drawings\Logs -recurse
    
    
    Описание
    -----------
    Эта команда копирует содержимое каталога C:\Logfiles в каталог C:\Drawings\
    Logs. Если вложенный каталог \Logs не существует, то он будет создан.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113292
    about_Providers 
    Clear-Item 
    Get-Item 
    Invoke-Item 
    Move-Item 
    Set-Item 
    New-Item 
    Remove-Item 
    Rename-Item 



Copy-ItemProperty

ИМЯ
    Copy-ItemProperty
    
ОПИСАНИЕ
    Копирует свойство и его значение из одного указанного местоположения в друг
    ое.
    
СИНТАКСИС
    Copy-ItemProperty [-LiteralPath] <string[]> [-Destination] <string> [-Name]
     <string> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter 
    ng>] [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseT
    ransaction] [<CommonParameters>]
    
    Copy-ItemProperty [-Path] <string[]> [-Destination] <string> [-Name] <strin
    g> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-
    Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransact
    ion] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Copy-ItemProperty копирует свойство и его значение из одного указ
    анного местоположения в другое. Например, командлет Copy-ItemProperty можно
     использовать для копирования одной или нескольких записей реестра из одног
    о раздела в другой.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Destination <string>
        Задает путь к целевому местоположению.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету переопределить ограничения, например ограничения п
        ереименования существующих файлов, если это не ставит под угрозу безопа
        сность.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Определяет только элементы, которые будут обработаны командлетом, и иск
        лючает все остальные.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к свойству элемента. Значение параметра LiteralPath использ
        уется точно в том виде, в котором оно введено. Никакие символы не интер
        претируются как подстановочные знаки. Если путь включает escape-символы
        , его нужно заключить в одиночные кавычки. Одиночные кавычки указывают 
        оболочке Windows PowerShell, что никакие символы не следует интерпретир
        овать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя копируемого свойства.
        
        Требуется?                    true
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий скопированное свойство элемента. По у
        молчанию этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к копируемому свойству.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Copy-ItemProperty по
         конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PSCustomObject
        Если задан параметр Passthru, командлет Copy-ItemProperty создает объек
        т PsCustomObject, представляющий скопированное свойство элемента. В про
        тивном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Copy-ItemProperty предназначен для работы с данными, предоста
        вляемыми любым поставщиком. Чтобы получить список поставщиков, доступны
        х в текущем сеансе, введите команду "Get-PSProvider". Дополнительные св
        едения см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>copy-itemproperty -path MyApplication -destination HKLM:\Software\MyA
    pplicationRev2 -name MyProperty
    
    
    Описание
    -----------
    Эта команда копирует свойство MyProperty из раздела реестра MyApplication в
     раздел MyApplicationRev2.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113293
    about_Providers 
    Clear-ItemProperty 
    New-ItemProperty 
    Move-ItemProperty 
    Rename-ItemProperty 
    Get-ItemProperty 
    Set-ItemProperty 



Debug-Process

ИМЯ
    Debug-Process
    
ОПИСАНИЕ
    Отлаживает один или несколько процессов, выполняющихся на локальном компьют
    ере.
    
СИНТАКСИС
    Debug-Process [-Name] <string[]> [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Debug-Process [-Id] <Int32[]> [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Debug-Process -InputObject <Process[]> [-Confirm] [-WhatIf] [<CommonParamet
    ers>]
    
    
ОПИСАНИЕ
    Командлет Debug-Process присоединяет отладчик к одному или нескольким проце
    ссам, выполняющимся на локальном компьютере. Процессы можно задать, указав 
    их имена или идентификаторы (PID) либо передав объекты процессов по конвейе
    ру командлету Debug-Process. 
    
    Командлет Debug-Process присоединяет отладчик, который в данный момент заре
    гистрирован для процесса. Перед использованием этого командлета проверьте, 
    что отладчик загружен и правильно настроен.
    
ПАРАМЕТРЫ
    -Id <Int32[]>
        Задает идентификаторы отлаживаемых процессов. Имя параметра ("-Id") ука
        зывать необязательно. 
        
        Чтобы определить идентификатор процесса, введите команду "get-process".
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -InputObject <Process[]>
        Задает объекты процессов, которые представляют отлаживаемые процессы. В
        ведите переменную, содержащую объекты процессов, либо команду, получающ
        ую объекты процессов, например Get-Process. Кроме того, можно передать 
        объекты процессов командлету Debug-Process по конвейеру.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена отлаживаемых процессов. Если заданному имени соответствует
         несколько процессов, Debug-Process присоединяет отладчик ко всем проце
        ссам с этим именем.  Имя параметра ("Name") указывать необязательно.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Int32, System.Diagnostics.Process, System.String
        Идентификатор процесса (Int32), объект процесса (System.Diagnostics.Pro
        cess) или имя процесса (String) можно передать командлету Debug-Process
         по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Этот командлет использует метод AttachDebugger класса Win32_Process инс
        трументария управления Windows (WMI). Дополнительные сведения об этом м
        етоде см. в разделе "Метод AttachDebugger" библиотеки MSDN (Microsoft D
        eveloper Network) по адресу  (на английском языке).
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>debug-process -name powershell
    
    
    Описание
    -----------
    Эта команда присоединяет отладчик к процессу PowerShell, выполняющемуся на 
    данном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>debug-process -name sql*
    
    
    Описание
    -----------
    Эта команда присоединяет отладчик ко всем процессам, имена которых начинают
    ся с комбинации символов "sql".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>debug-process winlogon, explorer, outlook
    
    
    Описание
    -----------
    Эта команда присоединяет отладчик к процессам Winlogon, Explorer и Outlook.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>debug-process -id 1132, 2028
    
    
    Описание
    -----------
    Эта команда присоединяет отладчик к процессам с идентификаторами 1132 и 202
    8.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-process powershell | debug-process
    
    
    Описание
    -----------
    Эта команда присоединяет отладчик к процессам PowerShell на данном компьюте
    ре. Для получения процессов PowerShell на данном компьютере используется ко
    мандлет Get-Process, а для передачи этих процессов командлету Debug-Process
     используется оператор конвейера (|).
    
    Чтобы указать конкретный процесс PowerShell, используйте параметр ID команд
    лета Get-Process.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>$pid | debug-process
    
    
    Описание
    -----------
    Эта команда присоединяет отладчик к текущим процессам PowerShell на данном 
    компьютере. 
    
    В этой команде используется автоматическая переменная $pid, в которой содер
    жится идентификатор текущего процесса PowerShell. Идентификатор процесса пе
    редается командлету Debug-Process с помощью оператора конвейера (|).
    
    Дополнительные сведения об автоматической переменной $pid см. в разделе abo
    ut_Automatic_Variables.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-process -computername Server01, Server02 -name MyApp | debug-proc
    ess
    
    
    Описание
    -----------
    Эта команда присоединяет отладчик к процессам MyApp, выполняющимся на компь
    ютерах Server01 и Server02.
    
    Для получения процессов MyApp, выполняющихся на компьютерах Server01 и Serv
    er02, используется командлет Get-Process. Для передачи процессов командлету
     Debug-Process, который присоединяет отладчики, используется оператор конве
    йера (|).
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>$p = get-process powershell
    
    C:\PS> debug-process -inputobject $p
    
    
    Описание
    -----------
    Эта команда присоединяет отладчик к процессам PowerShell на локальном компь
    ютере. 
    
    Первая команда получает процессы PowerShell на локальном компьютере с помощ
    ью командлета Get-Process. Результирующий объект процесса сохраняется в пер
    еменной $p.
    
    Вторая команда с помощью параметра InputObject командлета Debug-Process пер
    едает хранящийся в переменной $p объект процесса командлету Debug-Process.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135206
    Get-Process 
    Start-Process 
    Stop-Process 
    Wait-Process 
    Debug-Process 



Disable-ComputerRestore

ИМЯ
    Disable-ComputerRestore
    
ОПИСАНИЕ
    Отключает функцию восстановления системы на указанном диске файловой систем
    ы.
    
СИНТАКСИС
    Disable-ComputerRestore [-Drive] <string[]> [-Confirm] [-WhatIf] [<CommonPa
    rameters>]
    
    
ОПИСАНИЕ
    Командлет Disable-ComputerRestore отключает функцию восстановления системы 
    на одном или нескольких дисках файловой системы. В результате операции восс
    тановления системы не применяются к указанному диску.
    
    Чтобы отключить функцию восстановления системы на любом диске, ее необходим
    о отключить на системном диске (предварительно или одновременно). 
    
    Чтобы повторно включить функцию восстановления системы, используйте командл
    ет Enable-ComputerRestore. Чтобы определить состояние функции восстановлени
    я системы для каждого диска, используйте программу Rstrui.exe.
    
ПАРАМЕТРЫ
    -Drive <string[]>
        Задает диски файловой системы. Введите одну или несколько букв дисков ф
        айловой системы, указывая после каждой буквы двоеточие и обратную косую
         черту и используя кавычки, например, "C:\" или "D:\".  Это обязательны
        й параметр.
        
        С помощью этого командлета нельзя отключить функцию восстановления сист
        емы на удаленном сетевом диске, даже если он подключен к локальному ком
        пьютеру; кроме того, эту функцию нельзя отключить на дисках, не подходя
        щих для ее использования, например, на внешних дисках.
        
        Чтобы отключить функцию восстановления системы на любом диске, ее необх
        одимо отключить на системном диске (предварительно или одновременно).
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлеты Disable-ComputerRestore и Enable-ComputerRestore работают то
        лько в клиентских операционных системах, таких как Windows Vista и Wind
        ows XP.
        
        Чтобы использовать командлет Disable-ComputerRestore в Windows Vista и 
        более поздних версиях Windows, необходимо запускать Windows PowerShell 
        командой "Запуск от имени администратора".
        
        Список дисков, подходящих для использования функции восстановления сист
        емы, см. на вкладке защиты системы ("Панель управления" > "Система"). Ч
        тобы открыть эту вкладку в Windows PowerShell, введите команду "SystemP
        ropertiesProtection".
        
        Этот командлет использует класс SystemRestore инструментария управления
         Windows (WMI).
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>disable-computerrestore -drive "C:\"
    
    
    Описание
    -----------
    Эта команда отключает функцию восстановления системы на диске "С:".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>disable-computerrestore "C:\", "D:\"
    
    
    Описание
    -----------
    Эта команда отключает функцию восстановления системы на дисках "С:" и "D:".
     В этой команде используется параметр Drive, но имя параметра указывать нео
    бязательно, поэтому оно опущено.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135207
    Enable-ComputerRestore 
    Get-ComputerRestorePoint 
    Restore-Computer 
    Restart-Computer 



Disable-PSBreakpoint

ИМЯ
    Disable-PSBreakpoint
    
ОПИСАНИЕ
    Отключает точки останова для текущей консоли.
    
СИНТАКСИС
    Disable-PSBreakpoint [-Id] <Int32[]> [-PassThru] [-Confirm] [-WhatIf] [<Com
    monParameters>]
    
    Disable-PSBreakpoint [-Breakpoint] <Breakpoint[]> [-PassThru] [-Confirm] [-
    WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Disable-PSBreakpoint отключает точки останова, что означает, что 
    они не будут использоваться при выполнении скрипта. С помощью этого командл
    ета можно отключить все точки останова или указать конкретные точки, задав 
    объекты точек останова или их идентификаторы.
    
    Технически этот командлет изменяет значение свойства Enabled объекта точки 
    останова на False. Чтобы заново включить точку останова, следует использова
    ть командлет Enable-PSBreakpoint. Точки останова по умолчанию включаются пр
    и их создании с помощью командлета Set-PSBreakpoint.
    
    Точка останова — это точка в скрипте, на которой выполнение временно остана
    вливается, чтобы можно было проверить инструкции скрипта. Disable-PSBreakpo
    int — это один из нескольких командлетов, предназначенных для отладки скрип
    тов Windows PowerShell. Дополнительные сведения об отладчике Windows PowerS
    hell см. в разделе about_Debuggers.
    
ПАРАМЕТРЫ
    -Breakpoint <Breakpoint[]>
        Задает точки останова для отключения. Введите переменную, содержащую об
        ъекты точек останова, либо команду, получающую объекты точек останова, 
        например Get-PSBreakpoint. Кроме того, объекты точек останова можно пер
        едать командлету Disable-PSBreakpoint по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Id <Int32[]>
        Отключает точки останова с указанными идентификаторами. Введите идентиф
        икаторы или переменную, которая их содержит. Идентификаторы невозможно 
        передать командлету Disable-PSBreakpoint по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий включенные точки останова. По умолчан
        ию этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.Breakpoint
        Объект точки останова можно передать командлету Disable-PSBreakpoint по
         конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.Breakpoint
        При использовании параметра PassThru командлет Disable-PSBreakpoint воз
        вращает объект, представляющий отключенную точку останова. В противном 
        случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$b = set-psbreakpoint -script sample.ps1 -variable name
    
    C:\PS> $b | disable-psbreakpoint
    
    
    Описание
    -----------
    Эти команды отключают созданную перед этим точку останова. 
    
    Первая команда использует командлет Set-PSBreakpoint, чтобы создать точку о
    станова на переменной Name в скрипте Sample.ps1. После этого она сохраняет 
    в переменной $b объект точки останова.
    
    Вторая команда использует командлет Disable-PSBreakpoint, чтобы отключить э
    ту новую точку останова. С помощью оператора конвейера (|) она передает объ
    ект точки останова в переменной $b командлету Disable-PSBreakpoint.
    
    В результате выполнения этой команды свойство Enabled объекта точки останов
    а в переменной $b принимает значение False.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>disable-psbreakpoint -id 0
    
    
    Описание
    -----------
    Эта команда отключает точку останова с идентификатором 0.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>disable-psbreakpoint -breakpoint ($b = set-psbreakpoint -script sampl
    e.ps1 -line 5) 
    
    C:\PS> $b
    
    
    Описание
    -----------
    Эта команда создает новую точку останова, которая будет оставаться отключен
    ной, пока пользователь не включит ее.
    
    Чтобы отключить точку останова, она использует командлет Disable-PSBreakpoi
    nt. Значением параметра Breakpoint является команда Set-PSBreakpoint, котор
    ая устанавливает новую точку останова, создает объект точки останова и сохр
    аняет объект в переменной $b. 
    
    Параметры командлета, принимающие в качестве значений объекты, могут принят
    ь также и переменную, которая содержит объект, или команду, которая получае
    т или создает объект. В данном случае, поскольку командлет Set-PSBreakpoint
     создает объект точки останова, его можно использовать в качестве значения 
    параметра Breakpoint.
    
    Вторая команда выводит объект точки останова, хранящийся в переменной $b.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-psbreakpoint | disable-psbreakpoint
    
    
    Описание
    -----------
    Эта команда отключает все точки останова для текущей консоли. Эту команду м
    ожно сократить следующим образом: "gbp | dbp".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113294
    about_Debuggers 
    Set-PSBreakpoint 
    Get-PSBreakpoint 
    Enable-PSBreakpoint 
    Remove-PSBreakpoint 
    Get-PSCallStack 



Disable-PSRemoting

ИМЯ
    Disable-PSRemoting
    
ОПИСАНИЕ
    Предотвращает получение компьютером удаленных команд Windows PowerShell.
    
СИНТАКСИС
    Disable-PSRemoting [-Force] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Функция Disable-PSRemoting отключает все конфигурации сеанса на локальном к
    омпьютере путем добавления записи "deny all" в их дескрипторы безопасности.
     Это предотвращает получение локальным компьютером удаленных команд.  
    
    Disable-PSRemoting не останавливает службу WinRM и не запрещает пользовател
    ям локального компьютера создавать сеансы, которые выполняют подключение к 
    удаленным компьютерам или отправляют команды другим компьютерам.
    
    Чтобы повторно включить конфигурации сеанса, используйте командлет Enable-P
    SRemoting или Enable-PSSessionConfiguration.
    
    Чтобы выполнить эту функцию в Windows Vista, Windows Server 2008 и более по
    здних версиях Windows, необходимо запускать Windows PowerShell командой "За
    пуск от имени администратора".
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Подавляет все запросы подтверждения. По умолчанию выдается запрос на по
        дтверждение каждой операции.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    None
        Этот командлет не возвращает никаких объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        Конфигурация сеанса представляет собой группу параметров, определяющих 
        среду сеанса. Конфигурации сеанса находятся на удаленном компьютере и и
        спользуются локальными и удаленными сеансами, выполняющими подключение 
        к компьютеру.
        
        Каждый сеанс, осуществляющий подключение к компьютеру, должен использов
        ать одну из конфигураций сеанса, зарегистрированных на компьютере. Это 
        относится как к постоянным сеансам, создаваемым с помощью командлетов N
        ew-PSSession или Enter-PSSession, так и к временным сеансам, создаваемы
        м Windows PowerShell при использовании параметра ComputerName в командл
        етах, использующих технологию удаленного взаимодействия WS-Management, 
        например, Invoke-Command.  Запрет доступа ко всем конфигурациям сеанса 
        является эффективным способом предотвращения создания пользователями се
        ансов, выполняющих подключение к компьютеру.
        
        Disable-PSRemoting эквивалентно "Disable-PSSessionConfiguration -name *
        .
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>disable-psremoting
    
    
    Описание
    -----------
    Эта команда удаляет с компьютера все конфигурации сеансов.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>disable-psremoting -force
    
    
    Описание
    -----------
    Эта команда удаляет с компьютера все конфигурации сеансов, не выводя предуп
    реждение.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>disable-psremoting -force
    
    C:\PS> new-pssession -computername localhost
    
    [localhost] Connecting to remote server failed with the following error
    message : Access is denied. For more information, see the about_Remote_Trou
    b
    leshooting Help topic.
        + CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace
    :RemoteRunspace) [], PSRemotingTransportException
        + FullyQualifiedErrorId : PSSessionOpenFailed
    
    
    C:\PS> new-pssession -computername Server01
    
     Id Name       ComputerName    State    Configuration         Availability
     -- ----       ------------    -----    -------------         ------------
      1 Session1   Server01...     Opened   Microsoft.PowerShell     Available
    
    
    C:\PS> enable-pssessionConfiguration -name * -force
    
    C:\PS> new-pssession -computername localhost
    
     Id Name       ComputerName    State    Configuration         Availability
     -- ----       ------------    -----    -------------         ------------
      1 Session1   localhost       Opened   Microsoft.PowerShell     Available
    
    
    Описание
    -----------
    В этом примере показан результат использования Disable-PSRemoting.
    
    Первая команда использует Disable-PSRemoting для отключения всех зарегистри
    рованных конфигураций сеансов на локальном компьютере.
    
    Вторая команда использует New-PSSession для создания удаленного сеанса для 
    удаленного компьютера (также называется "замыкание на себя"). Поскольку кон
    фигурации сеанса, необходимые для этого сеанса, отключены, команда завершае
    тся ошибкой.
    
    Третья команда использует командлет New-PSSession для создания сеанса от ло
    кального компьютера к удаленному компьютеру Server01. Эта команда, использу
    ющая конфигурации сеанса на удаленном компьютере, успешно завершается. 
    
    Четвертая команда использует командлет Enable-PSSessionConfiguration для по
    вторного включения всех конфигураций сеанса на локальном компьютере. Команд
    а использует значение * (все) в параметре Name. 
    
    Пятая команда снова пытается создать сеанс с замыканием на себя, используя 
    командлет New-PSSession. На этот раз команда завершается успешно, поскольку
     необходимая конфигурация сеанса включена.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>disable-psremoting -force
    
    C:\PS> get-psSessionConfiguration | format-table -property name, permission
     -auto
    
    Name                   Permission
    ----                   ----------
    microsoft.powershell   Everyone AccessDenied, BUILTIN\Administrators Access
    Allowed
    microsoft.powershell32 Everyone AccessDenied, BUILTIN\Administrators Access
    Allowed
    
    C:\PS> enable-psremoting -force
    WinRM already is set up to receive requests on this machine.
    WinRM already is set up for remote management on this machine.
    
    C:\PS>> Get-PSSessionConfiguration | ft name, Permission -auto
    
    Name                   Permission
    ----                   ----------
    microsoft.powershell   BUILTIN\Administrators AccessAllowed
    microsoft.powershell32 BUILTIN\Administrators AccessAllowed
    
    
    Описание
    -----------
    В этом примере показано влияние на конфигурации сеанса использования Disabl
    e-PSRemoting и Enable-PSRemoting.
    
    Первая команда использует функцию Disable-PSRemoting для отключения всех за
    регистрированных конфигураций сеансов. Параметр Force подавляет все подтвер
    ждения пользователя.
    
    Вторая команда использует командлет Get-PSSessionConfiguration для отображе
    ния зарегистрированных конфигураций сеансов на локальном компьютере. Эта ко
    манда использует оператор конвейера для отправки результатов команде Format
    -Table, которая отображает только свойства Name и Permission конфигурации в
     таблице.
    
    В итоговой таблице показано, что разрешения для конфигурации запрещены.
    
    Третья команда использует командлет Enable-PSRemoting для повторного включе
    ния всех конфигураций сеанса на компьютере. Также можно использовать команд
    у "Enable-PsSessionConfiguration -name *". В команде используется параметр 
    Force, чтобы подавить все сообщения пользователю и перезапустить службу Win
    RM без запроса подтверждения.
    
    Четвертая команда использует Get-PSSessionConfiguration и Format-Table для 
    отображения имен и разрешений конфигураций сеанса. В результате показываетс
    я, что для членов группы "Администраторы" теперь открыт доступ к конфигурац
    иям сеанса.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=144298
    Enable-PSRemoting 
    Disable-PSSessionConfiguration 
    Get-PSSessionConfiguration 
    Register-PSSessionConfiguration 
    Set-PSSessionConfiguration 
    Unregister-PSSessionConfiguration 
    WS-Management Provider 



Disable-PSSessionConfiguration

ИМЯ
    Disable-PSSessionConfiguration
    
ОПИСАНИЕ
    Запрещает доступ к конфигурациям сеанса на локальном компьютере.
    
СИНТАКСИС
    Disable-PSSessionConfiguration [[-Name] <string[]>] [-Force] [-Confirm] [-W
    hatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Disable-PSSessionConfiguration запрещает всем пользователям компь
    ютера использовать конфигурацию сеанса для сеанса. Этот расширенный командл
    ет предназначен для использования системными администраторами и позволяет у
    правлять конфигурациями сеансов для пользователей.
    
    Командлет Disable-PSSessionConfiguration добавляет параметр "deny all" в де
    скриптор безопасности одной или нескольких зарегистрированных конфигураций 
    сеанса. В результате можно отменять регистрацию, просматривать и изменять к
    онфигурации, однако использовать их в сеансе невозможно.
    
    Без параметров Disable-PSSessionConfiguration отключает конфигурацию Micros
    oft.PowerShell, которая является конфигурацией по умолчанию, используемой д
    ля сеансов. Пока пользователь не укажет другую конфигурацию, локальным и уд
    аленным пользователям запрещается создание каких-либо сеансов, выполняющих 
    подключение к компьютеру.
    
    Чтобы отключить все конфигурации сеансов, используйте Disable-PSRemoting.
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Подавляет все запросы подтверждения. По умолчанию выдается запрос на по
        дтверждение каждой операции.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена отключаемых конфигураций сеанса. Введите одно или нескольк
        о имен конфигурации. Подстановочные знаки разрешены. Строку, содержащую
         имя конфигурации или объект конфигурации сеанса, можно передать команд
        лету Disable-PSSessionConfiguration по конвейеру.
        
        Если этот параметр не указан, Disable-PSSessionConfiguration отключает 
        конфигурацию сеанса Microsoft.PowerShell.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                Microsoft.PowerShell
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.PSSessionConfigurationCommands#PSSessionConfi
    guration, System.String
        Объект конфигурации сеанса или строку, содержащую имя конфигурации сеан
        са, можно передать командлету Disable-PSSessionConfiguration по конвейе
        ру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    None
        Этот командлет не возвращает никаких объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать этот командлет в Windows Vista, Windows Server 2008 
        и более поздних версиях Windows, необходимо запускать Windows PowerShel
        l командой "Запуск от имени администратора".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Disable-PSSessionConfiguration
    
    
    Описание
    -----------
    Эта команда отключает конфигурацию сеанса Microsoft.PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>disable-pssessionConfiguration -name *
    
    
    Описание
    -----------
    Эта команда удаляет с компьютера все зарегистрированные конфигурации сеансо
    в.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>disable-pssessionConfiguration -name Microsoft* -force
    
    
    Описание
    -----------
    Эта команда отключает все конфигурации сеанса с именами, начинающимися с "M
    icrosoft". Команда использует параметр Force для подавления всех запросов п
    одтверждений от этой команды.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>Get-PSSessionConfiguration -name MaintenanceShell, AdminShell | Disab
    le-PSSessionConfiguration
    
    
    Описание
    -----------
    Эта команда отключает конфигурации сеанса MaintenanceShell и AdminShell. 
    
    Команда использует оператор конвейера (|) для отправки результатов команды 
    Get-PSSessionConfiguration командлету Disable-PSSessionConfiguration.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>Get-PSSessionConfiguration | format-table -property Name, Permission 
    -auto
    
    Name                   Permission
    ----                   ----------
    MaintenanceShell       BUILTIN\Administrators AccessAllowed
    microsoft.powershell   BUILTIN\Administrators AccessAllowed
    microsoft.powershell32 BUILTIN\Administrators AccessAllowed
    
    C:\PS> Disable-PSSessionConfiguration -name MaintenanceShell -force
    
    C:\PS> Get-PSSessionConfiguration | format-table -property Name, Permission
     -auto
    
    Name                   Permission
    ----                   ----------
    MaintenanceShell       Everyone AccessDenied, BUILTIN\Administrators Access
    Allowed
    microsoft.powershell   BUILTIN\Administrators AccessAllowed
    microsoft.powershell32 BUILTIN\Administrators AccessAllowed
    
    C:\PS> Set-PSSessionConfiguration -name MaintenanceShell -MaximumReceivedDa
    taSizePerCommandMB 60
    
    ParamName            ParamValue
    ---------            ----------
    psmaximumreceived... 60
    
    "Restart WinRM service"
    WinRM service need to be restarted to make the changes effective. Do you wa
    nt to run the command "restart-service winrm"?
    [Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"): y
    
    
    C:\PS> new-pssession -computername localhost -configurationName Maintenance
    Shell
    
    [localhost] Connecting to remote server failed with the following error mes
    sage : Access is denied. For more information, see the about_Remote_Troubl
    eshooting Help topic.
        + CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace
    :RemoteRunspace) [], PSRemotingTransportException
        + FullyQualifiedErrorId : PSSessionOpenFailed
    
    
    Описание
    -----------
    В этом примере показан результат отключения конфигурации сеанса.
    
    Первая команда использует командлеты Get-SessionConfiguration и Format-Tabl
    e для отображения только свойств Name и Permission объектов конфигурации се
    анса. Этот табличный формат упрощает просмотр значений объектов. В результа
    те показывается, что членам группы "Администраторы" разрешено использование
     конфигураций сеанса.
    
    Вторая команда отключает конфигурацию сеанса MaintenanceShell с помощью ком
    андлета Disable-PSSessionConfiguration. Команда использует параметр Force д
    ля подавления всех запросов подтверждений.
    
    Третья команда идентична первой. В результате показывается, что по-прежнему
     можно получить объект, представляющий конфигурацию сеанса MaintenanceShell
    , даже если всем заблокирован к нему доступ. Запись "AccessDenied" приорите
    тна по отношению ко всем другим записям в дескрипторе безопасности.
    
    Четвертая команда использует командлет Set-PSSessionConfiguration для увели
    чения параметра MaximumDataSizePerCommandMB для конфигурации сеанса Mainten
    anceShell до 60. В результате команда завершается успешно, даже если всем з
    аблокирован доступ к конфигурации.
    
    Пятая команда пытается использовать конфигурацию сеанса MaintenanceShell в 
    сеансе. Она использует командлет New-PSSession для создания нового сеанса и
     параметр ConfigurationName для указания конфигурации MaintenanceShell. В р
    езультате команда New-PSSession завершается ошибкой, поскольку пользователю
     запрещен доступ к конфигурации.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=144299
    about_Session_Configurations 
    Enable-PSSessionConfiguration 
    Get-PSSessionConfiguration 
    Register-PSSessionConfiguration 
    Set-PSSessionConfiguration 
    Unregister-PSSessionConfiguration 
    WS-Management Provider 



Disable-WSManCredSSP

ИМЯ
    Disable-WSManCredSSP
    
ОПИСАНИЕ
    Отключает проверку подлинности поставщика услуг безопасности CredSSP на кли
    ентском компьютере.
    
СИНТАКСИС
    Disable-WSManCredSSP [-Role] <string> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Disable-WSManCredSPP отключает проверку подлинности поставщика ус
    луг безопасности CredSSP на клиентском или серверном компьютере. При исполь
    зовании проверки подлинности CredSSP учетные данные пользователя передаются
     для проверки подлинности на удаленный компьютер. Этот тип проверки подлинн
    ости предназначен для команд, которые создают удаленный сеанс из другого уд
    аленного сеанса. Например, он используется в случаях, когда требуется запус
    тить фоновое задание на удаленном компьютере. 
    
    Чтобы отключить с помощью этого командлета CredSSP на клиенте, необходимо у
    казать для параметра Role значение "Client". В этом случае командлет выполн
    яет следующие операции:
    
        - Отключает проверку подлинности CredSSP на клиенте. Параметру WS-Manag
    ement <localhost|имя_компьютера>\Client\Auth\CredSSP присваивается значение
     false.
        - Удаляет все значения WSMan/* из политики AllowFreshCredentials Window
    s CredSSP на клиенте. 
    
    Чтобы отключить с помощью этого командлета CredSSP на сервере, необходимо у
    казать для параметра Role значение "Server". В этом случае командлет выполн
    яет следующие операции:
    
       - Отключает проверку подлинности CredSSP на сервере. Параметру WS-Manage
    ment <localhost|имя_компьютера>\Service\Auth\CredSSP присваивается значение
     false. 
    
    Внимание При проверке подлинности CredSSP учетные данные пользователя деле
    гируются с локального компьютера на удаленный компьютер. Такой подход повыш
    ает угрозы безопасности удаленных операций. Если безопасность удаленного ко
    мпьютера нарушена, при передаче на него учетных данных эти данные могут быт
    ь использованы для управления сетевым сеансом. 
    
    Для отключения проверки подлинности CredSSP используйте командлет Disable-W
    SManCredSSP.
    
ПАРАМЕТРЫ
    -Role <string>
        Принимает одно из двух возможных значений: "Client" или "Server".  Эти 
        значения указывают, как следует отключить CredSSP — как клиент или как 
        сервер.  
        
        При использовании командлета для отключения CredSSP на клиенте (путем у
        казания для параметра Role значения "Client") командлет выполняет следу
        ющие операции:
        
            - Отключает проверку подлинности CredSSP на клиенте. Параметру WS-M
        anagement <localhost|имя_компьютера>\Client\Auth\CredSSP присваивается 
        значение false.
            - Удаляет все значения WSMan/* из политики AllowFreshCredentials Wi
        ndows CredSSP на клиенте. 
        
        При использовании командлета для отключения CredSSP на сервере (путем у
        казания для параметра Role значения "Server") командлет выполняет следу
        ющие операции:
        
           - Отключает проверку подлинности CredSSP на сервере. Параметру WS-Ma
        nagement <localhost|имя_компьютера>\Service\Auth\CredSSP присваивается 
        значение false.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает никаких входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Для включения проверки подлинности CredSSP используйте командлет Enable
        -WSManCredSSP.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Disable-WSManCredSSP -Role Client
    
    
    Описание
    -----------
    Эта команда отключает проверку подлинности CredSSP на клиенте, что предотвр
    ащает делегирование учетных данных серверам.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>Disable-WSManCredSSP -Role Server
    
    
    Описание
    -----------
    Эта команда отключает проверку подлинности CredSSP на сервере, что предотвр
    ащает делегирование учетных данных от клиентов.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkId=141438
    Connect-WSMan 
    Disconnect-WSMan 
    Enable-WSManCredSSP 
    Get-WSManCredSSP 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManInstance 
    New-WSManSessionOption 
    Remove-WSManInstance 
    Set-WSManInstance 
    Set-WSManQuickConfig 
    Test-WSMan 



Disconnect-WSMan

ИМЯ
    Disconnect-WSMan
    
ОПИСАНИЕ
    Отключает клиент от службы WinRM на удаленном компьютере.
    
СИНТАКСИС
    Disconnect-WSMan [-ComputerName <string>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Disconnect-WSMan отключает клиент от службы WinRM на удаленном ко
    мпьютере. Если сеанс WS-Management сохранен в переменной, объект сеанса ост
    ается в переменной, но состояние сеанса WS-Management изменяется на "Closed
    ". Этот командлет можно использовать в контексте поставщика WS-Management д
    ля отключения клиента от службы WinRM на удаленном компьютере. Однако его т
    акже можно использовать для отключения от службы WinRM на удаленных компьют
    ерах до перехода к поставщику WS-Management. 
    
    Дополнительные сведения о том, как подключиться к службе WinRM на удаленном
     компьютере, см. в разделе Connect-WSMan.
    
ПАРАМЕТРЫ
    -ComputerName <string>
        Задает компьютер, от которого нужно отключиться. Значение может быть по
        лным доменным именем, именем NetBIOS или IP-адресом. Чтобы задать локал
        ьный компьютер, введите имя компьютера, "localhost" или точку (.). Лока
        льный компьютер используется по умолчанию. Если пользователь и удаленны
        й компьютер находятся в разных доменах, необходимо использовать полное 
        доменное имя. Значение этого параметра можно передать командлету по кон
        вейеру.  
        
        Примечание. Отключиться от локального узла (разорвать подключение по ум
        олчанию к локальному компьютеру) невозможно. Однако если к локальному к
        омпьютеру установлено отдельное подключение (например, путем использова
        ния имени компьютера), это подключение можно удалить с помощью командле
        та Disconnect-WSMan.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                localhost
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает никаких входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Disconnect-WSMan -computer server01
    
    C:\PS> cd WSMan:
    PS WSMan:\> 
    PS WSMan:\> dir
    
    
       WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
    
    ComputerName                                  Type
    ------------                                  ----
    localhost                                     Container
    
    
    Описание
    -----------
    Эта команда удаляет подключение к удаленному компьютеру server01.
    
    Этот командлет обычно используется в контексте поставщика WS-Management для
     отключения от удаленного компьютера, в данном случае компьютера server01. 
    Однако Disconnect-WSMan также можно использовать для удаления подключений к
     удаленным компьютерам до перехода к поставщику WSMan. Эти подключения исче
    знут из списка ComputerName.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkId=141439
    Connect-WSMan 
    Disable-WSManCredSSP 
    Enable-WSManCredSSP 
    Get-WSManCredSSP 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManInstance 
    New-WSManSessionOption 
    Remove-WSManInstance 
    Set-WSManInstance 
    Set-WSManQuickConfig 
    Test-WSMan 



Enable-ComputerRestore

ИМЯ
    Enable-ComputerRestore
    
ОПИСАНИЕ
    Включает функцию восстановления системы на указанном диске файловой системы
    .
    
СИНТАКСИС
    Enable-ComputerRestore [-Drive] <string[]> [-Confirm] [-WhatIf] [<CommonPar
    ameters>]
    
    
ОПИСАНИЕ
    Командлет Enable-ComputerRestore включает функцию восстановления системы на
     одном или нескольких дисках файловой системы. В результате можно использов
    ать такие средства, как командлет Restore-Computer, для восстановления пред
    ыдущего состояния системы.
    
    По умолчанию функция восстановления системы включена на всех соответствующи
    х дисках, но ее можно отключить, например, с помощью командлета Disable-Com
    puterRestore. Чтобы включить (или повторно включить) функцию восстановления
     системы на любом диске, ее необходимо включить на системном диске (предвар
    ительно или одновременно).  Чтобы определить состояние функции восстановлен
    ия системы для каждого диска, используйте программу Rstrui.exe.
    
ПАРАМЕТРЫ
    -Drive <string[]>
        Задает диски файловой системы. Введите одну или несколько букв дисков ф
        айловой системы, указывая после каждой буквы двоеточие и обратную косую
         черту и используя кавычки, например, "C:\" или "D:\".  Это обязательны
        й параметр.
        
        С помощью этого командлета нельзя включить функцию восстановления систе
        мы на удаленном сетевом диске, даже если он подключен к локальному комп
        ьютеру; кроме того, эту функцию нельзя включить на дисках, не подходящи
        х для ее использования, например, на внешних дисках.
        
        Чтобы включить функцию восстановления системы на любом диске, ее необхо
        димо включить на системном диске (предварительно или одновременно).
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать объекты этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлеты Disable-ComputerRestore и Enable-ComputerRestore работают то
        лько в клиентских операционных системах, таких как Windows Vista и Wind
        ows XP.
        
        Чтобы использовать командлет Enable-ComputerRestore в Windows Vista и б
        олее поздних версиях Windows, необходимо запускать Windows PowerShell к
        омандой "Запуск от имени администратора".
        
        Список дисков, подходящих для использования функции восстановления сист
        емы, см. на вкладке защиты системы ("Панель управления" > "Система"). Ч
        тобы открыть эту вкладку в Windows PowerShell, введите команду "SystemP
        ropertiesProtection".
        
        Этот командлет использует класс SystemRestore инструментария управления
         Windows (WMI).
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>enable-computerrestore -drive "C:\"
    
    
    Описание
    -----------
    Эта команда включает функцию восстановления системы на диске "С:" локальног
    о компьютера.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>enable-computerrestore -drive "C:\", "D:\"
    
    
    Описание
    -----------
    Эта команда включает функцию восстановления системы на дисках "С:" и "D:" л
    окального компьютера.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135209
    Disable-ComputerRestore 
    Get-ComputerRestorePoint 
    Restore-Computer 
    Restart-Computer 



Enable-PSBreakpoint

ИМЯ
    Enable-PSBreakpoint
    
ОПИСАНИЕ
    Включает точки останова для текущей консоли.
    
СИНТАКСИС
    Enable-PSBreakpoint [-Id] <Int32[]> [-PassThru] [-Confirm] [-WhatIf] [<Comm
    onParameters>]
    
    Enable-PSBreakpoint [-Breakpoint] <Breakpoint[]> [-PassThru] [-Confirm] [-W
    hatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Enable-PSBreakpoint заново включает отключенные точки останова. С
     помощью этого командлета можно включить все точки останова или указать кон
    кретные точки, задав объекты точек останова или их идентификаторы.
    
    Точка останова — это точка в скрипте, на которой выполнение временно остана
    вливается, чтобы можно было проверить инструкции скрипта. Создаваемые точки
     останова включаются автоматически, однако их можно отключить с помощью ком
    андлета Disable-PSBreakpoint.
    
    Технически этот командлет изменяет значение свойства Enabled объекта точки 
    останова на True. 
    
    Enable-PSBreakpoint — это один из нескольких командлетов, предназначенных д
    ля отладки скриптов Windows PowerShell. Дополнительные сведения об отладчик
    е Windows PowerShell см. в разделе about_Debuggers.
    
ПАРАМЕТРЫ
    -Breakpoint <Breakpoint[]>
        Задает точки останова для включения. Введите переменную, содержащую объ
        екты точек останова, либо команду, получающую объекты точек останова, н
        апример Get-PSBreakpoint. Кроме того, можно передать объекты точек оста
        нова командлету Enable-PSBreakpoint по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет.
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Id <Int32[]>
        Включает точки останова с указанными идентификаторами. По умолчанию исп
        ользуется значение "Все точки останова". Введите идентификаторы или пер
        еменную, которая их содержит. (Идентификаторы невозможно передать коман
        длету Enable-PSBreakpoint по конвейеру.) Чтобы определить идентификатор
         точки останова, используйте командлет Get-PSBreakpoint.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий включенную точку останова. По умолчан
        ию этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Вывод отсутствует
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.Breakpoint
        Объект точки останова можно передать командлету Enable-PSBreakpoint по 
        конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.Breakpoint
        При использовании параметра PassThru командлет Enable-PSBreakpoint возв
        ращает объект точки останова, представляющий включенную точку останова.
         В противном случае этот командлет не формирует никаких выходных данных
        .
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Enable-PSBreakpoint не возвращает ошибку при попытке включить
         уже включенную точку останова. Поэтому можно без проблем включать все 
        точки останова сразу, даже если только некоторые из них были отключены.
        
        Точки останова включаются при их создании с помощью командлета Set-PSBr
        eakpoint. Нет необходимости включать вновь созданные точки останова.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-psbreakpoint | enable-psbreakpoint
    
    
    Описание
    -----------
    Эта команда включает все точки останова для текущей консоли. Эту команду мо
    жно сократить следующим образом: "gbp | ebp".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>enable-psbreakpoint -id 0, 1, 5
    
    
    Описание
    -----------
    Эта команда включает точки останова с идентификаторами 0, 1 и 5.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$b = set-psbreakpoint -script sample.ps1 -variable Name
    
    C:\PS> $b | disable-psbreakpoint -passthru
    
    AccessMode : Write
    Variable   : Name
    Action     :
    Enabled    : False
    HitCount   : 0
    Id         : 0
    Script     : C:\ps-test\sample.ps1
    ScriptName : C:\ps-test\sample.ps1
    
    C:\PS> $b | enable-psbreakpoint -passthru
    
    AccessMode : Write
    Variable   : Name
    Action     :
    Enabled    : True
    HitCount   : 0
    Id         : 0
    Script     : C:\ps-test\sample.ps1
    ScriptName : C:\ps-test\sample.ps1
    
    
    Описание
    -----------
    Эти команды заново включают ранее отключенную точку останова.
    
    Первая команда использует командлет Set-PSBreakpoint, чтобы создать точку о
    станова на переменной "Name" в скрипте Sample.ps1. После этого она сохраняе
    т в переменной $b объект точки останова.
    
    Вторая команда использует командлет Disable-PSBreakpoint, чтобы отключить э
    ту новую точку останова. С помощью оператора конвейера (|) объект точки ост
    анова в переменной $b передается командлету Disable-PSBreakpoint, и с помощ
    ью параметра PassThru командлета Disable-PSBreakpoint объект отключенной то
    чки останова выводится на экран. Это позволяет проверить, что свойство Enab
    led объекта точки останова имеет значение False.
    
    Третья команда использует командлет Enable-PSBreakpoint, чтобы заново включ
    ить эту точку останова. С помощью оператора конвейера (|) объект точки оста
    нова в переменной $b передается командлету Enable-PSBreakpoint, и с помощью
     параметра PassThru командлета Enable-PSBreakpoint объект точки останова вы
    водится на экран. Это позволяет проверить, что свойство Enabled объекта точ
    ки останова имеет значение True.
    
    Результаты показаны в следующем примере выходных данных.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$b = get-psbreakpoint -id 3, 5
    
    C:\PS> enable-psbreakpoint -breakpoint $b
    
    
    Описание
    -----------
    Эти команды включают набор точек останова путем указания соответствующих об
    ъектов точек останова. 
    
    Первая команда с помощью командлета Get-PSBreakpoint получает точки останов
    а и сохраняет их в переменной $b. 
    
    Вторая команда использует командлет Enable-PSBreakpoint с параметром Breakp
    oint, чтобы включить эти точки останова.
    Эта команда эквивалентна команде "enable-psbreakpoint -id 3, 5".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113295
    about_Debuggers 
    Set-PSBreakpoint 
    Disable-PSBreakpoint 
    Get-PSBreakpoint 
    Remove-PSBreakpoint 
    Get-PSCallStack 



Enable-PSRemoting

ИМЯ
    Enable-PSRemoting
    
ОПИСАНИЕ
    Настраивает компьютер для получения удаленных команд.
    
СИНТАКСИС
    Enable-PSRemoting [-Force] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Enable-PSRemoting настраивает компьютер на получение удаленных ко
    манд Windows PowerShell, отправляемых с использованием технологии WS-Manage
    ment.   
    
    Эту команду необходимо выполнить только один раз на каждом компьютере, кото
    рый будет получать команды. Ее не нужно выполнять на компьютерах, которые т
    олько отправляют команды. Поскольку конфигурация активирует прослушиватели,
     рекомендуется запускать ее только в случае необходимости.
    
    Командлет Enable-PSRemoting выполняет следующие операции.
    
    -- Выполняет Set-WSManQuickConfig командлет, который осуществляет следующие
     задачи.
    ----- Запускает службу WinRM.
    ----- Задает тип запуска службы WinRM как автоматический.
    ----- Создает прослушиватель, который принимает запросы на любой IP-адрес.
    ----- Разрешает исключение брандмауэра для связи WS-Management.
    
    -- Разрешает для всех зарегистрированных конфигураций сеанса Windows PowerS
    hell получение инструкций от удаленного компьютера.
    ----- Регистрирует конфигурацию сеанса "Microsoft.PowerShell", если она еще
     не зарегистрирована.
    ----- Регистрирует конфигурацию сеанса "Microsoft.PowerShell32" на компьюте
    рах с 64-разрядными ОС, если она еще не зарегистрирована.
    ----- Удаляет параметр "Deny Everyone" из дескриптора безопасности для всех
     зарегистрированных конфигураций сеанса. 
    ----- Перезагружает службу WinRM, чтобы ранее внесенные изменения вступили 
    в силу.
    
    Чтобы использовать этот командлет в Windows Vista, Windows Server 2008 и бо
    лее поздних версиях Windows, необходимо запускать Windows PowerShell команд
    ой "Запуск от имени администратора".
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Подавляет все запросы подтверждения. По умолчанию выдается запрос на по
        дтверждение каждой операции.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String
        Enable-PSRemoting возвращает строки, описывающие его результаты.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>enable-psremoting
    
    
    Описание
    -----------
    Эта команда настраивает компьютер для получения удаленных команд.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>enable-psremoting -force
    
    
    Описание
    -----------
    Эта команда настраивает компьютер для получения удаленных команд. Она испол
    ьзует параметр Force для подавления подтверждений.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=144300
    about_Remote 
    about_Session_Configurations 
    Disable-PSRemoting 
    Get-PSSessionConfiguration 
    Enable-PSSessionConfiguration 
    Disable-PSSessionConfiguration 
    Register-PSSessionConfiguration 
    Set-PSSessionConfiguration 
    WS-Management Provider 



Enable-PSSessionConfiguration

ИМЯ
    Enable-PSSessionConfiguration
    
ОПИСАНИЕ
    Разрешает доступ к конфигурациям сеанса на локальном компьютере.
    
СИНТАКСИС
    Enable-PSSessionConfiguration [[-Name] <string[]>] [-Force] [-SecurityDescr
    iptorSDDL <string>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Enable-PSSessionConfiguration повторно включает зарегистрированны
    е конфигурации сеансов, которые были отключены с помощью командлета Disable
    -PSSessionConfiguration. Этот расширенный командлет предназначен для исполь
    зования системными администраторами и позволяет управлять конфигурациями се
    ансов для пользователей.
    
    Без параметров Enable-PSSessionConfiguration повторно включает конфигурацию
     Microsoft.PowerShell, которая является конфигурацией по умолчанию, использ
    уемой для сеансов. 
    
    Этот командлет выполняет следующие операции для каждой включенной конфигура
    ции.
    -- Удаляет параметр "deny all" из дескриптора безопасности конфигурации или
     заменяет дескриптор безопасности одним из указанных.
    -- Включает прослушиватель, принимающий запросы по любому IP-адресу.
    -- Перезапускает службу WinRM.
    
    Командлет Enable-PSSessionConfiguration вызывает командлет Set-WSManQuickCo
    nfig. Однако его не следует использовать для обеспечения удаленного доступа
     к компьютеру. Вместо него следует использовать более сложный командлет Ena
    ble-PSRemoting.
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Подавляет все запросы пользователю и перезапускает службу WinRM без зап
        роса подтверждения. Перезапуск службы обеспечивает вступление изменений
         конфигурации в силу.
        
        Чтобы предотвратить перезапуск и подавить запрос на перезапуск, использ
        уйте параметр NoServiceRestart.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена включаемых конфигураций сеанса. Введите одно или несколько
         имен конфигурации. Подстановочные знаки разрешены. 
        
        Строку, содержащую имя конфигурации или объект конфигурации сеанса, мож
        но передать командлету Enable-PSSessionConfiguration по конвейеру.
                                 
        Если этот параметр не указан, Enable-PSSessionConfiguration включает ко
        нфигурацию сеанса Microsoft.PowerShell.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -SecurityDescriptorSDDL <string>
        Заменяет дескриптор безопасности для конфигурации сеанса указанным деск
        риптором безопасности.  
        
        Если этот параметр не указан, Enable-PSSessionConfiguration всего лишь 
        удаляет элемент "deny all" из дескриптора безопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.PSSessionConfigurationCommands#PSSessionConfi
    guration, System.String
        Объект конфигурации сеанса или строку, содержащую имя конфигурации сеан
        са, можно передать командлету Enable-PSSessionConfiguration по конвейер
        у.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    None
        Этот командлет не возвращает никаких объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать этот командлет в Windows Vista, Windows Server 2008 
        и более поздних версиях Windows, необходимо запускать Windows PowerShel
        l командой "Запуск от имени администратора".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Enable-PSSessionConfiguration
    
    
    Описание
    -----------
    Эта команда повторно запускает конфигурацию сеансов Microsoft.PowerShell по
     умолчанию на компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>Enable-PSSessionConfiguration -name MaintenanceShell, AdminShell
    
    
    Описание
    -----------
    Эта команда повторно включает конфигурации сеанса MaintenanceShell и AdminS
    hell на компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>Enable-PSSessionConfiguration -name *
    
    C:\PS> Get-PSSessionConfiguration | Enable-PSSessionConfiguration
    
    
    Описание
    -----------
    Эти команды повторно включают все конфигурации сеансов на компьютере. Коман
    ды эквивалентны, поэтому можно использовать любую из них.
    
    Enable-PSSessionConfiguration не возвращает ошибки при включении уже включе
    нной конфигурации сеанса.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>Enable-PSSessionConfiguration -name MaintenanceShell -securityDescrip
    torSDDL "O:NSG:BAD:P(A;;GXGWGR;;;BA)(A;;GAGR;;;S-1-5-21-123456789-188441444
    -3100496)S:P"
    
    
    Описание
    -----------
    Эта команда повторно включает конфигурацию сеанса MaintenanceShell и задает
     для конфигурации новый дескриптор безопасности.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=144301
    about_Session_Configurations 
    Disable-PSSessionConfiguration 
    Get-PSSessionConfiguration 
    Register-PSSessionConfiguration 
    Set-PSSessionConfiguration 
    Unregister-PSSessionConfiguration 
    WS-Management Provider 



Enable-WSManCredSSP

ИМЯ
    Enable-WSManCredSSP
    
ОПИСАНИЕ
    Включает проверку подлинности поставщика услуг безопасности CredSSP на клие
    нтском компьютере.
    
СИНТАКСИС
    Enable-WSManCredSSP [-Role] <string> [[-DelegateComputer] <string>] [<Commo
    nParameters>]
    
    
ОПИСАНИЕ
    Командлет Enable-WSManCredSPP включает проверку подлинности поставщика услу
    г безопасности CredSSP на клиентском или серверном компьютере. При использо
    вании проверки подлинности CredSSP учетные данные пользователя передаются д
    ля проверки подлинности на удаленный компьютер. Этот тип проверки подлиннос
    ти предназначен для команд, которые создают удаленный сеанс из другого удал
    енного сеанса. Например, он используется в случаях, когда требуется запусти
    ть фоновое задание на удаленном компьютере. 
    
    Чтобы включить с помощью этого командлета CredSSP на клиенте, необходимо ук
    азать для параметра Role значение "Client". В этом случае командлет выполня
    ет следующие операции:
    
        - Включает проверку подлинности CredSSP на клиенте. Параметру WS-Manage
    ment <localhost|имя_компьютера>\Client\Auth\CredSSP присваивается значение 
    true.
        - Присваивает политике AllowFreshCredentials Windows CredSSP на клиенте
     значение WSMan/Delegate. 
        - Примечание. Эти значения параметров позволяют клиенту делегировать яв
    ные учетные данные серверу при проведении проверки подлинности сервера.
    
    Чтобы включить с помощью этого командлета CredSSP на сервере, необходимо ук
    азать для параметра Role значение "Server". В этом случае командлет выполня
    ет следующие операции:
    
       - Включает проверку подлинности CredSSP на сервере. Параметру WS-Managem
    ent <localhost|имя_компьютера>\Service\Auth\CredSSP присваивается значение 
    true. 
       - Примечание. Этот значение параметра политики позволяет серверу выступа
    ть в качестве делегата для клиентов.  
    
    Внимание При проверке подлинности CredSSP учетные данные пользователя деле
    гируются с локального компьютера на удаленный компьютер. Такой подход повыш
    ает угрозы безопасности удаленных операций. Если безопасность удаленного ко
    мпьютера нарушена, при передаче на него учетных данных эти данные могут быт
    ь использованы для управления сетевым сеансом. 
    
    Для отключения проверки подлинности CredSSP используйте командлет Disable-W
    SManCredSSP.
    
ПАРАМЕТРЫ
    -DelegateComputer <string>
        Разрешает делегирование учетных данных клиента серверу или нескольким с
        ерверам, заданным данным параметром. Значением данного параметра должно
         быть полное доменное имя.
        
        Если параметр Role имеет значение "Client", параметр DelegateComputer я
        вляется обязательным.
        Если параметр Role имеет значение "Server", параметр DelegateComputer н
        е допускается.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Role <string>
        Принимает одно из двух возможных значений: "Client" или "Server".  Эти 
        значения указывают, как следует включить CredSSP — как клиент или как с
        ервер.  
        
        Если параметр Role имеет значение "Client", командлет выполняет следующ
        ие операции:
        
            - Включает проверку подлинности CredSSP на клиенте. Параметру WS-Ma
        nagement <localhost|имя_компьютера>\Client\Auth\CredSSP присваивается з
        начение true.
            - Присваивает политике AllowFreshCredentials Windows CredSSP на кли
        енте значение WSMan/Delegate. 
            - Примечание. Эти значения параметров позволяют клиенту делегироват
        ь явные учетные данные серверу при проведении проверки подлинности серв
        ера.
        
        Если параметр Role имеет значение "Server", командлет выполняет следующ
        ие операции:
        
           - Включает проверку подлинности CredSSP на сервере. Параметру WS-Man
        agement <localhost|имя_компьютера>\Service\Auth\CredSSP присваивается з
        начение true. 
           - Примечание. Этот значение параметра политики позволяет серверу выс
        тупать в качестве делегата для клиентов.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает никаких входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Xml.XmlElement
        Если проверка подлинности CredSSP успешно включена, этот командлет форм
        ирует объект XMLElement.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>enable-wsmancredssp -role client -delegatecomputer server02.accountin
    g.fabrikam.com
    
    cfg         : http://schemas.microsoft.com/wbem/wsman/1/config/client/auth
    lang        : en-US
    Basic       : true
    Digest      : true
    Kerberos    : true
    Negotiate   : true
    Certificate : true
    CredSSP     : true
    
    
    Описание
    -----------
    Эта команда разрешает делегирование учетных данных клиента компьютеру serve
    r02.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>enable-wsmancredssp -role client -delegatecomputer *.accounting.fabri
    kam.com
    
    cfg         : http://schemas.microsoft.com/wbem/wsman/1/config/client/auth
    lang        : en-US
    Basic       : true
    Digest      : true
    Kerberos    : true
    Negotiate   : true
    Certificate : true
    CredSSP     : true
    
    
    Описание
    -----------
    Эта команда разрешает делегирование учетных данных клиента всем компьютерам
     в домене "accounting.fabrikam.com".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>enable-wsmancredssp -role client -delegatecomputer server02.accountin
    g.fabrikam.com, server03.accounting.fabrikam.com, server04.accounting.fabri
    kam.com
    
    cfg         : http://schemas.microsoft.com/wbem/wsman/1/config/client/auth
    lang        : en-US
    Basic       : true
    Digest      : true
    Kerberos    : true
    Negotiate   : true
    Certificate : true
    CredSSP     : true
    
    
    Описание
    -----------
    Эта команда разрешает делегирование учетных данных клиента нескольким компь
    ютерам.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>enable-wsmancredssp -role server
    
    
    Описание
    -----------
    Эта команда разрешает компьютеру выступать в качестве делегата для другого 
    компьютера. Командлет Enable-WSManCredSSP (показанный в предыдущих примерах
    ) только включает проверку подлинности CredSSP на клиенте и задает удаленны
    е компьютеры, которые могут выступать от его имени. Чтобы удаленный компьют
    ер выступал в качестве делегата для клиента, элементу CredSSP в узле Servic
    e поставщика WSMan должно быть присвоено значение true.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>connect-wsman server02
    set-item wsman:\server02\service\auth\credSSP -value $true
    
    
    Описание
    -----------
    Эта команда разрешает компьютеру выступать в качестве делегата для другого 
    компьютера. Показанные в предыдущих примерах команды Enable-WSManCredSSP вк
    лючают проверку подлинности CredSSP только на клиентском компьютере и задаю
    т удаленные компьютеры, которые могут выступать от имени клиентского компью
    тера. Чтобы удаленный компьютер выступал в качестве делегата для клиентског
    о компьютера, элементу CredSSP в каталоге Service поставщика WSMan должно б
    ыть присвоено значение true. 
    
    В этом примере первая команда создает подключение к удаленному компьютеру s
    erver02.
    
    Вторая команда задает значение элемента credSSP на удаленном компьютере ser
    ver02, что позволяет компьютеру выступать в качестве делегата.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkId=141442
    Connect-WSMan 
    Disable-WSManCredSSP 
    Disconnect-WSMan 
    Get-WSManCredSSP 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManInstance 
    New-WSManSessionOption 
    Remove-WSManInstance 
    Set-WSManInstance 
    Set-WSManQuickConfig 
    Test-WSMan 



Enter-PSSession

ИМЯ
    Enter-PSSession
    
ОПИСАНИЕ
    Начинает интерактивный сеанс с удаленным компьютером.
    
СИНТАКСИС
    Enter-PSSession [-ComputerName] <string> [-ApplicationName <string>] [-Auth
    entication {Default | Basic | Negotiate | NegotiateWithImplicitCredential |
     Credssp | Digest | Kerberos}] [-CertificateThumbprint <string>] [-Configur
    ationName <string>] [-Credential <PSCredential>] [-Port <int>] [-SessionOpt
    ion <PSSessionOption>] [-UseSSL] [<CommonParameters>]
    
    Enter-PSSession [[-Id] <int>] [<CommonParameters>]
    
    Enter-PSSession [-InstanceId <Guid>] [<CommonParameters>]
    
    Enter-PSSession [-Name <string>] [<CommonParameters>]
    
    Enter-PSSession [[-Session] <PSSession>] [<CommonParameters>]
    
    Enter-PSSession [[-ConnectionURI] <Uri>] [-AllowRedirection] [-Authenticati
    on {Default | Basic | Negotiate | NegotiateWithImplicitCredential | Credssp
     | Digest | Kerberos}] [-CertificateThumbprint <string>] [-ConfigurationNam
    e <string>] [-Credential <PSCredential>] [-SessionOption <PSSessionOption>]
     [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Enter-PSSession начинает интерактивный сеанс с одним удаленным ко
    мпьютером. В рамках этого сеанса вводимые команды выполняются на удаленном 
    компьютере, как будто они вводятся непосредственно на удаленном компьютере.
     В любой момент времени может использоваться только один интерактивный сеан
    с. 
    
    Обычно для этого командлета указывается параметр ComputerName, позволяющий 
    задать имя удаленного компьютера. Также для создания интерактивного сеанса 
    можно использовать сеанс, созданный с помощью командлета New-PSSession. 
    
    Чтобы завершить интерактивный сеанс и отключиться от удаленного компьютера,
     используйте командлет Exit-PSSession или введите "exit".
    
ПАРАМЕТРЫ
    -AllowRedirection [<SwitchParameter>]
        Разрешает перенаправление данного соединения на альтернативный универса
        льный код ресурса URI.
        
        При использовании параметра ConnectionURI удаленный узел может вернуть 
        инструкцию с перенаправлением на другой URI. По умолчанию Windows Power
        Shell не перенаправляет соединения, но можно воспользоваться этим парам
        етром и разрешить перенаправление соединений.
        
        Разрешает перенаправление данного соединения на альтернативный URI. 
        
        При использовании параметра ConnectionURI удаленный узел может вернуть 
        инструкцию с перенаправлением на другой URI. По умолчанию Windows Power
        Shell не перенаправляет соединения, но можно воспользоваться параметром
         AllowRedirection и разрешить перенаправление соединений.
        
        Кроме того, можно ограничить число операций перенаправления подключения
        , присвоив соответствующее значение свойству MaximumConnectionRedirecti
        onCount привилегированной переменной $PSSessionOption или свойству Maxi
        mumConnectionRedirectionCount значения параметра SessionOption. Значени
        е по умолчанию равно 5. Дополнительные сведения см. в описании параметр
        а SessionOption, а также в разделе New-PSSessionOption.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ApplicationName <string>
        Задает сегмент имени приложения в URI подключения. Этот параметр служит
         для указания имени приложения, если в команде не используется параметр
         ConnectionURI.
        
        По умолчанию используется значение привилегированной переменной $PSSess
        ionApplicationName на локальном компьютере. Если эта привилегированная 
        переменная не определена, используется значение по умолчанию "WSMAN". Э
        то значение подходит для большинства случаев. Дополнительные сведения с
        м. в разделе about_Preference_Variables. 
        
        Служба WinRM использует имя приложения для выбора прослушивателя для об
        служивания запроса подключения. Значение этого параметра должно соответ
        ствовать значению свойства URLPrefix прослушивателя на удаленном компью
        тере.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                WSMAN
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Authentication <AuthenticationMechanism>
        Задает механизм, используемый при проверке подлинности учетных данных п
        ользователя.   Допустимые значения: "Default", "Basic", "Credssp", "Dig
        est", "Kerberos", "Negotiate" и "NegotiateWithImplicitCredential".  По 
        умолчанию используется значение "Default".
        
        Проверка подлинности CredSSP доступна только в Windows Vista, Windows S
        erver 2008 и более поздних версиях Windows.
        
        Сведения о значениях этого параметра см. в описании перечисления System
        .Management.Automation.Runspaces.AuthenticationMechanism в библиотеке M
        SDN по адресу http://go.microsoft.com/fwlink/?LinkId=144382 (на английс
        ком языке).
        
        Внимание Проверка подлинности CredSSP, при которой учетные данные поль
        зователя передаются на удаленный компьютер, предназначена для команд, к
        оторые должны пройти процедуру проверки подлинности на нескольких ресур
        сах, например при доступе к удаленному общему сетевому ресурсу. Такой м
        еханизм повышает угрозы безопасности удаленных операций. Если безопасно
        сть удаленного компьютера нарушена, передаваемые ему учетные данные мог
        ут использоваться для управления сетевым сеансом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CertificateThumbprint <string>
        Задает цифровой сертификат с открытым ключом (X509) учетной записи поль
        зователя, который располагает разрешением для выполнения этого действия
        . Введите отпечаток сертификата.
        
        Сертификаты используются при проверке подлинности на основе сертификата
         клиента. Их можно сопоставить только с учетными записями локальных пол
        ьзователей; они не работают с учетными записями доменов.
        
        Чтобы получить отпечаток сертификата, воспользуйтесь командой Get-Item 
        или Get-ChildItem в Windows PowerShell на диске Cert:.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string>
        Начинает интерактивный сеанс с указанным удаленным компьютером. Необход
        имо ввести имя только одного компьютера. По умолчанию используется знач
        ение "Локальный компьютер".
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескол
        ьких удаленных компьютеров. Кроме того, можно передать имя компьютера в
         Enter-PSSession с помощью конвейера.
        
        Для использования IP-адреса в значении параметра ComputerName в команду
         необходимо включить параметр Credential. Кроме того, необходимо настро
        ить компьютер на использование транспорта HTTPS или включить IP-адрес у
        даленного компьютера в список TrustedHosts WinRM на локальном компьютер
        е. Инструкции по добавлению имени компьютера в список TrustedHosts см. 
        в статье "Добавление компьютера в список доверенных узлов" в разделе ab
        out_Remote_Troubleshooting.
        
        Примечание. Чтобы включить локальный компьютер в значение параметра Com
        puterName под управлением Windows Vista и более поздних версий Windows,
         необходимо запускать Windows PowerShell командой "Запуск от имени адми
        нистратора".
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -ConfigurationName <string>
        Задает конфигурацию сеанса используемого для интерактивного сеанса. 
        
        Введите имя конфигурации или полный URI ресурса для конфигурации сеанса
        . Если указано только имя конфигурации, перед ним добавляется следующий
         URI схемы: http://schemas.microsoft.com/powershell.
        
        Конфигурация сеанса находится на удаленном компьютере. Если указанная к
        онфигурация сеанса не существует на удаленном компьютере, команда завер
        шается с ошибкой.
        
        По умолчанию используется значение привилегированной переменной $PSSess
        ionConfigurationName на локальном компьютере. Если значение этой привил
        егированной переменной не установлено, используется значение по умолчан
        ию "Microsoft.PowerShell". Дополнительные сведения см. в разделе about_
        Preference_Variables.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -ConnectionURI <Uri>
        Задает универсальный идентификатор ресурса (URI), определяющий конечную
         точку соединения для интерактивного сеанса. Значение URI должно быть у
        казано полностью. 
        
        Строка имеет следующий формат: 
            <Транспорт>://<Имя_компьютера>:<Порт>/
        
        По умолчанию используется следующее значение:
            http://localhost:80/WSMAN
        
        Допустимые значения сегмента транспорта в URI: HTTP и HTTPS. Если в ком
        анде не указан параметр ConnectionURI, для указания значений URI можно 
        использовать параметры UseSSL, ComputerName, Port и ApplicationName. 
        
        Если конечный компьютер перенаправляет соединение на другой URI, Window
        s PowerShell предотвращает перенаправление, если в команде не задан пар
        аметр AllowRedirection.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь".
        
        Введите имя пользователя, например "User01", "Domain01\User01" или "Use
        r@Domain.com", или введите объект PSCredential, например объект, возвра
        щаемый командлетом Get-Credential. 
        
        При вводе имени пользователя появится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Текущий пользователь
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Id <int>
        Задает идентификатор существующего сеанса. Enter-PSSession использует у
        казанный сеанс для интерактивного сеанса.
        
        Чтобы определить идентификатор сеанса, используйте командлет Get-PSSess
        ion.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -InstanceId <Guid>
        Указывает идентификатор экземпляра существующего сеанса. Enter-PSSessio
        n использует указанный сеанс для интерактивного сеанса.
        
        Значение идентификатора экземпляра представляет собой GUID. Чтобы опред
        елить идентификатор экземпляра сеанса, используйте командлет Get-PSSess
        ion. Также для указания существующего сеанса можно использовать парамет
        ры Session, Name и ID.  Кроме того, для начала временного сеанса можно 
        использовать параметр ComputerName.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Указывает понятное имя существующего сеанса. Enter-PSSession использует
         указанный сеанс для интерактивного сеанса.
        
        Если указанное имя соответствует нескольким сеансам, команда завершаетс
        я с ошибкой. Также для указания существующего сеанса можно использовать
         параметры Session, InstanceID и ID. Кроме того, для начала временного 
        сеанса можно использовать параметр ComputerName.
        
        Для задания понятного имени сеанса используйте параметр Name командлета
         New-PSSession.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Port <int>
        Задает сетевой порт на удаленном компьютере, используемый для данной ко
        манды. По умолчанию используется значение "Порт 80" (HTTP-порт).
        
        Перед использованием альтернативного порта необходимо настроить прослуш
        иватель WinRM на удаленном компьютере на прослушивание этого порта. Для
         настройки прослушивателя используйте следующие команды:
        
        1. winrm delete winrm/config/listener?Address=*+Transport=HTTP
        2. winrm create winrm/config/listener?Address=*+Transport=HTTP @{Port="
        <номер-порта>"}
        
        Не используйте параметр Port, если этого можно избежать. Параметр порта
        , указанный в команде, распространяется на все компьютеры или сеансы, д
        ля которых используется эта команда. Параметр альтернативного порта мож
        ет позволить предотвратить выполнение этой команды на всех компьютерах.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Session <PSSession>
        Задает сеанс Windows PowerShell (PSSession), который должен использоват
        ься для интерактивного сеанса. Этот параметр принимает объект сеанса. Т
        акже для указания PSSession можно использовать параметры Name, Instance
        ID и ID.
        
        Введите переменную, содержащую объект сеанса, или команду, создающую ил
        и получающую объект сеанса, например New-PSSession или Get-PSSession. К
        роме того, можно передать объект сеанса командлету Enter-PSSession по к
        онвейеру. С помощью данного параметра можно передать только один объект
         PSSession. Если во введенной переменной содержится несколько объектов 
        PSSession, команда завершается с ошибкой.
        
        При вызове командлета Exit-PSSession или вводе ключевого слова EXIT инт
        ерактивный сеанс завершается, но созданный объект PSSession остается от
        крытым и доступен для использования в дальнейшем.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -SessionOption <PSSessionOption>
        Устанавливает расширенные параметры сеанса. Введите объект SessionOptio
        n, созданный с помощью командлета New-PSSessionOption.
        
        Значения по умолчанию для параметров определяются значением привилегиро
        ванной переменной $PSSessionOption, если оно задано. В противном случае
         в сеансе используются системные значения по умолчанию.
        
        Описание параметров сеанса, включая значения по умолчанию, см. в раздел
        е New-PSSessionOption. Дополнительные сведения о привилегированной пере
        менной $PSSessionOption см. в разделе about_Preference_Variables.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseSSL [<SwitchParameter>]
        Использует протокол SSL (Secure Sockets Layer) для установки подключени
        я к удаленному компьютеру. По умолчанию SSL не используется.
        
        Протокол WS-Management шифрует все передаваемое по сети содержимое Wind
        ows PowerShell. UseSSL — это дополнительная мера защиты, которая позвол
        яет передавать данные по подключению HTTPS, а не по подключению HTTP.
        
        Если используется этот параметр, но установить SSL-соединение с портом,
         указанным в команде, не удается, команда завершается с ошибкой.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String или System.Management.Automation.Runspaces.PSSession
        Можно передать имя компьютера (строку) или объекта сеанса командлету En
        ter-PSSession по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    None
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        -- Чтобы подключиться к удаленному компьютеру, необходимо быть членом г
        руппы "Администраторы" на удаленном компьютере. 
        
        -- Чтобы начать интерактивный сеанс с локальным компьютером под управле
        нием Windows Vista и более поздних версий Windows, необходимо запускать
         Windows PowerShell командой "Запуск от имени администратора".
        
        -- При использовании Enter-PSSession для интерактивного сеанса использу
        ется ваш профиль пользователя на удаленном компьютере. Команды, содержа
        щиеся в профиле пользователя на удаленном компьютере, включая команды д
        ля добавления оснасток Windows PowerShell и изменения командной строки,
         выполняются перед отображением командной строки удаленного компьютера.
        
        -- Для интерактивного сеанса Enter-PSSession использует культуру пользо
        вательского интерфейса, установленную на локальном компьютере. Чтобы оп
        ределить культуру пользовательского интерфейса, установленного на локал
        ьном компьютере, используйте автоматическую переменную $UICulture. 
        
        -- Для выполнения команды Enter-PSSession требуются командлеты Get-Comm
        and, Out-Default и Exit-PSSession. Если эти командлеты не включены в ко
        нфигурацию сеанса на удаленном компьютере, команда Enter-PSSession заве
        ршается с ошибкой.
        
        -- В отличие от команды Invoke-Command, которая выполняет синтаксически
        й разбор и интерпретирует команды перед их отправкой на удаленный компь
        ютер, команда Enter-PSSession сразу отправляет команды на удаленный ком
        пьютер, не интерпретируя их.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Enter-PSSession
    
    LocalHost\PS>
    
    
    Описание
    -----------
    Эта команда запускает на локальном компьютере интерактивный сеанс. Командна
    я строка изменяется, чтобы указать, что команды выполняются в рамках другог
    о сеанса.
    
    Команды, вводимые пользователей, запускаются в рамках нового сеанса, а резу
    льтаты возвращаются в сеанс по умолчанию в текстовом формате.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>enter-pssession -computer Server01
    
    Server01\PS> get-process powershell > C:\ps-test\process.txt
    
    Server01\PS> exit-pssession
    C:\PS>
    
    C:\PS> dir C:\ps-test\process.txt
    Get-ChildItem : Cannot find path 'C:\ps-test\process.txt' because it does n
    ot exist.
    At line:1 char:4
    + dir <  c:\ps-test\process.txt
    
    
    Описание
    -----------
    Эта команда демонстрирует работу с интерактивным сеансом с удаленным компью
    тером.
    
    Первая команда создает интерактивный сеанс с удаленным компьютером Server01
     с использованием командлета Enter-PSSession. Когда сеанс будет создан, в к
    омандную строку будет включено имя компьютера.
    
    Вторая команда получает процесс PowerShell и перенаправляет вывод в файл Pr
    ocess.txt. Команда передается на удаленный компьютер, и файл сохраняется на
     удаленном компьютере. 
    
    В третьей команде используется ключевое слово Exit для завершения интеракти
    вного сеанса и отключения от удаленного компьютера.
    
    Четвертая команда позволяет убедиться в том, что файл Process.txt сохранен 
    на удаленном компьютере. Команда Get-ChildItem ("dir"), запущенная на локал
    ьном компьютере, не может найти файл.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$s = new-pssession -computername Server01
    
    C:\PS> Enter-PSSession -session $s
    
    Server01\PS>
    
    
    Описание
    -----------
    Эти команды используют параметр Session команды Enter-PSSession для создани
    я интерактивного сеанса с помощью существующего сеанса Windows PowerShell (
    PSSession).
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>Enter-PSSession -computername Server01 -port 90 -credential domain01\
    user01
    
    Server01\PS>
    
    
    Описание
    -----------
    Эта команда создает интерактивный сеанс с компьютером Server01. В ней испол
    ьзуются параметр Port для указания порта и параметр Credential для указания
     учетной записи пользователя, который располагает разрешением для подключен
    ия к удаленному компьютеру.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>Enter-PSSession -computername Server01
    
    Server01:\PS> Exit-PSSession
    
    C:\PS>
    
    
    Описание
    -----------
    В этом примере демонстрируется создание и завершение интерактивного сеанса.
     Первая команда создает интерактивный сеанс с компьютером Server01 с исполь
    зованием командлета Enter-PSSession. 
    
    Вторая команда использует командлет Exit-PSSession для завершения сеанса. Д
    ля завершения интерактивного сеанса также можно использовать ключевое слово
     Exit. Результаты использования Exit-PSSession и Exit совпадают.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135210
    about_PSSessions 
    about_Remote 
    New-PSSession 
    Get-PSSession 
    Exit-PSSession 
    Remove-PSSession 
    Invoke-Command 



Environment

ИМЯ ПОСТАВЩИКА
    Environment
    
ДИСКИ
    Env:
    
ОПИСАНИЕ
    Предоставляет доступ к переменным среды Windows.
    
ОПИСАНИЕ
    Поставщик Windows PowerShell Environment позволяет извлекать, добавлять, из
    менять, очищать и удалять переменные среды Windows в Windows PowerShell. 
    
    Поставщик Environment представляет собой плоское пространство имен, содержа
    щее только объекты, представляющие переменные среды. У данных переменных не
    т дочерних элементов.
    
    Каждая переменная среды является экземпляром класса System.Collections.Dict
    ionaryEntry. Имя переменной является ключом словаря. Значение переменной ср
    еды является значением словаря. 
    
    Поставщик Environment отображает свое хранилище данных как диск Env:. Для р
    аботы с переменными среды перейдите на диск Env: ("set-location env:") или 
    работайте с другого диска Windows PowerShell. Для ссылки на переменную сред
    ы из другого положения следует использовать в пути имя диска "Env:". 
    
    Поставщик переменных среды поддерживает все командлеты, содержащие существи
    тельное Item, кроме Invoke-Item. Кроме того, он поддерживает командлеты Get
    -Content и Set-Content. Однако он не поддерживает командлеты, содержащие су
    ществительное ItemProperty, и не поддерживает параметр Filter в любом коман
    длете.
    
    Переменные среды должны именоваться в соответствии с обычными стандартами. 
    Кроме того, имя не может содержать знак равенства (=).
    
    Все изменения в переменных среды затрагивают только текущий сеанс. Чтобы со
    хранить изменения, добавьте их в профиль Windows PowerShell или воспользуйт
    есь командлетом Export-Console для сохранения текущего сеанса.
    
ВОЗМОЖНОСТИ
    
    
ЗАДАЧИ
    ЗАДАЧА: Обращение к диску Env:
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда меняет текущее положение на диск Env:.
        
        set-location env:
        
        
        Эту команду можно использовать с любого диска в оболочке Windows PowerS
        hell. Чтобы вернуться к диску файловой системы, введите имя диска. Напр
        имер, введите следующую команду:
        
            set-location c:
        
        
    ЗАДАЧА: Извлечение переменных среды
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда возвращает список всех переменных среды в текущем сеансе:
        
        get-childitem -path env:
        
        
        Эту команду можно использовать с любого диска Windows PowerShell.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Это команда возвращает переменную среды WINDIR:
        
        get-childitem -path env:windir
        
        
        
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда возвращает список всех переменных среды в текущем сеансе и 
        сортирует их по имени:
        
        get-childitem  | sort-object -property name
        
        
        По умолчанию переменные среды появляются в порядке их обнаружения в обо
        лочке Windows PowerShell. Эта команда выполняется на диске Env:.
        
        При запуске этой команды с другого диска добавьте параметр Path со знач
        ением Env:.
        
        
    ЗАДАЧА: Создание новой переменной среды
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда создает переменную среды USERMODE со значением Non-Admin:
        
        new-item -path . -name USERMODE -value Non-Admin
        
        
        Так как текущим местоположением является диск Env:, значение параметра 
        Path — точка (.). Точка обозначает текущее местоположение.
        
        Если текущем местоположением не является диск Env:, значением параметра
         Path должно быть Env:.
        
        
    ЗАДАЧА: Отображение свойств и методов переменных среды
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда использует командлет Get-ChildItem для получения всех перем
        енных среды:
        
        get-childitem -path env: | get-member
        
        
        Результаты с помощью оператора конвейера (|) передаются командлету Get-
        Member, который отображает методы и свойства объекта.
        
        При передаче командлету Get-Member по конвейеру коллекции объектов, нап
        ример коллекции переменных среды на диске Env:, командлет Get-Member об
        рабатывает каждый объект коллекции отдельно. Затем командлет Get-Member
         возвращает информацию о каждом найденном типе объекта. Если все объект
        ы принадлежат к одному типу, выводятся сведения о единственном типе объ
        екта. В данном случае все переменные среды являются объектами Dictionar
        yEntry.
        
        Для получения сведений о коллекции объектов DictionaryEntry используйте
         параметр InputObject командлета Get-Member. Например, введите следующу
        ю команду:
        
            get-member -inputobject (get-childitem env:)
        
        При использовании параметра InputObject командлет Get-Member выполняет 
        оценку всей коллекции, а не отдельных объектов из нее.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда перечисляет значения свойств переменной среды WINDIR:
        
        get-item env:windir | format-list -property *
        
        
        Она использует командлет Get-Item для получения объекта, представляющег
        о переменную среды WINDIR. Оператор конвейера (|) передает результаты к
        оманде Format-List. Команда использует параметр Property с подстановочн
        ым знаком (*) для форматирования и отображения значений всех свойств пе
        ременной среды WINDIR.
        
        
    ЗАДАЧА: Изменение свойств переменной среды
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда использует командлет Rename-Item для изменения имени создан
        ной переменной среды USERMODE на USERROLE:
        
        rename-item -path env:USERMODE -newname USERROLE
        
        
        Это изменение затрагивает свойства Name, Key и PSPath объекта Dictionar
        yEntry.
        
        Не изменяйте имена переменных среды, используемых системой. Хотя эти из
        менения затрагивают только текущий сеанс, они могут привести к некоррек
        тному поведению системы или программы.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда использует командлет Set-Item для присвоения переменной сре
        ды USERROLE значения Administrator:
        
        set-item -path env:USERROLE -value Administrator
        
        
        
        
        
    ЗАДАЧА: Копирование переменной среды
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда копирует значение переменной среды USERROLE в переменную ср
        еды USERROLE2:
        
        copy-item -path env:USERROLE -destination env:USERROLE2
        
        
        
        
        
    ЗАДАЧА: Удаление переменной среды
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда удаляет переменную среды USERROLE2 из текущего сеанса:
        
        remove-item -path env:USERROLE2
        
        
        Эту команду можно использовать на любом диске Windows PowerShell. Если 
        диск Env: уже открыт, имя диска в пути можно не указывать.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда удаляет переменную среды USERROLE.
        
        clear-item -path env:USERROLE
        
        
        
        
        
    
    
ДИНАМИЧЕСКИЕ ПАРАМЕТРЫ
    
ПРИМЕЧАНИЯ
    Поставщик Environment не поддерживает динамические параметры.
ССЫЛКИ ПО ТЕМЕ
    about_Providers 



Exit-PSSession

ИМЯ
    Exit-PSSession
    
ОПИСАНИЕ
    Завершает интерактивный сеанс с удаленным компьютером.
    
СИНТАКСИС
    Exit-PSSession [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Exit-PSSession завершает интерактивные сеансы, созданные с помощь
    ю командлета Enter-PSSession.
    
    Для завершения интерактивного сеанса также можно использовать ключевое слов
    о Exit. Результат использования ключевого слова не отличается от результата
     использования командлета Exit-PSSession.
    
ПАРАМЕТРЫ
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Объекты невозможно передать командлету Exit-PSSession по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    None
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Этот командлет принимает только общие параметры.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Enter-PSSession -computername Server01
    
    Server01\PS> Exit-PSSession
    
    C:\PS>
    
    
    Описание
    -----------
    Эти команды создают и затем завершают интерактивный сеанс с удаленным компь
    ютером Server01.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$s = new-pssession -computername Server01
    
    C:\PS> Enter-PSSession -session $s
    
    Server01\PS> Exit-PSSession
    
    C:\PS> $s
    
    Id Name            ComputerName    State    ConfigurationName
    -- ----            ------------    -----    -----------------
    1  Session1        Server01        Opened   Microsoft.PowerShell
    
    
    Описание
    -----------
    Эти команды создают и завершают интерактивный сеанс с компьютером Server01 
    с использованием сеанса Windows PowerShell (PSSession).
    
    Поскольку интерактивный сеанс создается с использованием сеанса Windows Pow
    erShell (PSSession), объект PSSession остается доступным после завершения и
    нтерактивного сеанса. При использовании параметра ComputerName Enter-PSSess
    ion создает временный сеанс, который завершается при завершении интерактивн
    ого сеанса.
    
    Первая команда использует командлет New-PSSession для создания сеанса PSSes
    sion на компьютере Server01. Команда сохраняет сеанс PSSession в переменной
     $s.
    
    Вторая команда создает интерактивный сеанс с использованием командлета Ente
    r-PSSession и сеанса PSSession, сохраненного в переменной $s. 
    
    Третья команда завершает интерактивный сеанс с использованием командлета Ex
    it-PSSession.
    
    Последняя команда выводит сеанс PSSession, сохраненный в переменной $s. Зна
    чение свойства State указывает на то, что сеанс PSSession по-прежнему откры
    т и доступен для использования.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>Enter-PSSession -computername Server01
    
    Server01\PS> exit
    
    C:\PS>
    
    
    Описание
    -----------
    Эта команда использует ключевое слово Exit для завершения интерактивного се
    анса, который был создан с использованием командлета Enter-PSSession. Резул
    ьтат использования ключевого слова Exit не отличается от результата использ
    ования командлета Exit-PSSession.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135212
    about_PSSessions 
    about_Remote 
    Enter-PSSession 
    New-PSSession 
    Get-PSSession 
    Remove-PSSession 
    Invoke-Command 



Export-Alias

ИМЯ
    Export-Alias
    
ОПИСАНИЕ
    Экспортирует сведения об определенных на текущий момент псевдонимах в файл.
    
СИНТАКСИС
    Export-Alias [-Path] <string> [[-Name] <string[]>] [-Append] [-As {Csv | Sc
    ript}] [-Description <string>] [-Force] [-NoClobber] [-PassThru] [-Scope <s
    tring>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Export-Alias экспортирует псевдонимы в текущем сеансе в файл. Есл
    и файл вывода не существует, этот командлет создаст его. 
    
    Командлет Export-Alias позволяет экспортировать псевдонимы из отдельной обл
    асти или из всех областей. Кроме того, он может сформировать данные в форма
    те CSV или в виде набора команд Set-Alias, которые можно добавить в сеанс и
    ли в профиль Windows PowerShell.
    
ПАРАМЕТРЫ
    -Append [<SwitchParameter>]
        Добавляет вывод в указанный файл вместо перезаписи содержимого этого фа
        йла.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -As <ExportAliasFormat>
        Определяет формат вывода. По умолчанию используется формат CSV.
        
        Допустимые значения:
        
        -- CSV: формат значений, разделенных запятыми (CSV);
        -- Script: создает команду Set-Alias для каждого экспортируемого псевдо
        нима. Если выходной файл имеет расширение PS1, его можно запускать в ка
        честве скрипта для добавления псевдонимов к любому сеансу.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Description <string>
        Добавляет описание в экспортируемый файл. Описание включается в начало 
        файла после заголовка в виде комментария.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Перезаписывает выходной файл, даже если для него установлен атрибут "то
        лько чтение". 
        
        По умолчанию командлет Export-Alias перезаписывает файлы без предупрежд
        ения, если для файла не установлен атрибут "только чтение" или "скрытый
        " или в команде используется параметр NoClobber. Параметр NoClobber име
        ет приоритет по отношению к параметру Force, если в команде указаны оба
         параметра.
        
        Параметр Force не делает возможной перезапись файлов с атрибутом "скрыт
        ый" с помощью командлета Export-Alias.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Не перезаписывать файлы, доступные
         только для чтения.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена экспортируемых псевдонимов. Подстановочные знаки разрешены
        .
        
        По умолчанию командлет Export-Alias экспортирует все псевдонимы в преде
        лах сеанса или области.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                Экспорт всех псевдонимов
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -NoClobber [<SwitchParameter>]
        Предотвращает перезапись файлов командлетом Export-Alias, даже если в к
        оманде указан параметр Force.
        
        Если параметр NoClobber опущен, командлет Export-Alias перезапишет имею
        щийся файл без предупреждения, если только у этого файла нет атрибута "
        только чтение". Параметр NoClobber имеет приоритет по отношению к парам
        етру Force, который делает возможной перезапись файла с атрибутом "толь
        ко чтение" с помощью командлета Export-Alias.
        
        Параметр NoClobber не препятствует тому, чтобы содержимое добавлялось к
         имеющемуся файлу с помощью параметра Append.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Перезапись файлов, доступных тольк
        о для чтения.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объекты, представляющие экспортированные псевдонимы. По умол
        чанию этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Вывод отсутствует
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Задает путь к выходному файлу. При этом можно использовать подстановочн
        ые знаки, но итоговый путь должен разрешаться в одно имя файла. Это обя
        зательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Scope <string>
        Задает область, из которой должны быть экспортированы псевдонимы.  
        
        Допустимые значения: "Global", "Local", "Script" или число относительно
         текущей области (от 0 до количества областей, где 0 — текущая область,
         а 1 — ее родительская область). По умолчанию используется значение "Lo
        cal". Дополнительные сведения см. в разделе about_Scopes.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Local
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет.
        Передать объекты этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.AliasInfo
        Если задан параметр Passthru, командлет Export-Alias возвращает объект 
        System.Management.Automation.AliasInfo, представляющий псевдоним. В про
        тивном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Export-Alias можно применять только для экспорта в файл.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>export-alias -path alias.csv
    
    
    Описание
    -----------
    Эта команда экспортирует текущие сведения о псевдонимах в файл Alias.csv, н
    аходящийся в текущем каталоге.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>export-alias -path alias.csv -noclobber
    
    
    Описание
    -----------
    Эта команда экспортирует псевдонимы текущего сеанса в файл Alias.csv. 
    
    Поскольку указан параметр NoClobber, выполнение команды закончится сбоем, е
    сли в текущем каталоге уже есть файл Alias.csv.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>export-alias -path alias.csv -append -description "Appended Aliases" 
    -force
    
    
    Описание
    -----------
    Эта команда добавляет псевдонимы текущего сеанса в файл Alias.csv. 
    
    Чтобы добавить описание к комментариям в начале файла, в этой команде испол
    ьзуется параметр Description. 
    
    Кроме того, команда использует параметр Force, чтобы перезаписать все имеющ
    иеся файлы Alias.csv, даже если у них есть атрибут "только чтение".
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>export-alias -path alias.ps1 -as script
    
    C:\PS> add-content -path $profile -value (get-content alias.ps1)
    
    C:\PS> $s = new-pssession -computername Server01
    C:\PS> invoke-command -session $s -filepath .\alias.ps1
    
    
    Описание
    -----------
    В этом примере показано, как использовать файл скрипта, создаваемый командл
    етом Export-Alias.
    
    Первая команда экспортирует псевдонимы текущего сеанса в файл Alias.ps1. В 
    ней используется параметр As, имеющий значение Script, чтобы создаваемый фа
    йл содержал команду Set-Alias для каждого из псевдонимов.
    
    Вторая команда добавляет псевдонимы в файле Alias.ps1 к профилю CurrentUser
    -CurrentHost. (Путь к профилю сохраняется в переменной $profile.) Команда и
    спользует командлет Get-Content, чтобы получить псевдонимы из файла Alias.p
    s1, и командлет Add-Content, чтобы добавить их к профилю. Дополнительные св
    едения см. в разделе about_Profiles.
    
    Третья и четвертая команды добавляют псевдонимы из файла Alias.ps1 к удален
    ному сеансу на компьютере Server01. Третья команда создает сеанс с помощью 
    командлета New-PSSession. Четвертая команда с помощью параметра FilePath ко
    мандлета Invoke-Command запускает файл Alias.ps1 в новом сеансе.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113296
    Import-Alias 
    Get-Alias 
    New-Alias 
    Set-Alias 



Export-Clixml

ИМЯ
    Export-Clixml
    
ОПИСАНИЕ
    Создает XML-представление объекта или объектов и сохраняет его в файле.
    
СИНТАКСИС
    Export-Clixml [-Path] <string> -InputObject <psobject> [-Depth <int>] [-Enc
    oding <string>] [-Force] [-NoClobber] [-Confirm] [-WhatIf] [<CommonParamete
    rs>]
    
    
ОПИСАНИЕ
    Командлет Export-Clixml создает XML-представление объекта или объектов и со
    храняет его в файле. После этого с помощью командлета Import-CLIXML можно в
    оссоздать сохраненный объект на основе содержимого этого файла.
    
    Этот командлет аналогичен командлету ConvertTo-XML, за исключением того, чт
    о Export-Clixml сохраняет полученный XML-код в файл. Командлет ConvertTo-XM
    L возвращает XML-код, чтобы его можно было далее обрабатывать с помощью Win
    dows PowerShell.
    
ПАРАМЕТРЫ
    -Depth <int>
        Задает число уровней вложенных объектов, которые включаются в XML-предс
        тавление. По умолчанию используется значение 2.
        
        Значение по умолчанию можно переопределить для типа объекта в файлах Ty
        pes.ps1xml. Дополнительные сведения см. в разделе about_Types.ps1xml.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                2
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Encoding <string>
        Задает кодировку целевого файла. Допустимые значения: ASCII, UTF8, UTF7
        , UTF32, Unicode, BigEndianUnicode, Default и OEM. По умолчанию использ
        уется значение UTF8.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                UTF8
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Указывает командлету снять для файла вывода атрибут "только чтение", ес
        ли это необходимо.  Когда выполнение команды завершится, командлет попы
        тается заново установить атрибут "только чтение".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объект, подлежащий преобразованию. Введите переменную, содержащу
        ю объекты, либо команду или выражение для получения объектов. Кроме тог
        о, можно передать объекты командлету Export-Clixml по конвейеру.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -NoClobber [<SwitchParameter>]
        Не позволяет командлету перезаписать содержимое существующего файла. По
         умолчанию если файл существует по указанному пути, командлет Export-Cl
        ixml перезаписывает файл без предупреждения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Задает путь к файлу, в котором будет сохранено XML-представление объект
        а.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету Export-Clixml по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.IO.FileInfo
        Командлет Export-Clixml создает файл, содержащий XML-код.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>"This is a test" | export-clixml sample.xml
    
    
    Описание
    -----------
    Эта команда создает XML-файл, который содержит представление строки "This i
    s a test".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-acl C:\test.txt | export-clixml -Path fileacl.xml
    
    C:\PS> $fileacl = import-clixml fileacl.xml
    
    
    Описание
    -----------
    В этом примере показано, как экспортировать объект в XML-файл, а затем созд
    ать объект путем импорта из XML-файла. 
    
    В первой команде используется командлет Get-ACL, чтобы получить дескриптор 
    безопасности файла Test.txt. С помощью оператора конвейера этот дескриптор 
    безопасности передается командлету Export-Clixml, который сохраняет XML-пре
    дставление объекта в файле FileACL.xml. 
    
    Во второй команде с помощью командлета Import-Clixml из XML-кода, содержаще
    гося в файле FileACL.xml, создается объект. После этого объект сохраняется 
    в переменной $FileAcl.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113297
    Import-Clixml 
    ConvertTo-XML 
    Export-Csv 
    ConvertTo-Html 



Export-Console

ИМЯ
    Export-Console
    
ОПИСАНИЕ
    Экспортирует имена оснасток в текущем сеансе в файл консоли.
    
СИНТАКСИС
    Export-Console [[-Path] <string>] [-Force] [-NoClobber] [-Confirm] [-WhatIf
    ] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Export-Console экспортирует имена оснасток Windows PowerShell (PS
    Snapin) в текущем сеансе в файл консоли Windows PowerShell (PSC1). Можно ис
    пользовать этот командлет, чтобы сохранить оснастки для использования в пос
    ледующих сеансах.
    
    Чтобы добавить оснастку в файл консоли PSC1 для сеанса, запустите Windows P
    owerShell (Powershell.exe) из командной строки с помощью Cmd.exe или другог
    о сеанса Windows PowerShell и воспользуйтесь параметром PSConsoleFile при в
    ызове Powershell.exe для указания файла консоли. 
    
    Дополнительные сведения об оснастках Windows PowerShell см в разделе about_
    PSSnapins.
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Перезаписывает данные в файле консоли без предупреждения, даже если фай
        л имеет атрибут "только для чтения". Атрибут "только для чтения" изменя
        ется и не восстанавливается после завершения команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NoClobber [<SwitchParameter>]
        Не будет перезаписывать существующий файл консоли (то есть заменять его
         содержимое). По умолчанию, если файл существует по указанному пути, ко
        мандлет Export-Console перезаписывает файл без предупреждения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Указывает путь и имя файла для файла консоли (*.psc1). Введите путь (не
        обязательно) и имя. Подстановочные знаки запрещены.
        
        Если введено только имя файла, командлет Export-Console создает файл с 
        этим именем и расширением ".psc1" в текущем каталоге.
        
        Этот параметр является обязательным, если Windows PowerShell не был зап
        ущен с параметром PSConsoleFile или в течение текущего сеанса не экспор
        тировался файл консоли. Он также требуется, если для предотвращения пер
        езаписи текущего файла консоли используется параметр NoClobber.
        
        Если пропустить этот параметр, командлет Export-Console перезаписывает 
        (заменяет содержимое) последнего файла консоли, использовавшегося во вр
        емя этого сеанса. Путь к последнему использовавшемуся файлу консоли сох
        раняется в автоматической переменной $ConsoleFilename. Дополнительные с
        ведения см. в разделе about_Automatic_Variables.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Можно передать строку пути командлету Export-Console по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.IO.FileInfo
        Export-Console создает файл, содержащий экспортированные псевдонимы.
    
    
ПРИМЕЧАНИЯ
    
    
        Если для создания сеанса используется файл консоли (PSC1), имя файла ко
        нсоли автоматически сохраняется в автоматической переменной $ConsoleFil
        ename.  При использовании параметра Path командлета Export-Console для 
        указания нового файла консоли значение переменной $ConsoleFilename обно
        вляется. Если файл консоли не используется, значение переменной $Consol
        eFileName не определено ($null).
        
        Чтобы использовать файл консоли Windows PowerShell в новом сеансе, кома
        нда запуска Windows PowerShell должна иметь следующий формат:
        "powershell.exe -PsConsoleFile <файл консоли>.psc1".
        
        Можно также сохранить оснастки Windows PowerShell для использования в б
        удущих сеансах, добавив команду Add-PSSnapin в свой профиль Windows Pow
        erShell. Дополнительные сведения см. в разделе about_Profiles.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>export-console -path $pshome\Consoles\ConsoleS1.psc1
    
    
    Описание
    -----------
    Эта команда экспортирует имена оснасток Windows PowerShell в текущем сеансе
     в файл ConsoleS1.psc1 в подкаталоге Consoles каталога установки Windows Po
    werShell, $pshome.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>export-console
    
    
    Описание
    -----------
    Эта команда экспортирует имена оснасток Windows PowerShell из текущего сеан
    са в файл консоли Windows PowerShell, который использовался во время текуще
    го сеанса последним. Содержимое файла будет перезаписано. 
    
    Если экспорт консоли в текущем сеансе не производился, пользователю предлаг
    ается подтвердить выполнение команды, а затем ввести имя файла.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>add-pssnapin NewPSSnapin
    
    C:\PS> export-console -path NewPSSnapinConsole.psc1
    
    C:\PS> powershell.exe -PsConsoleFile NewPsSnapinConsole.psc1
    
    
    Описание
    -----------
    Эти команды добавляют новую оснастку Windows PowerShell NewPSSnapin в текущ
    ий сеанс, экспортируют имена оснасток Windows PowerShell в текущем сеансе в
     файл консоли и запускают сеанс Windows PowerShell с использованием файла к
    онсоли.
    
    Первая команда добавляет новую оснастку NewPSSnapin в текущий сеанс при пом
    ощи командлета Add-PSSnapin. Добавлять можно только те оснастки Windows Pow
    erShell, которые зарегистрированы в данной системе.
    
    Вторая команда экспортирует имена оснасток Windows PowerShell в файл NewPSS
    napinConsole.psc1.
    
    Третья команда запускает Windows PowerShell с использованием файла NewPSSna
    pinConsole.psc1. Поскольку в файл консоли добавлено имя надстройки Windows 
    PowerShell, в текущем сеансе можно использовать командлеты и поставщики, ко
    торые поддерживаются оснасткой.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>export-console -path Console01
    
    C:\PS> notepad console01.psc1
    
    <?xml version="1.0" encoding="utf-8"?>
    <PSConsoleFile ConsoleSchemaVersion="1.0">
      <PSVersion>2.0</PSVersion>
      <PSSnapIns>
        <PSSnapIn Name="NewPSSnapin" />
      </PSSnapIns>
    </PSConsoleFile>
    
    
    Описание
    -----------
    Эта команда экспортирует имена оснасток Windows PowerShell в текущем сеансе
     в файл Console01.psc1 в текущем каталоге. 
    
    Вторая команда отображает содержимое файла Console01.psc1 в "Блокноте".
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>powershell.exe -PSConsoleFile Console01.psc1
    
    C:\PS> add-pssnapin MySnapin
    
    C:\PS> export-console NewConsole.psc1
    
    C:\PS> $consolefilename
    
    C:\PS> add-pssnapin SnapIn03
    
    C:\PS> export-console
    
    
    Описание
    -----------
    В этом примере демонстрируется использование автоматической переменной $Con
    soleFileName для определения файла консоли, который будет обновлен при вызо
    ве командлета Export-Console без параметра Path.
    
    В первой команде используется параметр PSConsoleFile файла PowerShell.exe, 
    позволяющий запустить Windows PowerShell с файлом консоли Console01.psc1.
    
    Во второй команде оснастка MySnapin Windows PowerShell добавляется в текущи
    й сеанс с использованием командлета Add-PSSnapin. 
    
    В третьей команде имена всех оснасток Windows PowerShell в сеансе экспортир
    уются в файл NewConsole.psc1 с использованием командлета Export-Console.
    
    В четвертой команде параметр $ConsoleFilename используется для отображения 
    последнего использовавшегося файла консоли. Пример выходных данных показыва
    ет, что последним использовался файл NewConsole.ps1.
    
    В пятой команде в текущую консоль добавляется оснастка SnapIn03. 
    
    В шестой команде выполняется вызов командлета ExportConsole без параметра P
    ath. Эта команда экспортирует имена всех оснасток Windows PowerShell в теку
    щем сеансе в последний использовавшийся файл NewConsole.psc1.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113298
    Add-PSSnapin 
    Get-PSSnapin 
    Remove-PSSnapin 



Export-Counter

ИМЯ
    Export-Counter
    
ОПИСАНИЕ
    Командлет Export-Counter получает объекты PerformanceCounterSampleSet и экс
    портирует их в файлы журналов счетчиков.
    
СИНТАКСИС
    Export-Counter [-Path] <string> -InputObject <PerformanceCounterSampleSet[]
    > [-Circular <switch>] [-FileFormat <string>] [-Force <switch>] [-MaxSize 
    int>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Export-Counter экспортирует данные счетчиков производительности (
    объекты PerformanceCounterSampleSet) в файлы журналов в формате двоичного ж
    урнала производительности (BLG), значений, разделенных запятыми (CSV) и зна
    чений, разделенных табуляциями (TSV). Этот командлет можно использовать для
     записи и перезаписи в журнал данных счетчиков производительности.
    
    Командлет Export-Counter предназначен для экспорта данных, возвращаемых ком
    андлетами Get-Counter и Import-Counter.
    
    Примечание. Командлет Export-Counter работает только в Windows 7, Windows S
    erver 2008 R2 и последующих версиях Windows.
    
ПАРАМЕТРЫ
    -Circular <switch>
        Указывает, что выходной файл должен быть циклическим файлом в формате "
        первым вошел, первым вышел" (FIFO). При использовании этого параметра т
        ребуется параметр MaxSize.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FileFormat <string>
        Задает формат вывода выходного файла журнала. Допустимые значения: CSV,
         TSV и BLG. По умолчанию используется значение BLG.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                BLG
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force <switch>
        Перезаписывает и заменяет содержимое файла, если файл существует в мест
        оположении, указанном в параметре Path.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <PerformanceCounterSampleSet[]>
        Задает экспортируемые данные счетчика. Введите переменную, содержащую д
        анные, либо команду, получающую данные, например Get-Counter или Import
        -Counter.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -MaxSize <int>
        Задает максимальный размер выходного файла. 
        
        Если задан параметр Circular, то в случае достижения заданного максимал
        ьного размера файла журнала самые старые записи будет удалены при добав
        лении новых записей. Если параметр Circular не задан, то при достижении
         заданного максимального размера файла журнала новые данные не будут до
        бавлены, а командлет возвратит некритическую ошибку.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Задает путь и имя выходного файла. Введите относительный или абсолютный
         путь на локальном компьютере или UNC-путь на удаленном компьютере, нап
        ример \\Computer\Share\file.blg. Это обязательный параметр. 
        
        Примечание. Формат файла определяется значением параметра FileFormat, а
         не расширением имени файла в пути.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSet
        Данные счетчиков производительности можно передать из командлета Get-Co
        unter или Import-Counter в командлет Export-Counter по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        
    
    
ПРИМЕЧАНИЯ
    
    
        В генераторе файла журнала предполагается, что все входные объекты имею
        т одинаковый путь счетчика, а объекты упорядочены по возрастанию времен
        и.
        
        Тип и путь счетчика первого входного объекта определяют свойства, запис
        анные в файле журнала. Если у других входных объектов отсутствует значе
        ние записанного свойства, то поле свойства будет пустым. Если у объекто
        в имеются значения свойств, которые не были записаны, эти дополнительны
        е значения свойств игнорируются. 
        
        Не все журналы, созданные командлетом Export-Counter, могут быть считан
        ы системным монитором. Например, для системного монитора требуется, что
        бы все объекты имели одинаковый путь и были разделены одинаковым времен
        ным интервалом.
        
        В командлете Import-Counter не предусмотрен параметр ComputerName. Одна
        ко, если компьютер настроен на удаленное взаимодействие в Windows Power
        Shell, с помощью командлета Invoke-Command можно запускать команду Impo
        rt-Counter на удаленном компьютере.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS># Export-Counter
    
    
    Описание
    -----------
    Эта команда экспортирует данные счетчика в файл BLG.
    
    Команда с помощью командлета Get-Counter получает данные о загруженности пр
    оцессора. Данные передается командлету Export-Counter с помощью оператора к
    онвейера (|). Для указания выходного файла в команде Export-Counter использ
    уется параметр Path.
    
    C:\PS> get-counter "\Processor(*)\% Processor Time" -max 50 | export-counte
    r -path $home\counters.blg
    
    Так как объем этих данных может быть очень большим, эта команда передает да
    нные командлету Export-Counter по конвейеру. Если бы данные сохранялись в п
    еременной, команда могла бы использовать непропорционально большой объем па
    мяти.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS># Export-Counter
    
    
    Описание
    -----------
    Эти команды преобразуют файл CSV в формат BLG данных счетчика. 
    
    Первая команда использует встроенное средство преобразования Windows PowerS
    hell для сохранения значения 1 ГБ, выраженного в байтах, в переменной $1GBi
    nBytes. При вводе значения, сопровождаемого словом "K" (килобайт), "MB" (ме
    габайт) или "GB" (гигабайт), оболочка Windows PowerShell возвращает значени
    е в байтах.
    
    C:\PS> $1GBinBytes = 1GB
    
    
    Вторая команда с помощью командлета Import-Counter импортирует данные счетч
    иков производительности из файла Threads.csv. В этом примере предполагается
    , что файл ранее был экспортирован с помощью командлета Export-Counter.
    
    Импортированные данные передаются командлету Export-Counter с помощью опера
    тора конвейера (|). Команда использует параметр Path для указания местополо
    жения выходного файла. В ней используются параметры Circular и MaxSize, что
    бы командлет Export-Counter создал циклический журнал размером 1 ГБ.
    
    C:\PS> import-counter threads.csv | export-counter -path threadtest.blg -ci
    rcular -maxsize $1GBinBytes
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS># Export-Counter
    
    
    Описание
    -----------
    В этом примере показано, как получать данные счетчиков производительности и
     сохранять их в файле на удаленном компьютере.
    
    
    Первая команда с помощью командлета Get-Counter собирает данные счетчика ра
    бочего набора от удаленного компьютера Server01. Команда сохраняет данные в
     переменной $c.
    
    C:\PS> $c = get-counter -computername Server01 -counter "\Process(*)\Workin
    g Set - Private" -maxSamples 20
    
    
    
    Вторая команда с помощью оператора конвейера (|) передает данные, сохраненн
    ые в переменной $c, командлету Export-Counter, который сохраняет их в файле
     Workingset.blg в общей папке Perf на компьютере Server01.
    
    C:\PS> $c | export-counter -path \\Server01\Perf\WorkingSet.blg
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS># Export-Counter
    
    
    Описание
    -----------
    В этом примере показано, как использовать командлеты Import-Counter и Expor
    t-Counter для повторной регистрации существующих данных в журнале.
    
    Первая команда с помощью командлета Import-Counter импортирует данные счетч
    иков производительности из журнала DiskSpace.blg. Данные сохраняются в пере
    менной $all. Этот файл содержит выборки счетчика "LogicalDisk\% Free Space"
    , полученные от более чем 200 удаленных компьютеров.
    
    C:\PS> $all = import-counter DiskSpace.blg
    
    
    Вторая команда с помощью свойства CounterSamples объекта набора выборок, со
    храненного в переменной $all, и командлета Where-Object (псевдоним "where")
     выбирает объекты, у которых значение свойства CookedValues меньше 15 (секу
    нд). Результаты сохраняются в переменной $lowSpace.
    
    C:\PS> $lowSpace = $all.countersamples | where {$_.cookedvalues -lt 15}
    
    
    Третья команда с помощью оператора конвейера (|) передает данные из перемен
    ной $lowSpace в командлет Export-Counter. Параметр path указывает, что выбр
    анные данные необходимо регистрировать в файле LowDiskSpace.blg.
    
    C:\PS> $lowSpace | export-counter -path LowDiskSpace.blg
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=138337
    Get-Counter 
    Import-Counter 



Export-CSV

ИМЯ
    Export-CSV
    
ОПИСАНИЕ
    Преобразует объекты Microsoft .NET Framework в набор строк переменной длины
    , содержащих разделенные запятыми значения (CSV), и сохраняет эти строки в 
    CSV-файл.
    
СИНТАКСИС
    Export-CSV [[-Delimiter] <char>] [-Path] <string> -InputObject <psobject> [
    -Encoding <string>] [-Force] [-NoClobber] [-NoTypeInformation] [-Confirm] [
    -WhatIf] [<CommonParameters>]
    
    Export-CSV [-UseCulture] [-Path] <string> -InputObject <psobject> [-Encodin
    g <string>] [-Force] [-NoClobber] [-NoTypeInformation] [-Confirm] [-WhatIf]
     [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Export-CSV создает файл из CSV-строк переменной длины, который пр
    едставляет заданные объекты. 
    С помощью командлета Import-CSV можно воссоздавать объекты из CSV-строк в ф
    айлах. В результате будут получаться объекты, которые являются CSV-версиями
     исходных объектов и содержат строковые представления значений свойств, но 
    не содержат методов.
    
    Можно также использовать командлеты ConvertTo-CSV и ConvertFrom-CSV для пре
    образования объектов .NET Framework в строки CSV и обратно. Командлет Expor
    t-CSV аналогичен командлету ConvertTo-CSV за исключением того, что он сохра
    няет строки CSV в файл.
    
    С помощью параметров командлета Export-CSV можно задать отличный от запятой
     разделитель или сделать так, чтобы командлет Export-CSV использовал раздел
    итель по умолчанию для текущей культуры. 
    
    При передаче командлету Export-CSV нескольких объектов командлет Export-CSV
     формирует файл на основании свойств первого отправленного объекта. Если у 
    оставшихся объектов нет одного из указанных свойств, то значение этого свой
    ства для соответствующего объекта равно NULL, что обозначается двумя послед
    овательными запятыми. Если же у оставшихся объектов имеются дополнительные 
    свойства, значения этих свойств будут проигнорированы.
    
    Дополнительные сведения см. в описании командлета Export-CSV и раздел "Прим
    ечания".
    
ПАРАМЕТРЫ
    -Delimiter <char>
        Задает разделитель значений свойств. По умолчанию используется запятая 
        (,). Введите символ, например двоеточие (:). Чтобы задать точку с запят
        ой (;), заключите ее в кавычки.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                , (запятая)
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Encoding <string>
        Задает кодировку экспортируемого CSV-файла. Допустимые значения: Unicod
        e, UTF7, UTF8, ASCII, UTF32, BigEndianUnicode, Default и OEM. По умолча
        нию используется значение ASCII.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                ASCII
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Перезаписывает файл по указанному пути, не выводя предупреждение.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объекты для экспорта в формате строк CSV. Введите переменную, со
        держащую объекты, либо получающую их команду или выражение. Кроме того,
         можно передать объекты командлету Export-CSV по конвейеру.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -NoClobber [<SwitchParameter>]
        Не перезаписывать существующий файл (то есть не заменять его содержимое
        ). По умолчанию если файл существует по указанному пути, командлет Expo
        rt-CSV перезаписывает файл без предупреждения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NoTypeInformation [<SwitchParameter>]
        Исключает из CSV-файла сведения о типах. По умолчанию первая строка CSV
        -файла содержит элемент "#TYPE ", после которого указывается полное имя
         типа объекта .NET Framework.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Задает путь к выходному CSV-файлу. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseCulture [<SwitchParameter>]
        Использовать в качестве разделителя записей разделитель элементов списк
        а из текущей культуры. По умолчанию используется запятая (,).
        
        Этот параметр бывает полезным в скриптах, которые распространяются сред
        и пользователей в разных странах мира. Чтобы найти разделитель элементо
        в списка для текущей культуры, воспользуйтесь следующей командой: (Get-
        Culture).TextInfo.ListSeparator.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Запятая
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект .NET Framework можно передать командлету Export-CSV по кон
        вейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String
        Список CSV отправляется в файл, указанный в параметре Path.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Export-CSV преобразует заданные объекты в набор CSV-строк пер
        еменной длины и сохраняет эти строки в указанном текстовом файле. Коман
        длет Export-CSV позволяет сохранить объекты в CSV-файле, а затем с помо
        щью командлета Import-CSV создать объекты на основании содержимого этог
        о CSV-файла.
        
        В CSV-файле каждый объект представляется списком разделенных запятыми з
        начений свойств этого объекта. Значения свойств преобразуются в строков
        ый формат (с помощью метода ToString() объекта), поэтому они обычно пре
        дставляются именами значений свойств. Командлет Export-CSV не экспортир
        ует методы объекта. 
        
        Получаемый в результате экспорта файл имеет следующий формат.
        -- Первая строка CSV-файла содержит элемент "#TYPE", за которым следует
         полное имя типа объекта .NET Framework, например "#TYPE System.Diagnos
        tics.Process". Чтобы исключить из вывода эту строку, воспользуйтесь пар
        аметром NoTypeInformation.
        
        -- Следующая строка CSV-файла представляет заголовки столбцов. Она соде
        ржит список разделенных запятыми имен всех свойств первого объекта. 
        
        -- Оставшиеся строки файла содержат списки разделенных запятыми значени
        й свойств каждого из объектов.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-process wmiprvse | select-object basePriority,ID,SessionID,Workin
    gSet | export-csv -path data.csv
    
    
    Описание
    -----------
    Эта команда выбирает несколько свойств процесса wmiprvse и экспортирует их 
    в CSV-файл с именем data.csv.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-process | export-csv processes.csv 
    
    C:\PS> get-process | export-csv processes.csv 
    
    # In processes.csv
    
    #TYPE System.Diagnostics.Process
    __NounName,Name,Handles,VM,WS,PM,NPM,Path,Company,CPU,FileVersion,...
    Process,powershell,626,201666560,76058624,61943808,11960,C:\WINDOWS...
    Process,powershell,257,151920640,38322176,37052416,7836,C:\WINDOWS\...
    
    
    Описание
    -----------
    Эта команда экспортирует объекты, представляющие процессы компьютера, в фай
    л Processes.csv в текущем каталоге. Поскольку в команде не указан разделите
    ль, для отделения друг от друга полей в файле используется запятая (,).
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-process | export-csv processes.csv -Delimiter ";" 
    
    # In processes.csv
    
    #TYPE System.Diagnostics.Process
    __NounName;Name;Handles;VM;WS;PM;NPM;Path;Company;CPU;FileVersion;...
    Process;powershell;626;201666560;76058624;61943808;11960;C:\WINDOWS...
    Process;powershell;257;151920640;38322176;37052416;7836;C:\WINDOWS\...
    
    
    Описание
    -----------
    Эта команда экспортирует объекты, представляющие процессы компьютера, в фай
    л Processes.csv в текущем каталоге. Параметр Delimiter используется в этой 
    команде для указания разделителя в виде точки с запятой (;). В результате п
    оля в файле разделены знаком точки с запятой.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-process | export-csv processes.csv -UseCulture
    
    
    Описание
    -----------
    Эта команда экспортирует объекты, представляющие процессы компьютера, в фай
    л Processes.csv в текущем каталоге. В этой команде параметр UseCulture испо
    льзуется для того, чтобы командлет Export-CSV использовал в качестве раздел
    ителя значение свойства ListSeparator текущей культуры.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-process | export-csv processes.csv -NoTypeInformation
    
    C:\PS> get-process | export-csv processes.csv -NoTypeInformation
    
    # In processes.csv
    
    __NounName,Name,Handles,VM,WS,PM,NPM,Path,Company,CPU,FileVersion,...
    Process,powershell,626,201666560,76058624,61943808,11960,C:\WINDOWS...
    Process,powershell,257,151920640,38322176,37052416,7836,C:\WINDOWS\...
    
    
    Описание
    -----------
    Эта команда экспортирует объекты, представляющие процессы компьютера, в фай
    л Processes.csv в текущем каталоге. Чтобы исключить из файла вывода сведени
    я о типе, используется параметр NoTypeInformation.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113299
    Import-CSV 
    ConvertTo-CSV 
    ConvertFrom-CSV 



Export-FormatData

ИМЯ
    Export-FormatData
    
ОПИСАНИЕ
    Сохраняет данные форматирования текущего сеанса в файле форматирования.
    
СИНТАКСИС
    Export-FormatData [-Force] [-IncludeScriptBlock] [-InputObject <ExtendedTyp
    eDefinition[]>] [-NoClobber] [-Path <string>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Export-FormatData создает файлы форматирования Windows PowerShell
     (format.ps1xml) из объектов форматирования в текущем сеансе. Он принимает 
    объекты ExtendedTypeDefinition, возвращаемые командлетом Get-FormatData, и 
    сохраняет их в файле в формате XML.   
    
    На основе данных из файлов форматирования (format.ps1xml) Windows PowerShel
    l создает способ отображения объектов Microsoft .NET Framework в сеансе, ис
    пользуемый по умолчанию. Файлы форматирования можно просматривать и изменят
    ь, а с помощью командлета Update-FormatData можно добавлять в сеанс данные 
    форматирования.
    
    Дополнительные сведения о файлах форматирования в Windows PowerShell см. в 
    разделе about_Format.ps1xml.
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Перезаписывает существующий выходной файл, даже если для него установле
        н атрибут "только чтение".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -IncludeScriptBlock [<SwitchParameter>]
        Определяет, экспортируются ли блоки скриптов, содержащиеся в данных фор
        матирования. 
        
        Поскольку блоки скриптов содержат выполняемый код и могут использоватьс
        я для вредоносных целей, по умолчанию они не экспортируются.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <ExtendedTypeDefinition[]>
        Задает экспортируемые объекты форматирования данных. Введите переменную
        , содержащую объекты, либо команду, получающую объекты, например Get-Fo
        rmatData. Кроме того, можно передать объекты командлету Export-FormatDa
        ta от командлета Get-FormatData по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -NoClobber [<SwitchParameter>]
        Запрещает командлету перезаписывать существующие файлы. По умолчанию ко
        мандлет Export-FormatData без предупреждения перезаписывает файлы, для 
        которых не задан атрибут "только чтение".
        
        Чтобы задать командлету Export-FormatData принудительную перезапись фай
        лов с атрибутом "только чтение", используйте параметр Force.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Задает расположение выходного файла.  Укажите путь (необязательно) и им
        я файла с расширением format.ps1xml. Если путь не указан, командлет Exp
        ort-FormatData создает файл в текущем каталоге.
        
        Если используется расширение, отличное от PS1XML, командлет Update-Form
        atData не распознает файл. 
        
        Если указан существующий файл, командлет Export-FormatData перезаписыва
        ет имеющийся файл без предупреждения, если этому файлу не задан атрибут
         "только чтение". Чтобы перезаписать файл с атрибутом "только чтение", 
        используйте параметр Force. Чтобы запретить перезапись существующих фай
        лов, используйте параметр NoClobber.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.ExtendedTypeDefinition
        Кроме того, можно передать объекты ExtendedTypeDefinition командлету Ex
        port-FormatData от командлета Get-FormatData по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет Export-FormatData не возвращает никаких объектов. Он создает 
        файл и сохраняет его по указанному пути.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать любой файл форматирования, в том числе экспортирован
        ный, необходимо, чтобы в политике выполнения для сеанса было разрешено 
        выполнение скриптов и файлов конфигурации. Дополнительные сведения см. 
        в разделе about_Execution_Policies.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-formatdata -typename * | export-formatdata -path allformat.ps1xml
     -IncludeScriptBlock
    
    
    Описание
    -----------
    Эта команда экспортирует все данные форматирования из сеанса в файл AllForm
    at.ps1xml.
    
    Эта команда получает все данные форматирования из сеанса с помощью командле
    та Get-FormatData. Оператор "*", используемый в качестве значения параметра
     TypeName, предписывает командлету получить все данные из сеанса.
    
    В этой команде с помощью оператора конвейера (|) данные форматирования пере
    даются от командлета Get-FormatData командлету Export-FormatData, экспортир
    ующему все данные форматирования в файл AllFormat.ps1.
    
    В команде Export-FormatData используется параметр IncludeScriptBlock, чтобы
     включить все блоки скриптов в данных форматирования в файле.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$f = get-formatdata -typename helpinfoshort
    
    C:\PS> export-formatdata -inputObject $f -path c:\test\help.format.ps1xml -
    IncludeScriptBlock
    
    
    Описание
    -----------
    Эти команды экспортируют данные форматирования для типа HelpInfoShort в фай
    л Help.format.ps1xml.
    
    Первая команда получает данные форматирования для типа HelpInfoShort с помо
    щью командлета Get-FormatData и сохраняет их в переменной $f.
    
    Вторая команда с помощью командлета Export-FormatData с параметром InputObj
    ect вводит данные форматирования, сохраненные в переменной $f. В ней также 
    используется параметр IncludeScriptBlock, включающий блоки скриптов в выход
    ные данные.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-formatdata -typename System.Diagnostics.Process | export-FormatDa
    ta -path process.format.ps1xml
    
    C:\PS> Update-FormatData -prependPath .\process.format.ps1xml
    
    C:\PS> get-process p*
    
    Handles  NPM(K)  PM(K)  WS(K) VM(M)   CPU(s)    Id ProcessName
    -------  ------  -----  ----- -----   ------    -- -----------
        323                                       5600 powershell
        336                                       3900 powershell_ise
        138                                       4076 PresentationFontCache
    
    
    Описание
    -----------
    В этом примере показан результат выполнения команды Export-FormatData без п
    араметра IncludeScriptBlock.
    
    В первой команде с помощью командлета Get-FormatData получаются данные форм
    атирования для объекта System.Diagnostics.Process, возвращаемого командлето
    м Get-Process. С помощью оператора конвейера (|) объекты форматирования пер
    едаются командлету Export-FormatData, который экспортирует их в файл Proces
    s.format.ps1xml в текущем каталоге.
    
    В данном случае командлет Export-FormatData используется без параметра Incl
    udeScriptBlock.
    
    Во второй команде с помощью командлета Update-FormatData файл Process.forma
    t.ps1xml добавляется в текущий сеанс. В этой команде используется параметр 
    PrependPath, обеспечивающий, что данные форматирования для объектов процесс
    ов, содержащиеся в файле Process.format.ps1xml, обнаруживаются раньше станд
    артных данных форматирования для объектов процессов.
    
    Третья команда показывает результат этого изменения. В ней используется ком
    андлет Get-Process для получения процессов с именами, начинающимися с симво
    ла "P". По выходным данным видно, что значения свойств, вычисляемые с испол
    ьзованием блоков скриптов, не отображаются.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=144302
    Get-FormatData 
    Update-FormatData 



Export-ModuleMember

ИМЯ
    Export-ModuleMember
    
ОПИСАНИЕ
    Задает экспортируемые элементы модуля.
    
СИНТАКСИС
    Export-ModuleMember [[-Function] <string[]>] [-Alias <string[]>] [-Cmdlet 
    string[]>] [-Variable <string[]>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Export-ModuleMember указывает элементы модуля (командлеты, функци
    и, переменные и псевдонимы), которые могут быть экспортированы из файлы мод
    уля скрипта (PSM1) или из динамического модуля, созданного с помощью команд
    лета New-Module. Этот командлет может использоваться только в файле модуля 
    скрипта или в динамическом модуле.
    
    Если в модуль скрипта не входит команда Export-ModuleMember, то из модуля с
    крипта могут экспортироваться только функции (экспорт переменных и псевдони
    мов невозможен). Если в модуль скрипта входит команда Export-ModuleMember, 
    то экспортироваться могут только те элементы, которые указаны в команде Exp
    ort-ModuleMember.
    
    Если в модуле скрипта содержится несколько команд Export-ModuleMember, то э
    кспортироваться могут только те элементы, указанные в команде Export-Module
    Member.
    
    Команда Export-ModuleMember также позволяет экспортировать элементы, импорт
    ируемые модулем скрипта из других модулей.
    
ПАРАМЕТРЫ
    -Alias <string[]>
        Задает псевдонимы, экспортируемые из файла модуля скрипта. Введите имен
        а псевдонимов. Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -Cmdlet <string[]>
        Задает командлеты, экспортируемые из файла модуля скрипта. Введите имен
        а командлетов. Подстановочные знаки разрешены.
        
        В файле модуля скрипта нельзя создавать командлеты, но можно импортиров
        ать командлеты из двоичного модуля в модуль скрипта и экспортировать их
         из модуля скрипта.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -Function <string[]>
        Задает функции, экспортируемые из файла модуля скрипта. Введите имена ф
        ункций. Подстановочные знаки разрешены. Кроме того, можно передать имен
        а функций в Export-ModuleMember с помощью конвейера.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -Variable <string[]>
        Задает переменные, экспортируемые из файла модуля скрипта. Введите имен
        а переменных (без знака доллара). Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Можно передать имена функций в Export-ModuleMember с помощью конвейера.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    None
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы исключить элемент из списка экспортируемых элементов, добавьте ко
        манду Export-ModuleMember, содержащую перечисление всех элементов, кром
        е тех, которые необходимо исключить.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Export-ModuleMember -function * -alias *
    
    
    Описание
    -----------
    Эта команда экспортирует псевдонимы и функции, определенные в модуле скрипт
    а. 
    
    Чтобы экспортировать псевдонимы, которые не экспортируются по умолчанию, не
    обходимо также явно указать функции. В противном случае будут экспортирован
    ы только псевдонимы.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>Export-ModuleMember -function Get-Test, New-Test, Start-Test -alias g
    tt, ntt, stt
    
    
    Описание
    -----------
    Эта команда экспортирует три псевдонима и три функции, определенные в модул
    е скрипта. 
    
    Можно использовать формат этой команды для указания имен элементов модуля.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>Export-ModuleMember
    
    
    Описание
    -----------
    Эта команда указывает, что экспорт элементов, определенных в модуле скрипта
    , запрещен.
    
    Эта команда запрещает экспорт элементов модуля, но не скрывает элементы. По
    льзователи могут читать и копировать элементы модуля и использовать операто
    р вызова (&) для обращения к неэкспортируемым элементам модуля.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>Export-ModuleMember -variable increment
    
    
    Описание
    -----------
    Эта команда экспортирует из модуля скрипта только переменную $increment. Ос
    тальные элементы не экспортируются. 
    
    Если необходимо экспортировать переменную в дополнение к экспорту функций в
     модуле, команда Export-ModuleMember должна содержать имена всех функций и 
    имя переменной.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS># From TestModule.psm1
    
    function new-test 
        { <function code> }
    export-modulemember -function new-test
    
    function validate-test 
        { <function code> }
    
    function start-test 
        { <function code> }
    set-alias stt start-test
    export-modulemember -function *-test -alias stt
    
    
    Описание
    -----------
    Эти команды демонстрируют обработку нескольких команд Export-ModuleMember, 
    содержащихся в файле модуля скрипта (PSM1).
    
    Эта команда создает три функции и один псевдоним и экспортирует две функции
     и псевдоним.
    
    Если бы команда Export-ModuleMember не использовалась, то экспортировались 
    бы все три функции, а псевдоним бы не экспортировался. При использовании ко
    манд Export-ModuleMember экспортируются функции Get-Test и Start-Test и псе
    вдоним STT.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>new-module -script {function SayHello {"Hello"}; set-alias Hi SayHel
    lo; Export-ModuleMember -alias Hi -function SayHello}
    
    
    Описание
    -----------
    Эта команда демонстрирует использование Export-ModuleMember в динамическом 
    модуле, созданном с помощью командлета New-Module.
    
    В этом примере Export-ModuleMember используется в динамическом модуле для э
    кспорта псевдонима "Hi" и функции "Say Hello".
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>function export
    {
        param (
            [parameter(mandatory=$true)] [validateset("function","variable")] $
    type,
            [parameter(mandatory=$true)] $name,
            [parameter(mandatory=$true)] $value
        )
        if ($type -eq "function")
        {
            Set-item "function:script:$name" $value
            Export-ModuleMember $name
        }
        else
        {
            Set-Variable -scope Script $name $value
            Export-ModuleMember -variable $name
        }
    } 
    
    export function New-Test 
    {
      ...
    }
    
    
    function helper
    {
      ...
    }
    
    export variable interval 0
    $interval = 2
    
    
    Описание
    -----------
    Этот пример содержит функцию под названием Export, которая объявляет функци
    ю или создает переменную, а затем записывает команду Export-ModuleMember дл
    я функции или переменной. Это позволяет объявлять и экспортировать функцию 
    или переменную в одной команде.
    
    Чтобы использовать функцию Export, включите ее в модуль скрипта. Чтобы эксп
    ортировать функцию, введите "Export" до ключевого слова "Function". 
    
    Чтобы экспортировать переменную, используйте следующий формат для объявлени
    я переменной и задания ее значения:
    
        export variable <имя_переменной> <значение>
    
    В примере показан правильный формат команд. В этом примере экспортируются т
    олько функция New-Test и переменная $Interval.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=141551
    Import-Module 
    Get-Module 
    Remove-Module 
    about_Modules 



Export-PSSession

ИМЯ
    Export-PSSession
    
ОПИСАНИЕ
    Импортирует команды из другого сеанса и сохраняет их в модуле Windows Power
    Shell.
    
СИНТАКСИС
    Export-PSSession [-Session] <PSSession> [-OutputModule] <string> [[-Command
    Name] <string[]>] [[-FormatTypeName] <string[]>] [-AllowClobber] [-Argument
    List <Object[]>] [-CommandType {Alias | Function | Filter | Cmdlet | Extern
    alScript | Application | Script | All}] [-Encoding <string>] [-Force] [-Mod
    ule <string[]>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Export-PSSession получает командлеты, функции, псевдонимы и коман
    ды других типов из другого сеанса PSSession на локальном или удаленном комп
    ьютере и сохраняет их в модуле Windows PowerShell. Чтобы добавить команды и
    з модуля в текущий сеанс, воспользуйтесь командлетом Import-Module.
    
    В отличие от командлета Import-PSSession, который импортирует команды из др
    угого сеанса PSSession в текущий сеанс, командлет Export-PSSession сохраняе
    т команды в модуле. Эти команды не импортируются в текущий сеанс.
    
    Прежде чем экспортировать команды, необходимо помощью командлета New-PSSess
    ion создать сеанс PSSession, содержащий команды, которые требуется экспорти
    ровать. Затем необходимо с помощью командлета Export-PSSession экспортирова
    ть нужные команды. По умолчанию командлет Export-PSSession экспортирует все
     команды, кроме уже имеющихся в текущем сеансе, однако с помощью параметра 
    CommandName можно задать конкретные команды для экспорта.
    
    Командлет Export-PSSession использует функцию косвенного удаленного взаимод
    ействия Windows PowerShell. При импорте команд в текущий сеанс они косвенно
     выполняются в исходном сеансе или в аналогичном сеансе на исходном компьют
    ере.
    
ПАРАМЕТРЫ
    -AllowClobber [<SwitchParameter>]
        Экспортирует указанные команды, даже если их имена совпадают с именами 
        команд в текущем сеансе.
        
        В случае импорта команды, имя которой совпадает с именем команды в теку
        щем сеансе, импортируемая команда скрывает или заменяет исходную. Допол
        нительные сведения см. в разделе about_Command_Precedence. 
        
        Командлет Export-PSSession не импортирует команды, имена которых совпад
        ают с именами команд в текущем сеансе. Поведение по умолчанию предотвра
        щает конфликты имен команд.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ArgumentList <Object[]>
        Экспорт варианта команды, получаемого при использовании заданных аргуме
        нтов (значений параметров). 
        
        Например, чтобы экспортировать вариант команды Get-Item на диске сертиф
        икатов (Cert:) в сеансе $s, введите команду "export-pssession -session 
        $s -command get-item -argumentlist cert:".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CommandName <string[]>
        Экспортировать только команды с заданными именами или шаблонами имен. П
        одстановочные знаки разрешены. Используйте имя "CommandName" или псевдо
        ним "Name".
        
        По умолчанию командлет Export-PSSession экспортирует из сеанса PSSessio
        n все команды, кроме тех, имена которых совпадают с именами команд в те
        кущем сеансе. Это позволяет избежать скрытия и замены команд в текущем 
        сеансе импортируемыми командами. Чтобы экспортировать все команды, даже
         те, которые скрывают или заменяют другие команды, следует использовать
         параметр AllowClobber.
        
        Если используется параметр CommandName, файлы форматирования команд не 
        экспортируются, если не используется параметр FormatTypeName. Аналогичн
        о, если используется параметр FormatTypeName, ни одна из команд не эксп
        ортируется, если не используется параметр CommandName.
        
        Требуется?                    false
        Позиция?                    3
        Значение по умолчанию                Все команды в сеансе.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -CommandType <CommandTypes>
        Экспортирует командные объекты только указанных типов. Используйте "Com
        mandType" или псевдоним "Type". 
        
        Допустимые значения:
        -- Alias: все псевдонимы Windows PowerShell в текущем сеансе.
        -- All: команды всех типов. Эквивалентно "get-command *".
        -- Application: все файлы за исключением файлов Windows PowerShell, кот
        орые присутствуют в путях, указанных в переменной среды Path ($env:path
        ), в том числе файлы TXT, EXE и DLL.
        -- Cmdlet: командлеты в текущем сеансе. По умолчанию используется значе
        ние "Cmdlet".
        -- ExternalScript: все файлы PS1, которые присутствуют в путях, указанн
        ых в переменной среды Path ($env:path).
        -- Filter и Function: все функции Windows PowerShell.
        -- Script: блоки скриптов в текущем сеансе.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Все команды в сеансе.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Encoding <string>
        Задает кодировку выходных файлов. Допустимые значения: "Unicode", "UTF7
        ", "UTF8", "ASCII", "UTF32", "BigEndianUnicode", "Default" и "OEM". По 
        умолчанию используется значение "UTF-8".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                UTF-8
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Перезаписывает существующий выходной файл (или файлы), даже если для не
        го установлен атрибут "только чтение".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FormatTypeName <string[]>
        Экспортирует инструкции по форматированию только для заданных типов Mic
        rosoft .NET Framework. Введите имена типов. По умолчанию команда Export
        -PSSession экспортирует инструкции по форматированию для всех типов .NE
        T Framework, не принадлежащих к пространству имен System.Management.Aut
        omation.
        
        Значением этого параметра должно быть имя типа, возвращаемое командой G
        et-FormatData в сеансе, из которого импортируются команды. Чтобы получи
        ть все данные форматирования в удаленном сеансе, введите *.
        
        Если используется параметр FormatTypeName, ни одна из команд не экспорт
        ируется, если не используется параметр CommandName.
        Аналогично, если используется параметр CommandName, файлы форматировани
        я команд не экспортируются, если не используется параметр FormatTypeNam
        e.
        
        Требуется?                    false
        Позиция?                    4
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Module <string[]>
        Экспортирует только команды из заданных оснасток и модулей Windows Powe
        rShell. Введите имена оснасток и модулей. Подстановочные знаки запрещен
        ы.
        
        Дополнительные сведения см. в разделах about_PSSnapins и Import-Module.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Все команды в сеансе.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -OutputModule <string>
        Задает путь (указывать который не обязательно) и имя модуля, создаваемо
        го командой Export-PSSession. Путь по умолчанию: $home\Documents\Window
        sPowerShell\Modules. Это обязательный параметр.
        
        Если подкаталог модуля или любой из файлов, создаваемых командой Export
        -PSSession, уже существует, команда завершается с ошибкой. Чтобы переза
        писать существующие файлы, используйте параметр Force.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Session <PSSession>
        Задает сеанс PSSession, из которого экспортируются команды. Введите пер
        еменную, содержащую объект сеанса, или команду, получающую объект сеанс
        а, например Get-PSSession. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Объекты невозможно передать командлету Export-PSSession по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.IO.FileInfo
        Командлет Export-PSSession возвращает список файлов, из которых состоит
         созданный им модуль.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Export-PSSession использует инфраструктуру удаленного взаимод
        ействия Windows PowerShell. Чтобы использовать этот командлет, компьюте
        р должен быть настроен для удаленного взаимодействия. Дополнительные св
        едения см. в разделе about_Remote_Requirements.
        
        К помощью командлета Export-PSSession нельзя экспортировать поставщик W
        indows PowerShell.
        
        Экспортированные команды косвенно выполняются в сеансе PSSession, из ко
        торого они экспортированы. Впрочем, все тонкости, связанные с удаленным
         выполнением команд, полностью обрабатывает Windows PowerShell. Пользов
        атель выполняет экспортированные команды в точности так же, как локальн
        ые.
        
        Командлет Export-Module получает сведения о сеансе PSSession и сохраняе
        т их в экспортируемом модуле. Если во время импортирования модуля закры
        т сеанс PSSession, из которого экспортированы команды, и на том же комп
        ьютере нет активных сеансов PSSession, команды в модуле пытаются воссоз
        дать сеанс PSSession. Если воссоздать сеанс PSSession не удается, экспо
        ртированные команды не выполняются. 
        
        В сведения о сеансе, получаемые и сохраняемые командлетом Export-Module
         в модуле, не входят параметры сеанса, в том числе указанные в автомати
        ческой переменной $PSSessionOption или с помощью параметров SessionOpti
        on для командлетов New-PSSession, Enter-PSSession и Invoke-Command. Есл
        и во время импорта модуля исходный сеанс PSSession закрыт, используется
         другой сеанс PSSession на том же компьютере, если он имеется. Чтобы об
        еспечить выполнение импортированных команд в правильно настроенном сеан
        се, создайте сеанс PSSession с нужными параметрами, прежде чем импортир
        овать модуль.
        
        Чтобы найти команды для экспорта, командлет Export-PSSession с помощью 
        командлета Invoke-Command запускает в сеансе PSSession команду Get-Comm
        and. Для получения и сохранения данных форматирования для команд исполь
        зуются командлеты Get-FormatData и Export-FormatData. При выполнении ко
        манды Export-PSSession могут появляться сообщения об ошибках командлето
        в Invoke-Command, Get-Command, Get-FormatData и Export-FormatData. Кром
        е того, командлет Export-PSSession не позволяет экспортировать команды 
        из сеанса, в котором отсутствуют командлеты Get-Command, Get-FormatData
        , Select-Object и Get-Help.
        
        Командлет Export-PSSession использует для отображения хода выполнения к
        оманды командлет Write-Progress. Во время выполнения команды отображает
        ся индикатор выполнения.
        
        На экспортированные команды накладываются те же ограничения, что и на д
        ругие удаленные команды, включая невозможность запускать программы с по
        льзовательским интерфейсом, например "Блокнот".
        
        Поскольку профили Windows PowerShell не выполняются в сеансах PSSession
        , команды, добавляемые в сеанс через профиль, недоступны командлету Exp
        ort-PSSession. Чтобы экспортировать команды из профиля, необходимо с по
        мощью команды Invoke-Command вручную запустить профиль в сеансе PSSessi
        on, прежде чем экспортировать команды. 
        
        Модуль, создаваемый командлетом Export-PSSession, может включать файл ф
        орматирования, даже если команда не импортирует данные форматирования. 
        Если команда не импортирует данные форматирования, ни один из создаваем
        ых файлов форматирования не будет содержать данных форматирования.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$s = new-pssession -computerName Server01
    
    C:\PS> export-pssession -session $s -outputModule Server01
    
    
    Описание
    -----------
    Команда в этом примере экспортирует все команды из сеанса PSSession на комп
    ьютере Server01 в модуль Server01 на локальном компьютере, за исключением т
    ех, имена которых совпадают с именами команд в текущем сеансе. Она также эк
    спортирует данные форматирования для команд. 
    
    Первая команда создает на компьютере Server01 сеанс PSSession. Вторая коман
    да экспортирует все команды и данные форматирования из сеанса в модуль Serv
    er01.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$s = new-pssession -ConnectionUri http://exchange.microsoft.com/mailb
    ox -credential exchangeadmin01@hotmail.com -authentication negotiate
    
    C:\PS> export-pssession -session $r -module exch* -commandname get-*, set-*
     -formattypename * -outputModule $pshome\Modules\Exchange -encoding ASCII
    
    
    Описание
    -----------
    Эти команды экспортируют команды Get и Set из оснастки Microsoft Exchange S
    erver на удаленном компьютере в модуль Exchange в каталоге $pshome\Modules 
    на локальном компьютере.
    
    Размещение модуля в каталоге $pshome\Module делает его доступным для всех п
    ользователей этого компьютера.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$s = new-pssession -computerName Server01 -credential Server01\User01
    
    C:\PS> export-pssession -session $s -outputModule TestCmdlets -type cmdlet 
    -commandname *test* -formattypename *
    
    C:\PS> remove-pssession $s
    
    C:\PS> import-module TestCmdlets
    
    C:\PS> get-help test*
    
    C:\PS> test-files
    
    
    Описание
    -----------
    Эти команды экспортируют командлеты из сеанса PSSession на удаленном компью
    тере и сохраняют их в модуле на локальном компьютере. Затем они добавляют к
    омандлеты из модуля в текущий сеанс, чтобы их можно было использовать.
    
    Первая команда создает сеанс PSSession на компьютере Server01 и сохраняет е
    го в переменной $s.
    
    Вторая команда экспортирует командлеты с именами, начинающимися со слова "T
    est", из сеанса PSSession в переменной $s в модуль TestCmdlets на локальном
     компьютере.
    
    Третья команда использует командлет Remove-PSSession для удаления сеанса PS
    Session в переменной $s из текущего сеанса. Эта команда показывает, что ком
    анды, импортированные из сеанса PSSession, можно использовать, даже если эт
    от сеанс неактивен.
    
    Четвертая команда, которую можно выполнить в любой момент в любом сеансе, с
     помощью командлета Import-Module добавляет в текущий сеанс командлеты из м
    одуля TestCmdlets.
    
    Пятая команда с помощью командлета Get-Help получает справку по командлетам
    , имена которых начинаются со слова "Test". После добавления команд из моду
    ля в текущий сеанс можно с помощью командлетов Get-Help и Get-Command получ
    ать информацию об импортированных командах, как и для любых других команд в
     сеансе.
    
    Шестая команда использует командлет Test-Files, экспортированный с компьюте
    ра Server01 и добавленный в сеанс. 
    
    Хоть это и не очевидно, команда Test-Files на самом деле выполняется в удал
    енном сеансе на компьютере, с которого она импортирована. Windows PowerShel
    l создает сеанс из информации, сохраненной в модуле.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>export-pssession -session $s -AllowClobber -outputModule AllCommands
    
    
    Описание
    -----------
    Эта команда экспортирует все команды и данные форматирования из сеанса PSSe
    ssion в переменной $s в текущий сеанс. В команде указан параметр AllowClobb
    er, разрешающий экспорт команд, имена которых совпадают с именами команд в 
    текущем сеансе.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$options = New-PSSessionOption -NoMachineProfile
    
    C:\PS> $s = new-pssession -computername Server01 -sessionoption $options
    
    C:\PS> export-pssession -session $s -outputModule Server01
    
    C:\PS> remove-pssession $s
    
    C:\PS> new-pssession -computername Server01 -sessionoption $options
    
    C:\PS> import-module Server01
    
    
    Описание
    -----------
    В этом примере показано, как выполнить экспортированные команды в сеансе с 
    определенными параметрами, если сеанс PSSession, из которого они экспортиро
    ваны, закрыт.
    
    При использовании командлета Export-PSSession информация об исходном сеансе
     PSSession сохраняется в созданном модуле. Если исходный сеанс удаленного в
    заимодействия закрыт, при импорте этого модуля используется любой открытый 
    сеанс удаленного взаимодействия с исходным компьютером. 
    
    Если в текущем сеансе отсутствует сеанс удаленного взаимодействия с исходны
    м компьютером, содержащиеся в этом модуле команды заново устанавливают тако
    й сеанс. Впрочем, командлет Export-PSSession не сохраняет в модуле специаль
    ные параметры, например задаваемые параметром SessionOption командлета New-
    PSSession. 
    
    Поэтому если требуется выполнить экспортированные команды в удаленном сеанс
    е с определенными параметрами, необходимо создать удаленный сеанс с нужными
     параметрами, прежде чем импортировать модуль.
    
    Первая команда с помощью командлета New-PSSessionOption создает объект PSSe
    ssionOption и сохраняет его в переменной $options.
    
    Вторая команда создает сеанс PSSession с указанными параметрами. В ней испо
    льзуется командлет New-PSSession для создания сеанса PSSession на компьютер
    е Server01. С помощью параметра SessionOption указывается объект параметров
    , сохраненный в переменной $options. 
    
    Третья команда с помощью командлета Export-PSSession экспортирует команды и
    з сеанса PSSession, сохраненного в переменной $s, в модуль Server01.
    
    Четвертая команда использует командлет Remove-PSSession для удаления сеанса
     PSSession, сохраненного в переменной $s.
    
    Пятая команда с помощью командлета New-PSSession создает новый сеанс PSSess
    ion, подключенный к компьютеру Server01. Этот сеанс PSSession также использ
    ует параметры, сохраненные в переменной $options.
    
    Шестая команда импортирует команды из модуля Server01 с помощью командлета 
    Import-Module. Команды, содержащиеся в этом модуле, выполняются в сеансе PS
    Session на компьютере Server01.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135213
    about_Command_Precedence 
    Import-PSSession 
    New-PSSession 
    Import-Module 
    Invoke-Command 
    about_PSSessions 



FileSystem

ИМЯ ПОСТАВЩИКА
    FileSystem
    
ДИСКИ
    C, D
    
ОПИСАНИЕ
    Предоставляет доступ к файлам и каталогам.
    
ОПИСАНИЕ
    Поставщик Windows PowerShell FileSystem позволяет извлекать, добавлять, изм
    енять, очищать и удалять файлы и каталоги в Windows PowerShell.
    
    Поставщик FileSystem отображает диски Windows PowerShell, соответствующие л
    огическим дискам, настроенным на компьютере, в том числе дискам, сопоставле
    нным с общими сетевыми ресурсами. Например, компьютер с одним дисководом дл
    я гибких дисков, одним жестким диском и одним подключенным общим сетевым ка
    талогом может иметь диски с именами A, C и Z. Поставщик FileSystem отобража
    ет диски Windows PowerShell, напрямую соответствующие A, C и Z, что позволя
    ет ссылаться на них из оболочки Windows PowerShell. Например, чтобы сослать
    ся на диск C, необходимо указать "C:", как показано в следующем примере:
    
       get-childitem c:
    
    Эта команда возвращает все содержимое диска C, в том числе файлы и каталоги
    . Чтобы сослаться на определенный каталог или файл через поставщик FileSyst
    em, требуется предоставить данные, необходимые для определения этого катало
    га или файла. Это значит, что в некоторых случаях необходимо указать полное
     имя. Полное имя включает имя диска (с двоеточием), любые имена каталогов и
     подкаталогов и имя файла (если это необходимо). Например, в следующем прим
    ере показано полное имя файла Shell.dll, расположенного в подкаталоге Syste
    m32 каталога Windows на диске C:.
    
    c:\windows\system32\shell.dll
    
    Видно, что все элементы полного имени разделены обратной косой чертой (\). 
    Оболочка Windows PowerShell позволяет также использовать прямую косую черту
     (/) для совместимости с некоторыми другими командными интерпретаторами.
    
    В некоторых случаях полное имя необязательно при ссылке на файл или каталог
    . Например, если требуется доступ к файлу в текущем рабочем положении, дост
    аточно указать только имя файла. Если текущим рабочим положением является c
    :\windows, список всех DLL-файлов в этом каталоге можно просмотреть при пом
    ощи следующей команды:
    
       get-childitem *.dll
    
    Если рабочий каталог отличен от c:\windows, например c:\program files\Windo
    ws PowerShell, то команда должна включать полное имя:
    
       get-childitem c:\windows\*.dll
    
    В некоторых случаях можно использовать относительные ссылки на положение. Е
    сли рабочим положением является c:\windows, и необходимо просмотреть список
     DLL-файлов в каталоге c:\windows\system32, можно использовать следующую ко
    манду:
    
       get-childitem .\system32\*.dll
    
    Точка перед \system32 представляет текущее рабочее положение.
    
    В некоторых ситуациях текущее рабочее положение находится на диске, отлично
    м от диска FileSystem. В этом случае необходимо включить в ссылку имя целев
    ого диска. Например, предположим, что текущим рабочим положением является д
    иск "env:". Для просмотра содержимого диска C необходимо использовать следу
    ющую команду:
    
       get-childitem c:
    
ВОЗМОЖНОСТИ
    
    
ЗАДАЧИ
    ЗАДАЧА: Просмотр файловой системы
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда извлекает текущее местоположение:
        
        get-location
        
        
        Командлет Get-Location предлагает функциональность команд, подобных "cd
        " в командной строке Windows и "pwd" в UNIX. Чтобы получить дополнитель
        ные сведения, введите следующую команду:
        
            get-help get-location
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда задает текущее местоположение:
        
        set-location C:
        
        
        
        
        
    ЗАДАЧА: Получение сведений о файлах и каталогах
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда возвращает все файлы и каталоги из текущего каталога:
        
        get-childitem
        
        
        По умолчанию командлет Get-ChildItem не выполняет рекурсию. Если при за
        пуске этой команды в текущем каталоге имеются файлы и папки, будут возв
        ращены объекты System.IO.FileInfo и System.IO.DirectoryInfo.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда возвращает все файлы и каталоги из текущего каталога с помо
        щью командлета Get-ChildItem:
        
        get-childitem | where-object {$_.psiscontainer}
        
        
        Она передает результаты работы по конвейеру командлету Where-Object, ко
        торый просматривает свойство PSIsContainer и пропускает по конвейеру то
        лько объекты, которые не () являются контейнерами.
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда возвращает все файлы и каталоги из текущего каталога с помо
        щью командлета Get-ChildItem. Она передает результаты работы по конвейе
        ру командлету Where-Object, который просматривает свойство PSIsContaine
        r и пропускает по конвейеру только те объекты, которые являются контейн
        ерами.
        
        get-childitem | where-object {$_.psiscontainer}
        
        
        
        -------------------------- ПРИМЕР 4 --------------------------
        
        Эта команда возвращает все файлы и каталоги из текущего каталога с помо
        щью командлета Get-ChildItem:
        
        get-item -path a | format-list *
        
        
        Она передает результаты работы по конвейеру командлету Where-Object, ко
        торый просматривает свойство PSIsContainer и пропускает по конвейеру то
        лько объекты, которые являются контейнерами.
        -------------------------- ПРИМЕР 5 --------------------------
        
        Эта команда использует командлет Get-Item, чтобы получить сведения о фа
        йле Test.txt.
        
        get-item -path test.txt | format-list *
        
        
        Командлет Format-List используется для отображения всех свойств конечно
        го объекта.
        
        
    ЗАДАЧА: Копирование файлов и каталогов
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда копирует файл A.txt из каталога C:\A в каталог C:\A\Bb:
        
        copy-item -path C:\a\a.txt -destination C:\a\bb\a.txt
        
        
        Файлы в каталоге назначения переписываются без запроса подтверждения.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда копирует все файлы в каталоге C:\A\Bb, имеющие расширение T
        XT, в каталог C:\A\Cc\Ccc\:
        
        copy-item -path C:\a\bb\*.txt -destination C:\a\cc\ccc\
        
        
        Используются исходные имена файлов. Эта команда переписывает существующ
        ие файлы в каталоге назначения без запроса подтверждения.
        -------------------------- ПРИМЕР 3 --------------------------
        
        Копирует все каталоги и файлы из каталога C:\a в каталог C:\c. Если как
        ие-либо копируемые каталоги уже существуют в целевом каталоге, то коман
        да завершится с ошибкой, если не указан параметр Force.
        
        copy-item -path C:\a\* -destination C:\c -recurse
        
        
        
        
        
    ЗАДАЧА: Перемещение файлов и каталогов
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда перемещает файл C.txt из каталога C:\A в каталог C:\A\Aa.
        
        move-item -path C:\a\c.txt -destination C:\a\aa
        
        
        Команда не перезапишет автоматически существующий файл с тем же именем.
         Для принудительной перезаписи существующего файла необходимо передать 
        командлету параметр Force.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда перемещает каталог C:\A и все его содержимое в каталог C:\B
        .
        
        move-item -path C:\a -destination C:\b
        
        
        Нельзя перемещать каталог, если он является текущим положением.
        
        
    ЗАДАЧА: Управление содержимым файла
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда добавляет строку "test content" в файл Test.txt:
        
        add-content -path test.txt -value "test content"
        
        
        Существующее содержимое файла Test.txt не удаляется.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда получает содержимое файла Test.txt и отображает его в консо
        ли.
        
        get-content -path test.txt
        
        
        Содержимое файла можно передать другому командлету по конвейеру. Наприм
        ер, следующая команда считывает содержимое файла Test.txt и передает ег
        о в качестве входных данных командлету ConvertTo-HTML:
        
        get-content -path test.txt | convertto-html
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда заменяет содержимое файла Test.txt на строку "test content"
        :
        
        set-content -path test.txt -value "test content"
        
        
        Она перезаписывает содержимое файла Test.txt. Параметр Value командлета
         New-Item можно использовать для добавления содержимого в файл при его 
        создании.
        
        
    ЗАДАЧА: Управление дескрипторами безопасности
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда возвращает объект System.Security.AccessControl.FileSecurit
        y:
        
        get-acl -path test.txt | format-list -property *
        
        
        Чтобы получить дополнительные сведения об этом объекте, передайте по ко
        нвейеру результаты выполнения этой команды командлету Get-Member. Либо 
        см. раздел "Класс FileSecurity" (FileSecurity Class) в библиотеке MSDN 
        по адресу http://go.microsoft.com/fwlink/?LinkId=145718 (на английском 
        языке).
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда возвращает объект System.Security.AccessControl.DirectorySe
        curity:
        
        get-acl -path test_directory | format-list -property *
        
        
        Чтобы получить дополнительные сведения об этом объекте, передайте по ко
        нвейеру результаты выполнения этой команды командлету Get-Member. Либо 
        см. раздел "Класс DirectorySecurity" (DirectorySecurity Class) в библио
        теке MSDN по адресу http://go.microsoft.com/fwlink/?LinkId=145736 (на а
        нглийском языке).
        
        
    ЗАДАЧА: Создание файлов и каталогов
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда создает каталог Logfiles на диске C:
        
        new-item -path c:\ -name logfiles -type directory
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда создает файл с именем Log2.txt в каталоге C:\Logfiles и доб
        авляет в файл строку "test log".
        
        new-item -path c:\logfiles -name log.txt -type file
        
        
        
        -------------------------- ПРИМЕР 3 --------------------------
        
        Создает файл с именем Log2.txt в каталоге C:\logfiles и добавляет в фай
        л строку "test log".
        
        new-item -path c:\logfiles -name log2.txt -type file -value "test log"
        
        
        
        
        
    ЗАДАЧА: Переименование файлов и каталогов
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда переименовывает файл A.txt в каталоге C:\A в B.txt:
        
        rename-item -path c:\a\a.txt -newname b.txt
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда переименовывает каталог C:\A\Cc в C:\A\Dd:
        
        rename-item -path c:\a\cc -newname dd
        
        
        
        
        
    ЗАДАЧА: Удаление файлов и каталогов
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда удаляет файл Test.txt в текущем каталоге:
        
        remove-item -path test.txt
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда удаляет в текущем каталоге все файлы с расширением XML:
        
        remove-item -path *.xml
        
        
        
        
        
    ЗАДАЧА: Запуск программы при вызове связанного файла
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Первая команда использует командлет Get-Service, чтобы получить сведени
        я о локальных службах. 
        
        Она передает информацию по конвейеру командлету Export-Csv и сохраняет 
        эту информацию в файле Services.csv. 
        
        Вторая команда использует командлет Invoke-Item, чтобы открыть файл Ser
        vices.csv в программе, связанной с расширением файла CSV:
        
        get-service | export-csv -path services.csv
        
        invoke-item -path services.csv
        
        
        
        
        
    
    
ДИНАМИЧЕСКИЕ ПАРАМЕТРЫ
    -Encoding <Microsoft.PowerShell.Commands.FileSystemCmdletProviderEncoding>
        
        
            Unknown
                Тип кодировки неизвестен или недопустим. Данные можно рассматри
                вать как двоичные.
                
            String
                Используется тип кодировки для строки.
                
            Unicode
                Кодирует в формате UTF-16 с обратным порядком байтов.
                
            Byte
                Кодирует набор знаков в последовательность байтов.
                
            BigEndianUnicode
                Кодирует в формате UTF-16 с прямым порядком байтов.
                
            UTF8
                Кодирует в формате UTF-8.
                
            UTF7
                Кодирует в формате UTF-7.
                
            ASCII
                Используется кодировка для набора знаков ASCII (7-bit).
                
        
        Поддерживаемые командлеты: Add-Content, Get-Content, Set-Content
        
    -Delimiter <System.String>
        Указывает разделитель, используемый при чтении файла. По умолчанию "\n"
         (конец строки).
        
        
        Поддерживаемые командлеты: Get-Content
        
    -Wait <System.Management.Automation.SwitchParameter>
        Ожидает содержимое для добавления в файл. Если содержимое добавлено, во
        звращает добавленное содержимое. Если содержимое не изменилось, возвращ
        ает весь файл. 
        
        Во время ожидания командлет Get-Content проверяет файл раз в секунду, п
        ока не будет прерван, например, нажатием сочетания клавиш CTRL+C.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Content
        
    
ПРИМЕЧАНИЯ
    
ССЫЛКИ ПО ТЕМЕ
    about_Providers 



ForEach-Object

ИМЯ
    ForEach-Object
    
ОПИСАНИЕ
    Выполняет операцию для каждого из последовательности объектов ввода.
    
СИНТАКСИС
    ForEach-Object [-Process] <ScriptBlock[]> [-Begin <scriptblock>] [-End <scr
    iptblock>] [-InputObject <psobject>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет ForEach-Object выполняет операцию для каждого из последовательнос
    ти объектов ввода. Объекты ввода можно передать командлету по конвейеру или
     указать в параметре InputObject.
    
    Выполняемая операция описывается в блоке скрипта, который передается команд
    лету в качестве значения параметра Process. Блок скрипта может содержать лю
    бой скрипт Windows PowerShell. 
    
    В пределах блока скрипта текущий объект ввода представлен переменной $_.
    Кроме блока скрипта, который описывает операции, выполняемые над каждым объ
    ектом ввода, можно задать два дополнительных блока скрипта. Один из них, за
    даваемый значением параметра Begin, запускается перед обработкой первого об
    ъекта ввода. Другой, задаваемый значением параметра End, запускается после 
    обработки последнего объекта ввода. 
    
    Результаты выполнения всех блоков скрипта, в том числе блоков Begin и End, 
    передаются по конвейеру.
    
ПАРАМЕТРЫ
    -Begin <scriptblock>
        Указывает блок скрипта, который будет запущен перед обработкой какого-л
        ибо объекта ввода.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -End <scriptblock>
        Указывает блок скрипта, который будет запущен после обработки всех объе
        ктов ввода.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Принимает объект, к которому будет применен блок скрипта, указанный в п
        араметре процесса. Введите переменную, содержащую объекты, либо команду
         или выражение для получения объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Process <ScriptBlock[]>
        Указывает блок скрипта, применяемый к каждому входному объекту.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету ForEach-Object по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Объекты, возвращаемые ForEach-Object, определяются путем ввода.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>30000,56798,12432 | foreach-object -process {$_/1024}
    
    
    Описание
    -----------
    Эта команда принимает массив целых чисел, делит каждое из них на 1024 и ото
    бражает результаты.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-childitem C:\ | foreach-object -process { $_.length / 1024 }
    
    
    Описание
    -----------
    Эта команда извлекает файлы и каталоги в корневом каталоге диска C:, а зате
    м возвращает и отображает размер каждого из них. Для каталогов, для которых
     не удалось определить размеры файлов, отображаются нули.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$events = get-eventlog -logname system -newest 1000
    
    C:\PS> $events | foreach-object -begin {get-date} -process {out-file -filep
    ath events.txt -append -inputobject $_.message} -end {get-date}
    
    
    Описание
    -----------
    Эта команда извлекает 1000 последних событий из системного журнала и сохран
    яет их в переменной $events. После этого они передаются по конвейеру команд
    лету ForEach-Object. Параметр Begin отображает текущие дату и время. Затем 
    параметр Process при помощи командлета Out-File создает текстовый файл с им
    енем events.txt и сохраняет свойство сообщения для каждого события в этом ф
    айле. Наконец, параметр End отображает дату и время по окончании обработки.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-itemproperty -path hkcu:\Network\* | foreach-object {set-itemprop
    erty -path $_.pspath -name RemotePath -value $_.RemotePath.ToUpper();}
    
    
    Описание
    -----------
    Эта команда изменяет регистр символов для всех значений записей реестра Rem
    otePath во всех подразделах раздела HKEY_CURRENT_USER\Network на верхний. М
    ожно использовать формат этой команды для изменения формы или содержания зн
    ачения записи регистра.
    
    Каждый подраздел раздела Network представляет собой подключенный сетевой ди
    ск, который переподключается при входе в систему. В записи RemotePath содер
    жится UNC-путь к подключенному диску. Например, при сопоставлении диска E: 
    папке \\Server\Share, в разделе HKEY_CURRENT_USER\Network будет создан подр
    аздел E, и в качестве значения записи реестра RemotePath в подразделе E буд
    ет использоваться "\\Server\Share".
    
    Эта команда использует командлет Get-ItemProperty для считывания всех подра
    зделов раздела Network и командлет Set-ItemProperty для изменения значения 
    записи реестра RemotePath во всех подразделах. В команде Set-ItemProperty п
    уть задается как значение свойства PSPath раздела реестра. (Это свойство об
    ъекта Microsoft .NET Framework, представляющего раздел реестра; это свойств
    о не является записью реестра.) Команда использует метод ToUpper() значения
     RemotePath, принадлежащего к типу "строка" (REG_SZ).
    
    Поскольку Set-ItemProperty изменяет свойство каждого ключа, для получения д
    оступа к свойству требуется командлет ForEach-Object.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: 0http://go.microsoft.com/fwlink/?LinkID=113300



Format-Custom

ИМЯ
    Format-Custom
    
ОПИСАНИЕ
    Использует пользовательское представление для форматирования вывода.
    
СИНТАКСИС
    Format-Custom [[-Property] <Object[]>] [-Depth <int>] [-DisplayError] [-Exp
    and <string>] [-Force] [-GroupBy <Object>] [-InputObject <psobject>] [-Show
    Error] [-View <string>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Format-Custom форматирует выходные данные команды в соответствии 
    альтернативными с правилами представления. Format-Custom позволяет задать н
    естандартное отображение данных, отличное от простых таблиц и списков. Можн
    о использовать представления, определенные в файлах *format.PS1XML в катало
    ге Windows PowerShell, или создать собственные представления в новых файлах
     PS1XML и добавить их в Windows PowerShell с помощью командлета Update-Form
    atData.
    
ПАРАМЕТРЫ
    -Depth <int>
        Задает число столбцов в отображаемых данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -DisplayError [<SwitchParameter>]
        Выводит сообщения об ошибках в командной строке.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Expand <string>
        Форматирует объект коллекции, а также объекты, содержащиеся в коллекции
        . Этот параметр служит для форматирования объектов, поддерживающих инте
        рфейс ICollection (System.Collections). По умолчанию используется значе
        ние "EnumOnly".
        
        Допустимые значения:
        -- EnumOnly: отображаются свойства объектов, содержащихся в коллекции;
        -- CoreOnly: отображаются свойства объекта коллекции; 
        -- Both: отображаются свойства объекта коллекции и свойства объектов, с
        одержащихся в коллекции.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Приводит к отображению командлетом полных сведений об ошибках. Использу
        ется с параметром DisplayError или ShowError. По умолчанию при записи о
        бъекта ошибки в поток ошибок или поток отображения отображаются только 
        некоторые сведения об ошибке.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -GroupBy <Object>
        Форматирует вывод в группы на основе общего свойства или значения. Введ
        ите выражение или свойство вывода.
        
        Значение параметра GroupBy может быть новым вычисляемым свойством. Чтоб
        ы создать вычисляемое свойство, используйте хэш-таблицу. Допустимые клю
        чи:
        
        -- Name (или Label) <строка>
        -- Expression <строка> или <блок скрипта>
        -- FormatString <строка>
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объекты, подлежащие форматированию. Введите переменную, содержащ
        ую объекты, либо получающую их команду или выражение.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Property <Object[]>
        Задает свойства объекта, которые будут включены в вывод, и порядок их в
        ывода. Подстановочные знаки разрешены.
        
        Если этот параметр не указан, включаемые в вывод свойства зависят от от
        ображаемого объекта. Имя параметра ("Property") указывать необязательно
        . Использовать параметры Property и View в одной команде нельзя.
        
        Значение параметра Property может быть новым вычисляемым свойством. Что
        бы создать вычисляемое свойство, используйте хэш-таблицу. Допустимые кл
        ючи:
        
        -- Expression <строка> или <блок скрипта>
        -- Depth <int32>
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ShowError [<SwitchParameter>]
        Отправляет ошибки по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -View <string>
        Задает имя альтернативного формата ("представления"). Если этот парамет
        р не указан, командлет Format-Custom выбирает пользовательское представ
        ление по умолчанию. Использовать параметры Property и View в одной кома
        нде нельзя.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету Format-Custom по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.Internal.Format
        Командлет Format-Custom возвращает объекты формата, представляющие отоб
        ражение данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Format-Custom позволяет задать нестандартное отображение данн
        ых, отличное от простых таблиц и списков. Для вывода альтернативного пр
        едставления в виде таблицы используйте командлет Format-Table. Для выво
        да альтернативного представления в виде списка используйте командлет Fo
        rmat-List.
        
        Командлет Format-Custom также можно вызывать с помощью встроенного псев
        донима "fc". Дополнительные сведения см. в разделе about_Aliases.
        
        При указании параметра GroupBy предполагается, что объекты отсортирован
        ы. Перед группировкой объектов с помощью командлета Format-Custom выпол
        ните командлет Sort-Object, чтобы отсортировать их.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-command start-transcript | format-custom -view MyView
    
    
    Описание
    -----------
    Эта команда представляет сведения о командлете Start-Transcript в формате п
    ользовательского представления MyView. Чтобы эта команда выполнилась без ош
    ибок, нужно создать новый файл PS1XML, определить представление MyView, а з
    атем добавить файл PS1XML в Windows PowerShell с помощью команды Update-For
    matData.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-process Winlogon | format-custom
    
    
    Описание
    -----------
    Эта команда представляет сведения о процессе Winlogon в формате альтернатив
    ного пользовательского представления. Так как она не содержит параметр View
    , для форматирования данных с помощью командлета Format-Custom используется
     пользовательское представление по умолчанию.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113301



Format-List

ИМЯ
    Format-List
    
ОПИСАНИЕ
    Форматирует вывод как список свойств, в котором каждое свойство выводится н
    а новой строке.
    
СИНТАКСИС
    Format-List [[-Property] <Object[]>] [-DisplayError] [-Expand <string>] [-F
    orce] [-GroupBy <Object>] [-InputObject <psobject>] [-ShowError] [-View <st
    ring>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Format-List форматирует вывод команды как список свойств, в котор
    ом каждое свойство отображается на отдельной строке. Командлет Format-List 
    можно использовать для форматирования и отображения всех или выбранных свой
    ств объекта в виде списка (format-list *).
    
    В списке каждому элементу отводится больше места, чем в таблице, что позвол
    яет Windows PowerShell отобразить больше свойств объекта и уменьшает вероят
    ность обрезки их значений.
    
ПАРАМЕТРЫ
    -DisplayError [<SwitchParameter>]
        Выводит сообщения об ошибках в командной строке.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Expand <string>
        Форматирует объект коллекции, а также объекты, содержащиеся в коллекции
        . Этот параметр служит для форматирования объектов, поддерживающих инте
        рфейс ICollection (System.Collections). По умолчанию используется значе
        ние "EnumOnly".
        
        Допустимые значения:
        -- EnumOnly: отображаются свойства объектов, содержащихся в коллекции;
        -- CoreOnly: отображаются свойства объекта коллекции; 
        -- Both: отображаются свойства объекта коллекции и свойства объектов, с
        одержащихся в коллекции.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Приводит к отображению командлетом полных сведений об ошибках. Использу
        ется с параметром DisplayError или ShowError. По умолчанию при записи о
        бъекта ошибки в поток ошибок или поток отображения отображаются только 
        некоторые сведения об ошибке.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -GroupBy <Object>
        Форматирует вывод в группы на основе общего свойства или значения. Введ
        ите выражение или свойство вывода.
        
        Значение параметра GroupBy может быть новым вычисляемым свойством. Чтоб
        ы создать вычисляемое свойство, используйте хэш-таблицу. Допустимые клю
        чи:
        
        -- Name (или Label) <строка>
        -- Expression <строка> или <блок скрипта>
        -- FormatString <строка>
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объекты, подлежащие форматированию. Введите переменную, содержащ
        ую объекты, либо получающую их команду или выражение.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Property <Object[]>
        Задает свойства объекта, которые будут включены в вывод, и порядок их в
        ывода. Подстановочные знаки разрешены.  
        
        Если этот параметр не указан, включаемые в вывод свойства зависят от от
        ображаемого объекта. Имя параметра ("Property") указывать необязательно
        . Использовать параметры Property и View в одной команде нельзя.
        
        Значение параметра Property может быть новым вычисляемым свойством. Что
        бы создать вычисляемое свойство, используйте хэш-таблицу. Допустимые кл
        ючи:
        
        -- Name (или Label) <строка>
        -- Expression <строка> или <блок скрипта>
        -- FormatString <строка>
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ShowError [<SwitchParameter>]
        Отправляет ошибки по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -View <string>
        Задает имя альтернативного формата списка ("представления"). Использова
        ть параметры Property и View в одной команде нельзя.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету Format-List по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.Internal.Format
        Командлет Format-List возвращает объекты формата, представляющие список
        .
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Format-List также можно вызывать с помощью встроенного псевдо
        нима "FL". Дополнительные сведения см. в разделе about_Aliases.
        
        Командлеты форматирования, такие как Format-List, выполняют упорядочени
        е данных, но не отображают их. Для отображения данных предназначены сре
        дства вывода Windows PowerShell и командлеты с именами, содержащими гла
        гол "Out", такие как Out-Host, Out-File и Out-Printer.
        
        Если командлет форматирования не используется, оболочка Windows PowerSh
        ell отображает каждый объект в формате по умолчанию.
        
        При указании параметра GroupBy предполагается, что объекты отсортирован
        ы. Перед группировкой объектов с помощью командлета Format-Custom выпол
        ните командлет Sort-Object, чтобы отсортировать их.
        
        Параметр View позволяет задать альтернативный формат таблицы. Можно исп
        ользовать представления, определенные в файлах *.format.PS1XML в катало
        ге Windows PowerShell, или создать собственные представления в новых фа
        йлах PS1XML и включить их в Windows PowerShell с помощью командлета Upd
        ate-FormatData. 
        
        Альтернативное представление, которое определяется параметром View, дол
        жно иметь формат списка, в противном случае команда завершится с ошибко
        й. Если альтернативное представление является таблицей, используйте ком
        андлет Format-Table. Если альтернативное представление не является ни с
        писком, ни таблицей, используйте командлет Format-Custom.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-service | format-list
    
    
    Описание
    -----------
    Эта команда форматирует сведения о службах на компьютере в виде списка. По 
    умолчанию сведения о службах форматируются в виде таблицы. Командлет Get-Se
    rvice получает объекты, представляющие службы на компьютере. Оператор конве
    йера (|) передает результаты по конвейеру команде Format-List. После этого 
    команда Format-List форматирует сведения о службах в виде списка и отправля
    ет их в командлет вывода по умолчанию.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$a = get-childitem $pshome\*.ps1xml
    
    
    Описание
    -----------
    Эти команды отображают сведения о файлах PS1XML, находящихся в каталоге Win
    dows PowerShell, в виде списка. Первая команда получает объекты, представля
    ющие файлы, и сохраняет их в переменной $a. Вторая команда с помощью команд
    лета Format-List форматирует сведения об объектах, сохраненных в переменной
     $a. Эта команда с помощью параметра InputObject передает переменную команд
    лету Format-List, который отправляет отформатированные выходные данные кома
    ндлету вывода по умолчанию.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-process | format-list -property name, basepriority, priorityclass
    
    
    Описание
    -----------
    Эта команда отображает имя, базовый приоритет и класс приоритета каждого пр
    оцесса на компьютере. Для получения объектов, представляющих процессы, испо
    льзуется командлет Get-Process. Оператор конвейера (|) передает объекты про
    цессов командлету Format-List. Командлет Format-List форматирует процессы в
     виде списка с указанными свойствами. Имя параметра "Property" указывать не
    обязательно.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-process winlogon | format-list -property *
    
    
    Описание
    -----------
    Эта команда отображает все свойства процесса Winlogon. Для получения объект
    а, представляющего процесс Winlogon, используется командлет Get-Process. Оп
    ератор конвейера (|) передает объект процесса Winlogon по конвейеру командл
    ету Format-List. Параметр Property используется в этой команде для выбора с
    войств, а звездочка (*) указывает, что нужно выбрать все свойства. Имя пара
    метра Property указывать не обязательно, поэтому данную команду можно ввест
    и следующим образом: "format-list *". Командлет Format-List автоматически о
    тправляет результаты командлету вывода по умолчанию.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113302



Format-Table

ИМЯ
    Format-Table
    
ОПИСАНИЕ
    Форматирует вывод в виде таблицы.
    
СИНТАКСИС
    Format-Table [[-Property] <Object[]>] [-AutoSize] [-DisplayError] [-Expand 
    <string>] [-Force] [-GroupBy <Object>] [-HideTableHeaders] [-InputObject <p
    sobject>] [-ShowError] [-View <string>] [-Wrap] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Format-Table форматирует выходные данные команды в виде таблицы, 
    столбцы которой содержат выбранные свойства объекта. Формат по умолчанию и 
    свойства, отображаемые в каждом столбце, зависят от типа объекта, однако с 
    помощью параметра Property можно выбрать нужные свойства.
    
    Можно также использовать хэш-таблицу, чтобы добавлять к объекту вычисляемые
     свойства, прежде чем выводить их, и чтобы задавать заголовки столбцов в та
    блице. Чтобы добавить вычисляемое свойство, используйте параметр Property и
    ли GroupBy.
    
ПАРАМЕТРЫ
    -AutoSize [<SwitchParameter>]
        Настраивает размер и количество столбцов на основе ширины данных. По ум
        олчанию размер и число столбцов определяются представлением.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -DisplayError [<SwitchParameter>]
        Выводит сообщения об ошибках в командной строке.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Expand <string>
        Форматирует объект коллекции, а также объекты, содержащиеся в коллекции
        . Этот параметр служит для форматирования объектов, поддерживающих инте
        рфейс ICollection (System.Collections). По умолчанию используется значе
        ние "EnumOnly".
        
        Допустимые значения:
        -- EnumOnly: отображаются свойства объектов, содержащихся в коллекции;
        -- CoreOnly: отображаются свойства объекта коллекции; 
        -- Both: отображаются свойства объекта коллекции и свойства объектов, с
        одержащихся в коллекции.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Приводит к отображению командлетом полных сведений об ошибках. Использу
        ется с параметром DisplayError или ShowError. По умолчанию при записи о
        бъекта ошибки в поток ошибок или поток отображения отображаются только 
        некоторые сведения об ошибке.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -GroupBy <Object>
        Разбивает отсортированные результаты по нескольким таблицам в зависимос
        ти от значения свойства. Например, с помощью параметра GroupBy службы м
        ожно поместить в отдельные таблицы в зависимости от их состояния. 
        
        Введите выражение или свойство вывода. Перед отправкой результатов кома
        ндлету Format-Table они должны быть отсортированы.
        
        Значение параметра GroupBy может быть новым вычисляемым свойством. Чтоб
        ы создать вычисляемое свойство, используйте хэш-таблицу. Допустимые клю
        чи:
        
        -- Name (или Label) <строка>
        -- Expression <строка> или <блок скрипта>
        -- FormatString <строка>
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -HideTableHeaders [<SwitchParameter>]
        Исключает из таблицы заголовки столбцов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объекты, подлежащие форматированию. Введите переменную, содержащ
        ую объекты, либо команду или выражение для получения объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Property <Object[]>
        Задает свойства объекта, которые будут включены в вывод, и порядок их в
        ывода. Введите одно или несколько имен свойств (разделенных запятыми) и
        ли воспользуйтесь хэш-таблицей, чтобы вывести вычисляемое свойство. Под
        становочные знаки разрешены.  
        
        Если этот параметр не указан, включаемые в вывод свойства зависят от от
        ображаемого объекта. Имя параметра ("Property") указывать необязательно
        . Использовать параметры Property и View в одной команде нельзя.
        
        Значение параметра Property может быть новым вычисляемым свойством. Что
        бы создать вычисляемое свойство, используйте хэш-таблицу. Допустимые кл
        ючи:
        
        -- Name (или Label) <строка>
        -- Expression <строка> или <блок скрипта>
        -- FormatString <строка>
        -- Width <int32>
        -- Alignment (значение может быть "Left", "Center" или "Right")
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ShowError [<SwitchParameter>]
        Отправляет ошибки по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -View <string>
        Задает имя альтернативного табличного формата ("представления"). Исполь
        зовать параметры Property и View в одной команде нельзя.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Wrap [<SwitchParameter>]
        Отображает текст, длина которого превышает ширину столбца, на следующей
         строке. По умолчанию текст, выходящий за пределы столбца, обрезается.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету Format-Table по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.Internal.Format
        Командлет Format-Table возвращает объекты формата, представляющие табли
        цу.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Format-Table также можно вызывать с помощью встроенного псевд
        онима "FT". Дополнительные сведения см. в разделе About_Aliases.
        
        При указании параметра GroupBy предполагается, что объекты отсортирован
        ы. Перед группировкой объектов с помощью командлета Format-Custom выпол
        ните командлет Sort-Object, чтобы отсортировать их.
        
        Параметр View позволяет задать альтернативный формат таблицы. Можно исп
        ользовать представления, определенные в файлах *.format.PS1XML в катало
        ге Windows PowerShell, или создать собственные представления в новых фа
        йлах PS1XML и включить их в Windows PowerShell с помощью командлета Upd
        ate-FormatData. 
        
        Альтернативное представление, которое определяется параметром View, дол
        жно иметь табличный формат, в противном случае команда завершится ошибк
        ой. Если альтернативное представление является списком, используйте ком
        андлет Format-List. Если альтернативное представление не является ни сп
        иском, ни таблицей, используйте командлет Format-Custom.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-pssnapin | format-table -auto
    
    
    Описание
    -----------
    Эта команда форматирует сведения об оснастках оболочки Windows PowerShell в
     виде таблицы. По умолчанию эти сведения форматируются как список. Командле
    т Get-PSSnapin возвращает объекты, представляющие оснастки. Оператор конвей
    ера (|) передает объект команде Format-Table. Команда Format-Table форматир
    ует объекты в таблице. Параметр Autosize настраивает ширину столбцов так, ч
    тобы свести к минимуму обрезку значений.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-process | sort-object -property basepriority | format-table -grou
    pby basepriority -wrap
    
    
    Описание
    -----------
    Эта команда отображает процессы на компьютере, группируя их по базовому при
    оритету. 
    
    Командлет Get-Process получает объекты, представляющие процессы на компьюте
    ре. Объекты с помощью оператора конвейера (|) передаются командлету Sort-Ob
    ject, который сортирует их по базовому приоритету.
    
    
    Другой оператор конвейера передает результаты команде Format-Table. Парамет
    р GroupBy объединяет данные о процессах в группы на основе значения их свой
    ства BasePriority. Параметр Wrap защищает эти данные от усечения.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-process | sort-object starttime | format-table -view starttime
    
    
    Описание
    -----------
    Эта команда отображает сведения о процессах на компьютере, группируя их по 
    дате запуска процесса. Для получения объектов, представляющих процессы на к
    омпьютере, используется командлет Get-Process. Оператор конвейера (|) перед
    ает выходные данные командлета Get-Process командлету Sort-Object, который 
    сортирует их на основе свойства StartTime. Другой оператор конвейера переда
    ет отсортированные результаты командлету Format-Table. 
    
    Параметр View используется для выбора представления StartTime, определенног
    о в файле форматирования DotNetTypes.format.ps1xml для объектов System.Diag
    nostics.Process, например объектов, возвращаемых командлетом Get-Process. Э
    то представление преобразует время запуска (StartTime) процессов в краткий 
    формат даты, а затем группирует процессы по дате запуска.
    
    Файл форматирования DotNetTypes.format.ps1xml содержит также представление 
    процессов Priority. Кроме того, можно создавать собственные файлы format.ps
    1xml с пользовательскими представлениями.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-service | format-table -property Name, DependentServices
    
    
    Описание
    -----------
    Эта команда отображает все службы на компьютере в таблице с двумя столбцами
     — Name и DependentServices. Для получения всех служб на компьютере в этой 
    команде используется командлет Get-Service. С помощью оператора конвейера (
    |) результаты передаются командлету Format-Table, который форматирует выход
    ные данные в виде таблицы. Параметр Property определяет свойства, представл
    яемые в таблице в виде столбцов. Имя параметра Property является необязател
    ьным, поэтому его можно не указывать ("format-table name, dependentservices
    ").
    
    Property и DependentServices — это только два свойства объектов служб. Чтоб
    ы просмотреть все свойства, введите "get-service | get-member".
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-process notepad | format-table ProcessName, `
    @{Label="TotalRunningTime"; Expression={(get-date) - $_.StartTime}}
    
    
    Описание
    -----------
    Эта команда демонстрирует использование вычисляемых свойств в таблице. Она 
    отображает таблицу с именем процесса и общим временем выполнения всех проце
    ссов "Notepad" на локальном компьютере. Для определения общего времени выпо
    лнения процессов время запуска каждого процесса вычитается из текущего врем
    ени.
    
    Для получения всех процессов с именем "Notepad" на локальном компьютере в э
    той команде используется командлет Get-Process. Оператор конвейера (|) пере
    дает результаты командлету Format-Table, который отображает таблицу с двумя
     столбцами: ProcessName (стандартное свойство процессов) и TotalRunningTime
     (вычисляемое свойство).
    
    Свойство TotalRunningTime определяется хэш-таблицей с двумя ключами — Label
     и Expression. Имя свойства назначается ключу Label. Вычисляемое выражение 
    назначается ключу Expression. Это выражение получает значение свойства Star
    tTime каждого объекта-процесса и вычитает его из результата выполнения кома
    нды Get-Date, которая возвращает текущую дату (и время).
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>$processes = get-wmiobject -ComputerName Server01 win32_process -filt
    er "name='notepad.exe'"  
    
    C:\PS> $processes | format-table ProcessName, @{ Label = "Total  Running Ti
    me"; `
    Expression={(get-date) - $_.ConvertToDateTime($_.CreationDate)}}
    
    
    Описание
    -----------
    Эти команды аналогичны предыдущей команде, только в них используются команд
    лет Get-WmiObject и класс Win32_Process для отображения сведений о процесса
    х "Notepad" на удаленном компьютере.
    
    В первой команде командлет Get-WmiObject получает экземпляры класса Win32_P
    rocess инструментария управления Windows (WMI), описывающего все процессы N
    otepad.exe на компьютере Server01. Сведения о процессах сохраняются данной 
    командой в переменной $processes. 
    
    
    Во второй команде оператор конвейера (|) передает сведения о процессах, сох
    раненные в переменной $processes, командлету Format-Table, который отобража
    ет имя каждого процесса и значение нового вычисляемого свойства. 
    
    Имя нового вычисляемого свойства (Total Running Time) назначается данной ко
    мандой ключу Label. Блок скрипта, назначенный ключу "Expression", вычисляет
     время выполнения процесса, вычитая дату создания процесса из текущей даты.
     Командлет Get-Date получает текущую дату. Метод ConvertToDateTime преобраз
    ует свойство CreationDate объекта Win32_Process из WMI-объекта CIM_DATETIME
     в объект Microsoft .NET Framework DateTime, который можно сравнить с выход
    ными данными командлета Get-Date. После этого преобразованная дата создания
     процесса вычитается из текущей даты. Результат — значение "Total Running T
    ime".
    
    Открывающая кавычка (`) является знаком продолжения строки.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113303
    Format-List 
    Format-Wide 
    Format-Custom 



Format-Wide

ИМЯ
    Format-Wide
    
ОПИСАНИЕ
    Форматирует объекты в виде широкой таблицы, в которой отображается только о
    дно свойство каждого объекта.
    
СИНТАКСИС
    Format-Wide [[-Property] <Object>] [-AutoSize] [-Column <int>] [-DisplayErr
    or] [-Expand <string>] [-Force] [-GroupBy <Object>] [-InputObject <psobject
    >] [-ShowError] [-View <string>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Format-Wide форматирует объекты в виде широкой таблицы, в которой
     отображается только одно свойство каждого объекта. Чтобы узнать, какое сво
    йство отображается, используйте параметр Property.
    
ПАРАМЕТРЫ
    -AutoSize [<SwitchParameter>]
        Настраивает размер и количество столбцов на основе ширины данных. По ум
        олчанию размер и число столбцов определяются представлением. Использова
        ть параметры AutoSize и Column в одной команде нельзя.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Column <int>
        Задает число столбцов в отображаемых данных. Использовать параметры Aut
        oSize и Column в одной команде нельзя.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -DisplayError [<SwitchParameter>]
        Выводит сообщения об ошибках в командной строке.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Expand <string>
        Форматирует объект коллекции, а также объекты, содержащиеся в коллекции
        . Этот параметр служит для форматирования объектов, поддерживающих инте
        рфейс ICollection (System.Collections). По умолчанию используется значе
        ние "EnumOnly".
        
        Допустимые значения:
        -- EnumOnly: отображаются свойства объектов, содержащихся в коллекции;
        -- CoreOnly: отображаются свойства объекта коллекции; 
        -- Both: отображаются свойства объекта коллекции и свойства объектов, с
        одержащихся в коллекции.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Переопределяет ограничения, препятствующие выполнению команды, не ставя
         под угрозу безопасность. Например, параметр Force позволяет переопреде
        лить атрибут "только чтение" или создать дополнительные каталоги в пути
         к файлу без изменения разрешений на доступ к файлам.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -GroupBy <Object>
        Форматирует вывод в группы на основе общего свойства или значения. Введ
        ите выражение или свойство вывода.
        
        Значение параметра GroupBy может быть новым вычисляемым свойством. Чтоб
        ы создать вычисляемое свойство, используйте хэш-таблицу. Допустимые клю
        чи:
        
        -- Name (или Label) <строка>
        -- Expression <строка> или <блок скрипта>
        -- FormatString <строка>
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объекты, подлежащие форматированию. Введите переменную, содержащ
        ую объекты, либо команду или выражение для получения объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Property <Object>
        Задает свойства объекта, которые будут включены в вывод, и порядок их в
        ывода. Подстановочные знаки разрешены.  
        
        Если этот параметр не указан, включаемые в вывод свойства зависят от от
        ображаемого объекта. Имя параметра ("Property") указывать необязательно
        . Использовать параметры Property и View в одной команде нельзя.
        
        Значение параметра Property может быть новым вычисляемым свойством. Что
        бы создать вычисляемое свойство, используйте хэш-таблицу. Допустимые кл
        ючи:
        
        -- Expression <строка> или <блок скрипта>
        -- FormatString <строка>
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ShowError [<SwitchParameter>]
        Отправляет ошибки по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -View <string>
        Задает имя альтернативного табличного формата ("представления"). Исполь
        зовать параметры Property и View в одной команде нельзя.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету Format-Wide по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.Internal.Format
        Командлет Format-Wide возвращает объекты формата, представляющие таблиц
        у.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Format-Wide также можно вызывать с помощью встроенного псевдо
        нима "fw". Дополнительные сведения см. в разделе About_Aliases.
        
        При указании параметра GroupBy предполагается, что объекты отсортирован
        ы. Перед группировкой объектов с помощью командлета Format-Custom выпол
        ните командлет Sort-Object, чтобы отсортировать их.
        
        Параметр -View позволяет задать альтернативный формат таблицы. Можно ис
        пользовать представления, определенные в файлах *.format.PS1XML в катал
        оге Windows PowerShell, или создать собственные представления в новых ф
        айлах PS1XML и включить их в Windows PowerShell с помощью командлета Up
        date-FormatData. 
        
        Альтернативное представление, которое определяется параметром View, дол
        жно иметь табличный формат, в противном случае команда завершится ошибк
        ой. Если альтернативное представление является списком, используйте ком
        андлет Format-List. Если альтернативное представление не является ни сп
        иском, ни таблицей, используйте командлет Format-Custom.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-childitem | format-wide -column 3
    
    
    Описание
    -----------
    Эта команда отображает имена файлов в текущем каталоге, выводя их на экран 
    в трех столбцах. Командлет Get-ChildItem получает объекты, представляющие в
    се файлы в каталоге. Оператор конвейера (|) передает объекты файлов по конв
    ейеру командлету Format-Wide, который форматирует их, подготавливая к вывод
    у. Параметр Column определяет количество столбцов.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-childitem HKCU:\software\microsoft | format-wide -property pschil
    dname -autosize
    
    
    Описание
    -----------
    Эта команда отображает имена разделов реестра в разделе HKEY_CURRENT_USER\S
    oftware\Microsoft. Командлет Get-ChildItem получает объекты, представляющие
     разделы реестра. Путь указывается как "HKCU:" (один из дисков, предоставля
    емых поставщиком реестра Windows PowerShell), после чего следует путь к раз
    делу. Оператор конвейера (|) передает объекты разделов реестра по конвейеру
     командлету Format-Wide, который форматирует их, подготавливая к выводу. Па
    раметр Property определяет имя свойства, а параметр AutoSize изменяет разме
    р столбцов, чтобы данные в них было удобнее читать.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113304



Function

ИМЯ ПОСТАВЩИКА
    Function
    
ДИСКИ
    Function:
    
ОПИСАНИЕ
    Предоставляет доступ к функциям, определенным в Windows PowerShell.
    
ОПИСАНИЕ
    Поставщик Windows PowerShell Function позволяет извлекать, добавлять, измен
    ять, очищать и удалять функции и фильтры в Windows PowerShell.
    
    Функция представляет собой именованный блок кода, выполняющий некоторое дей
    ствие. Если набрать имя функции, выполняется код этой функции. Фильтр предс
    тавляет собой именованный блок кода, устанавливающий условия выполнения нек
    оторого действия. Имя фильтра можно ввести вместо условия, например в коман
    де Where-Object. 
    
    На диске Function: функции предварены меткой "Function", а фильтры предваре
    ны меткой "Filter", но правильная работа в корректном контексте обеспечивае
    тся независимо от метки.
    
    Поставщик Function представляет собой плоское пространство имен, содержащее
     только объекты функций и фильтров. Ни функции, ни фильтры не имеют дочерни
    х элементов.
    
    Каждая функция является экземпляром класса System.Management.Automation.Fun
    ctionInfo. Каждый фильтр является экземпляром класса System.Management.Auto
    mation.FilterInfo.
    
    Примеры в данном разделе иллюстрируют управление функциями, но те же методы
     применимы и к фильтрам.
    
    Поставщик Function отображает свое хранилище данных как диск Function:. Для
     работы с функциями можно изменить свое положение на диск Function: ("set-l
    ocation function:"). Можно также работать в оболочке Windows PowerShell с д
    ругого диска. Для ссылки на функцию из другого положения следует использова
    ть в пути имя диска (Function:).
    
    Поставщик Function поддерживает все командлеты, в именах которых содержится
     существительное Item (командлеты Item), кроме Invoke-Item. Кроме того, он 
    поддерживает командлеты Get-Content и Set-Content. Однако он не поддерживае
    т командлеты, в именах которых содержится существительное ItemProperty (ком
    андлеты ItemProperty), и не поддерживает параметр Filter в любом командлете
    .
    
    Все изменения в функциях затрагивают только текущую консоль. Добавьте функц
    ию в профиль Windows PowerShell, чтобы сохранить изменения, либо используйт
    е командлет Export-Console, чтобы сохранить текущее состояние консоли.
    
ВОЗМОЖНОСТИ
    
    
ЗАДАЧИ
    ЗАДАЧА: Обращение к диску Function:
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Изменение текущего положения на диск Function:. Эту команду можно испол
        ьзовать с любого диска в оболочке Windows PowerShell. Чтобы вернуться к
         диску файловой системы, введите имя диска. Например, введите команду "
        set-location c:".
        
        set-location function:
        
        
        
        
        
    ЗАДАЧА: Извлечение функций
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда возвращает список всех функций в текущем сеансе. Эту команд
        у можно использовать с любого диска Windows PowerShell.
        
        get-childitem -path function:
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда извлекает функцию "man" с диска Function:. Для извлечения ф
        ункции используется командлет Get-Item. Оператор конвейера (|) передает
         результаты командлету Format-Table. 
        
        Параметр Wrap переводит текст, не умещающийся на строке, на следующую с
        троку. Параметр Autosize подгоняет ширину столбцов таблицы под размер т
        екста.
        
        get-item -path man | format-table -wrap -autosize
        
        
        Если вы находитесь на другом диске, добавьте в путь имя диска (Function
        :).
        -------------------------- ПРИМЕР 3 --------------------------
        
        Обе эти команды извлекают функцию с именем "c:". Первую команду можно и
        спользовать на любом диске. Вторая команда используется на диске Functi
        on:.
        
        Поскольку имя функции оканчивается двоеточием, то есть имеет синтаксис 
        имени диска, необходимо указать в пути имя диска. Находясь на диске Fun
        ction:, можно использовать любой из форматов. Во второй команде точка (
        .) представляет текущее положение.
        
        c:\PS> get-item -path function:c:
        
        PS Function> get-item -path .\c:
        
        
        
        
        
    ЗАДАЧА: Создание функции
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда использует командлет New-Item для создания функции с именем
         "HKLM:". Выражение в фигурных скобках представляет собой блок скрипта,
         который представлен именем функции.
        
        new-item -path function:hklm: -value {set-location hklm:}
        
        
        Создать функцию также можно, набрав ее в командной строке Windows Power
        Shell. Например, введите "function:hklm: {set-location hklm:}". Если те
        кущим положением является диск Function:, имя диска можно не указывать.
        
        Поскольку невозможно указать метку "Filter" в командлете New-Item, филь
        тры помечаются как функции, но правильная работа возможна с любой метко
        й. Для создания фильтра с меткой "Filter" наберите фильтр в командной с
        троке. Например, введите "filter:Running {$_.Status -eq "Running"}".
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда использует командлет New-Item для создания функции с именем
         Csrss. Динамический параметр Options используется для указания значени
        я ReadOnly в свойстве Options функции.
        
        new-item -path function: -name csrss -options readonly -value {get-proc
        ess csrss}
        
        
        Эта команда работает из любого положения. Если диск Function: уже откры
        т, для задания пути можно использовать точку (.). Точка обозначает теку
        щее местоположение.
        
        
    ЗАДАЧА: Удаление функции
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда удаляет функцию "hklm:" из текущего сеанса.
        
        remove-item function:hklm:
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда удаляет все функции из текущего сеанса, кроме функций, в св
        ойстве Options которых содержится значение Constant. Если не задан пара
        метр Force, команда не удаляет функции со значением ReadOnly свойства O
        ptions.
        
        remove-item function:* -force
        
        
        При удалении всех функций изменяется приглашение в командной строке, по
        скольку удаляется функция приглашения, определяющая содержимое приглаше
        ния в командной строке.
        
        
    ЗАДАЧА: Отображение свойств и методов функций
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда использует командлет Get-Item для получения всех функций. Р
        езультаты с помощью оператора конвейера передаются командлету Get-Membe
        r, который отображает методы и свойства объекта.
        
        get-item -path function:* | get-member
        
        
        При передаче командлету Get-Member по конвейеру коллекции объектов (нап
        ример коллекции функций на диске Function:) командлет Get-Member обраба
        тывает каждый объект коллекции отдельно и возвращает информацию о каждо
        м найденном типе объекта. Если все объекты принадлежат к одному типу, в
        ыводятся сведения о единственном типе объекта. В данном случае все функ
        ции являются объектами FunctionInfo.
        
        Для получения сведений о коллекции объектов FunctionInfo используйте па
        раметр InputObject командлета Get-Member. Например, введите "get-member
         -InputObject (get-item function:*)". При использовании параметра Input
        Object командлет Get-Member выполняет оценку всей коллекции, а не отдел
        ьных объектов из нее.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда перечисляет значения свойств функции "prompt". Она использу
        ет командлет Get-Item для получения объекта, представляющего функцию "p
        rompt". Оператор конвейера (|) передает результаты команде Format-List.
         Команда Format-List использует параметр Property с подстановочным знак
        ом (*) для форматирования и отображения значений всех свойств функции "
        prompt".
        
        get-item function:prompt | format-list -property *
        
        
        
        
        
    ЗАДАЧА: Изменение свойств функции
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Для изменения свойства Options функции можно использовать командлет Set
        -Item с динамическим параметром Options.
        
        Эта команда задает значения параметров AllScope и ReadOnly для функции 
        "prompt". В ней используется динамический параметр Options командлета S
        et-Item. Параметр Options доступен для Set-Item только при использовани
        и с поставщиком Alias или Function.
        
        set-item -path function:prompt -options "AllScope,ReadOnly"
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        В этой команде командлет Set-Item используется для изменения функции "p
        rompt" таким образом, чтобы перед значением пути отображалось время.
        
        set-item -path function:prompt -value {'PS '+ $(Get-Date -format t) + "
         " + $(Get-Location) + '> '}
        
        
        Это изменение затрагивает как свойство Definition объекта FunctionInfo,
         так и свойство ScriptBlock. Чтобы увидеть результаты изменения, набери
        те "get-item -path function:prompt | format-list -property *".
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда использует командлет Rename-Item для изменения имени функци
        и "help" на "gh".
        
        rename-item -path function:help -newname gh
        
        
        
        
        
    ЗАДАЧА: Копирование функции
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда копирует функцию "prompt" в "oldPrompt", в результате чего 
        создается новое имя для блока скрипта, связанного с функцией prompt. Та
        ким образом можно сохранить исходную функцию prompt, если планируется и
        зменить ее.
        
        Свойство Options новой функции имеет значение None. Чтобы изменить знач
        ение свойства Options, используйте командлет Set-Item.
        
        copy-item -path function:prompt -destination function:oldPrompt
        
        
        
        
        
    
    
ДИНАМИЧЕСКИЕ ПАРАМЕТРЫ
    -Options <System.Management.Automation.ScopedItemOptions>
        Определяет значение свойства Options функции.
        
            None
                Без параметров. По умолчанию используется "None".
                
            Constant
                Функцию нельзя удалить, и ее свойства нельзя изменить. Значение
                 Constant доступно только при создании функции. Этому параметру
                 существующей функции нельзя задать значение Constant.
                
            Private
                Функция видна только в текущей области (не в дочерних областях)
                .
                
            ReadOnly
                Свойства функции не могут быть изменены. Исключение составляет 
                параметр Force. Для удаления функции можно использовать командл
                ет Remove-Item.
                
            AllScope
                Функция копируется во все создаваемые новые области.
                
        
        Поддерживаемые командлеты: New-Item, Set-Item
        
    
ПРИМЕЧАНИЯ
    
ССЫЛКИ ПО ТЕМЕ
    about_Functions 
    about_Providers 



Get-Acl

ИМЯ
    Get-Acl
    
ОПИСАНИЕ
    Получает дескриптор безопасности для ресурса, такого как файл или раздел ре
    естра.
    
СИНТАКСИС
    Get-Acl [[-Path] <string[]>] [-Audit] [-Exclude <string[]>] [-Filter <strin
    g>] [-Include <string[]>] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Acl получает объекты, которые представляют дескриптор безопас
    ности файла или ресурса. Дескриптор безопасности содержит списки управления
     доступом (ACL) ресурса. Список ACL содержит разрешения, необходимые пользо
    вателям и группам пользователей для доступа к ресурсу.
    
ПАРАМЕТРЫ
    -Audit [<SwitchParameter>]
        Получает данные аудита для дескриптора безопасности из системного списк
        а управления доступом (SACL).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Извлекает только указанные элементы. Значение этого параметра определяе
        т значение параметра Path. Введите элемент пути или шаблон, например "*
        .txt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к ресурсу. Командлет Get-Acl получает дескриптор безопаснос
        ти ресурса, заданного значением пути. Подстановочные знаки разрешены. Е
        сли пропустить параметр Path, то командлет Get-Acl получает дескриптор 
        безопасности текущего каталога.
        
        Имя параметра ("Path") указывать необязательно.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Get-Acl по конвейеру
        .
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Security.AccessControl
        Командлет Get-Acl возвращает объект, представляющий получаемое им ACL. 
        Тип объекта зависит от типа ACL.
    
    
ПРИМЕЧАНИЯ
    
    
        По умолчанию командлет Get-Acl отображает путь Windows PowerShell к рес
        урсу (<поставщик>::<путь_к_ресурсу>), владельца ресурса и список (масси
        в) записей управления доступом из дискреционного списка управления дост
        упом (DACL) ресурса. Список DACL управляется владельцем ресурса.
        При форматировании результата в виде списка, ("get-acl | format-list"),
         помимо пути, владельца и списка доступа оболочка Windows PowerShell от
        ображает следующие поля:
        Group: группа безопасности владельца.
        Audit: список (массив) записей в системном списке управления доступом (
        SACL). Список SACL указывает типы попыток доступа, для которых Windows 
        формирует записи аудита.
        Sddl: дескриптор безопасности ресурса, отображаемый в одной текстовой с
        троке в формате языка определения дескрипторов безопасности (SDDL). Обо
        лочка Windows PowerShell использует метод GetSddlForm дескрипторов безо
        пасности, чтобы получить эти данные.
        
        Get-Acl поддерживается поставщиками реестра и файловой системы, поэтому
         Get-Acl можно использовать для просмотра списка управления доступом об
        ъектов файловой системы, таких как файлы и каталоги, и объектов реестра
        , таких как параметры и разделы реестра.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-acl C:\windows
    
    
    Описание
    -----------
    Эта команда получает дескриптор безопасности каталога "C:Windows".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-acl C:\Windows\k*.log | format-list -property PSPath, Sddl
    
    
    Описание
    -----------
    Эта команда получает путь Windows PowerShell и значение SDDL для всех LOG-ф
    айлов в каталоге "C:\Windows", имена которых начинаются с "k". 
    
    Команда использует Get-Acl, чтобы получить объекты, представляющие дескрипт
    оры безопасности каждого файла журнала. Результаты передаются командлету Fo
    rmat-List с помощью оператора конвейера (|). Команда использует параметр Pr
    operty командлета Format-List, чтобы вывести только свойства PsPath и SDDL 
    каждого из объектов дескриптора безопасности.
    В оболочке Windows PowerShell часто используются списки, так как длинные зн
    ачения в таблицах усекаются.
    Значения SDDL полезны для системных администраторов, так как это простые те
    кстовые строки, содержащие все данные в дескрипторе безопасности. Их просто
     передавать и хранить, а при необходимости просто разобрать.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-ACL c:/windows/k*.log -Audit | foreach-object { $_.Audit.Count }
    
    
    Описание
    -----------
    Эта команда получает дескрипторы безопасности для всех LOG-файлов в каталог
    е "C:\ Windows", имена которых начинаются с "k". Для извлечения записей ауд
    ита из SACL в дескрипторе безопасности команда использует параметр Audit. З
    атем параметр For-EachObject используется для подсчета числа записей аудита
    , связанных с каждым файлом. Результат — список чисел, представляющих число
     записей аудита в каждом файле журнала.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-acl -path hklm:\system\currentcontrolset\control | format-list
    
    
    Описание
    -----------
    Эта команда использует Get-Acl, чтобы получить дескриптор безопасности подр
    аздела реестра Control (HKLM\SYSTEM\CurrentControlSet\Control).
    Параметр Path указывает подраздел Control. Оператор конвейера (|) передает 
    дескриптор безопасности, извлеченный командлетом Get-Acl, в команду Format-
    List, которая форматирует свойства дескриптора безопасности в виде списка, 
    чтобы облегчить чтение.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113305
    Set-Acl 



Get-Alias

ИМЯ
    Get-Alias
    
ОПИСАНИЕ
    Возвращает псевдонимы, действительные в ходе текущего сеанса.
    
СИНТАКСИС
    Get-Alias [[-Name] <string[]>] [-Exclude <string[]>] [-Scope <string>] [
    mmonParameters>]
    
    Get-Alias [-Definition <string[]>] [-Exclude <string[]>] [-Scope <string>] 
    [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Alias получает псевдонимы (альтернативные имена команд и испо
    лняемых файлов), действительные в рамках текущего сеанса. В их число входят
     встроенные псевдонимы, псевдонимы, заданные или импортированные пользовате
    лем, а также добавленные пользователем в его профиль Windows PowerShell. 
    
    По умолчанию командлет Get-Alias принимает псевдоним и возвращает имя коман
    ды. При использовании параметра Definition командлет Get-Alias принимает им
    я команды и возвращает ее псевдонимы.
    
ПАРАМЕТРЫ
    -Definition <string[]>
        Получает псевдонимы для заданного элемента. Введите имя командлета, фун
        кции, скрипта, файла или исполняемого файла.
        
        Этот параметр называется Definition, поскольку он позволяет выполнить п
        оиск по имени элемента в свойстве Definition объекта псевдонима.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение данного параметра определяет зна
        чения параметров Name и Definition. Введите имя, определение или шаблон
        , например "s*". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает псевдонимы, которые нужно получить. Подстановочные знаки разреше
        ны. По умолчанию командлет Get-Alias возвращает все псевдонимы, определ
        енные для текущего сеанса. Имя параметра ("Name") указывать необязатель
        но. Кроме того, можно передать имена псевдонимов в Get-Alias с помощью 
        конвейера.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Scope <string>
        Получает только псевдонимы в заданной области. Допустимые значения: "Gl
        obal", "Local", "Script" или номер относительно текущей области (от 0 д
        о количества областей, где 0 — текущая область, а 1 — ее родительская о
        бласть). По умолчанию используется значение "Local". Дополнительные све
        дения см. в разделе about_Scopes.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Можно передать имена псевдонимов в Get-Alias с помощью конвейера.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.AliasInfo
        Командлет Get-Alias возвращает объект, представляющий каждый из псевдон
        имов.
    
    
ПРИМЕЧАНИЯ
    
    
        Псевдоним — это альтернативное имя командлета, функции или исполняемого
         файла. Для выполнения командлета, функции или исполняемого файла можно
         использовать как его полное имя, так и любой его псевдоним. Дополнител
        ьные сведения см. в разделе About_Aliases.
        
        Для создания нового псевдонима используйте командлет Set-Alias или New-
        Alias. Для удаления псевдонима используйте командлет Remove-Item.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-alias
    
    
    Описание
    -----------
    Эта команда получает все псевдонимы в текущем сеансе.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-alias -name g*, s* -exclude get-*
    
    
    Описание
    -----------
    Эта команда получает все псевдонимы, имена которых начинаются на "g" или "s
    ", кроме псевдонимов, начинающихся на "get-".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-alias -definition Get-ChildItem
    
    
    Описание
    -----------
    Эта команда получает псевдонимы для командлета Get-ChildItem.
    
    По умолчанию командлет Get-Alias получает имя элемента, если известен псевд
    оним. Параметр Definition позволяет получить псевдоним, если известно имя э
    лемента.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-alias | where-object {$_.Options -match "ReadOnly"}
    
    
    Описание
    -----------
    Эта команда возвращает все псевдонимы, в которых свойство Options имеет зна
    чение ReadOnly. Она позволяет быстро найти псевдонимы, встроенные в Windows
     PowerShell, потому что они имеют параметр ReadOnly.
    
    Options — это только одно из свойств объектов AliasInfo, получаемых командл
    етом Get-Alias. Чтобы найти все свойства и методы объектов AliasInfo, введи
    те команду "get-alias | get-member".
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-alias -definition "*-pssession" -exclude e* -scope global
    
    
    Описание
    -----------
    Этот пример получает псевдонимы команд, имена которых заканчиваются на "-ps
    session", кроме команд, начинающихся на "e". 
    
    Для применения команды в глобальной области используется параметр Scope ком
    анды. Это бывает полезно в скриптах, в которых требуется получить псевдоним
    ы в сеансе.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113306
    about_Aliases 
    Set-Alias 
    New-Alias 
    Export-Alias 
    Import-Alias 
    Alias Provider 



Get-AuthenticodeSignature

ИМЯ
    Get-AuthenticodeSignature
    
ОПИСАНИЕ
    Получает сведения о подписи Authenticode в файле.
    
СИНТАКСИС
    Get-AuthenticodeSignature [-FilePath] <string[]> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-AuthenticodeSignature собирает сведения о подписи Authenticod
    e в файле. Если файл не подписан, то сведения извлекаются, но поля остаются
     пустыми.
    
ПАРАМЕТРЫ
    -FilePath <string[]>
        Задает путь к проверяемому файлу. Подстановочные знаки разрешены, но он
        и должны приводить к единственному файлу. Имя параметра ("FilePath") не
        обязательно.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь к файлу, можно передать командлету Get-Authenti
        codeSignature по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.Signature
        Командлет Get-AuthenticodeSignature возвращает объект подписи для каждо
        й получаемой подписи.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы получить сведения о подписях Authenticode в оболочке Windows Powe
        rShell, см. раздел About_Signing.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-AuthenticodeSignature -filepath C:\Test\NewScript.ps1
    
    
    Описание
    -----------
    Эта команда получает сведения о подписи Authenticode в файле NewScript.ps1.
     Параметр FilePath используется, чтобы указать файл.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-authenticodesignature test.ps1, test1.ps1, sign-file.ps1, makexml
    .ps1
    
    
    Описание
    -----------
    Эта команда получает сведения о подписи Authenticode в четырех файлах, пере
    численных в командной строке. В этой команде пропущено необязательное имя п
    араметра FilePath.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-childitem $pshome\*.* | foreach-object {Get-AuthenticodeSignature
     $_} | where {$_.status -eq "Valid"}
    
    
    Описание
    -----------
    Эта команда составляет список всех файлов в каталоге $pshome, у которых име
    ется действительная подпись Authenticode. Автоматическая переменная $pshome
     содержит путь к каталогу установки Windows PowerShell.
    
    Команда с помощью командлета Get-ChildItem получает файлы в каталоге $pshom
    e. Она использует шаблон ., чтобы исключить из результатов каталоги (хотя п
    ри этом также исключаются файлы, имена которых не содержат точки).
    
    Команда использует оператор конвейера (|), чтобы передать файлы в каталоге 
    $pshome командлету Foreach-Object, после чего для каждого файла вызывается 
    командлет Get-AuthenticodeSignature. 
    
    Результаты выполнения команды Get-AuthenticodeSignature передаются команде 
    Where-Object, которая выбирает только те объекты подписей, которые имеют со
    стояние "Valid".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113307
    about_Signing 
    about_Execution_Policies 
    Set-AuthenticodeSignature 
    Get-ExecutionPolicy 
    Set-ExecutionPolicy 



Get-ChildItem

ИМЯ
    Get-ChildItem
    
ОПИСАНИЕ
    Извлекает элементы и их потомки из заданных местоположений.
    
СИНТАКСИС
    Get-ChildItem [[-Path] <string[]>] [[-Filter] <string>] [-Exclude <string[]
    >] [-Force] [-Include <string[]>] [-Name] [-Recurse] [-UseTransaction] [<Co
    mmonParameters>]
    
    Get-ChildItem [-LiteralPath] <string[]> [[-Filter] <string>] [-Exclude <str
    ing[]>] [-Force] [-Include <string[]>] [-Name] [-Recurse] [-UseTransaction]
     [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-ChildItem получает элементы из заданных местоположений. Если 
    элемент является контейнером, данный командлет получает из контейнера элеме
    нты, которые называются дочерними элементами. Для извлечения элементов из в
    сех дочерних контейнеров можно использовать параметр Recurse. 
    
    Местоположение может являться расположением в файловой системе, например ка
    талогом, либо расположением, предоставляемым другим поставщиком, например к
    устом реестра или хранилищем сертификатов.
    
ПАРАМЕТРЫ
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету получать элементы, которые недоступны пользователю
         другими способами, например скрытые или системные файлы. Реализация ва
        рьируется от поставщика к поставщику. Дополнительные сведения см. в раз
        деле About_Providers. Даже при использовании параметра Force командлет 
        не может переопределить ограничения безопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Извлекает только указанные элементы. Значение этого параметра определяе
        т значение параметра Path. Введите элемент пути или шаблон, например "*
        .txt". Подстановочные знаки разрешены. 
        
        Параметр Include действует только в том случае, если команда включает п
        араметр Recurse или путь указывает на содержимое каталога, например "C:
        \Windows\*", где подстановочный знак определяет содержимое каталога "C:
        \Windows".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к одному или нескольким местоположениям. В отличие от значе
        ния параметра Path, значение параметра LiteralPath используется точно в
         том виде, в котором оно введено. Никакие символы не интерпретируются к
        ак подстановочные знаки. Если путь включает escape-символы, его нужно з
        аключить в одиночные кавычки. Одиночные кавычки указывают оболочке Wind
        ows PowerShell, что никакие символы не следует интерпретировать как esc
        ape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name [<SwitchParameter>]
        Извлекает только имена элементов, содержащихся в соответствующих местоп
        оложениях. Если вывод этой команды передать по конвейеру другой команде
        , будут переданы только имена элементов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к одному или нескольким местоположениям. Подстановочные зна
        ки разрешены. Местоположением по умолчанию является текущий каталог (.)
        .
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Recurse [<SwitchParameter>]
        Получает элементы, содержащиеся в указанных местоположениях и во всех д
        очерних элементах этих местоположений. 
        
        Параметр Recurse работает только в том случае, если путь указывает на к
        онтейнер с дочерними элементами, например "C:\Windows" или "C:\Windows\
        *", и не работает, если путь указывает на элементы без дочерних элемент
        ов, например "C:\Windows\*.exe".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Get-ChildItem по кон
        вейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Объект.
        Тип объекта, возвращаемого командлетом Get-ChildItem, определяется испо
        льзуемым поставщиком.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Get-ChildItem также можно вызывать с помощью встроенных псевд
        онимов "ls", "dir" и "gci". Дополнительные сведения см. в разделе About
        _Aliases.
        
        По умолчанию командлет Get-ChildItem не возвращает скрытые элементы. Чт
        обы получить скрытые элементы, используйте параметр -Force.
        
        Командлет Get-ChildItem предназначен для работы с данными, предоставляе
        мыми любым поставщиком. Чтобы получить список поставщиков, доступных в 
        текущем сеансе, введите команду "Get-PsProvider". Дополнительные сведен
        ия см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-childitem
    
    
    Описание
    -----------
    Эта команда извлекает дочерние элементы, расположенные в текущем местополож
    ении. Если текущее местоположение является каталогом файловой системы, кома
    нда извлекает файлы и вложенные каталоги данного каталога. Если элемент не 
    имеет потомков, то после выполнения команды ничего не показывается.
    
    По умолчанию для каждого файла отображаются следующие сведения: режим (атри
    буты), время последней записи, размер файла (длина) и имя. Допустимыми знач
    ениями режима являются: d (каталог), a (архивный), r (только чтение), h (ск
    рытый) и s (системный).
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-childitem . -include *.txt -recurse -force
    
    
    Описание
    -----------
    Эта команда извлекает все файлы с расширением ".txt" из текущего каталога и
     вложенных в него каталогов. Точка (.) представляет текущий каталог, а пара
    метр Include задает расширение файла. Параметр Recurse включает в Windows P
    owerShell режим рекурсивного извлечения объектов, а также показывает, что к
    оманда применяется к указанному каталогу и его содержимому. Параметр Force 
    добавляет скрытые файлы в набор отображаемых данных.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-childitem c:\windows\logs\* -include *.txt -exclude A*
    
    
    Описание
    -----------
    Эта команда выдает список всех TXT-файлов вложенного каталога Logs, за искл
    ючением тех, имена которых начинаются с буквы "A". Для обозначения содержим
    ого вложенного каталога Logs используется подстановочный знак (*). В команд
    е Get-ChildItem не указан параметр Recurse, поэтому автоматическое включени
    е содержимого каталога не выполняется. Содержимое необходимо задать вручную
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-childitem registry::hklm\software
    
    
    Описание
    -----------
    Эта команда извлекает все подразделы из раздела реестра HKEY_LOCAL_MACHINE\
    SOFTWARE на локальном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-childitem -name
    
    
    Описание
    -----------
    Эта команда извлекает только имена элементов из текущей папки.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-childitem cert:\. -recurse -codesigningcert
    
    
    Описание
    -----------
    Эта команда извлекает все сертификаты из хранилища сертификатов, для которы
    х выдано разрешение на подписывание кода. 
    
    В команде используется командлет Get-ChildItem. Путь задает диск Cert:, пре
    доставляемый поставщиком сертификатов Windows PowerShell. Знак обратной кос
    ой черты (\) задает подкаталог хранилища сертификатов, а точка (.) означает
     текущий каталог, который является корневым каталогом хранилища сертификато
    в. Параметр Recurse задает рекурсивный поиск.
    
    CodeSigningCertificate является динамическим параметром, обеспечивающим изв
    лечение только сертификатов для подписывания кода. Чтобы получить дополните
    льные сведения, введите команду "get-help certificate".
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-childitem * -include *.exe
    
    
    Описание
    -----------
    Эта команда извлекает все файлы с расширением ".exe"в текущем каталоге. Под
    становочный знак (*) обозначает содержимое текущего каталога (не контейнера
    ). При использовании параметра Include без параметра Recurse, задаваемый пу
    ть должен указывать на содержимое, а не на контейнер.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113308
    about_Providers 
    Get-Item 
    Get-Alias 
    Get-Location 
    Get-Process 



Get-Command

ИМЯ
    Get-Command
    
ОПИСАНИЕ
    Возвращает базовые сведения о командлетах и о других элементах команд Windo
    ws PowerShell.
    
СИНТАКСИС
    Get-Command [[-Name] <string[]>] [-CommandType {Alias | Function | Filter |
     Cmdlet | ExternalScript | Application | Script | All}] [[-ArgumentList] <O
    bject[]>] [-Module <string[]>] [-Syntax] [-TotalCount <int>] [<CommonParame
    ters>]
    
    Get-Command [-Noun <string[]>] [-Verb <string[]>] [[-ArgumentList] <Object[
    ]>] [-Module <string[]>] [-Syntax] [-TotalCount <int>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Command возвращает базовые сведения о командлетах и других эл
    ементах команд Windows PowerShell в сеансе, таких как псевдонимы, функции, 
    фильтры, скрипты и приложения. 
    
    Get-Command получает данные непосредственно из кода командлета, функции, ск
    рипта или псевдонима в отличие от Get-Help, который получает информацию из 
    файлов справки.
    
    При вызове без параметров Get-Command получает все командлеты и функции в т
    екущем сеансе. "Get-Command *" получает все элементы Windows PowerShell и в
    се файлы, не относящиеся к Windows-PowerShell, в переменной среды Path ($en
    v:path). Он группирует файлы в команде типа "Application". 
    
    Для поиска команд, добавленных в сеанс путем добавления оснастки Windows Po
    werShell или импорта модуля, можно использовать параметр Module Get-Command
    .
    
ПАРАМЕТРЫ
    -ArgumentList <Object[]>
        Получает данные о командлете или функции, используемых с указанными пар
        аметрами ("аргументами"), такими как путь.  Псевдоним ArgumentList — Ar
        gs.
        
        Для определения параметров, добавленных к командлету при его использова
        нии с определенным провайдером, установите значение ArgumentList равным
         пути на диске поставщика, например "HKEY_LOCAL_MACHINE\Software" или "
        cert:\my".
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CommandType <CommandTypes>
        Получает только команды указанных типов. Используйте "CommandType" или 
        псевдоним "Type". По умолчанию командлет Get-Command получает командлет
        ы и функции.
        
        Допустимые значения:
        -- Alias: все псевдонимы Windows PowerShell в текущем сеансе.
        
        -- All: команды всех типов. Эквивалентно "get-command *".
        
        -- Application: все файлы, отличные от файлов Windows PowerShell, котор
        ые присутствуют в путях, указанных в переменной среды Path ($env:path),
         в том числе файлы TXT, EXE и DLL.
        
        -- Cmdlet: командлеты в текущем сеансе. По умолчанию используется значе
        ние "Cmdlet".
        
        -- ExternalScript: все файлы PS1, которые присутствуют в путях, указанн
        ых в переменной среды Path ($env:path).
        
        -- Filter и Function: все функции Windows PowerShell.
        
        -- Script: блоки скриптов в текущем сеансе.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Module <string[]>
        Получает команды, которые поставляются с определенными модулями или осн
        астками. Введите имена модулей или оснасток или введите объекты оснасто
        к или модулей.
        
        Можно обращаться к этому параметру по его имени (Module) или его псевдо
        ниму (PSSnapin). Выбранное имя параметра не влияет на результаты выполн
        ения команды или ее выходные данные.
        
        Этот параметр принимает строковые значения, но также можно предоставить
         объект PSModuleInfo или PSSnapinInfo, например объекты, возвращаемые G
        et-Module, Get-PSSnapin и Import-PSSession.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Получает сведения только о командлетах или элементах команды с указанны
        м именем. <Строка> представляет целое имя или часть имени командлета ил
        и элемента команды. Подстановочные знаки разрешены.
        
        Для перечисления команд с одинаковыми именами в порядке выполнения введ
        ите имя команды без подстановочных знаков. Дополнительные сведения см. 
        в разделе "Примечания".
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Noun <string[]>
        Получает командлеты или функции с именами, в которых содержится указанн
        ое существительное. <Строка> представляет одно или несколько существите
        льных или шаблонов существительных, таких как "process" или "*item*". П
        одстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Syntax [<SwitchParameter>]
        Получает только указанные данные об элементе команды.
                   * Для псевдонимов извлекается стандартное имя.
                   * Для командлетов извлекается синтаксис.
                   * Для функций и фильтров извлекается определение функции.
                   * Для скриптов и приложений (файлов) извлекаются путь и имя 
        файла.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -TotalCount <int>
        Получает только указанное количество элементов команды. Этот параметр п
        озволяет ограничить объем выходных данных команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Verb <string[]>
        Получает данные о командлетах и функциях с именами, в которых содержитс
        я указанный глагол. <Строка> представляет один или несколько глаголов и
        ли шаблонов глаголов, таких как "remove" или "*et". Подстановочные знак
        и разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Командлету Get-Command можно передать по конвейеру указанные свойства-с
        уществительные "Name", "Command" и "Verb" или строковый объект.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Object
        Тип возвращаемого объекта зависит от типа извлеченного элемента команды
        . Например, для командлета Get-Command возвращается объект CmdletInfo, 
        а для DLL Get-Command возвращается объект ApplicationInfo.
    
    
ПРИМЕЧАНИЯ
    
    
        При вызове без параметров команда "Get-Command" возвращает сведения о к
        омандлетах и функциях Windows PowerShell. Для точного указания возвраща
        емых элементов воспользуйтесь параметрами.
        
        В отличие от команды Get-Help, которая отображает содержимое разделов X
        ML-файлов справки, команда Get-Command получает информацию о командлета
        х непосредственно из кода командлетов, установленных в системе.
        
        Командлет Get-Command возвращает команды в алфавитном порядке. Когда в 
        сеансе имеется более одной команды с одним и тем же именем, командлет G
        et-Command возвращает команды в порядке их выполнения.  Первой возвраща
        емой командой является команда, выполняемая при вводе имени команды без
         указания ее полного имени. Дополнительные сведения см. в разделе about
        _Command_Precedence.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-command
    
    
    Описание
    -----------
    Эта команда получает сведения обо всех командлетах и функциях Windows Power
    Shell. 
    
    На экране по умолчанию указывается тип команды ("Cmdlet", "Function" или "F
    ilter"), имя командлета или функции и синтаксис или определение функции.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-command -verb set | format-list
    
    
    Description
    -----------
    Эта команда получает сведения обо всех командлетах и функциях, содержащих г
    лагол "set", и отображает список, содержащий часть этих сведений. 
    
    В формате списка содержатся поля, которые пропущены в отображении этой табл
    ицы, в том числе полный синтаксис вызова. Для отображения всех полей (всех 
    свойств объекта) введите команду "get-command -verb set | format-list *".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-command -type cmdlet | sort-object noun | format-table -group nou
    n
    
    
    Description
    -----------
    Эта команда извлекает все командлеты, производит алфавитную сортировку по с
    уществительному в имени командлета и отображает их, группируя
    по существительному. Такой способ отображения поможет найти командлеты, пре
    дназначенные для определенной задачи. 
    
    По умолчанию командлет Get-Command отображает элементы в порядке их обнаруж
    ения системой. В этом же порядке они выбираются для запуска, если команда з
    апуска допускает неоднозначное толкование.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-command -module Microsoft.PowerShell.Security, TestModule
    
    
    Description
    -----------
    Эта команда получает команды из оснастки Microsoft.PowerShell.Security и мо
    дуля Test-Module.
    
    Параметр Module позволяет получить команды, которые были добавлены при импо
    рте модулей или добавлении оснасток Windows PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-command get-childitem -args cert: -syntax
    
    
    Description
    -----------
    Эта команда извлекает сведения о командлете Get-ChildItem при использовании
     Get-ChildItem с поставщиком Windows PowerShell Certificate. 
    
    При сравнении отображаемого в результате синтаксиса вызова с синтаксисом вы
    зова, который отображается, если пропустить параметр Args (ArgumentList), м
    ожно видеть, что при вызове командлета Get-ChildItem поставщик Certificate 
    динамически добавляет параметр CodeSigningCert.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>(get-command get-childitem -ArgumentList cert:).parametersets[0].para
    meters | where-object { $_.IsDynamic }
    
    
    Description
    -----------
    Эта команда извлекает только параметры, динамически добавляемые при вызове 
    командлета Get-ChildItem поставщиком Windows PowerShell Certificate. Этот м
    етод альтернативен методу из предыдущего примера.
    
    В данном случае сначала выполняется команда "get-command get-childitem -Arg
    umentList cert:". При помощи командлета Get-Command она извлекает данные о 
    командлете Get-ChildItem при его использовании совместно с поставщиком Cert
    ificate. Конструкция ".parametersets[0]" выбирает первую последовательность
     параметров (последовательность 0) из результатов вызова "get-childitem -ar
    gumentList cert:", а конструкция ".parameters" выбирает параметры в этой по
    следовательности параметров. Полученные в результате параметры передаются п
    о конвейеру командлету Where-Object для проверки каждого параметра ("$_.") 
    при помощи его свойства IsDynamic. Для нахождения свойств объектов в команд
    е воспользуйтесь командлетом Get-Member.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-command *
    
    
    Description
    -----------
    Эта команда получает информацию о командлетах, функциях, фильтрах, скриптах
     и псевдонимах Windows PowerShell в текущей консоли.
    
    Она также получает информацию обо всех файлах, которые присутствуют в путях
    , указанных в переменной среды Path ($env:path). Для каждого файла возвраща
    ется объект ApplicationInfo (System.Management.Automation.ApplicationInfo),
     а не объект FileInfo (System.IO.FileInfo)
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>get-command | where-object {$_.definition -like "*first*"}
    
    CommandType     Name                        Definition
    -----------     ----                        ---------
    Cmdlet          Select-Object               Select-Object [[-Property]
    
    
    Description
    -----------
    Эта команда находит командлет или функцию на основании имени одного из пара
    метров. Эту команду можно использовать для определения командлета или функц
    ии, если удается вспомнить только имя одного из параметров.
    
    В данном примере известно, что у одного командлета или функции есть парамет
    р First, который позволяет получить первые "n" объектов в списке, но неизве
    стно имя командлета.
    
    В команде используется командлет Get-Command, позволяющий получить объект C
    mdletInfo, который представляет все командлеты и функции в сеансе. У объект
    а CmdletInfo есть свойство Definition, в котором содержится синтаксис коман
    длета или функции с указанием всех параметров. 
    
    Оператор конвейера (|) используется для передачи объекта CmdletInfo командл
    ету Where-Object, который анализирует определение (синтаксис) каждого объек
    та ($_) и выполняет поиск значения "first".
    
    Результат выполнения команды показывает, что параметр First принадлежит ком
    андлету Select-Object.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>get-command dir | format-list
    
    Name              : dir
    CommandType       : Alias
    Definition        : Get-ChildItem
    ReferencedCommand : Get-ChildItem
    ResolvedCommand   : Get-ChildItem
    
    
    Description
    -----------
    В этом примере показано, как использовать командлет Get-Command для псевдон
    има. Хотя командлет Get-Command обычно используется для командлетов, он так
    же отображает информацию о коде в скриптах, функциях, псевдонимах и исполня
    емых файлах.
    
    Эта команда удаляет отображает псевдоним "dir" в текущей консоли. Результат
     передается по конвейеру командлетам Format-List.
    
    
    
    
    
    -------------------------- ПРИМЕР 10 --------------------------
    
    C:\PS>get-command notepad
    
    CommandType     Name           Definition
    -----------     ----           ----------
    Application     notepad.exe    C:\WINDOWS\system32\notepad.exe
    Application     NOTEPAD.EXE    C:\WINDOWS\NOTEPAD.EXE
    
    
    Description
    -----------
    В этом примере показано, как использовать командлет Get-Command для определ
    ения команды, выполняемой Windows PowerShell в случае, если доступны нескол
    ько команд с одинаковым именем. При использовании параметра Name без подста
    новочных знаков командлет Get-Command перечисляет команды с указанным имене
    м в порядке выполнения.
    
    Это команда показывает, какая программа Notepad будет запущена Windows Powe
    rShell при вводе "Notepad" без полного пути. В команде используется парамет
    р Name без подстановочных знаков. 
    
    Пример выходных данных показывает команды с именем "Notepad" в текущей конс
    оли. Из приведенных данных можно сделать вывод, что Windows PowerShell запу
    стит экземпляр Notepad.exe из каталога C:\Windows\System32.
    
    
    
    
    
    -------------------------- ПРИМЕР 11 --------------------------
    
    C:\PS>(get-command get-date).pssnapin
    
    C:\PS> (get-command remove-gpo).module
    
    
    Description
    -----------
    Эти команды показывают, как найти оснастку или модуль, к которому принадлеж
    ит определенный командлет.
    
    В первой команде для определения оснастки, добавившей командлет Get-Date, и
    спользуется свойство PSSnapin объекта CmdletInfo. 
    
    Во второй команде для определения модуля, добавившего командлет Remove-GPO,
     используется свойство Module объекта CmdletInfo.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113309
    about_Command_Precedence 
    Get-Help 
    Get-PSDrive 
    Get-Member 
    Import-PSSession 
    Export-PSSession 



Get-ComputerRestorePoint

ИМЯ
    Get-ComputerRestorePoint
    
ОПИСАНИЕ
    Получает точки восстановления системы на локальном компьютере.
    
СИНТАКСИС
    Get-ComputerRestorePoint [[-RestorePoint] <Int32[]>] [<CommonParameters>]
    
    Get-ComputerRestorePoint -LastStatus [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-ComputerRestorePoint получает точки восстановления системы на
     локальном компьютере. С помощью этого командлета также можно определить со
    стояние последней операции восстановления системы на локальном компьютере. 
    
    Возвращаемую командлетом Get-ComputerRestorePoint информацию можно использо
    вать для выбора точки восстановления; в частности, можно использовать поряд
    ковый номер, чтобы определить точку восстановления для командлета Restore-C
    omputer.
    
ПАРАМЕТРЫ
    -LastStatus [<SwitchParameter>]
        Получает состояние последней операции восстановления системы.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -RestorePoint <Int32[]>
        Получает точки восстановления с указанными порядковыми номерами. Введит
        е порядковые номера точек восстановления. По умолчанию командлет Get-Co
        mputerRestorePoint возвращает все точки восстановления системы на локал
        ьном компьютере.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                Все точки восстановления
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать объекты этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.ManagementObject#root\default\SystemRestore или String.
        Get-ComputerRestore возвращает объект SystemRestore, который является э
        кземпляром класса SystemRestore WMI. При использовании параметра LastSt
        atus этот командлет возвращает строку.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать командлет Get-ComputerRestorePoint в Windows Vista и
         более поздних версиях Windows, необходимо запускать Windows PowerShell
         командой "Запуск от имени администратора".
        
        Этот командлет использует класс SystemRestore инструментария управления
         Windows (WMI).
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-computerrestorepoint
    
    
    Описание
    -----------
    Эта команда получает все точки восстановления системы на локальном компьюте
    ре.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-computerrestorepoint -restorepoint 232, 240, 245
    
    
    Описание
    -----------
    Эта команда получает точки восстановления с порядковыми номерами 232, 240 и
     245.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-computerrestorepoint -laststatus
    
    The last restore failed.
    
    
    Описание
    -----------
    Эта команда отображает состояние последней операции восстановления системы 
    на локальном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-computerrestorepoint | format-table SequenceNumber, @{Label="Date
    "; Expression={$_.ConvertToDateTime($_.CreationTime)}}, Description -auto
    
    
    SequenceNumber Date                  Description
    -------------- ----                  -----------
               253 8/5/2008 3:19:20 PM   Windows Update
               254 8/6/2008 1:53:24 AM   Windows Update
               255 8/7/2008 12:00:04 AM  Scheduled Checkpoint
    ...
    
    
    Описание
    -----------
    Эта команда отображает точки восстановления в таблице для удобного чтения. 
    
    Команда Format-Table включает вычисляемое свойство, использующее метод Conv
    ertToDateTime для преобразования значения свойства CreationTime из формата 
    WMI в объект DateTime.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>((get-computerrestorepoint)[-1]).sequencenumber
    
    
    Описание
    -----------
    Эта команда получает порядковый номер последней созданной на компьютере точ
    ки восстановления. 
    
    Для получения последнего элемента массива, возвращенного командлетом Get-Co
    mputerRestorePoint, используется индекс -1.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135215
    Enable-ComputerRestore 
    Disable-ComputerRestore 
    Restore-Computer 
    Restart-Computer 



Get-Content

ИМЯ
    Get-Content
    
ОПИСАНИЕ
    Извлекает содержимое элемента, находящегося в заданном местоположении.
    
СИНТАКСИС
    Get-Content [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Exclud
    e <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-ReadCount
     <Int64>] [-TotalCount <Int64>] [-UseTransaction] [<CommonParameters>]
    
    Get-Content [-Path] <string[]> [-Credential <PSCredential>] [-Exclude <stri
    ng[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-ReadCount <Int64
    >] [-TotalCount <Int64>] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Content возвращает содержимое элемента, находящегося в заданн
    ом путем местоположении, например текст из файла. Командлет построчно считы
    вает содержимое и возвращает объект для каждой строки.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиков.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Переопределяет ограничения, препятствующие выполнению команды, не ставя
         под угрозу безопасность. Например, параметр Force позволяет переопреде
        лить атрибут "только чтение" или создать дополнительные каталоги в пути
         к файлу без изменения разрешений на доступ к файлам.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Извлекает только указанные элементы. Значение этого параметра определяе
        т значение параметра Path. Введите элемент пути или шаблон, например "*
        .txt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к элементу. В отличие от значения параметра Path, значение 
        параметра LiteralPath используется точно в том виде, в котором оно введ
        ено. Никакие символы не интерпретируются как подстановочные знаки. Если
         путь включает escape-символы, его нужно заключить в одиночные кавычки.
         Одиночные кавычки указывают оболочке Windows PowerShell, что никакие с
        имволы не следует интерпретировать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к элементу. Для извлечения содержимого используется командл
        ет Get-Content. Подстановочные знаки разрешены. Имя параметра ("Path" и
        ли "FilePath") указывать необязательно.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -ReadCount <Int64>
        Задает количество строк содержимого, передаваемых по конвейеру за один 
        раз. По умолчанию используется значение 1. Если задать значение 0, все 
        содержимое будет передано за один раз. 
        
        Этот параметр не изменяет отображаемое содержимое, но влияет на время е
        го отображения. При увеличении значения параметра ReadCount время, необ
        ходимое для возврата первой строки, возрастает, но общее время выполнен
        ия операции сокращается. В случае очень больших элементов разница может
         оказаться довольно значительной.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -TotalCount <Int64>
        Задает количество извлекаемых строк содержимого. По умолчанию используе
        тся значение -1 (все строки).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Данные невозможно передать командлету Get-Content по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Object
        Командлет Get-Content возвращает объекты, представляющие получаемое им 
        содержимое. Тип объекта зависит от типа содержимого.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Get-Content также можно вызвать с помощью его псевдонимов "ca
        t", "type" и "gc". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлет Get-Content предназначен для работы с данными, предоставляемы
        ми любым поставщиком. Чтобы получить список поставщиков, доступных в те
        кущем сеансе, введите команду "Get-PsProvider". Дополнительные сведения
         см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-content -Path C:\Chapters\chapter1.txt
    
    
    Описание
    -----------
    Эта команда отображает содержимое файла Chapter1.txt в консоли. Для задания
     имени элемента используется параметр Path. Командлет Get-Content фактическ
    и передает содержимое дальше по конвейеру, однако из-за отсутствия в конвей
    ере других элементов данные форматируются и отображаются на консоли.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-content c:\Logs\Log060912.txt -totalcount 50 | set-content sample
    .txt
    
    
    Описание
    -----------
    Эта команда извлекает первые 50 строк файла Log060912.txt и сохраняет их в 
    файле sample.txt. Для извлечения текста из файла в данной команде используе
    тся командлет Get-Content. (Имя параметра Path является необязательным и оп
    ущено.) Извлечение данных останавливается после считывания первых 50 строк,
     как задано значением параметра TotalCount. Оператор конвейера (|) пересыла
    ет результат командлету Set-Content, который помещает его в файл sample.txt
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>(get-content cmdlets.txt -totalcount 5)[-1]
    
    
    Описание
    -----------
    Эта команда получает пятую строку текстового файла Cmdlets.txt. Параметр To
    talCount используется для получения первых пяти строк; затем используется и
    ндекс массива "-1" для получения результирующего набора.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113310
    about_Providers 
    Add-Content 
    Set-Content 
    Clear-Content 



Get-Counter

ИМЯ
    Get-Counter
    
ОПИСАНИЕ
    Получает данные счетчиков производительности на локальном компьютере и удал
    енных компьютерах.
    
СИНТАКСИС
    Get-Counter [-Counter] <string[]> [-ComputerName <string[]>] [-Continuous] 
    [-MaxSamples <Int64>] [-SampleInterval <int>] [<CommonParameters>]
    
    Get-Counter -ListSet <string[]> [-ComputerName <string[]>] [<CommonParamete
    rs>]
    
    
ОПИСАНИЕ
    Командлет Get-Counter в режиме реального времени получает данные счетчиков 
    производительности непосредственно из средств наблюдения за производительно
    стью Windows.  Его можно использовать для получения данных о производительн
    ости локального компьютера и удаленных компьютеров через заданный интервал 
    времени.
    
    При вызове без параметров команда "Get-Counter" возвращает данные для набор
    а системных счетчиков. 
    
    С помощью параметров командлета Get-Counter можно задавать один или несколь
    ко компьютеров, перечислять наборы счетчиков производительности и счетчики,
     входящие в такие наборы, а также задавать размер и интервал выборки.
    
ПАРАМЕТРЫ
    -ComputerName <string[]>
        Получает данные от указанных компьютеров. Введите NetBIOS-имя, IP-адрес
         или полные доменные имена компьютеров. По умолчанию используется значе
        ние "Локальный компьютер".
        
        Примечание. Командлет Get-Counter не использует удаленное взаимодействи
        е Windows PowerShell. Параметр ComputerName командлета Get-Counter можн
        о использовать, даже если компьютер не настроен на удаленное взаимодейс
        твие в Windows PowerShell.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Continuous [<SwitchParameter>]
        Непрерывное получение выборок до тех пор, пока не будут нажаты клавиши 
        CTRL+C. По умолчанию командлет Get-Counter получает только одну выборку
         счетчика. Для задания интервала непрерывного получения выборок можно и
        спользовать параметр SampleInterval.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Counter <string[]>
        Получает данные от заданных счетчиков производительности. Введите один 
        или несколько путей счетчиков. Подстановочные знаки разрешается использ
        овать только в значении Instance. Кроме того, строки путей счетчиков мо
        жно по конвейеру передать в Get-Counter. 
        
        Путь счетчика имеет следующий формат:
               "[\\<ComputerName>]\<CounterSet>(<Instance>)\
        
        Пример: 
                "\\Server01\Processor(2)\% User Time".  
        
        Элемент <ComputerName> указывать не обязательно. Если он не указан, ком
        андлет Get-Counter использует значение параметра ComputerName.
        
        Примечание. Чтобы получить пути счетчиков в нужном формате, следует исп
        ользовать параметр ListSet для получения набора счетчиков производитель
        ности. Свойства Paths и PathsWithInstances каждого набора счетчиков про
        изводительности содержат пути отдельных счетчиков в формате строки. Стр
        оки путей счетчиков можно сохранить в переменной. Также можно передать 
        строку по конвейеру непосредственно другой команде Get-Counter. Порядок
         использования см. в примерах.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  true
        
    -ListSet <string[]>
        Получает заданные наборы счетчиков производительности на компьютерах. В
        ведите имена наборов счетчиков. Подстановочные знаки разрешены. Кроме т
        ого, можно передать имена наборов счетчиков в Get-Counter с помощью кон
        вейера.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -MaxSamples <Int64>
        Задает число выборок, получаемых для каждого счетчика. Значение по умол
        чанию: 1 выборка. Для непрерывного получения выборок (без ограничения м
        аксимального размера выборки) используйте параметр Continuous.
        
        Для сбора очень больших наборов данных следует использовать команду Get
        -Counter в качестве фонового задания Windows PowerShell. Дополнительные
         сведения см. в разделах about_Jobs и Start-Job.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SampleInterval <int>
        Задает интервал между выборками в секундах. Минимальное значение (и зна
        чение по умолчанию) —1 секунда.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                1
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String[]
        Пути счетчиков и имена наборов счетчиков (ListSet) можно передать в Get
        -Counter с помощью конвейера.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.GetCounter.CounterSet, Microsoft.PowerShell.C
    ommands.GetCounter.PerformanceCounterSampleSet, Microsoft.PowerShell.Comman
    ds.GetCounter.PerformanceCounterSample
        Параметр ListSet возвращает объекты Microsoft.PowerShell.Commands.GetCo
        unter.CounterSet. Параметр Counter возвращает объекты Microsoft.PowerSh
        ell.Commands.GetCounter.PerformanceCounterSampleSet. Значением каждого 
        счетчика является объект Microsoft.PowerShell.Commands.GetCounter.Perfo
        rmanceCounterSample.
    
    
ПРИМЕЧАНИЯ
    
    
        Для защиты счетчиков производительности часто используются списки управ
        ления доступом (ACL). Чтобы получить все доступные счетчики производите
        льности, необходимо запускать Windows PowerShell командой "Запуск от им
        ени администратора".
        
        По умолчанию командлет Get-Counter получает одну выборку в течение одно
        секундного интервала выборки. Чтобы это изменить, воспользуйтесь параме
        трами MaxSamples и Continuous.
        
        Заданные значения параметров MaxSamples и SampleInterval применяются в 
        отношении всех счетчиков на всех компьютерах, указанных в команде. Чтоб
        ы задать различные значения для разных счетчиков, следует использовать 
        отдельные команды Get-Counter для каждого счетчика.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    Эта команда возвращает все наборы счетчиков на локальном компьютере.
    
    C:\PS> get-counter -ListSet *
    
    Поскольку многие наборы счетчиков защищены с помощью списков управления дос
    тупом (ACL), то прежде чем использовать команду Get-Counter, необходимо зап
    устить Windows PowerShell командой "Запуск от имени администратора".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    Эта команда возвращает текущие суммарные значения счетчика "% Processor Tim
    e" для всех процессоров на локальном компьютере. Сбор данных выполняется ка
    ждые две секунды, пока не будут получены три значения. 
    
    C:\PS> get-counter -Counter "\Processor(_Total)\% Processor Time" -SampleIn
    terval 2 -MaxSamples 3
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    Эта команда возвращает список имен всех наборов счетчиков на локальном комп
    ьютере в алфавитном порядке.
    
    C:\PS> get-counter -listset * | sort-object  countersetname | format-table 
    countersetname
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    В этих командах свойство Path набора счетчиков используется для определения
     путей счетчиков производительности в необходимом формате. Аналогичные кома
    нды можно использовать для получения путей счетчиков в правильном формате.
    
    Первая команда возвращает пути счетчиков производительности в наборе счетчи
    ков "Memory" на локальном компьютере.  
    
    C:\PS> (get-counter -listset memory).paths
    
    \Memory\Page Faults/sec
    \Memory\Available Bytes
    \Memory\Committed Bytes
    \Memory\Commit Limit
    \Memory\Write Copies/sec
    \Memory\Transition Faults/sec
    \Memory\Cache Faults/sec
    \Memory\Demand Zero Faults/sec
    \Memory\Pages/sec
    \Memory\Pages Input/sec
    ...
    
    Вторая команда возвращает пути, содержащие слово "cache".
    
    C:\PS> (get-counter -listset memory).paths | where {$_ -like "*cache*"}
    
    \Memory\Cache Faults/sec
    \Memory\Cache Bytes
    \Memory\Cache Bytes Peak
    \Memory\System Cache Resident Bytes
    \Memory\Standby Cache Reserve Bytes
    \Memory\Standby Cache Normal Priority Bytes
    \Memory\Standby Cache Core Bytes
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    Эти команды возвращают данные счетчика "Disk Reads/sec" на компьютерах Serv
    er01 и Server02. 
    
    Первая команда сохраняет путь счетчика "Disk Reads/sec" в переменной $diskr
    eads.
    
    C:\PS> $diskreads = "\LogicalDisk(C:)\Disk Reads/sec"
    
    Вторая команда с помощью оператора конвейера (|) передает путь счетчика из 
    переменной $diskreads в командлет Get-Counter. Параметр MaxSamples, использ
    уемый в команде, ограничивает число выводимых выборок до 10.
    
    C:\PS> $diskreads | get-counter -computer Server01, Server02 -maxsamples 10
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    Эта команда возвращает в необходимом формате пути счетчиков производительно
    сти "PhysicalDisk", включая экземпляры имен. 
    
    C:\PS> (get-counter -list physicaldisk).pathswithinstances
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    Эти команды возвращают значение счетчика производительности "% DPC Time" дл
    я 50 случайным образом выбранных компьютеров предприятия. 
    
    Первая команда использует командлет Get-Content для получения списка всех с
    ерверов предприятия из файла Servers.txt. В ней используется командлет Get-
    Random для получения 50 имен серверов, выбранных случайным образом из файла
     Servers.txt. Результаты сохраняются в переменной $servers.
    
    C:\PS> $servers = get-random (get-content servers.txt) -count 50
    
    Вторая команда сохраняет путь счетчика "% DPC Time" в переменной $Counter. 
    Путь счетчика содержит подстановочный знак в имени экземпляра, чтобы получа
    ть данные со всех процессоров на каждом из компьютеров. 
    
    C:\PS> $counter = "\Processor(*)\% DPC Time"
    
    Третья команда использует командлет Get-Counter для получения значений счет
    чика. В ней используется параметр Counter для задания счетчиков и параметр 
    ComputerName для задания компьютеров, сохраненных в переменной $servers.
    
    C:\PS> get-counter -Counter $counter -computername $servers
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    Эти команды возвращают одно значение для всех счетчиков производительности 
    в наборе счетчиков памяти на локальном компьютере.
    
    Первая команда получает пути счетчиков и сохраняет их в переменной $memCoun
    ters.
    
    C:\PS> $memCounters = (get-counter -list memory).paths
    
    Вторая команда использует командлет Get-Counter для получения данных каждог
    о счетчика. Для задания счетчиков в переменной $memCounters используется па
    раметр Counter.
    
    C:\PS> get-counter -counter $memCounters
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    В этом примере показаны значения свойств объекта PerformanceCounterSample, 
    представляющего каждую выборку данных.
    
    Первая команда сохраняет путь счетчика в переменной $counter. 
    
    C:\PS> $counter = "\\SERVER01\Process(Idle)\% Processor Time" 
    
    Вторая команда использует командлет Get-Counter для получения одной выборки
     значений счетчика. Результат сохраняется в переменной $data.
    
    C:\PS> $data = get-counter $counter
    
    Третья команда использует командлет Format-List для отображения в виде спис
    ка всех свойств свойства CounterSamples объекта набора выборки.
    
    C:\PS> $data.countersamples | format-list -property *
    
    Path             : \\SERVER01\process(idle)\% processor time
    InstanceName     : idle
    CookedValue      : 198.467899571389
    RawValue         : 14329160321003
    SecondValue      : 128606459528326201
    MultipleCount    : 1
    CounterType      : Timer100Ns
    Timestamp        : 15.07.2008 18:39:12
    Timestamp100NSec : 128606207528320000
    Status           : 0
    DefaultScale     : 0
    TimeBase         : 10000000
    
    Свойства объекта CounterSamples можно использовать для проверки, выбора, уп
    орядочения и группирования данных.
    
    
    
    
    
    -------------------------- ПРИМЕР 10 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    Эта команда запускает команду Get-Counter в качестве фонового задания. Допо
    лнительные сведения см. в разделе Start-Job.
    
    C:\PS> $counters = "\LogicalDisk(_Total)\% Free Space"
    
    C:\PS> start-job -scriptblock {get-counter -counter $counters -maxsamples 1
    000)
    
    
    
    
    
    -------------------------- ПРИМЕР 11 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    Эта команда использует командлеты Get-Counter и Get-Random для определения 
    процентной доли свободного места на диске на 50 компьютерах, выбранных случ
    айным образом из файла Servers.txt.
    
    C:\PS> get-counter -computername (get-random servers.txt -count 50) -counte
    r "\LogicalDisk(*)\% Free Space"
    
    
    
    
    
    -------------------------- ПРИМЕР 12 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    В этом примере показано, как сопоставить данные счетчика с компьютером, к к
    оторому он относится, и как работать с данными.
    
    
    Первая команда с помощью командлета Get-Counter получает значение счетчика 
    "LogicalDisk\% Free Space" для двух удаленных компьютеров S1 и S2. Эта кома
    нда сохраняет результат в переменной $a.
    
    $a = get-counter "\LogicalDisk(_Total)\% Free Space" -comp s1, s2
    
    
    
    Вторая команда отображает результаты, сохраненные в переменной $a. Все данн
    ые сохраняются в объекте, однако это неочевидно из этой формы.
    
    C:\PS> $a
    
    Counter Paths: \\s1\\logicaldisk(c:)\% free space, \\s1\\logicaldisk(d:)\% 
    free space, \\s1\\logicaldisk(_total)\% free space, \\s2\\logicaldisk(c:)\%
     free space, \\s2\\logicaldisk(_total)\% free space
    
    Timestamp     : 15.07.2008 17:09:08
    Cooked Values : "0.327058823529412", "17.8952248493278", "12.9994033060778"
    , "75.0754805595626", "75.0754805595626"
    
    
    
    Третья команда отображает таблицу значений свойства CounterSamples объекта 
    PerformanceCounterSampleSet, возвращаемого командлетом Get-Counter. (Чтобы 
    просмотреть все свойства и методы этого объекта, передайте его по конвейеру
     командлету Get-Member.) 
    
    C:\PS> $a.countersamples | format-table -auto
    
    Path                                     InstanceName       CookedValue
    ----                                     ------------       -----------
    \\s1\\logicaldisk(c:)\% free space       c:           0.327058823529412
    \\s1\\logicaldisk(d:)\% free space       d:            17.8952248493278
    \\s1\\logicaldisk(_total)\% free space   _total        12.9994033060778
    \\s2\\logicaldisk(c:)\% free space       c:            75.0754805595626
    \\s2\\logicaldisk(_total)\% free space   _total        75.0754805595626
    
    Свойство CounterSamples содержит объект PerformanceCounterSample, имеющий с
    обственные свойства и методы. В четвертой команде используется индекс масси
    ва для получения выборки от первого счетчика и оператор конвейера для перед
    ачи объекта выборки счетчика командлету Format-List, который отображает все
     свойства и методы объекта в виде списка. При этом отображается множество д
    анных для каждого объекта выборки счетчика.
    
    
    
    В четвертой команде показано, как выбирать данные из выборок счетчика. Она 
    использует командлет Where-Object для получения только тех выборок счетчика
    , у которых значение параметра CookedValue меньше 15.
    
    C:\PS> $a.countersamples | where {$_.cookedvalue -lt 15}
    
    Path                                     InstanceName       CookedValue
    ----                                     ------------       -----------
    \\s1\\logicaldisk(c:)\% free space       c:           0.327058823529412
    \\s1\\logicaldisk(_total)\% free space   _total        12.9994033060778
    
    
    
    
    
    -------------------------- ПРИМЕР 13 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    В этом примере показано, как сортировать извлеченные данные счетчика произв
    одительности. В данном примере на компьютере обнаруживаются процессы, котор
    ые обеспечивают наибольшую загруженность процессора во время выборки.
    
    Первая команда получает данные счетчика "Process\% Processor Time" для всех
     процессов, выполняющихся на компьютере. Результаты сохраняются в переменно
    й $p.
    
    C:\PS> $p = get-counter '\Process(*)\% Processor Time' 
    
    
    Вторая команда извлекает свойство CounterSamples объекта набора выборок, ук
    азанного в переменной $p. Кроме того, выполняется сортировка выборок в поря
    дке убывания значения выборки с обработкой. Команда использует командлет Fo
    rmat-Table с параметром AutoFormat для отображения столбцов в виде таблицы.
     
    
    C:\PS> $p.CounterSamples | sort-object -property CookedValue -Descending | 
    format-table -auto
    
    Path                                              InstanceName      CookedV
    alue
    ----                                              ------------      -------
    ----
    \\server01\process(_total)\% processor time        _total        200.006410
    42078
    \\server01\process(idle)\% processor time          idle          200.006410
    42078
    \\server01\process(explorer#1)\% processor time    explorer                
        0
    \\server01\process(dwm#1)\% processor time         dwm                     
        0
    \\server01\process(taskeng#1)\% processor time     taskeng                 
        0
    \\server01\process(taskhost#1)\% processor time    taskhost                
        0
    \\server01\process(winlogon)\% processor time      winlogon                
        0
    \\server01\process(csrss)\% processor time         csrss                   
        0
    
    
    
    
    
    -------------------------- ПРИМЕР 14 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    Эти команды обнаруживают выполняемые на компьютере процессы с наибольшими р
    абочими наборами. Процессы перечисляются в порядке убывания размера рабочег
    о набора процесса. 
    
    Первая команда получает по одной выборке данных счетчика "Process\Working S
    et - Private" для каждого процесса. Команда сохраняет данные счетчика в пер
    еменной $ws.
    
    C:\PS> $ws = get-counter "\Process(*)\Working Set - Private"
    
    Вторая команда с помощью оператора конвейера (|) передает данные, содержащи
    еся в свойстве CounterSamples, командлету Sort-Object, который упорядочивае
    т данные процессов по убыванию значения свойства CookedValue. Другой операт
    ор конвейера передает упорядоченные данные командлету Format-Table, который
     выводит данные в виде таблицы со столбцами InstanceName и CookedValue.
    
    C:\PS> $ws.countersamples | sort-object -property cookedvalue -descending |
     format-table -property InstanceName, CookedValue -auto
    
    InstanceName  CookedValue
    ------------  -----------
    _total          162983936
    svchost          40370176
    powershell       15110144
    explorer         14135296
    svchost          10928128
    svchost           9027584
    ...
    
    
    
    
    
    -------------------------- ПРИМЕР 15 --------------------------
    
    C:\PS># Get-Counter
    
    
    Описание
    -----------
    Эта команда получает последовательность выборок счетчика Processor\% Proces
    sor Time с односекундным интервалом по умолчанию. Чтобы остановить выполнен
    ие команды, нажмите сочетание клавиш CTRL+C.
    
    C:\PS> get-counter -counter "\processor(_total)\% processor time" -continuo
    us
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=138335
    Import-Counter 
    Export-Counter 



Get-Credential

ИМЯ
    Get-Credential
    
ОПИСАНИЕ
    Получает объект хранения учетных данных на основе имени пользователя и паро
    ля.
    
СИНТАКСИС
    Get-Credential [-Credential] <PSCredential> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Credential создает объект хранения учетных данных для указанн
    ых имени пользователя и пароля. Объект хранения учетных данных можно исполь
    зовать в операциях, связанных с безопасностью.
    Командлет запрашивает у пользователя пароль или имя пользователя и пароль. 
    Пользователи получают запрос с помощью диалогового окна или командной строк
    и (в зависимости от параметров системного реестра).
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Указывает имя пользователя для учетных данных, например "User01" или "D
        omain01\User01". Имя параметра ("Credential") необязательно.
        
        При отправке команды появляется запрос на ввод пароля. 
        
        Если ввести имя пользователя без указания домена, командлет Get-Credent
        ial вставит перед именем обратную косую черту. 
        
        Если параметр пропущен, программа просит ввести имя пользователя и паро
        ль.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSCredential
        Get-Credential возвращает объект хранения учетных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Созданный с помощью Get-Credential объект PSCredential можно использова
        ть в командлетах, которые запрашивают проверку подлинности пользователя
        , в частности, которые используют параметр Credential.
        Параметр Credential не поддерживается поставщиками, которые поставляютс
        я с Windows PowerShell. Однако можно использовать параметр Credential с
         Get-WmiObject, так как он напрямую вызывает Microsoft .NET Framework.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$c = Get-Credential
    
    
    Описание
    -----------
    Эта команда получает объект хранения учетных данных и сохраняет его в перем
    енной $c. 
    
    При вводе команды на экране появляется диалоговое окно с запросом имени пол
    ьзователя и пароля. Когда запрошенные данные введены, командлет создает объ
    ект PSCredential, представляющий учетные данные пользователя, и сохраняет е
    го в переменной $c. 
    
    Объект можно использовать в качестве входного для командлетов, которые запр
    ашивают проверку подлинности пользователя, в частности, которые используют 
    параметр Credential. Однако поставщики, поставляемые с Windows PowerShell, 
    не поддерживают параметр Credential.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$c = Get-Credential
    
    C:\PS>Get-WmiObject Win32_DiskDrive -ComputerName Server01 -Credential $c
    
    
    Описание
    -----------
    Эти команды используют объект хранения учетных данных из Get-Credential для
     проверки подлинности пользователя удаленного компьютера, чтобы они могли и
    спользовать инструментарий управления Windows (WMI) для управления компьюте
    ром.
    Первая команда получает объект хранения учетных данных и сохраняет его в пе
    ременной $c. Вторая команда использует объект хранения учетных данных в ком
    анде Get-WmiObject. Эта команда получает данные о дисковых накопителях на к
    омпьютере Server01.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>C:\PS>Get-WmiObject Win32_BIOS -ComputerName Server01 '
    -Credential (get-credential Domain01\User01)
    
    
    Описание
    -----------
    Эта команда показывает, как включить команду Get-Credential в команду Get-W
    miObject.
    Эта команда использует командлет Get-WmiObject, чтобы получить данные о BIO
    S компьютера Server01. Она использует параметр Credential для проверки подл
    инности пользователя, Domain01\User01, и команду Get-Credential в качестве 
    значения параметра Credential.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$c = Get-Credential -credential User01
    
    C:\PS>$c.Username
    
    \User01
    
    
    Описание
    -----------
    В этом примере создаются учетные данные, включающие имя пользователя без им
    ени домена. Она показывает, что командлет Get-Credential вставляет перед им
    енем пользователя обратную косую черту.
    Первая команда получает учетные данные, включающие имя пользователя User01,
     и сохраняет их в переменной $c.
    Вторая команда выводит значение свойства Username полученного объекта хране
    ния учетных данных.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$credential = $host.ui.PromptForCredential("Need credentials", "Pleas
    e enter your user name and password.", "", "NetBiosUserName")
    
    
    Описание
    -----------
    Эта команда с помощью метода PromptForCredential выдает пользователю запрос
     на ввод имени пользователя и пароля. Эта команда сохраняет полученные учет
    ные данные в переменной $credential.
    
    PromptForCredential — это альтернатива использованию командлета Get-Credent
    ial. При использовании метода PromptForCredential можно задать заголовок, с
    ообщения, а также имя пользователя, появляющиеся в окне сообщения.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>Set-ItemProperty 'HKLM:\SOFTWARE\Microsoft\PowerShell\1\ShellIds' Con
    solePrompting $true
    
    
    Описание
    -----------
    По умолчанию запрос у пользователя имени пользователя и пароля осуществляет
    ся с помощью диалогового окна. Чтобы выполнить этот запрос с помощью команд
    ной строки, измените реестр, от имени администратора выполнив данную команд
    у Windows PowerShell.
    
    Чтобы запрос выводился с помощью диалогового окна, выполните ту же команду,
     изменив значение параметра на "ConsolePrompting $false".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113311



Get-Culture

ИМЯ
    Get-Culture
    
ОПИСАНИЕ
    Получает текущее значение культуры, установленное в операционной системе.
    
СИНТАКСИС
    Get-Culture [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Culture получает сведения о параметрах текущей культуры. Они 
    включают информацию об установленных в данный момент в системе настройках, 
    связанных с языком, например о раскладке клавиатуры и о формате отображения
     таких элементов, как числа, валюта и даты. 
    
    Можно также использовать командлет Get-UICulture, который получает информац
    ию о текущей культуре пользовательского интерфейса системы. Культура пользо
    вательского интерфейса определяет текстовые строки, которые используются в 
    качестве элементов пользовательского интерфейса, например меню и сообщений.
    
ПАРАМЕТРЫ
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Globalization.CultureInfo
        Командлет Get-Culture возвращает объект, представляющий текущую культур
        у.
    
    
ПРИМЕЧАНИЯ
    
    
        Кроме того, можно использовать переменные $PsCulture и $PsUICulture. В 
        переменной $PsCulture хранится имя текущей культуры, а в переменной $Ps
        UICulture — имя текущей культуры пользовательского интерфейса.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-culture
    
    
    Описание
    -----------
    Эта команда отображает сведения о региональных параметрах компьютера.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$c = get-culture
    
    C:\PS> $c | format-list -property *
    
    Parent                         : en
    LCID                           : 1033
    KeyboardLayoutId               : 1033
    Name                           : en-US
    IetfLanguageTag                : en-US
    DisplayName                    : English (United States)
    NativeName                     : English (United States)
    EnglishName                    : English (United States)
    TwoLetterISOLanguageName       : en
    ThreeLetterISOLanguageName     : eng
    ThreeLetterWindowsLanguageName : ENU
    CompareInfo                    : CompareInfo - 1033
    TextInfo                       : TextInfo - 1033
    IsNeutralCulture               : False
    CultureTypes                   : SpecificCultures, InstalledWin32Cultures, 
    FrameworkCultures
    NumberFormat                   : System.Globalization.NumberFormatInfo
    DateTimeFormat                 : System.Globalization.DateTimeFormatInfo
    Calendar                       : System.Globalization.GregorianCalendar
    OptionalCalendars              : {System.Globalization.GregorianCalendar, S
    ystem.Globalization.GregorianCalendar}
    UseUserOverride                : True
    IsReadOnly                     : False
    
    
    C:\PS> $c.calendar
    
    MinSupportedDateTime : 1/1/0001 12:00:00 AM
    MaxSupportedDateTime : 12/31/9999 11:59:59 PM
    AlgorithmType        : SolarCalendar
    CalendarType         : Localized
    Eras                 : {1}
    TwoDigitYearMax      : 2029
    IsReadOnly           : False
    
    
    C:\PS> $c.datetimeformat
    
    AMDesignator                     : AM
    Calendar                         : System.Globalization.GregorianCalendar
    DateSeparator                    : /
    FirstDayOfWeek                   : Sunday
    CalendarWeekRule                 : FirstDay
    FullDateTimePattern              : dddd, MMMM dd, yyyy h:mm:ss tt
    LongDatePattern                  : dddd, MMMM dd, yyyy
    LongTimePattern                  : h:mm:ss tt
    MonthDayPattern                  : MMMM dd
    PMDesignator                     : PM
    RFC1123Pattern                   : ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
    ShortDatePattern                 : M/d/yyyy
    ShortTimePattern                 : h:mm tt
    SortableDateTimePattern          : yyyy'-'MM'-'dd'T'HH':'mm':'ss
    TimeSeparator                    : :
    UniversalSortableDateTimePattern : yyyy'-'MM'-'dd HH':'mm':'ss'Z'
    YearMonthPattern                 : MMMM, yyyy
    AbbreviatedDayNames              : {Sun, Mon, Tue, Wed...}
    ShortestDayNames                 : {Su, Mo, Tu, We...}
    DayNames                         : {Sunday, Monday, Tuesday, Wednesday...}
    AbbreviatedMonthNames            : {Jan, Feb, Mar, Apr...}
    MonthNames                       : {January, February, March, April...}
    IsReadOnly                       : False
    NativeCalendarName               : Gregorian Calendar
    AbbreviatedMonthGenitiveNames    : {Jan, Feb, Mar, Apr...}
    MonthGenitiveNames               : {January, February, March, April...}
    
    
    
    C:\PS> $c.datetimeformat.firstdayofweek
    Sunday
    
    
    Описание
    -----------
    Этот пример показывает, как много различных данных хранится в объекте культ
    уры. Он также показывает, как отображать основные и дочерние свойства объек
    та.
    
    Первая команда использует командлет Get-Culture для получения параметров те
    кущей культуры компьютера. Полученный объект культуры сохраняется в перемен
    ной $c.
    
    Вторая команда отображает все свойства объекта культуры. С помощью оператор
    а конвейера (|) она передает объект культуры в переменной $c командлету For
    mat-List. Чтобы показать все (*) свойства объекта, используется параметр Pr
    operty. (Эту команду можно сократить следующим образом: "$c | fl *".)
    
    Оставшиеся команды выводят значения свойств объекта культуры, используя для
     этого точечное обозначение. Такая нотация позволяет отобразить значение лю
    бого свойства объекта.
    
    В третьей команде используется точечное обозначение для отображения значени
    я свойства Calendar объекта культуры.
    
    В четвертой команде используется точечное обозначение для отображения значе
    ния свойства DataTimeFormat объекта культуры.
    
    У многих свойств объекта имеются собственные свойства. В пятой команде испо
    льзуется точечное обозначение для отображения значения свойства FirstDayOfW
    eek свойства DateTimeFormat.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113312



Get-Date

ИМЯ
    Get-Date
    
ОПИСАНИЕ
    Получает текущие значение даты и времени.
    
СИНТАКСИС
    Get-Date [-Format <string>] [[-Date] <DateTime>] [-Day <int>] [-DisplayHint
     {Date | Time | DateTime}] [-Hour <int>] [-Minute <int>] [-Month <int>] [-S
    econd <int>] [-Year <int>] [<CommonParameters>]
    
    Get-Date [-UFormat <string>] [[-Date] <DateTime>] [-Day <int>] [-DisplayHin
    t {Date | Time | DateTime}] [-Hour <int>] [-Minute <int>] [-Month <int>] [-
    Second <int>] [-Year <int>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Date получает объект DateTime, содержащий текущую или заданну
    ю дату. Он позволяет выводить дату и время в различных форматах Windows и U
    NIX. С помощью командлета Get-Date можно создать текстовую строку с датой и
    ли временем, а затем передать ее другим командлетам или программам.
    
ПАРАМЕТРЫ
    -Date <DateTime>
        Задает дату и время. По умолчанию команда Get-Date возвращает текущие з
        начения системной даты и времени.
        
        Введите дату в формате, определенном локалью системы, например dd-MM-yy
        yy (Немецкий [Германия]) или MM/dd/yyyy (Английский [США]).
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Day <int>
        Задает отображаемое значение числа месяца. Введите значение от 1 до 31.
         Это значение будет отображаться вместо текущего числа. 
        
        Если указать значение, превышающее число дней в месяце, оболочка Window
        s PowerShell прибавит соответствующее значение к количеству дней в меся
        це и выведет полученный результат. Например, результатом выполнения ком
        анды "get-date -month 2 -day 31" будет "3 марта", а не "31 февраля".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -DisplayHint <DisplayHintType>
        Определяет, какие элементы даты и времени будут отображаться. 
        Допустимые значения: 
        
        -- Date: отображается только дата;
        -- Time: отображается только время;
        -- DateTime: отображаются дата и время.
        
        По умолчанию используется значение DateTime.
        
        Этот параметр не влияет на объект DateTime, возвращаемый командой Get-D
        ate.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Format <string>
        Отображает дату и время в формате Microsoft .NET Framework, указанном о
        писателем формата. Введите описатель формата. Список доступных описател
        ей формата см. в разделе "DateTimeFormatInfo Class" библиотеки MSDN (Mi
        crosoft Developer Network) по адресу http://go.microsoft.com/fwlink/?Li
        nkId=143638.
        
        При использовании параметра Format оболочка Windows PowerShell возвраща
        ет только те свойства объекта DateTime, которые требуются для отображен
        ия даты в указанном формате. В результате некоторые свойства и методы о
        бъектов DateTime могут оказаться недоступными.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Hour <int>
        Задает отображаемое значение часа. Введите значение от 1 до 23. Это зна
        чение будет отображаться вместо текущего часа.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Minute <int>
        Задает отображаемое значение минуты. Введите значение от 1 до 59. Это з
        начение будет отображаться вместо текущей минуты.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Month <int>
        Задает отображаемое значение месяца. Введите значение от 1 до 12. Это з
        начение будет отображаться вместо текущего месяца.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Second <int>
        Задает отображаемое значение секунды. Введите значение от 1 до 59. Это 
        значение будет отображаться вместо текущей секунды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UFormat <string>
        Отображает дату и время в формате UNIX. Список описателей формата см. в
         разделе "Примечания".
        
        При использовании параметра UFormat оболочка Windows PowerShell возвращ
        ает только те свойства объекта DateTime, которые требуются для отображе
        ния даты в указанном формате. В результате некоторые свойства и методы 
        объектов DateTime могут оказаться недоступными.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Year <int>
        Задает отображаемое значение года. Введите значение от 1 до 9999. Это з
        начение будет отображаться вместо текущего года.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.DateTime или System.String
        При использовании параметров Format и UFormat выходной объект — System.
        String.
    
    
ПРИМЕЧАНИЯ
    
    
        По умолчанию дата и время отображаются в определенном локалью системы п
        олном формате даты и полном формате времени.
        
        При передаче даты по конвейеру командлету, принимающий строковые значен
        ия, например командлету Add-Content, оболочка Windows PowerShell преобр
        азует объект DateTime в строку, прежде чем добавить его в файл. По умол
        чанию метод ToString() использует короткий формат даты и полный формат 
        времени. Чтобы указать другой формат, воспользуйтесь параметрами Format
         или UFormat командлета Get-Date. 
        
        Значения Uformat:
        
        Параметр UFormat может иметь следующие значения. Формат команды таков:
        
        get-date -uformat %<значение>
        
        Например: 
        get-date -uformat %d
        
        Дата и время:
        Дата и время — полный формат  
        (по умолчанию) (Пятница, 16 июня 2006 г. 10:31:27)
        c     Дата и время — сокращенный формат (Пт 16 июн 2006 10:31:27)
        
        Дата:
        D    Дата в формате мм/дд/гг (06/14/06)
        x    Дата в стандартном формате локали (09/12/07 в случае американского
         варианта английского стандарта)
        
        Год:
        C   Век (в случае 2006 года — 20)
        Y   Год в четырехзначном формате (2006)
        y   Год в двузначном формате (06)
        G   То же, что и "Y"
        g   То же, что и "y"
        
        Месяц: 
        b   Сокращенное название месяца (Янв)
        B   Полное название месяца (Январь)
        h   То же, что и "b"
        m   Номер месяца (06)
        
        Неделя:
        W  Неделя года (00–52)
        V   Неделя года (01–53)
        U   То же, что и "W"
        
        
        День:
        a   Сокращенное название дня недели (Пн)
        A   Полное название дня недели (Понедельник)
        u   Номер дня недели (понедельник = 1)
        d   День месяца — двузначный формат (05)
        e   День месяца — однозначное число, которому предшествует пробел ( 5)
        j    День года (1–366)
        w   То же, что и "u"
        
        Время:
        p   AM или PM (до полудня или после полудня)
        r   Время в 12-часовом формате (09:15:36 AM)
        R   Время в 24-часовом формате без секунд (17:45)
        T   Время в 24-часовом формате (17:45:52)
        X   То же, что и "T"
        Z   Сдвиг часового пояса от всеобщего скоординированного времени (UTC) 
        (-07)
        
        Час: 
        H   Час в 24-часовом формате (17)
        I    Час в 12-часовом формате (05)
        k   То же, что и "H"
        l    То же, что и "I" ("L" в нижнем регистре)
        
        Минуты и секунды:
        M   Минуты (35)
        S   Секунды (05)
        s   Число секунд, прошедших с 00 часов 00 минут 00 секунд 1 января 1970
         года (1150451174.95705)
        
        Специальные знаки:
        n   Знак новой строки (\n)
        t   Знак табуляции (\t)
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-date -DisplayHint date
    
    Tuesday, June 13, 2006
    
    
    Описание
    -----------
    Эта команда возвращает объект DateTime, но отображает только дату. Параметр
     DisplayHint указывает, что должна отображаться только дата.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-date -format g
    
    6/13/2006 12:43 PM
    
    
    Описание
    -----------
    Эта команда возвращает текущие дату и время, форматируя их в кратком формат
    е даты и времени. Для указания формата в ней используется принятый в .NET F
    ramework описатель формата "g" (General [краткий формат даты и краткий форм
    ат времени]).
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-date -uformat "%Y / %m / %d / %A / %Z"
    
    2006 / 06 / 13 / Tuesday / -07
    
    
    Описание
    -----------
    Эта команда возвращает текущие дату и время, форматируя их так, как указано
     в команде. В данном случае выводится номер года в полном формате (%Y), ном
    ер месяца в двузначном формате (%m), номер дня в двузначном формате (%d), н
    азвание дня недели в полном формате (%A) и смещение от времени UTC ("Zulu")
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>(get-date -year 2000 -month 12 -day 31).dayofyear
    
    366
    
    
    Описание
    -----------
    Эта команда отображает номер текущего дня года. Например, 31 декабря — это 
    365 день 2006 года, но 366 день 2000 года.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$a = get-date
    
    C:\PS> $a.IsDaylightSavingTime()
    
    True
    
    
    Описание
    -----------
    Эта команда сообщает, корректируются ли текущие дата и время с учетом перех
    ода на летнее и зимнее время в используемой локали. 
    
    Первая команда создает переменную с именем $a, после чего присваивает ей об
    ъект, возвращенный командлетом Get-Date. После этого для объекта в переменн
    ой $a вызывается метод IsDaylightSavingTime.
    
    Чтобы узнать свойства и методы объекта DateTime, введите:
     "get-date | get-member".
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>$a = get-date
    
    C:\PS> $a.ToUniversalTime()
    
    Tuesday, June 13, 2006 8:09:19 PM
    
    
    Описание
    -----------
    Эти команды преобразуют текущие дату и время в формат времени UTC.
    
    Первая команда создает переменную с именем $a, после чего присваивает ей об
    ъект, возвращенный командлетом Get-Date. После этого для объекта в переменн
    ой $a вызывается метод ToUniversalTime.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>$a = get-wmiobject win32_bios -computer server01
    
    $a | format-list -property Name, @{Label="BIOS Age"; `
    Expression={(get-date) - $_.ConvertToDateTime($_.ReleaseDate)}}
    
    Name     : Default System BIOS
    BIOS Age : 1345.17:31:07.1091047
    
    
    Описание
    -----------
    В инструментарии управления Windows (WMI) используется объект даты-времени,
     отличный от аналогичного объекта .NET Framework, возвращаемого командлетом
     Get-Date. Чтобы использовать такие объекты WMI в одной команде с данными о
     дате и времени, возвращенными командлетом Get-Date, нужно вызвать метод Co
    nvertToDateTime для преобразования WMI-объектов CIM_DATETIME в объекты Date
    Time платформы .NET Framework.
    
    Команды в данном примере отображают название BIOS на удаленном компьютере S
    erver01 и время, прошедшее с момента выпуска BIOS. 
    
    Первая команда с помощью командлета Get-WmiObject получает экземпляр класса
     Win32_BIOS на компьютере Server01, после чего сохраняет его в переменной $
    a.
    
    Во второй команде WMI-объект, сохраненный в переменной $a, с помощью операт
    ора конвейера (|) передается командлету Format-List. Параметр Property кома
    ндлета Format-List указывает два свойства, которые будут отображаться в спи
    ске: "Name" и "BIOS Age". Свойство "BIOS Age" определено в хэш-таблице. Эта
     таблица содержит ключи Label и Expression, которые определяют, соответстве
    нно, имя свойства и выражение, на основе которого вычисляется время, прошед
    шее с момента выпуска BIOS. Для преобразования каждого экземпляра класса Re
    leaseDate в объект DateTime платформы .NET Framework в выражении использует
    ся метод ConvertToDateTime. Затем полученное значение вычитается из значени
    я, возвращенного командлетом Get-Date, который при отсутствии параметров во
    звращает текущую дату.
    
    Открывающая кавычка (`) в Windows PowerShell является знаком продолжения ст
    роки.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>get-date
    
    Tuesday, June 13, 2006 12:43:42 PM
    
    
    Описание
    -----------
    Эта команда получает объект DateTime и выводит текущие дату и время в форма
    те длинной даты и длинного времени для локали системы, как если бы была вве
    дена команда "get-date -format F".
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>get-date
    
    C:\PS> Tuesday, September 26, 2006 11:25:31 AM
    
    c:\PS>(get-date).ToString()
    9/26/2006 11:25:31 AM
    
    C:\PS>get-date | add-content test.txt  
    # Adds 9/26/2006 11:25:31 AM
    
    C:\PS>get-date -format F | add-content test.txt
    # Adds Tuesday, September 26, 2006 11:25:31 AM
    
    
    Описание
    -----------
    В этих командах показано, как использовать командлет Get-Date с командлетом
     Add-Content и другими командлетами, которые преобразуют объект DateTime, в
    озвращаемый командлетом Get-Date, в строку.
    
    Первая команда показывает, что по умолчанию командлет get-date выводит резу
    льтат в полном формате даты и времени.
    
    Вторая команда показывает, что по умолчанию метод ToString() объекта DateTi
    me возвращает дату и время в коротком формате.
    
    Третья команда с помощью оператора конвейера передает объект DateTime коман
    длету Add-Content, который добавляет содержимое в файл Test.txt. Поскольку 
    командлет Add-Content использует метод ToString() объекта DateTime, добавля
    емая дата имеет короткий формат даты и времени.
    
    Четвертая команда использует параметр Format командлета Get-Date, чтобы зад
    ать формат. При использовании параметров Format и UFormat командлет Get-Dat
    e создает строку, а не объект DateTime. Затем, когда строка передается кома
    ндлету Add-Content, эта строка добавляется в файл Test.txt без изменений.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113313
    Set-Date 
    New-TimeSpan 



Get-Event

ИМЯ
    Get-Event
    
ОПИСАНИЕ
    Получает события из очереди событий.
    
СИНТАКСИС
    Get-Event [-EventIdentifier] <int> [<CommonParameters>]
    
    Get-Event [[-SourceIdentifier] <string>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Event получает события из очереди событий Windows PowerShell 
    текущего сеанса. Можно получить все события или воспользоваться параметром 
    EventIdentifier или SourceIdentifier, чтобы задать конкретные события.
    
    Когда событие происходит, оно добавляется в очередь событий. Очередь событи
    й содержит события, на получение которых зарегистрирован пользователь, собы
    тия, созданные с помощью командлета New-Event, а также события, возникающие
     при выходе из Windows PowerShell. Для получения этих событий служат команд
    леты Get-Event и Wait-Event.
    
    Этот командлет не получает событий из журналов средства просмотра событий. 
    Для получения этих событий служат командлеты Get-WinEvent и Get-EventLog.
    
ПАРАМЕТРЫ
    -EventIdentifier <int>
        Получает только события с указанным идентификатором события.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -SourceIdentifier <string>
        Получает только события с указанными идентификаторами источника. По умо
        лчанию командлет получает все события в очереди событий. Подстановочные
         знаки запрещены.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                All events
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSEventArgs
        Командлет Get-Event возвращает объект PSEventArgs для каждого события. 
        Чтобы просмотреть описание этого объекта, введите "get-help get-event -
        full" и обратитесь к подразделу "Примечания" раздела справки.
    
    
ПРИМЕЧАНИЯ
    
    
        События, подписки на события и очередь событий существуют только в рамк
        ах текущего сеанса. Если завершить текущий сеанс, очередь событий будет
         очищена и подписка на события будет отменена.
        
        Командлет Get-Event возвращает объект PSEventArgs (System.Management.Au
        tomation.PSEventArgs) со следующими свойствами.
        
        -- ComputerName: имя компьютера, на котором произошло событие. Это знач
        ение свойства заполняется, только когда событие передается с удаленного
         компьютера.
        
        -- RunspaceId: GUID, однозначно идентифицирующий сеанс, в котором произ
        ошло событие. Это значение свойства заполняется, только когда событие п
        ередается с удаленного компьютера.
        
        -- EventIdentifier: целое число (Int32), однозначно идентифицирующее ув
        едомление о событии в текущем сеансе.
        
        -- Sender: объект, создавший событие. В значении параметра Action объек
        т отправителя содержится в автоматической переменной $Sender.
        
        -- SourceEventArgs: первый параметр, который наследуется от EventArgs (
        если существует). Например, в событии, время которого истекло по таймер
        у, где сигнатура имеет форму "Object sender, Timers.ElapsedEventArgs e"
        , свойство SourceEventArgs содержит Timers.ElapsedEventArgs. В значении
         параметра Action это значение содержится в автоматической переменной $
        SourceEventArgs.
        
        -- SourceArgs: все параметры сигнатуры исходного события. Для стандартн
        ой сигнатуры события переменная $args[0] представляет отправителя, а пе
        ременная $args[1] — свойство SourceEventArgs. В значении параметра Acti
        on это значение содержится в автоматической переменной $SourceArgs.
        
        -- SourceIdentifier: строка, идентифицирующая подписку на событие. В зн
        ачении параметра Action это значение содержится в свойстве SourceIdenti
        fier автоматической переменной $Event.
        
        -- TimeGenerated: объект DateTime, представляющий время, когда было соз
        дано событие. В значении параметра Action это значение содержится в сво
        йстве TimeGenerated автоматической переменной $Event.
        
        --MessageData: данные, связанные с подпиской на событие. Пользователи у
        казывают эти данные, когда они регистрируют событие. В значении парамет
        ра Action это значение содержится в свойстве MessageData автоматической
         переменной $Event.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-event
    
    
    Описание
    -----------
    Эта команда получает все события из очереди событий.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-event -sourceIdentifier "PowerShell.ProcessCreated"
    
    
    Описание
    -----------
    Эта команда получает события, у которых свойство SourceIdentifier имеет зна
    чение "PowerShell.ProcessCreated".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$events = get-event
    
    C:\PS> $events[0] | format-list -property *
    
    ComputerName     :
    RunspaceId       : c2153740-256d-46c0-a57c-b805917d1b7b
    EventIdentifier  : 1
    Sender           : System.Management.ManagementEventWatcher
    SourceEventArgs  : System.Management.EventArrivedEventArgs
    SourceArgs       : {System.Management.ManagementEventWatcher, System.Manage
    ment.EventArrivedEventArgs}
    SourceIdentifier : ProcessStarted
    TimeGenerated    : 11/13/2008 12:09:32 PM
    MessageData      :
    
    
    C:\PS> get-event | where {$_.TimeGenerated -ge "11/13/2008 12:15:00 PM"}
    
    ComputerName     :
    RunspaceId       : c2153740-256d-46c0-a57c-b8059325d1a0
    EventIdentifier  : 1
    Sender           : System.Management.ManagementEventWatcher
    SourceEventArgs  : System.Management.EventArrivedEventArgs
    SourceArgs       : {System.Management.ManagementEventWatcher, System.Manage
    ment.EventArrivedEventArgs}
    SourceIdentifier : ProcessStarted
    TimeGenerated    : 11/13/2008 12:15:00 PM
    MessageData      :
    
    
    Описание
    -----------
    В этом примере показано, как получать события, используя свойства, отличные
     от SourceIdentifier.
    
    Первая команда получает все события в очереди событий и сохраняет их в пере
    менной $events.
    
    Вторая команда использует синтаксис работы с массивами, чтобы получить перв
    ое событие (индекс 0) из массива в перемененной $events. Команда с помощью 
    оператора конвейера (|) передает событие командлету Format-List, который от
    ображает все свойства события в виде списка. Это позволяет узнать свойства 
    каждого объекта события.
    
    В третьей команде показано, как с помощью командлета Where-Object получить 
    событие 
    на основании времени его создания.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-event -eventIdentifier 2
    
    
    Описание
    -----------
    Эта команда получает событие с идентификатором 2.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113453
    Register-ObjectEvent 
    Register-EngineEvent 
    Register-WmiEvent 
    Unregister-Event 
    New-Event 
    Remove-Event 
    Wait-Event 



Get-EventLog

ИМЯ
    Get-EventLog
    
ОПИСАНИЕ
    Получает события, зарегистрированные в журнале событий, или список журналов
     событий, находящихся на локальном или удаленном компьютере.
    
СИНТАКСИС
    Get-EventLog [-AsString] [-ComputerName <string[]>] [-List] [<CommonParamet
    ers>]
    
    Get-EventLog [-LogName] <string> [[-InstanceId] <Int64[]>] [-After <DateTim
    e>] [-AsBaseObject] [-Before <DateTime>] [-ComputerName <string[]>] [-Entry
    Type <string[]>] [-Index <Int32[]>] [-Message <string>] [-Newest 
    ource <string[]>] [-UserName <string[]>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-EventLog получает события, зарегистрированные в журнале событ
    ий, или список журналов событий, находящихся на локальном компьютере или на
     удаленных компьютерах. 
    
    С помощью параметров командлета Get-EventLog можно искать события по значен
    иям их свойств. Командлет Get-EventLog возвращает только те события, которы
    е соответствуют всем указанным значениям свойств. 
    
    Командлеты, в имени которых содержится существительное EventLog (командлеты
     EventLog) работают только с классическими журналами событий. Чтобы получат
    ь события из журналов, основанных на технологии журнала событий Windows (в 
    Windows Vista и более поздних версиях Windows), используйте командлет Get-W
    inEvent.
    
ПАРАМЕТРЫ
    -After <DateTime>
        Получает только события, произошедшие позднее указанных даты и времени.
         Укажите объект DateTime, например один из объектов, возвращенных коман
        длетом Get-Date.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -AsBaseObject [<SwitchParameter>]
        Возвращает стандартный объект System.Diagnostics.EventLogEntry для кажд
        ого события. Если этот параметр не задан, командлет Get-EventLog возвра
        щает расширенный объект PSObject с дополнительными свойствами EventLogN
        ame, Source и InstanceId.
        
        Чтобы просмотреть результат применения этого параметра, передайте событ
        ия по конвейеру командлету Get-Member и проверьте значение TypeName в н
        аборе результатов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -AsString [<SwitchParameter>]
        Возвращает выходные данные в виде строк, а не объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Before <DateTime>
        Получает только события, произошедшие раньше указанных даты и времени. 
        Укажите объект DateTime, например один из объектов, возвращенных команд
        летом Get-Date.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string[]>
        Задает удаленный компьютер. По умолчанию используется значение "Локальн
        ый компьютер".
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя удаленного компью
        тера. Чтобы указать локальный компьютер, введите имя компьютера, точку 
        (.) или "localhost".
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName командлета Get-EventLog можно использовать, даж
        е если компьютер не настроен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -EntryType <string[]>
        Получает только события с указанным типом записи. Допустимые значения: 
        Error, Information, FailureAudit, SuccessAudit и Warning. По умолчанию 
        возвращаются все события.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Все события
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Index <Int32[]>
        Получает только события с указанными индексами.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Все события
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InstanceId <Int64[]>
        Получает только события с указанными идентификаторами экземпляров.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -List [<SwitchParameter>]
        Получает список журналов событий, находящихся на компьютере.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LogName <string>
        Задает журнал событий.  Введите имя (значение свойства Log; а не свойст
        ва LogDisplayName) одного журнала событий. Подстановочные знаки запреще
        ны. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Message <string>
        Получает события, в сообщениях которых содержится указанная строка. Это
         свойство можно использовать для поиска сообщений, в которых содержатся
         определенные слова или фразы. Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Newest <int>
        Задает максимальное число извлекаемых событий. Командлет Get-EventLog в
        озвращает указанное число событий, начиная с самого последнего события,
         зарегистрированного в журнале.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Source <string[]>
        Получает события, записанные в журнал указанными источниками. Подстанов
        очные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -UserName <string[]>
        Получает только события, связанные с указанными именами пользователей. 
        Введите имена или шаблоны имен, например User01, User* или Domain01\Use
        r*. Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет.
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Diagnostics.EventLogEntry. System.Diagnostics.EventLog. System.Strin
    g
        Если указан параметр LogName, выходными данными является коллекция объе
        ктов EventLogEntry (System.Diagnostics.EventLogEntry). 
        
        Если указан только параметр List, выходными данными является коллекция 
        объектов EventLog (System.Diagnostics.EventLog). 
        
        Если указаны параметры List и AsString, выходными данными является колл
        екция объектов String (System.String).
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-eventlog -list
    
    
    Описание
    -----------
    Эта команда отображает сведения о журналах событий на компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-eventlog -newest 5 -logname application
    
    
    Описание
    -----------
    Эта команда отображает пять последних записей в журнале событий Application
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$events = get-eventlog -logname system -newest 1000
    
    C:\PS> $events | group-object -property source -noelement | sort-object -pr
    operty count -descending
    
    Count Name
    ----- ----
       75 Service Control Manager
       12 Print
        6 UmrdpService
        2 DnsApi
        2 DCOM
        1 Dhcp
        1 TermDD
        1 volsnap
    
    
    Описание
    -----------
    В этом примере показано, как найти все источники, представленные в 1000 пос
    ледних записях журнала системных событий.
    
    Первая команда извлекает 1000 последних записей из журнала системных событи
    й и сохраняет их в переменной $events. 
    
    Вторая команда с помощью оператора конвейера (|) передает события, сохранен
    ные в переменной $events, командлету Group-Object, который группирует запис
    и по значению переменной Source. Второй оператор конвейера используется ком
    андой для передачи сгруппированных событий командлету Sort-Object, который 
    сортирует их в порядке убывания; таким образом, наиболее часто фигурирующий
     источник отображается в списке первым.
    
    Source является лишь свойством записей журнала событий. Чтобы просмотреть в
    се свойства записи журнала событий, передайте события по конвейеру командле
    ту Get-Member.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-eventlog -logname System -EntryType Error
    
    
    Описание
    -----------
    Эта команда извлекает из журнала системных событий только события типа "Оши
    бка".
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-eventlog -logname System -instanceID 3221235481 -Source "DCOM"
    
    
    Описание
    -----------
    Эта команда извлекает из журнала системных событий только события, свойства
     InstanceID и Source которых имеют значения 3221235481 и "DCOM" соответстве
    нно.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-eventlog -logname "Windows PowerShell" -computername localhost, S
    erver01, Server02
    
    
    Описание
    -----------
    Эта команда извлекает события из журналов событий "Windows PowerShell", нах
    одящихся на трех компьютерах: Server01, Server02 и "localhost" (локальный к
    омпьютер).
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-eventlog -logname "Windows PowerShell" -message "*failed*"
    
    
    Описание
    -----------
    Эта команда извлекает все события из журнала событий Windows PowerShell, в 
    сообщениях которых содержится слово "failed".
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>$a = get-eventlog -log System -newest 1
    
    C:\PS> $a | format-list -property *
    
    EventID            : 7036
    MachineName        : Server01
    Data               : {}
    Index              : 10238
    Category           : (0)
    CategoryNumber     : 0
    EntryType          : Information
    Message            : The description for Event ID
    Source             : Service Control Manager
    ReplacementStrings : {WinHTTP Web Proxy Auto-Disco
    InstanceId         : 1073748860
    TimeGenerated      : 4/11/2008 9:56:05 PM
    TimeWritten        : 4/11/2008 9:56:05 PM
    UserName           :
    Site               :
    Container          :
    
    
    Описание
    -----------
    В этом примере показано, как отобразить значения всех свойств события. 
    
    Первая команда извлекает последнее событие из журнала системных событий и с
    охраняет его в переменной $a. 
    
    Вторая команда с помощью оператора конвейера (|) передает событие, сохранен
    ное в переменной $a, команде Format-List, которая отображает все (*) свойст
    ва события.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>get-eventlog -log application -source outlook | where {$_.eventID -eq
     34}
    
    
    Описание
    -----------
    Эта команда извлекает из журнала событий Application только события, у кото
    рый свойство Source имеет значение Outlook, а свойство EventID — значение 3
    4. Командлет Get-EventLog не имеет параметра EventID, однако можно использо
    вать командлет Where-Object, позволяющий выбирать события на основе значени
    я любого свойства события.
    
    
    
    
    
    -------------------------- ПРИМЕР 10 --------------------------
    
    C:\PS>get-eventlog -log system -username NT* | group-object -property usern
    ame -noelement | format-table Count, Name -auto
    
    Count Name
    ----- ----
     6031 NT AUTHORITY\SYSTEM
       42 NT AUTHORITY\LOCAL SERVICE
        4 NT AUTHORITY\NETWORK SERVICE
    
    
    Описание
    -----------
    Эта команда возвращает события журнала системных событий, сгруппированные п
    о значениям свойства UserName. В команде Get-EventLog используется параметр
     UserName для извлечения только событий, в которых имя пользователя начинае
    тся с комбинации символов "NT".
    
    
    
    
    
    -------------------------- ПРИМЕР 11 --------------------------
    
    C:\PS>$May31 = get-date 5/31/08
    
    C:\PS> $July1 = get-date 7/01/08
    
    C:\PS> get-eventlog -log "Windows PowerShell" -entrytype Error -after $may3
    1 -before $july1
    
    
    Описание
    -----------
    Эта команда извлекает из журнала событий Windows PowerShell все сообщения о
    б ошибках, произошедших в июне 2008 года.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113314
    Get-WinEvent 
    Clear-EventLog 
    Limit-EventLog 
    New-EventLog 
    Remove-EventLog 
    Show-EventLog 
    Write-EventLog 
    Get-WinEvent 



Get-EventSubscriber

ИМЯ
    Get-EventSubscriber
    
ОПИСАНИЕ
    Получает подписчики на события в текущем сеансе.
    
СИНТАКСИС
    Get-EventSubscriber [-SubscriptionId] <int> [[-Force]] [<CommonParameters>]
    
    Get-EventSubscriber [[-SourceIdentifier] <string>] [[-Force]] [<CommonParam
    eters>]
    
    
ОПИСАНИЕ
    Командлет Get-EventSubscriber получает подписчики на события в текущем сеан
    се. 
    
    При подписке на событие с помощью командлета регистрации событий в сеанс Wi
    ndows PowerShell добавляется подписчик на событие, а события, на которые по
    дписался пользователь, добавляются в очередь событий по мере возникновения.
     Чтобы отменить подписку на событие, необходимо удалить подписчик с помощью
     командлета Unregister-Event.
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Получает все подписчики на события, включая подписчики на события, кото
        рые скрыты с помощью параметра SupportEvent командлетов Register-Object
        Event, Register-WmiEvent и Register-EngineEvent.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SourceIdentifier <string>
        Получает только подписчики на события с заданным значением свойства Sou
        rceIdentifier. По умолчанию командлет Get-EventSubscriber получает все 
        подписчики на события в сеансе. Подстановочные знаки запрещены. Этот па
        раметр указывается с учетом регистра.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                Все подписчики на события
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -SubscriptionId <int>
        Получает только заданный идентификатор подписки. По умолчанию командлет
         Get-EventSubscriber получает все подписчики на события в сеансе.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSEventSubscriber
        Командлет Get-EventSubscriber возвращает объект, представляющий каждый 
        подписчик на события.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет New-Event, создающий пользовательское событие, не создает под
        писчик. Поэтому командлет Get-EventSubscriber не сможет обнаружить объе
        кт подписчика для таких событий. Но если подписаться на пользовательско
        е событие с помощью командлета Register-EngineEvent (чтобы перенаправит
        ь событие или задать действие), командлет Get-EventSubscriber обнаружит
         подписчик, созданный командлетом Register-EngineEvent.
        
        События, подписки на события и очередь событий существуют только в рамк
        ах текущего сеанса. Если завершить текущий сеанс, очередь событий будет
         очищена и подписка на события будет отменена.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$timer = New-Object Timers.Timer 
    
    C:\PS> $timer | Get-Member -Type Event 
    
    C:\PS> Register-ObjectEvent -inputObject $timer -EventName Elapsed -SourceI
    dentifier Timer.Elapsed
    
    C:\PS> Get-EventSubscriber
    
    C:\PS> $timer = New-Object Timers.Timer 
    
    C:\PS> $timer | Get-Member -Type Event 
    
       TypeName: System.Timers.Timer 
    
    Name     MemberType Definition 
    ----     ---------- ---------- 
    Disposed Event      System.EventHandler Disposed(System.Object, System.Even
    tArgs) 
    Elapsed  Event      System.Timers.ElapsedEventHandler Elapsed(System.Object
    , System.Timers.ElapsedEventArgs)
    
    C:\PS> Register-ObjectEvent -InputObject $timer -EventName Elapsed -SourceI
    dentifier Timer.Elapsed
    
    C:\PS> Get-EventSubscriber 
    
    SubscriptionId   : 4 
    SourceObject     : System.Timers.Timer 
    EventName        : Elapsed 
    SourceIdentifier : Timer.Elapsed 
    Action           : 
    HandlerDelegate  : 
    SupportEvent     : False 
    ForwardEvent     : False
    
    
    Описание
    -----------
    В этом примере используется команда Get-EventSubscriber для получения подпи
    счика на событие таймера. 
    
    Первая команда создает экземпляр объекта таймера с помощью командлета New-O
    bject. Новый объект таймера сохраняется в переменной $timer.
    
    Вторая команда отображает события, доступные для объектов таймера, с помощь
    ю командлета Get-Member. В этой команде используется параметр Type командле
    та Get-Member со значением Event.
    
    Третья команда регистрирует событие Elapsed объекта таймера с помощью коман
    длета Register-ObjectEvent.
    
    Четвертая команда использует командлет Get-EventSubscriber для получения по
    дписчика на событие Elapsed.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$timer  = New-Object Timers.Timer
    
    C:\PS> $timer.Interval = 500
    
    C:\PS> Register-ObjectEvent -inputObject $timer -eventName Elapsed -sourceI
    dentifier Timer.Random -Action { $random = Get-Random -Min 0 -Max 100 }
    
    Id  Name           State      HasMoreData  Location  Command
    --  ----           -----      -----------  --------  -------
    3   Timer.Random   NotStarted False                  $random = Get-Random .
    ..
    
    
    C:\PS> $timer.Enabled = $true
    
    C:\PS> $subscriber = Get-EventSubcriber -sourceIdentifer Timer.Random
    
    C:\PS> ($subscriber.action).gettype().fullname
    PSEventJob
    
    C:\PS> $subscriber.action | format-list -property *
    
    State         : Running
    Module        : __DynamicModule_6b5cbe82-d634-41d1-ae5e-ad7fe8d57fe0
    StatusMessage :
    HasMoreData   : True
    Location      :
    Command       : $random = Get-Random -Min 0 -Max 100
    JobStateInfo  : Running
    Finished      : System.Threading.ManualResetEvent
    InstanceId    : 88944290-133d-4b44-8752-f901bd8012e2
    Id            : 1
    Name          : Timer.Random
    ChildJobs     : {}
    ...
    
    C:\PS> & $subscriber.action.module {$random}
    96
    
    C:\PS> & $subscriber.action.module {$random}
    23
    
    
    Описание
    -----------
    В этом примере показано использование динамического модуля в объекте PSEven
    tJob свойства Action подписчика на событие.
    
    Первая команда с помощью командлета New-Object создает объект таймера. Втор
    ая команда устанавливает интервал времени таймера равным 500 (миллисекундам
    ).
    
    Третья команда регистрирует событие Elapsed объекта таймера с помощью коман
    длета Register-ObjectEvent. Она содержит действие, обрабатывающее событие. 
    Когда интервал времени таймера истекает, появляется событие, и выполняются 
    команды, содержащиеся в действии. В этом случае командлет Get-Random создае
    т случайное число от 0 до 100 и сохраняет его в переменной $random. Идентиф
    икатор источника события — Timer.Random.
    
    При использовании параметра Action в команде Register-ObjectEvent эта коман
    да возвращает объект PSEventJob, представляющий действие. 
    
    Четвертая команда включает таймер.
    
    Пятая команда использует командлет Get-EventSubscriber для получения подпис
    чика на событие Timer.Random. Она сохраняет объект подписчика на событие в 
    переменной $subscriber.
    
    Шестая команда показывает, что свойство Action объекта подписчика на событи
    е содержит объект PSEventJob. Фактически, оно содержит тот же объект PSEven
    tJob, который возвращен командой Register-ObjectEvent.
    
    Седьмая команда использует командлет Format-List для отображения всех свойс
    тв объекта PSEventJob в свойстве Action в списке. Результат показывает, что
     объект PSEventJob имеет свойство Module, содержащее динамический модуль ск
    рипта, который реализует действие.
    
    В остальных командах используется оператор вызова (&) для вызова команды в 
    модуле и отображения значения переменной $random. Оператор вызова можно исп
    ользовать для вызова любой команды в модуле, включая команды, которые не эк
    спортируются. В этом случае команды показывают случайное число, создаваемое
     при появлении события Elapsed.
    
    Дополнительные сведения о модулях см. в разделе about_Modules.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135155
    Register-ObjectEvent 
    Register-EngineEvent 
    Register-WmiEvent 
    Unregister-Event 
    Get-Event 
    New-Event 
    Remove-Event 
    Wait-Event 



Get-ExecutionPolicy

ИМЯ
    Get-ExecutionPolicy
    
ОПИСАНИЕ
    Получает политики выполнения для текущего сеанса.
    
СИНТАКСИС
    Get-ExecutionPolicy [[-Scope] {Process | CurrentUser | LocalMachine | UserP
    olicy | MachinePolicy}] [-List] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-ExecutionPolicy получает политики выполнения для текущего сеа
    нса.
    Политика выполнения определяется политиками выполнения, которые задаются с 
    помощью командлета Set-ExecutionPolicy и параметров групповой политики для 
    политики выполнения Windows PowerShell. По умолчанию используется значение 
    "Restricted".
    
    Без указания параметров Get-ExecutionPolicy получает политику выполнения, д
    ействующую в сеансе. С помощью параметра List можно получить все политики в
    ыполнения, влияющие на сеанс, а с помощью параметра Scope можно получить по
    литику выполнения для определенной области.
    Дополнительные сведения см. в разделе about_Execution_Policies.
    
ПАРАМЕТРЫ
    -List [<SwitchParameter>]
        Получает все значения политики выполнения для сеанса, указанного в поря
        дке приоритета.  По умолчанию Get-ExecutionPolicy получает только дейст
        вующую политику выполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Scope <ExecutionPolicyScope>
        Получает политику выполнения в указанной области.  По умолчанию Get-Exe
        cutionPolicy получает действующую политику выполнения для текущего сеан
        са.
        Допустимые значения:
        
        MachinePolicy: политика выполнения, заданная групповой политикой для вс
        ех пользователей компьютера.
        UserPolicy: политика выполнения, заданная групповой политикой для текущ
        его пользователя компьютера.
        Process: политика выполнения, заданная для текущего процесса Windows Po
        werShell.
        CurrentUser: политика выполнения, заданная для текущего пользователя.
        LocalMachine: политика выполнения, заданная для всех пользователей комп
        ьютера.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                Действующая политика выполнения
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.ExecutionPolicy
        Get-ExecutionPolicy возвращает объект для каждой получаемой политики вы
        полнения.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Get-ExecutionPolicy нельзя использовать для получения конкрет
        ных политик выполнения, настроенных для конкретной области, или для пол
        учения политики выполнения, настроенной с помощью групповой политики. К
        омандлет Get-ExecutionPolicy позволяет получать только действующую поли
        тику выполнения, составленную из всех правил приоритета.
        Политика выполнения — часть стратегии безопасности оболочки Windows Pow
        erShell. Она определяет, можно ли загружать файлы конфигурации (в том ч
        исле профиль Windows PowerShell) и выполнять скрипты, и определяет, для
         выполнения каких скриптов, если такие имеются, требуется цифровая подп
        ись.
        
        Действующая политика выполнения определяется политиками, заданными с по
        мощью командлета Set-ExecutionPolicy и групповых политик "Включить выпо
        лнение скриптов" для компьютеров и пользователей. Очередность выполнени
        я: групповая политика компьютера > групповая политика пользователя > по
        литика выполнения процесса (сеанса) > политика выполнения пользователя 
        > политика выполнения компьютера.
        Чтобы получить дополнительные сведения о политике выполнения Windows Po
        werShell, в том числе определения политик Windows PowerShell, см. разде
        л about_Execution_Policies.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-executionpolicy
    
    Restricted
    
    
    Описание
    -----------
    Эта команда получает текущую политику выполнения для оболочки.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-executionpolicy RemoteSigned; get-executionPolicy
    
    RemoteSigned
    
    
    Описание
    -----------
    Эти команды задают новую настройку пользователя для политики выполнения обо
    лочки, а затем отображают действующую политику выполнения. Команды разделен
    ы точкой с запятой (;). В этом примере из-за отсутствия параметра групповой
     политики, действующей политикой для оболочки являются пользовательские нас
    тройки.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-executionpolicy -list
    
            Scope  ExecutionPolicy
            -----  ---------------
    MachinePolicy  Undefined
       UserPolicy  Undefined
          Process  Undefined
      CurrentUser  AllSigned
     LocalMachine  RemoteSigned
    
    C:\PS> get-executionpolicy
    AllSigned
    
    
    Описание
    -----------
    Эти команды получают все политики выполнения в текущем сеансе и действующую
     политику выполнения.
    Первая команда получает все политики выполнения, влияющие на текущий сеанс.
     Ниже они указаны в порядке приоритета.
    Вторая команда получает только действующую политику выполнения, которая зад
    ана в области CurrentUser.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113315
    Set-ExecutionPolicy 
    Get-AuthenticodeSignature 
    Set-AuthenticodeSignature 
    about_Execution_Policies 
    about_Signing 



Get-FormatData

ИМЯ
    Get-FormatData
    
ОПИСАНИЕ
    Получает данные форматирования для текущего сеанса.
    
СИНТАКСИС
    Get-FormatData [[-TypeName] <string[]>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-FormatData возвращает данные форматирования для текущего сеан
    са.  
    
    Данные форматирования сеанса содержат данные форматирования из файлов форма
    тирования Format.ps1xml (например, файлов в каталоге $pshome), данные форма
    тирования для модулей, импортируемых в сеанс, и данные форматирования для к
    оманд, импортируемых в сеанс с помощью командлета Import-PSSession.
    
    Этот командлет можно использовать для проверки данных форматирования. Затем
     можно с помощью командлета Export-FormatData сериализовать объекты (преобр
    азовать их в XML) и сохранить их в файлах Format.ps1xml.
    
    Дополнительные сведения о файлах форматирования в Windows PowerShell см. в 
    разделе about_Format.ps1xml.
    
ПАРАМЕТРЫ
    -TypeName <string[]>
        Получает только данные форматирования с указанными именами типов. Введи
        те имена типов. Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.ExtendedTypeDefinition
        
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-formatdata
    
    
    Описание
    -----------
    Эта команда возвращает все данные форматирования в текущем сеансе.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-formatdata -typename Microsoft.Wsman*
    
    
    Описание
    -----------
    Эта команда возвращает элементы данных форматирования с именами, начинающим
    ися с "Microsoft.Wsman".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$f = get-formatdata -typename helpinfoshort
    
    C:\PS> $f 
    
    TypeName        FormatViewDefinition
    --------        --------------------
    HelpInfoShort   {help , TableControl}
    
    C:\PS> $f.FormatViewDefinition[0].control
    
    Headers                                                                    
    Rows
    -------                                                                    
    ----
    {System.Management.Automation.TableControlColumnHeader, System.Manageme... 
    {System.Management.Automation.TableControlRow}
    
    
    C:\PS> $f.FormatViewDefinition[0].control.headers
    
    Label         Alignment      Width
    -----         ---------      -----
    Name          Left           33
    Category      Left           9
                  Undefined      0
    
    
    Описание
    -----------
    В этом примере показано, как получить объект данных форматирования и провер
    ить его свойства.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$a = get-formatdata
    
    C:\PS> import-module bitstransfer
    C:\PS> $b = get-formatdata
    C:\PS> compare-object $a $b
    
    InputObject                                                SideIndicator
    -----------                                                -------------
    Microsoft.BackgroundIntelligentTransfer.Management.BitsJob =>
    
    
    C:\PS> get-formatdata *bits* | export-formatdata -filepath c:\test\bits.for
    mat.ps1xml
    
    C:\PS> get-content c:\test\bits.format.ps1xml
    
    <?xml version="1.0" encoding="utf-8"?><Configuration><ViewDefinitions>
    <View><Name>Microsoft.BackgroundIntelligentTransfer.Management.BitsJob</Nam
    e>
    ...
    
    
    Описание
    -----------
    В этом примере показано использование командлетов Get-FormatData и Export-F
    ormatData для экспорта данных форматирования, которые добавляются модулем.
    
    В первых четырех командах используются командлеты Get-FormatData, Import-Mo
    dule и Compare-Object для идентификации типа формата, который модуль BitsTr
    ansfer добавляет в сеанс.
    
    В пятой команде используется командлет Get-FormatData для получения типа фо
    рмата, добавляемого модулем BitsTransfer. Эта команда с помощью оператора к
    онвейера (|) передает объект типа формата командлету Export-FormatData, кот
    орый преобразует его обратно в XML и сохраняет в заданном файле format.ps1x
    ml. 
    
    Последняя команда показывает выборку содержимого файла format.ps1xml.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=144303
    Export-FormatData 
    Update-FormatData 



Get-Help

ИМЯ
    Get-Help
    
ОПИСАНИЕ
    Отображает сведения о командах и концепциях Windows PowerShell.
    
СИНТАКСИС
    Get-Help [-Full] [[-Name] <string>] [-Category <string[]>] [-Component <str
    ing[]>] [-Functionality <string[]>] [-Online] [-Path <string>] [-Role <stri
    ng[]>] [<CommonParameters>]
    
    Get-Help [-Detailed] [[-Name] <string>] [-Category <string[]>] [-Component 
    <string[]>] [-Functionality <string[]>] [-Online] [-Path <string>] [-Role 
    string[]>] [<CommonParameters>]
    
    Get-Help [-Examples] [[-Name] <string>] [-Category <string[]>] [-Component 
    <string[]>] [-Functionality <string[]>] [-Online] [-Path <string>] [-Role 
    string[]>] [<CommonParameters>]
    
    Get-Help [-Parameter <string>] [[-Name] <string>] [-Category <string[]>] [-
    Component <string[]>] [-Functionality <string[]>] [-Online] [-Path <string>
    ] [-Role <string[]>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Help выводит сведения о командах и концепциях Windows PowerSh
    ell, в том числе командлетах, поставщиках, функциях и скриптах. Чтобы просм
    отреть полный список разделов справки по командлетам, введите команду "get-
    help *". 
    
    Если команда "Get-Help" введена с указанием точного имени раздела справки и
    ли слова, являющегося уникальным признаком раздела справки, команда Get-Hel
    p отобразит содержимое указанного раздела справки. Если введено слово или ш
    аблон слова, которому соответствуют несколько заголовков разделов справки, 
    Get-Help отобразит список соответствующих заголовков. Если введено слово, к
    оторое не используется ни в одном из заголовков разделов справки, Get-Help 
    отобразит список соответствующих разделов, в содержимом которых встречается
     это слово.
    
    Кроме команды "get-help", можно вводить команды "help" или "man", позволяющ
    ие просматривать справку по экранам, или команду "<cmdlet-name> -?", котора
    я полностью соответствует команде Get-Help, но распространяется только на к
    омандлеты. 
    
    Можно отобразить весь файл справки или некоторые его разделы, например синт
    аксис, параметры или примеры. Для отображения интернет-версии файла справки
     по командлету в браузере можно использовать параметр Online. Эти параметры
     не влияют на отображение разделов справки по основным понятиям.
    
    Разделы справки по основным понятиям Windows PowerShell начинаются с префик
    са "about_", например " about_Comparison_Operators". Чтобы просмотреть спис
    ок всех разделов "about_", введите команду "get-help about_*". Чтобы просмо
    треть определенный раздел, введите команду "get-help about_<имя_раздела>", 
    например "get-help about_Comparison_Operators".
    
ПАРАМЕТРЫ
    -Category <string[]>
        Отображает справку по элементам в указанной категории. Допустимые значе
        ния: Alias, Cmdlet, Provider и HelpFile. Разделы основных сведений прин
        адлежат к категории HelpFile.
        
        Категория является свойством объекта MamlCommandHelpInfo, возвращаемого
         командлетом Get-Help. Этот параметр не влияет на отображение справки п
        о основным понятиям ("about_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Component <string[]>
        Отображает список средств с заданным значением компонента, таким как "E
        xchange". Введите имя компонента. Подстановочные знаки разрешены.
        
        Компонент является свойством объекта MamlCommandHelpInfo, возвращаемого
         командлетом Get-Help. Этот параметр не влияет на отображение справки п
        о основным понятиям ("About_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Detailed [<SwitchParameter>]
        Добавляет описания параметров и примеры к отображаемой базовой справке.
        
        Этот параметр не влияет на отображение справки по основным понятиям ("A
        bout_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Examples [<SwitchParameter>]
        Отображает только имя, краткое описание и примеры. Чтобы отобразить тол
        ько примеры, введите команду "(get-help <имя_командлета>).examples".
        
        Этот параметр не влияет на отображение справки по основным понятиям ("A
        bout_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Full [<SwitchParameter>]
        Отображает весь файл справки по командлету, включая описания параметров
         и атрибуты, примеры, сведения о типах входных и выходных объектов, а т
        акже дополнительные примечания. 
        
        Этот параметр не влияет на отображение справки по основным понятиям ("A
        bout_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Functionality <string[]>
        Отображает справку для элементов с указанной функциональностью. Введите
         функциональность. Подстановочные знаки разрешены.
        
        Функциональность является свойством объекта MamlCommandHelpInfo, возвра
        щаемого командлетом Get-Help. Этот параметр не влияет на отображение сп
        равки по основным понятиям ("About_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Запрашивает справку по указанному средству или раздел основных сведений
        .
         Введите имя командлета, поставщика, скрипта или функции, например Get-
        Member, имя раздела основных сведений, например "about_Objects", или пс
        евдоним, например "ls". Подстановочные знаки можно использовать в имена
        х командлетов и поставщиков, но их нельзя использовать при поиске разде
        лов справки для функций и скриптов.
        
        Чтобы получить справку для скрипта, который не расположен в папке, указ
        анной в переменной среды Path, введите путь и имя файла скрипта.
        
        Если введено точное название раздела справки, Get-Help отобразит содерж
        имое раздела. Если введено слово или шаблон слова, которому соответству
        ют несколько заголовков разделов справки, Get-Help отобразит список соо
        тветствующих заголовков. Если введено слово, которое не соответствует н
        и одному из заголовков разделов справки, Get-Help отобразит список соот
        ветствующих разделов, в содержимом которых встречается это слово.
        
        Имена разделов основных сведений, например about_Objects, должны указыв
        аться на английском языке даже в версиях Windows PowerShell, отличных о
        т английской.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Online [<SwitchParameter>]
        Отображает интернет-версию раздела справки в браузере по умолчанию. Это
        т параметр допустим только для разделов справки, посвященных командлета
        м, функциям и скриптам.
        
        Get-Help использует адрес в Интернете (URI), который указан в первом эл
        ементе раздела "Ссылки по теме" описания командлета, функции или скрипт
        а в справочной системе. Этот параметр работает, только если раздел спра
        вки включает URI, начинающийся на "Http" или "Https", и в системе устан
        овлен браузер. 
        
        Сведения о поддержке этой функции в собственных разделах справки см. в 
        разделе about_Comment_Based_Help и в документе "Написание справки для к
        омандлетов" (http://go.microsoft.com/fwlink/?LinkID=123415) в библиотек
        е MSDN.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Parameter <string>
        Отображает только подробные описания указанных параметров. Подстановочн
        ые знаки разрешены.
        
        Этот параметр не влияет на отображение справки по основным понятиям ("A
        bout_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Получает справку, в которой поясняется работа командлета по заданному п
        ути поставщика. Введите путь к поставщику Windows PowerShell.
        
        Этот параметр получает адаптированную версию раздела справки по командл
        ету, в котором описано, как этот командлет работает по указанному пути 
        поставщика Windows PowerShell. Этот параметр можно использовать только 
        для получения справки о командлете поставщика, и только если поставщик 
        включил пользовательскую версию раздела справки по командлету поставщик
        а.
        
        Чтобы открыть справку по пользовательскому командлету для пути поставщи
        ка, перейдите по пути поставщика и введите команду Get-Help, или в любо
        м расположении воспользуйтесь параметром Path команды Get-Help, чтобы з
        адать путь поставщика. Дополнительные сведения см. в разделе About_Prov
        iders.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Role <string[]>
        Отображает специальную справку по указанной роли пользователя. Введите 
        роль. Подстановочные знаки разрешены.
        
        Введите роль, которую пользователь выполняет в организации. Некоторые к
        омандлеты отображают различный текст в файлах справки в зависимости от 
        значения этого параметра. Этот параметр не влияет на справку по основны
        м командлетам.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать объекты этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String или MamlCommandHelpInfo
        Команда Get-Help возвращает раздел основных сведений в форме строки. Ес
        ли задано имя командлета, функции или скрипта, она возвращает объект Ma
        mlCommandHelpInfo. В противном случае команда Get-Help возвращает форма
        тированные представления, заданные в файле Help.Format.ps1xml каталога 
        $pshome.
    
    
ПРИМЕЧАНИЯ
    
    
        При вызове без параметров команда "Get-Help" отображает сведения о спра
        вочной системе оболочки Windows PowerShell.
        
        Полное представление справки (-full) включает таблицу со сведениями о п
        араметрах. В таблице содержатся следующие поля.
        
        -- Необходимый. Показывает, является ли параметр необходимым (да) или н
        еобязательным (нет).
        
        -- Позиция. Показывает, используется ли параметр как именованный или по
        зиционный (под номером). Позиционные параметры должны появляться в указ
        анном месте команды.
        
        -- "Именованный" означает, что параметру необходимо имя, но такой парам
        етр может появляться в любом месте команды.
        
        -- <Число> означает, что имя параметра необязательно, но при его отсутс
        твии параметр должен располагаться в месте, определяемом этим числом. Н
        апример, "2" означает, что при отсутствии имени параметра этот параметр
         должен быть вторым (2) или единственным неименованным параметром коман
        ды. Если используется имя параметра, параметр может располагаться в люб
        ом месте команды. 
        
        -- Значение по умолчанию. Значение параметра, используемое оболочкой Wi
        ndows PowerShell, если параметр не включен в команду.
        
        -- Принимает вход с конвейера. Показывает, можно ли (да) или нельзя (не
        т) посылать объекты в этот параметр по конвейеру. "По имени свойства" о
        значает, что конвейеризованный объект должен иметь свойство с тем же им
        енем, что и имя данного параметра. 
        
        -- Принимает подстановочные знаки. Показывает, может ли значение параме
        тра включать подстановочные знаки, такие как "*" и "?".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-help
    
    
    Description
    -----------
    Эта команда отображает справку по справочной системе оболочки Windows Power
    Shell.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-help *
    
    
    Description
    -----------
    Эта команда отображает список всех файлов справки в справочной системе обол
    очки Windows PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-help get-alias
    
    C:\PS>help get-alias
    
    C:\PS>get-alias -?
    
    
    Description
    -----------
    Эта команда отображает базовые сведения о командлете get-alias. Команды "Ge
    t-Help" и "-?" выводят сведения на одной странице. Команда "Help" отображае
    т сведения постранично.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-help about_*
    
    
    Description
    -----------
    Эта команда выводит список разделов основных сведений, содержащихся в справ
    ке для оболочки Windows PowerShell. Все эти разделы начинаются со строки "a
    bout_". Для вывода конкретного файла справки введите команду "get-help <имя
    _раздела>, например "get-help about_signing".
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-help ls -detailed
    
    
    Description
    -----------
    Эта команда выводит подробную справку по командлету Get-ChildItem, заданном
    у одним из своих псевдонимов "ls". Параметр Detailed требует подробного пре
    дставления файла справки, включая описания параметров и примеры. Для просмо
    тра полного файла справки по командлету воспользуйтесь параметром Full.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-help format-string -full
    
    
    Description
    -----------
    Эта команда выводит полное представление справки по командлету Format-Strin
    g. Полное представление справки включает описание параметров, примеры и таб
    лицу технических сведений о параметрах.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-help start-service -examples
    
    
    Description
    -----------
    Эта команда выводит примеры использования командлета start-service в команд
    ах Windows PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>get-help get-childitem -parameter f*
    
    
    Description
    -----------
    Эта команда выводит описания параметров командлета Get-ChildItem, которые н
    ачинаются с буквы "f" (filter и force). Чтобы просмотреть описания всех пар
    аметров, введите команду "get-help get-childitem parameter*".
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>(get-help write-output).syntax
    
    
    Description
    -----------
    Эта команда выводит только синтаксис вызова командлета Write-Output. 
    
    Синтаксис является одним из свойств объектов справки. Также доступны описан
    ие, дополнительные сведения, примеры и параметры. Чтобы определить все свой
    ства и методы объектов справки, введите команду "get-help <имя_командлета> 
    | get-member", например "get-help start-service | get member".
    
    
    
    
    
    -------------------------- ПРИМЕР 10 --------------------------
    
    C:\PS>(get-help trace-command).alertset
    
    
    Description
    -----------
    Эта команда отображает примечания о командлете. Примечания сохраняются в св
    ойстве alertSet объекта справки.
    
    В примечания включаются основные сведения и советы по использованию командл
    ета. По умолчанию примечания отображаются только при использовании параметр
    а Full команды Get-Help, но их также можно отобразить с помощью свойства al
    ertSet.
    
    
    
    
    
    -------------------------- ПРИМЕР 11 --------------------------
    
    C:\PS>get-help add-member -full | out-string -stream | select-string -patte
    rn clixml
    
    
    Description
    -----------
    В этом примере показано, как выполнить поиск слова в определенном разделе с
    правки по командлету. Эта команда выполняет поиск слова "clixml" в полной в
    ерсии раздела справки по командлету Add-Member. 
    
    Поскольку командлет Get-Help создает объект MamlCommandHelpInfo, а не строк
    у, необходимо использовать команду, преобразующую содержимое раздела в стро
    ку, например Out-String или Out-File.
    
    
    
    
    
    -------------------------- ПРИМЕР 12 --------------------------
    
    C:\PS>get-help get-member -online
    
    
    Description
    -----------
    Эта команда отображает интернет-версию раздела справки по командлету Get-Me
    mber.
    
    
    
    
    
    -------------------------- ПРИМЕР 13 --------------------------
    
    C:\PS>get-help remoting
    
    
    Description
    -----------
    Эта команда выводит список разделов, в содержимом которых встречается слово
     "remoting". 
    
    Если введено слово, которое не используется ни в одном из разделов справки,
     Get-Help отобразит список разделов, в содержимом которых встречается это с
    лово.
    
    
    
    
    
    -------------------------- ПРИМЕР 14 --------------------------
    
    C:\PS>get-help get-item -path SQLSERVER:\DataCollection
    
    NAME
        Get-Item
    
    SYNOPSIS
        Gets a collection of Server objects for the local computer and any comp
    uters to which you have made a SQL Server PowerShell connection.       
    ...
    
    C:\PS> cd SQLSERVER:\DataCollection
    C:\PS> SQLSERVER:\DataCollection> get-help get-item
    
    
    NAME
        Get-Item
    
    SYNOPSIS
        Gets a collection of Server objects for the local computer and any comp
    uters to which you have made a SQL Server PowerShell connection.       
    ...
    
    
    C:\PS> Get-Item
    
    NAME
        Get-Item
    
    SYNOPSIS
        Gets the item at the specified location.
    
    ...
    
    
    Description
    -----------
    В этом примере показано, как получить справку по командлету Get-Item, в кот
    орой поясняется использование командлета в узле DataCollection поставщика S
    QL Server Windows PowerShell.
    
    В примере демонстрируются два способа получение специальной справки по Get-
    Item. 
    
    В первой команде используется параметр Path командлета Get-Help для задания
     пути поставщика. Эта команда может вводиться в любом местоположении.
    
    Во второй команде используется командлет Set-Location (псевдоним "cd") для 
    перехода в путь поставщика. Из этого местоположения команда Get-Help возвра
    тит специальную справку по пути поставщика даже без использования параметра
     Path.
    
    Третья команда демонстрирует, что при использовании Get-Help в пути файлово
    й системы без указания параметра Path будет возвращена стандартная справка 
    по командлету Get-Item.
    
    
    
    
    
    -------------------------- ПРИМЕР 15 --------------------------
    
    C:\PS>get-help c:\ps-test\MyScript.ps1
    
    
    Description
    -----------
    Эта команда возвращает справку по скрипту MyScript.ps1. Информацию о написа
    нии разделов справки для функций и скриптов см. в разделе about_Comment_Bas
    ed_Help.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113316
    
    about_Comment_Based_Help 
    Get-Command 
    Get-PSDrive 
    Get-Member 



Get-History

ИМЯ
    Get-History
    
ОПИСАНИЕ
    Возвращает список команд, введенных за время текущего сеанса.
    
СИНТАКСИС
    Get-History [[-Id] <Int64[]>] [[-Count] <int>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-History возвращает журнал сеанса, в котором содержится список
     команд, введенных за время текущего сеанса. Windows PowerShell автоматичес
    ки ведет журнал команд в каждом сеансе. Сохранить журнал сеанса можно в фор
    мате XML или CSV. По умолчанию файлы журнала сохраняются в корневом каталог
    е, но можно сохранить файл и в другом месте.
    
ПАРАМЕТРЫ
    -Count <int>
        Отображает заданное количество последних записей журнала. Значение по у
        молчанию — 32. Если в команде используются и параметр Count, и параметр
         Id, то отображение заканчивается командой, указанной параметром Id.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Id <Int64[]>
        Задает идентификационный номер команды в журнале сеанса. Get-History по
        лучает только указанную команду. Если используются Id и Count, командле
        т Get-History извлекает последние команды, заканчивая командой, указанн
        ой параметром Id.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Int64
        Идентификатор записи журнала можно передать командлету Get-History по к
        онвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.HistoryInfo
        Командлет Get-History возвращает объект журнала для каждого получаемого
         элемента журнала.
    
    
ПРИМЕЧАНИЯ
    
    
        Журнал сеанса представляет собой список команд, введенных за время сеан
        са, вместе с идентификатором. В журнале сеанса представлен порядок выпо
        лнения, состояние, время начала и завершения выполнения команды. При вв
        оде каждой команды Windows PowerShell добавляет ее в журнал, чтобы обес
        печить возможность ее повторного использования. Дополнительные сведения
         о журнале команд см. в разделе "about_History".
        
        При вызове командлета Get-History можно использовать его встроенные псе
        вдонимы "h", "history" и "ghy". Дополнительные сведения см. в разделе A
        bout_Aliases.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-history
    
    
    Description
    -----------
    Эта команда возвращает 32 последние введенные команды. По умолчанию выводит
    ся каждая команда и ее идентификатор, показывающий порядок выполнения.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-history | where-object {$_.commandLine -like "*service*"}
    
    
    Description
    -----------
    Эта команда возвращает записи журнала команд, содержащие слово "service". П
    ервая команда возвращает 32 последних записи в журнале сеанса. Оператор кон
    вейера (|) передает результаты командлету Where-Object, который выбирает то
    лько команды, содержащие слово "service".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-history -id 7 -count 5 | export-csv history.csv
    
    
    Description
    -----------
    Эта команда возвращает 5 последних записей журнала, заканчивая записью 7. О
    ператор конвейера (|) передает результат командлету Export-Csv, который фор
    матирует журнал в виде текста, разделенного запятыми, и сохраняет его в фай
    ле History.csv. Этот файл включает данные, отображаемые при форматировании 
    журнала в виде списка, в том числе статус и время начала и завершения коман
    ды.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-history -count 1
    
    
    Description
    -----------
    Эта команда возвращает последнюю (наиболее свежую) команду в журнале команд
    . Для вывода только одной команды используется параметр Count. По умолчанию
     командлет Get-History выводит последние команды. Команда может быть сокращ
    ена до "h -c 1" и эквивалентна нажатию клавиши "вверх".
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-history -count $MaximumHistoryCount
    
    
    Description
    -----------
    Эта команда выводит все команды, сохраненные в журнале сеанса. По умолчанию
     переменная $MaximumHistoryCount равна 64, так что эту команду можно сократ
    ить до "h -c 64".
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-history | format-list
    
    
    Description
    -----------
    Эта команда выводит все свойства записей в журнале сеанса. Оператор конвейе
    ра (|) передает результат командлету Format-List, который отображает все св
    ойства каждой записи журнала, в том числе идентификатор, статус и время нач
    ала и завершения команды.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113317
    about_history 
    Invoke-History 
    Add-History 
    Clear-History 



Get-Host

ИМЯ
    Get-Host
    
ОПИСАНИЕ
    Получает объект, представляющий текущую основную программу. Отображает такж
    е версию Windows PowerShell и региональные сведения по умолчанию.
    
СИНТАКСИС
    Get-Host [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Host получает объект, представляющий программу, для которой з
    апущена оболочка Windows PowerShell.
    
    По умолчанию отображается номер версии Windows PowerShell, а также текущие 
    языковые и региональные параметры основной программы. Однако объект основно
    й программы содержит и другую информацию, включая подробные сведения о верс
    ии запущенной оболочки Windows PowerShell, текущей культуре и культуре поль
    зовательского интерфейса Windows PowerShell. Кроме того, с помощью этого ко
    мандлета можно настроить пользовательский интерфейс основной программы, нап
    ример цвета текста и фона.
    
ПАРАМЕТРЫ
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.Internal.Host.InternalHost
        Командлет Get-Host возвращает объект System.Management.Automation.Inter
        nal.Host.InternalHost.
    
    
ПРИМЕЧАНИЯ
    
    
        Автоматическая переменная $host содержит тот же объект, который возвращ
        ает командлет Get-Host, поэтому ее можно использовать так же, как и дан
        ный командлет.  Аналогично автоматические переменные $PSCulture и $PSUI
        Culture содержат те же объекты, что и свойства CurrentCulture и Current
        UICulture объекта основной программы. Эти элементы можно использовать н
        а равных основаниях.
        
        Дополнительные сведения см. в разделе about_Automatic_Variables.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-host
    
    Name             : ConsoleHost
    Version          : 2.0
    InstanceId       : e4e0ab54-cc5e-4261-9117-4081f20ce7a2
    UI               : System.Management.Automation.Internal.Host.InternalHostU
    serInterface
    CurrentCulture   : en-US
    CurrentUICulture : en-US
    PrivateData      : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
    IsRunspacePushed : False
    Runspace         : System.Management.Automation.Runspaces.LocalRunspace
    
    
    Описание
    -----------
    Эта команда отображает сведения о консоли Windows PowerShell, которая являе
    тся основной программой для сеанса Windows PowerShell в этом примере. Они в
    ключают имя основной программы, запущенную версию Windows PowerShell, а так
    же текущую культуру и культуру пользовательского интерфейса.
    
    Свойства Version, UI, CurrentCulture, CurrentUICulture, PrivateData и Runsp
    ace содержат объекты со свойствами, которые могут оказаться очень полезными
    . Эти свойства будут рассмотрены в последующих примерах.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$h = get-host
    
    C:\PS> $win = $h.ui.rawui.windowsize
    
    C:\PS> $win.height = 10
    
    C:\PS> $win.width  = 10
    
    C:\PS> $h.ui.rawui.set_windowsize($win)
    
    
    Описание
    -----------
    Эта команда изменяет размеры окна оболочки Windows PowerShell, делая его вы
    соту и ширину равной 10 пикселям.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>(get-host).version | format-list -property *
    
    Major         : 2
    Minor         : 0
    Build         : -1
    Revision      : -1
    MajorRevision : -1
    MinorRevision : -1
    
    
    Описание
    -----------
    Эта команда получает подробные сведения о версии Windows PowerShell, запуще
    нной в основной программе. Эти значения можно просматривать, но их нельзя и
    зменить.
    
    Свойство Version командлета Get-Host содержит объект System.Version. Эта ко
    манда передает объект версии в командлет Format-List с помощью оператора ко
    нвейера (|). Команда Format-List использует параметр Property со значением 
    * (все) для отображения всех свойств и значений объекта версии.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>(get-host).currentculture | format-list -property *
    
    Parent                         : en
    LCID                           : 1033
    KeyboardLayoutId               : 1033
    Name                           : en-US
    IetfLanguageTag                : en-US
    DisplayName                    : English (United States)
    NativeName                     : English (United States)
    EnglishName                    : English (United States)
    TwoLetterISOLanguageName       : en
    ThreeLetterISOLanguageName     : eng
    ThreeLetterWindowsLanguageName : ENU
    CompareInfo                    : CompareInfo - 1033
    TextInfo                       : TextInfo - 1033
    IsNeutralCulture               : False
    CultureTypes                   : SpecificCultures, InstalledWin32Cultures, 
    FrameworkCultures
    NumberFormat                   : System.Globalization.NumberFormatInfo
    DateTimeFormat                 : System.Globalization.DateTimeFormatInfo
    Calendar                       : System.Globalization.GregorianCalendar
    OptionalCalendars              : {System.Globalization.GregorianCalendar, S
    ystem.Globalization.GregorianCalendar}
    UseUserOverride                : True
    IsReadOnly                     : False
    
    
    Описание
    -----------
    Эта команда получает подробные сведения о текущей культуре, которая установ
    лена для оболочки Windows PowerShell, запущенной в основной программе. Эта 
    же информация возвращается при запуске командлета Get-Culture. 
    
    (Аналогично свойство CurrentUICulture возвращает тот же объект, что и коман
    длет Get-UICulture.)
    
    Свойство CurrentCulture объекта основной программы содержит объект System.G
    lobalization.CultureInfo. С помощью оператора конвейера (|) эта команда пер
    едает объект CultureInfo командлету Format-List. Командлет Format-List испо
    льзует параметр Property со значением * (все) для отображения всех свойств 
    и значений объекта CultureInfo.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>(get-host).currentculture.DateTimeFormat | format-list -property *
    
    AMDesignator                     : AM
    Calendar                         : System.Globalization.GregorianCalendar
    DateSeparator                    : /
    FirstDayOfWeek                   : Sunday
    CalendarWeekRule                 : FirstDay
    FullDateTimePattern              : dddd, MMMM dd, yyyy h:mm:ss tt
    LongDatePattern                  : dddd, MMMM dd, yyyy
    LongTimePattern                  : h:mm:ss tt
    MonthDayPattern                  : MMMM dd
    PMDesignator                     : PM
    RFC1123Pattern                   : ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
    ShortDatePattern                 : M/d/yyyy
    ShortTimePattern                 : h:mm tt
    SortableDateTimePattern          : yyyy'-'MM'-'dd'T'HH':'mm':'ss
    TimeSeparator                    : :
    UniversalSortableDateTimePattern : yyyy'-'MM'-'dd HH':'mm':'ss'Z'
    YearMonthPattern                 : MMMM, yyyy
    AbbreviatedDayNames              : {Sun, Mon, Tue, Wed...}
    ShortestDayNames                 : {Su, Mo, Tu, We...}
    DayNames                         : {Sunday, Monday, Tuesday, Wednesday...}
    AbbreviatedMonthNames            : {Jan, Feb, Mar, Apr...}
    MonthNames                       : {January, February, March, April...}
    IsReadOnly                       : False
    NativeCalendarName               : Gregorian Calendar
    AbbreviatedMonthGenitiveNames    : {Jan, Feb, Mar, Apr...}
    MonthGenitiveNames               : {January, February, March, April...}
    
    
    Описание
    -----------
    Эта команда возвращает подробные сведения о формате даты и времени текущей 
    культуры, которая используется в Windows PowerShell. 
    
    Свойство CurrentCulture объекта основной программы содержит объект CultureI
    nfo, у которого имеется множество полезных свойств. Среди них свойство Date
    TimeFormat, содержащее объект DateTimeFormatInfo, в котором хранится большо
    е число различных полезных сведений. 
    
    Чтобы выяснить тип объекта, хранящегося в свойстве объекта, воспользуйтесь 
    командлетом Get-Member. Чтобы отобразить значения свойств объекта, воспольз
    уйтесь командлетом Format-List.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>(get-host).ui.rawui | format-list -property *
    
    ForegroundColor       : DarkYellow
    BackgroundColor       : DarkBlue
    CursorPosition        : 0,390
    WindowPosition        : 0,341
    CursorSize            : 25
    BufferSize            : 120,3000
    WindowSize            : 120,50
    MaxWindowSize         : 120,81
    MaxPhysicalWindowSize : 182,81
    KeyAvailable          : False
    WindowTitle           : Windows PowerShell 2.0 (04/11/2008 00:08:14)
    
    
    Описание
    -----------
    Эта команда выводит свойства RawUI объекта основной программы. Изменение эт
    их значений позволяет изменить внешний вид окна основной программы.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>(get-host).ui.rawui.backgroundcolor = "Black"
    
    C:\PS> cls
    
    
    Описание
    -----------
    Эти команды изменяют цвет фона консоли Windows PowerShell на черный. Команд
    а "cls" является псевдонимом функции Clear-Host, которая очищает экран и из
    меняет цвет всего экрана.
    
    Это изменение действует только в рамках текущего сеанса. Чтобы изменить цве
    т фона консоли для всех сеансов, добавьте эту команду в профиль Windows Pow
    erShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>$host.privatedata.errorbackgroundcolor = "white"
    
    
    Описание
    -----------
    Эта команда изменяет цвет фона сообщений об ошибках на белый. 
    
    Команда использует автоматическую переменную $host, в которой хранится объе
    кт текущей основной программы. Командлет Get-Host возвращает тот же объект,
     который хранится в переменной $host, поэтому их можно использовать на равн
    ых основаниях.
    
    Эта команда использует свойство PrivateData переменной $host в качестве сво
    его свойства ErrorBackgroundColor. Чтобы получить список всех свойств объек
    та, хранящегося в свойстве $host.privatedata, введите команду "$host.privat
    edata | format-list * ".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113318
    Read-Host 
    Out-Host 
    Write-Host 



Get-HotFix

ИМЯ
    Get-HotFix
    
ОПИСАНИЕ
    Получает исправления, примененные на локальном компьютере или на удаленных 
    компьютерах.
    
СИНТАКСИС
    Get-HotFix [[-Id] <string[]>] [-ComputerName <string[]>] [-Credential <PSCr
    edential>] [<CommonParameters>]
    
    Get-HotFix [-Description <string[]>] [-ComputerName <string[]>] [-Credentia
    l <PSCredential>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Hotfix возвращает исправления, примененные на локальном компь
    ютере или на удаленных компьютерах с помощью компонентной модели CBS.
    
ПАРАМЕТРЫ
    -ComputerName <string[]>
        Задает удаленный компьютер. По умолчанию используется значение "Локальн
        ый компьютер".
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя удаленного компью
        тера.
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName командлета Get-Hotfix можно использовать, даже 
        если компьютер не настроен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Локальный компьютер
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Текущий пользователь
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Description <string[]>
        Получает только исправления с указанными описаниями. Подстановочные зна
        ки разрешены. По умолчанию возвращаются все исправления, примененные на
         компьютере.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Все исправления
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Id <string[]>
        Получает только исправления с указанными идентификаторами. По умолчанию
         возвращаются все исправления, примененные на компьютере.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                Все исправления
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Данные невозможно передать командлету Get-HotFix по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.ManagementObject#root\CIMV2\Win32_QuickFixEngineering
        Командлет Get-Hotfix возвращает объекты, представляющие исправления на 
        компьютере.
    
    
ПРИМЕЧАНИЯ
    
    
        Этот командлет использует класс Win32_QuickFixEngineering WMI, представ
        ляющий небольшие системные обновления операционной системы. Начиная с W
        indows Vista, этот класс возвращает только обновления, предоставленные 
        компонентной моделью CBS. Обновления, предоставленные установщиком Micr
        osoft Windows (MSI) или сайтом обновлений Windows, не включаются в резу
        льтаты. Дополнительные сведения см. в разделе, посвященном классу Win32
        _QuickFixEngineering, в документации Microsoft .NET Framework SDK по ад
        ресу http://go.microsoft.com/fwlink/?LinkID=145071.
        
        Выходные данные, получаемые в результате выполнения этого командлета, м
        огут различаться в зависимости от используемой операционной системы.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-hotfix
    
    
    Описание
    -----------
    Эта команда получает все исправления, примененные на локальном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-hotfix -description Security* -computername Server01, Server02 -c
    red Server01\admin01
    
    
    Описание
    -----------
    Эта команда получает все исправления, которые были применены на компьютерах
     Server01 и Server02 и имеют описание, начинающееся со слова "Security".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$a = get-content servers.txt
    
    C:\PS> $a | foreach { if ((get-hotfix -id KB957095 -computername $_)) { ad
    d-content $_ -path Missing-kb953631.txt }}
    
    
    Описание
    -----------
    Команды в этом примере создают текстовый файл со списком имен компьютеров, 
    на которых не установлено указанное обновление для системы безопасности.
    
    Командлет Get-Hotfix используется для получения информации о наличии устано
    вленного обновления для системы безопасности KB957095 на всех компьютерах, 
    имена которых перечислены в файле Servers.txt.
    
    Если на компьютере не установлено указанное обновление, командлет Add-Conte
    nt записывает имя этого компьютера в файл Missing-KB953631.txt.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>(get-hotfix | sort installedon)[-1]
    
    
    Описание
    -----------
    Эта команда получает последнее исправление, примененное на компьютере. 
    
    Команда получает исправления, сортирует их по значению свойства InstalledOn
    , а затем использует указанный индекс массива для выбора последнего элемент
    а массива.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135217
    Get-ComputerRestorePoint 



Get-Item

ИМЯ
    Get-Item
    
ОПИСАНИЕ
    Получает элемент, находящийся в заданном местоположении.
    
СИНТАКСИС
    Get-Item [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Exclude 
    string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-UseTransacti
    on] [<CommonParameters>]
    
    Get-Item [-Path] <string[]> [-Credential <PSCredential>] [-Exclude <string[
    ]>] [-Filter <string>] [-Force] [-Include <string[]>] [-UseTransaction] [<C
    ommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Item возвращает элемент из заданного местоположения. Извлечен
    ие содержимого заданного элемента производится только при запросе всего сод
    ержимого с помощью подстановочного знака (*).
    
    Командлет Get-Item используется поставщиками Windows PowerShell для перемещ
    ения по хранилищам данных разных типов.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Параметр Exclude действует только в том случае, если команда включает с
        одержимое элемента, например "C:\Windows\*", где подстановочный знак оп
        ределяет содержимое каталога "C:\Windows".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету получать элементы, которые недоступны другими спос
        обами, например скрытые элементы. Реализация варьируется от поставщика 
        к поставщику. Дополнительные сведения см. в разделе About_Providers. Да
        же при использовании параметра Force командлет не может переопределить 
        ограничения безопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Извлекает только указанные элементы. Значение этого параметра определяе
        т значение параметра Path. Введите элемент пути или шаблон, например "*
        .txt". Подстановочные знаки разрешены.
        
        Параметр Include действует только в том случае, если команда включает с
        одержимое элемента, например "C:\Windows\*", где подстановочный знак оп
        ределяет содержимое каталога "C:\Windows".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к элементу. В отличие от значения параметра Path, значение 
        параметра LiteralPath используется точно в том виде, в котором оно введ
        ено. Никакие символы не интерпретируются как подстановочные знаки. Если
         путь включает escape-символы, его нужно заключить в одиночные кавычки.
         Одиночные кавычки указывают оболочке Windows PowerShell, что никакие с
        имволы не следует интерпретировать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к элементу. Для получения элемента, находящегося в указанно
        м местоположении, используется командлет Get-Item. Подстановочные знаки
         разрешены. Этот параметр обязателен, но его имя ("Path") можно не указ
        ывать.
        
        Для указания текущего местоположения используйте точку (.). Для указани
        я всех элементов в текущем местоположении используйте подстановочный зн
        ак (*).
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Get-Item по конвейер
        у.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Object
        Командлет Get-Item возвращает получаемые им объекты. Тип определяется т
        ипом объектов пути.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Get-Item также можно вызывать с помощью встроенного псевдоним
        а "gi". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлет Get-Item не имеет параметра Recurse, так как он извлекает тол
        ько элемент, а не его содержимое. Для рекурсивного извлечения содержимо
        го элемента используется командлет Get-ChildItem.
        
        При работе с реестром для извлечения разделов реестра используется кома
        ндлет Get-Item, а для извлечения параметров и значений реестра использу
        ется командлет Get-ItemProperty. Параметры реестра являются свойствами 
        раздела реестра.
        
        Командлет Get-Item предназначен для работы с данными, предоставляемыми 
        любым поставщиком. Чтобы получить список поставщиков, доступных в текущ
        ем сеансе, введите команду "Get-PsProvider". Дополнительные сведения см
        . в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-item .
    
    Directory: C:\
    
    Mode                LastWriteTime     Length Name
    ----                -------------     ------ ----
    d----         7/26/2006  10:01 AM            ps-test
    
    
    Описание
    -----------
    Эта команда извлекает текущий каталог. Точка (.) обозначает элемент в текущ
    ем местоположении (но не его содержимое).
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-item *
    
    Directory: C:\ps-test
    
    Mode                LastWriteTime     Length Name
    ----                -------------     ------ ----
    d----         7/26/2006   9:29 AM            Logs
    d----         7/26/2006   9:26 AM            Recs
    -a---         7/26/2006   9:28 AM         80 date.csv
    -a---         7/26/2006  10:01 AM         30 filenoext
    -a---         7/26/2006   9:30 AM      11472 process.doc
    -a---         7/14/2006  10:47 AM         30 test.txt
    
    
    Описание
    -----------
    Эта команда извлекает все элементы из текущего каталога. Подстановочный зна
    к (*) обозначает все содержимое текущего элемента.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-item C:\
    
    
    Описание
    -----------
    Эта команда возвращает текущий каталог диска C:. Извлекаемый объект предста
    вляет только каталог, но не его содержимое.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-item C:\*
    
    
    Описание
    -----------
    Эта команда возвращает элементы диска C:. Подстановочный знак (*) обозначае
    т не только сам контейнер, но и все его элементы.
    
    Для отображения всего содержимого в оболочке Windows PowerShell используетс
    я одиночная звездочка (*) вместо традиционного сочетания "*.*". Шаблон инте
    рпретируется посимвольно, поэтому при использовании сочетания "*.*" не буду
    т извлекаться каталоги и файлы с именами, не содержащими точки.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>(get-item C:\Windows).LastAccessTime
    
    
    Описание
    -----------
    Эта команда извлекает свойство LastAccessTime каталога C:\Windows. LastAcce
    ssTime является одним из свойств каталогов файловой системы. Чтобы отобрази
    ть полный список свойств каталога, введите команду "(Get-Item <имя_ папки>)
     | Get-Member".
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-item hklm:\software\microsoft\powershell\1\shellids\microsoft.pow
    ershell\*
    
    
    Описание
    -----------
    Эта команда отображает содержимое раздела реестра Microsoft.PowerShell. При
     использовании поставщика Registry Windows PowerShell для извлечения раздел
    ов и вложенных разделов реестра можно использовать командлет Get-Item, одна
    ко для извлечения параметров и значений реестра нужно использовать командле
    т Get-ItemProperty.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-item c:\Windows\* -include *.* -exclude w*
    
    
    Описание
    -----------
    Эта команда извлекает элементы каталога Windows, имена которых включают точ
    ку (.) и не начинаются с буквы "w". Эта команда может использоваться только
     в том случае, когда для указания содержимого элемента в путь включается по
    дстановочный знак (*).
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113319
    about_Providers 
    Clear-Item 
    Copy-Item 
    Invoke-Item 
    Move-Item 
    Set-Item 
    New-Item 
    Remove-Item 
    Rename-Item 



Get-ItemProperty

ИМЯ
    Get-ItemProperty
    
ОПИСАНИЕ
    Получает свойства заданного элемента.
    
СИНТАКСИС
    Get-ItemProperty [-LiteralPath] <string[]> [[-Name] <string[]>] [-Credentia
    l <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Include 
    g[]>] [-UseTransaction] [<CommonParameters>]
    
    Get-ItemProperty [-Path] <string[]> [[-Name] <string[]>] [-Credential <PSCr
    edential>] [-Exclude <string[]>] [-Filter <string>] [-Include <string[]>] [
    -UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-ItemProperty получает свойства заданных элементов. Например, 
    командлет Get-ItemProperty можно использовать для получения значения свойст
    ва LastAccessTime объекта файла. Командлет Get-ItemProperty можно также исп
    ользовать для просмотра записей реестра и их значений.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Включает заданные элементы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к свойству элемента. Значение параметра LiteralPath использ
        уется точно в том виде, в котором оно введено. Никакие символы не интер
        претируются как подстановочные знаки. Если путь включает escape-символы
        , его нужно заключить в одиночные кавычки. Одиночные кавычки указывают 
        оболочке Windows PowerShell, что никакие символы не следует интерпретир
        овать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена извлекаемых свойств.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к элементам.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Get-ItemProperty по 
        конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Object
        Командлет Get-ItemProperty возвращает объект для каждого получаемого св
        ойства элемента. Тип объекта зависит от извлекаемого объекта.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Get-ItemProperty предназначен для работы с данными, предостав
        ляемыми любым поставщиком. Чтобы получить список поставщиков, доступных
         в текущем сеансе, введите команду "Get-PSProvider". Дополнительные све
        дения см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-itemproperty C:\Windows
    
    
    Описание
    -----------
    Эта команда получает сведения о каталоге "C:\Windows".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-itemproperty C:\Test\Weather.xls | format-list
    
    
    Описание
    -----------
    Эта команда извлекает свойства файла C:\Test\Weather.xls. Результат передае
    тся по конвейеру командлету Format-List, который отображает его в виде спис
    ка.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-itemproperty -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersio
    n
    
    
    Описание
    -----------
    Эта команда отображает имя параметра и значение для каждой записи реестра, 
    содержащейся в подразделе реестра CurrentVersion. Обратите внимание, что ко
    манда требует наличия диска Windows PowerShell с именем HKLM:, который соот
    ветствует кусту реестра HKEY_LOCAL_MACHINE. Диск с указанным именем и привя
    зкой доступен в Windows PowerShell по умолчанию. Путь к указанному подразде
    лу реестра может быть задан и другим способом. Необходимо ввести путь, начи
    нающийся с имени поставщика и двойного двоеточия, как показано ниже: 
    Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-itemproperty -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersio
    n `
    -name "ProgramFilesDir"
    
    
    Описание
    -----------
    Эта команда получает имя и данные значения записи реестра ProgramFilesDir, 
    содержащейся в подразделе реестра CurrentVersion. Параметр Path используетс
    я для задания подраздела, а параметр Name — для задания имени значения запи
    си.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-itemproperty -path HKLM:\SOFTWARE\Microsoft\PowerShell\1\PowerShe
    llEngine
    
    ApplicationBase         : C:\Windows\system32\WindowsPowerShell\v1.0\
    ConsoleHostAssemblyName : Microsoft.PowerShell.ConsoleHost, Version=1.0.0.0
    , Culture=neutral, PublicKeyToken=31bf3856ad
                              364e35, ProcessorArchitecture=msil
    PowerShellVersion       : 2.0
    RuntimeVersion          : v2.0.50727
    CTPVersion              : 5
    PSCompatibleVersion     : 1.0,2.0
    
    
    Описание
    -----------
    Эта команда получает имена и данные значений записей реестра, содержащихся 
    в разделе реестра PowerShellEngine. Результаты показаны в следующем примере
     выходных данных.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-itemproperty -path HKLM:\SOFTWARE\Microsoft\PowerShell\1\ShellIds
    \Microsoft.PowerShell
    
    Path                                                        ExecutionPolicy
    ----                                                        ---------------
    C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe   RemoteSigned
    
    
    C:\PS>get-itemproperty -path HKLM:\SOFTWARE\Microsoft\PowerShell\1\ShellIds
    \Microsoft.PowerShell | format-list -property *
    
    PSPath          : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\So
    ftware\Microsoft\PowerShell\1\ShellIds\Micro
                      soft.PowerShell
    PSParentPath    : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\So
    ftware\Microsoft\PowerShell\1\ShellIds
    PSChildName     : Microsoft.PowerShell
    PSDrive         : HKLM
    PSProvider      : Microsoft.PowerShell.Core\Registry
    Path            : C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe
    ExecutionPolicy : RemoteSigned
    
    
    Описание
    -----------
    В этом примере показано, как отформатировать выходные данные команды Get-It
    emProperty в виде списка для удобного просмотра значений и данных реестра д
    ля простоты интерпретации результатов.
    
    Первая команда с помощью командлета Get-ItemProperty извлекает записи реест
    ра из раздела Microsoft.PowerShell. В этом подразделе хранятся параметры об
    олочки Windows PowerShell по умолчанию. Результаты показаны в следующем при
    мере выходных данных.
    
    Выходные данные показывают, что существует две записи реестра: Path и Execu
    tionPolicy. Если в разделе реестра содержится меньше пяти записей, по умолч
    анию его содержимое отображается в виде таблицы, однако отображение в виде 
    списка зачастую является более удобным для просмотра.
    
    Во второй команде используется тот же самый командлет Get-ItemProperty. Одн
    ако на этот раз применяется оператор конвейера (|), с помощью которого резу
    льтаты выполнения команды передаются командлету Format-List. В команде Form
    at-List используется параметр Property со значением * (все) для отображения
     всех свойств объектов в списке.  Результаты показаны в следующем примере в
    ыходных данных.
    
    Выходными данными являются записи реестра Path и ExecutionPolicy, а также н
    есколько менее известных свойств объекта раздела реестра. Другие свойства, 
    имеющие префикс "PS", являются свойствами пользовательских объектов Windows
     PowerShell, таких как объекты, представляющие разделы реестра.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113320
    about_Providers 
    Set-ItemProperty 
    Clear-ItemProperty 
    Copy-ItemProperty 
    Move-ItemProperty 
    New-ItemProperty 
    Remove-ItemProperty 
    Rename-ItemProperty 



Get-Job

ИМЯ
    Get-Job
    
ОПИСАНИЕ
    Получает фоновые задания Windows PowerShell, активные в текущем сеансе.
    
СИНТАКСИС
    Get-Job [-Command <string[]>] [<CommonParameters>]
    
    Get-Job [[-InstanceId] <Guid[]>] [<CommonParameters>]
    
    Get-Job [[-Name] <string[]>] [<CommonParameters>]
    
    Get-Job [[-Id] <Int32[]>] [<CommonParameters>]
    
    Get-Job [-State {NotStarted | Running | Completed | Failed | Stopped | Bloc
    ked}] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Job получает объекты, представляющие фоновые задания, которые
     запушены в текущем сеансе. Командлет Get-Job можно использовать для получе
    ния фоновых заданий, запущенных с использованием командлета Start-Job или п
    араметра AsJob любого командлета. 
    
    При вызове без параметров команда "Get-Job" возвращает все задания в текуще
    м сеансе. С помощью параметров командлета Get-Job можно получать конкретные
     задания.
    
    Объект задания, возвращаемый командлетом Get-Job, содержит полезные сведени
    я о задании, но не содержит результатов выполнения задания. Чтобы получить 
    результаты задания, используйте командлет Receive-Job.
    
    Фоновое задание Windows PowerShell — это команда, которая выполняется "в фо
    новом режиме" без взаимодействия с текущим сеансом. Как правило, фоновые за
    дания используются для выполнения сложных команд, для завершения которых тр
    ебуется много времени. Дополнительные сведения о фоновых заданиях Windows P
    owerShell см. в разделе about_Jobs.
    
ПАРАМЕТРЫ
    -Command <string[]>
        Получает задания, в которые входит заданная команда. По умолчанию возвр
        ащаются все задания. Введите команду (в формате строки). Для описания к
        оманды разрешено использовать подстановочные знаки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Все задания
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -Id <Int32[]>
        Получает задания с указанными идентификаторами экземпляров. 
        
        ID — это целое значение, которое однозначно определяет задание в предел
        ах текущего сеанса. Это значение проще запомнить и ввести, чем идентифи
        катор экземпляра, но оно уникально только в рамках текущего сеанса. Мож
        но ввести один или несколько идентификаторов (разделенных запятыми). Чт
        обы найти значение идентификатора задания, введите "Get-Job" без параме
        тров.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -InstanceId <Guid[]>
        Получает задания с указанными идентификаторами экземпляров. По умолчани
        ю возвращаются все задания.
        
        Идентификатор экземпляра — это GUID, который однозначно определяет зада
        ние на компьютере. Чтобы найти значение идентификатора экземпляра задан
        ия, воспользуйтесь командлетом Get-Job.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -Name <string[]>
        Получает задания с указанными понятными именами. Введите имя задания ил
        и используйте подстановочные знаки для ввода шаблона имени задания. По 
        умолчанию командлет Get-Job получает все задания в текущем сеансе.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -State <JobState>
        Получает задания с указанным состоянием. Допустимые значения: "NotStart
        ed", "Running", "Completed", "Stopped", "Failed" и "Blocked". По умолча
        нию командлет Get-Job получает все задания в текущем сеансе.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.RemotingJob
        Командлет Get-Job возвращает объекты, представляющие задания в этом сеа
        нсе.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-job
    
    
    Description
    -----------
    Эта команда получает все фоновые задания, запущенные в текущем сеансе. Она 
    не получает задания, запущенные в других сеансах, даже если эти задания вып
    олняются на локальном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$j = get-job -name Job1
    
    C:\PS> $ID = $j.InstanceID
    
    C:\PS> $ID
    
    Guid
    ----
    03c3232e-1d23-453b-a6f4-ed73c9e29d55
    
    C:\PS> stop-job -instanceid $ID
    
    
    Description
    -----------
    Эти команды получают идентификатор экземпляра задания и затем используют ег
    о для остановки задания. В отличие от имени задания, которое не является ун
    икальным, идентификатор экземпляра является уникальным.
    
    Первая команда получает задание с помощью командлета Get-Job. Для определен
    ия задания используется параметр Name. Команда сохраняет объект задания, во
    звращенный командлетом Get-Job, в переменной $j. В этом примере возвращаетс
    я только одно задание с заданным именем.
    
    Вторая команда получает свойство InstanceId объекта в переменную $j и сохра
    няет его в переменной $ID. 
    
    Третья команда отображает значение переменной $ID.
    
    Четвертая команда останавливает задание с помощью командлета Stop-Job. Пара
    метр InstanceId используется для определения задания, а переменная $ID пред
    ставляет идентификатор экземпляра задания.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-job -command "*get-process*"
    
    
    Description
    -----------
    Эта команда возвращает задания в системе, содержащие команду Get-Process. Д
    ля ограничения числа возвращаемых заданий используется параметр Command ком
    андлета Get-Job. Для выбора заданий, в которых команда Get-Process содержит
    ся в любой позиции командной строки, используются подстановочные знаки (*).
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>"*get-process*" | get-job
    
    
    Description
    -----------
    Как и команда в предыдущем примере, эта команда получает задания в системе,
     в которых используется команда Get-Process. Эта команда передает командлет
    у Get-Job строку (в двойных кавычках) с помощью оператора конвейера (|). Эт
    а команда эквивалентна предыдущей команде.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-job -state NotStarted
    
    
    Description
    -----------
    Эта команда получает только те задания, которые были созданы, но еще не был
    и запущены. Это задания, выполнение которых запланировано в будущем, а такж
    е задания, выполнение которых еще не запланировано.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-job -name job*
    
    
    Description
    -----------
    Эта команда возвращает все задания, имена которых начинаются со слова "job"
    . Поскольку по умолчанию для задания устанавливается имя "job<число>", эта 
    команда получает все задания, которым не было явно назначено имя.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>start-job -scriptblock {get-process} -name MyJob
    
    C:\PS> $j = get-job -name MyJob
    
    C:\PS> $j
    
    Id       Name      State      HasMoreData     Location    Command
    --       ----      -----      -----------     --------    -------
    1        myjob     Completed  True            localhost   get-process
    
    C:\PS> receive-job -job $j
    
    Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
    -------  ------    -----      ----- -----   ------     -- -----------
        124       4    13572      12080    59            1140 audiodg
        783      16    11428      13636   100             548 CcmExec
         96       4     4252       3764    59            3856 ccmsetup
    ...
    
    
    Description
    -----------
    В этом примере показано, как использовать командлет Get-Job для получения о
    бъекта задания, а также как использовать объект задания для представления з
    адания в команде.
    
    Первая команда с помощью командлета Start-Job запускает на локальном компью
    тере фоновое задание, выполняющее команду Get-Process. Команда использует п
    араметр Name командлета Start-Job для назначения заданию понятного имени.
    
    Во второй команде командлет Get-Job используется для получения задания. Для
     определения задания используется параметр Name командлета Get-Job. Получен
    ный объект задания сохраняется в переменной $j.
    
    Третья команда выводит значение объекта задания, сохраненное в переменной $
    j. Значение свойства State указывает, что задание завершено. Значение свойс
    тва HasMoreData указывает, что результаты задания пока не были получены.
    
    Четвертая команда использует командлет Receive-Job для получения результато
    в задания. Она использует объект задания, сохраненный в переменной $j, для 
    представления задания. Для передачи объекта задания командлету Receive-Job 
    можно также использовать оператор конвейера.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>start-job -scriptblock {get-eventlog system}
    
    C:\PS> invoke-command -computername S1 -scriptblock {get-eventlog system} -
    AsJob
    
    C:\PS> invoke-command -computername S2 -scriptblock {start-job -scriptblock
     {get-eventlog system}}
    
    C:\PS> get-job
    
    Id    Name     State      HasMoreData   Location   Command
    --    ----     -----      -----------   --------   -------
    1     Job1     Running    True          localhost  get-eventlog system
    2     Job2     Running    True          S1         get-eventlog system
    
    C:\PS> invoke-command -computername S2 -scriptblock {get-job}
    
    Id    Name     State      HasMoreData   Location   Command
    --    ----     -----      -----------   --------   -------
    4     Job4     Running    True          localhost  get-eventlog system
    
    
    Description
    -----------
    В этом примере показано использование командлета Get-Job для получения всех
     заданий, запущенных в текущем сеансе, даже если они были запущены с исполь
    зованием разных методов.
    
    Первая команда запускает задание на локальном компьютере с помощью командле
    та Start-Job.
    
    Вторая команда используется параметр AsJob командлета Invoke-Command для за
    пуска задания на компьютере S1. Хотя команды задания выполняются на удаленн
    ом компьютере, объект задания создается на локальном компьютере, поэтому дл
    я управления заданием используются локальные команды.
    
    Третья команда использует командлет Invoke-Command для выполнения команды S
    tart-Job на компьютере S2. С помощью этого метода объект задания создается 
    на удаленном компьютере, и для управления заданием используются удаленные к
    оманды.
    
    Четвертая команда использует командлет Get-Job для получения заданий, храня
    щихся на локальном компьютере.
    
    Пятая команда использует командлет Invoke-Command для выполнения команды Ge
    t-Job на компьютере S2.
    
    Пример выходных данных показывает команд Get-Job.
    
    Дополнительные сведения о запуске фоновых заданий на удаленных компьютерах 
    см. в разделе about_Remote_Jobs.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>start-job -scriptblock {get-process}
    
    Id       Name            State      HasMoreData     Location             Co
    mmand
    --       ----            -----      -----------     --------             --
    -----
    1        Job1            Failed     False           localhost            ge
    t-process
    
    C:\PS> (get-job).jobstateinfo | format-list -property *
    
    State  : Failed
    Reason :
    
    
    C:\PS> get-job | format-list *
    
    HasMoreData   : False
    StatusMessage :
    Location      : localhost
    Command       : get-process
    JobStateInfo  : Failed
    Finished      : System.Threading.ManualResetEvent
    InstanceId    : fb792295-1318-4f5d-8ac8-8a89c5261507
    Id            : 1
    Name          : Job1
    ChildJobs     : {Job2}
    Output        : {}
    Error         : {}
    Progress      : {}
    Verbose       : {}
    Debug         : {}
    Warning       : {}
    StateChanged  :
    
    
    C:\PS> (get-job -name job2).jobstateinfo.reason
    Connecting to remote server using WSManCreateShellEx api failed. The async 
    callback gave the following error message :
    Access is denied.
    
    
    Description
    -----------
    В этой команде показано, как использовать объект задания, возвращаемый Get-
    Job, для определения причины ошибки при выполнении задания. В ней также пок
    азано получение дочерних заданий для любого задания.
    
    Первая команда запускает задание на локальном компьютере с помощью командле
    та Start-Job. Объект задания, возвращаемый командлетом Start-Job, указывает
     на ошибку при выполнении задания. Значение свойства State — "Failed".
    
    Вторая команда получает объект задания с помощью командлета Get-Job. Команд
    а использует обращение через точку, чтобы получить значение свойства JobSta
    teInfo объекта. Она использует оператор конвейера (|) для отправки объекта 
    в свойстве JobStateInfo командлету Format-List, который выводит все свойств
    а объекта (*) в виде списка.
    
    Результат команды Format-List указывается, что значение Reason задания пуст
    о.
    
    Третья команда используется для продолжения анализа. Она использует команду
     Get-Job для получения задания и оператор конвейера (|) для отправки всего 
    объекта задания командлету Format-List, который выводит все свойства задани
    я в виде списка.
    
    Отображение всех свойств объекта задания показывает, что у задания есть доч
    ернее задание с именем "Job2".
    
    Четвертая команда использует командлет Get-Job для объекта задания, предста
    вляющего дочернее задание Job2. Это задание, в рамках которого выполнялась 
    команда. Команда использует обращение через точку, чтобы получить значение 
    свойства Reason свойства JobStateInfo.
    
    Результаты команды показывают, что ошибка задания вызвана ошибкой "Отказано
     в доступе". В данном случае пользователь забыл воспользоваться командой "З
    апуск от имени администратора" при запуске Windows PowerShell. 
    
    Поскольку фоновые задания используют функции удаленного взаимодействия Wind
    ows PowerShell, компьютер должен быть настроен для удаленного взаимодействи
    я даже при работе с заданиями, которые выполняются только на локальном комп
    ьютере.
    
    Дополнительные сведения о требованиях для удаленного взаимодействия Windows
     PowerShell см. в разделе about_Remote_Requirements. Советы по диагностике 
    см. в разделе about_Remote_Troubleshooting.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113328
    about_Jobs 
    about_Job_details 
    about_Remote_Jobs 
    Start-Job 
    Receive-Job 
    Wait-Job 
    Stop-Job 
    Remove-Job 
    Invoke-Command 



Get-Location

ИМЯ
    Get-Location
    
ОПИСАНИЕ
    Получает сведения о текущем рабочем местоположении.
    
СИНТАКСИС
    Get-Location [-PSDrive <string[]>] [-PSProvider <string[]>] [-UseTransactio
    n] [<CommonParameters>]
    
    Get-Location [-Stack] [-StackName <string[]>] [-UseTransaction] [<CommonPar
    ameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Location возвращает объект, представляющий текущий каталог; д
    анный командлет во многом напоминает команду pwd, которая позволяет отобраз
    ить рабочий каталог. 
    
    При переключении между дисками Windows PowerShell оболочка Windows PowerShe
    ll запоминает текущее местоположение на каждом диске. Для поиска текущего м
    естоположения на каждом диске можно использовать командлет Get-Location.
    
    Командлет Get-Location также позволяет получить текущий каталог при выполне
    нии команды, чтобы использовать его в функциях и скриптах, например, в функ
    ции, отображающей текущий каталог в командной строке Windows PowerShell.
    
    При использовании командлета Push-Location для добавления местоположений в 
    стек путей можно применить параметр Stack командлета Get-Location, чтобы от
    образить текущий стек.
    
ПАРАМЕТРЫ
    -PSDrive <string[]>
        Получает текущее местоположение на указанном диске Windows PowerShell. 
        
        Например, при работе на диске Certificate: этот параметр можно использо
        вать для поиска текущего местоположения на диске C:.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PSProvider <string[]>
        Получает текущее местоположение на диске, поддерживаемом указанным пост
        авщиком Windows PowerShell. 
        
        Если указанный поставщик поддерживает несколько дисков, командлет Get-L
        ocation возвращает местоположение на диске, доступ к которому осуществл
        ялся позднее, чем к остальным дискам.
        
        Например, при работе на диске C: этот параметр можно использовать для п
        оиска текущего местоположения на дисках поставщика Windows PowerShell R
        egistry.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Stack [<SwitchParameter>]
        Отображает местоположения в стеке путей по умолчанию.
        
        Для добавления путей в стек по умолчанию используйте командлет Push-Loc
        ation.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -StackName <string[]>
        Отображает местоположения в указанных стеках путей. 
        
        Для создания стеков путей используйте командлет Push-Location.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Объекты PathInfo или объекты StackInfo
        При использовании параметров Stack или StackName командлет Get-Location
         возвращает объект StackInfo. В противном случае командлет возвращает о
        бъект PathInfo.
    
    
ПРИМЕЧАНИЯ
    
    
        Местоположения можно сохранять в стеке. Командлет Push-Location добавля
        ет местоположение в конец стека. Командлет Pop-Location получает послед
        нее добавленное в стек местоположение.
         
        Взаимодействие параметров PSProvider, PSDrive, Stack и StackName зависи
        т от поставщика. Сочетание некоторых параметров вызывает ошибку (наприм
        ер, при одновременном указании имени диска и не поддерживающего его пос
        тавщика). Если параметры не указаны, то командлет Get-Location возвраща
        ет объект PathInfo для поставщика, содержащего текущее рабочее местопол
        ожение.
        
        Командлет Get-Location предназначен для работы с данными, предоставляем
        ыми любым поставщиком. Чтобы получить список поставщиков, доступных в т
        екущем сеансе, введите команду "Get-PSProvider". Дополнительные сведени
        я см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-location
    
    Path
    ----
    C:\WINDOWS
    
    
    Описание
    -----------
    Эта команда отображает текущее местоположение на текущем диске Windows Powe
    rShell.
    
    Например, если пользователь работает в каталоге Windows на диске C:, команд
    а отображает путь к этому каталогу.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-location
    
    
    Описание
    -----------
    На примере следующих команд демонстрируется использование командлета Get-Lo
    cation для отображения текущего каталога на различных дисках Windows PowerS
    hell.
    
    Первая команда с помощью командлета Set-Location задает в качестве текущего
     местоположения каталог Windows на диске C:.
    
        C:\PS> set-location C:\Windows
    
    Вторая команда с помощью командлета Set-Location изменяет местоположение на
     HKLM:\Software\Microsoft (раздел реестра). При переключении на диск HKLM: 
    оболочка Windows PowerShell запоминает текущее местоположение на диске C:. 
    
        PS C:\WINDOWS> set-location HKLM:\Software\Microsoft
        PS HKLM:\Software\Microsoft>
    
    Третья команда с помощью командлета Set-Location изменяет местоположение на
     "HKCU:\Control Panel\Input Method" (раздел реестра).
    
        PS HKLM:\Software\Microsoft> set-location 'HKCU:\Control Panel\Input Me
    thod'
        PS HKCU:\Control Panel\Input Method>
    
    Четвертая команда с помощью командлета Get-Location находит текущее местопо
    ложение на диске C:. Для указания диска используется параметр PSDrive.
    
         PS HKCU:\Control Panel\Input Method> get-location -psdrive c
        Путь
        ----
        C:\WINDOWS
    
    Пятая команда с помощью командлета Set-Location позволяет вернуться на диск
     C:. Несмотря на то что вложенный каталог в команде не указан, в оболочке W
    indows PowerShell осуществляется возврат к сохраненному местоположению.
    
        PS HKCU:\Control Panel\Input Method> set-location C:
        PS C:\WINDOWS>
    
    Шестая команда с помощью командлета Get-Location находит текущие местополож
    ения на дисках, поддерживаемых поставщиком Windows PowerShell Registry. Ком
    андлет Get-Location возвращает диск реестра, доступ к которому осуществлялс
    я позднее, чем к остальным дискам, — HKCU:.
    
        PS C:\WINDOWS> get-location -psprovider registry
        Путь
        ----
        HKCU:\Control Panel\Input Method
    
    Для просмотра текущего местоположения на диске HKLM: необходимо указать дис
    к с помощью параметра PSDrive. Результат выполнения седьмой команды очевиде
    н:
    
        PS C:\WINDOWS> get-location -psdrive HKLM
        Путь
        ----
        HKLM:\Software\Microsoft
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>set-location
    
    
    Описание
    -----------
    На примере следующих команд демонстрируется использование параметров Stack 
    и StackName командлета Get-Location для вывода списка путей, хранящихся в с
    теках путей по умолчанию и альтернативных стеках путей.
    
    Первая команда задает в качестве текущего местоположения каталог Windows на
     диске C:.
        
        C:\PS> set-location C:\Windows 
    
    Вторая команда с помощью командлета Push-Location добавляет текущее местопо
    ложение (C:\Windows) в стек путей и переключает пользователя на вложенный к
    аталог System32. Поскольку стек не указан, текущее местоположение добавляет
    ся в стек по умолчанию.
        C:\WINDOWS>push-location System32
    
    Третья команда добавляет текущее местоположение (C:\Windows\System32) в сте
    к Stack2 и переключает пользователя на вложенный каталог WindowsPowerShell.
        
        C:\Windows\System32>push-location WindowsPowerShell -stack Stack2
    
    Четвертая с помощью командлета Get-Location извлекает пути из стека по умол
    чанию.
        
        C:\WINDOWS\system32\WindowsPowerShell>get-location -stack
    
        Путь
        ----
        C:\WINDOWS
    
    Последняя команда с помощью параметра StackName командлета Get-Location изв
    лекает пути из стека Stack2.
        
        C:\WINDOWS\system32\WindowsPowerShell>get-location -stackname Stack2
    
        Путь
        ----
        C:\WINDOWS\system32
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>function prompt { 'PowerShell: ' + (get-location) + '> '}
    
    PowerShell: C:\WINDOWS>
    
    
    Описание
    -----------
    В этом примере показано, как настроить командную строку Windows PowerShell.
     Функция, определяющая командную строку, включает команду Get-Location, кот
    орая выполняется при каждом отображении командной строки в консоли.
    
    Формат командной строки Windows PowerShell по умолчанию определяется специа
    льной функцией с именем "prompt". Командную строку, отображаемую в консоли,
     можно изменить, создав новую функцию с именем "prompt".
    
    Для просмотра текущей функции "prompt" введите следующую команду:
     
        get-content function:prompt
    
    Команда начинается с ключевого слова "function", за которым следует имя фун
    кции — "prompt". Тело функции заключено в фигурные скобки ( {} ). 
    
    Эта команда определяет новую командную строку, начинающуюся со строки "Powe
    rShell: ". Для добавления текущего местоположения в данной команде использу
    ется команда Get-Location, которая выполняется при вызове функции "prompt".
     Командная строка заканчивается строкой "> ".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113321
    about_Providers 
    Pop-Location 
    Push-Location 
    Set-Location 



Get-Member

ИМЯ
    Get-Member
    
ОПИСАНИЕ
    Получает свойства и методы объектов.
    
СИНТАКСИС
    Get-Member [[-Name] <string[]>] [-Force] [-InputObject <psobject>] [-Member
    Type {AliasProperty | CodeProperty | Property | NoteProperty | ScriptProper
    ty | Properties | PropertySet | Method | CodeMethod | ScriptMethod | Method
    s | ParameterizedProperty | MemberSet | Event | All}] [-Static] [-View {Ext
    ended | Adapted | Base | All}] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Member получает элементы (свойства и методы) объектов. 
    
    Чтобы задать объект, воспользуйтесь параметром InputObject или по конвейеру
     передайте объект командлету Get-Member. Для получения сведений о статическ
    их элементах (элементах класса, а не экземпляра) используется параметр Stat
    ic. Чтобы получить элементы только определенных типов, например NotePropert
    ies, следует использовать параметр MemberType.
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Добавляет в вывод встроенные элементы (PSBase, PSAdapted, PSObject, PST
        ypeNames) и создаваемые компилятором методы get_ и set_. По умолчанию к
        омандлет Get-Member получает эти свойства во всех представлениях, кроме
         представлений "Base" и "Adapted", но не отображает их. 
        
        В следующем списке описаны свойства, добавляемые при использовании пара
        метра Force.
        
        -- PSBase: исходные свойства объекта .NET Framework без расширения или 
        адаптации. Эти свойства определены в классе объекта и перечислены в биб
        лиотеке MSDN. 
        -- PSAdapted: свойства и методы, определенные в расширенной системе тип
        ов Windows PowerShell.
        -- PSExtended: свойства и методы, добавленные в файлы Types.ps1xml или 
        с помощью командлета Add-Member.
        -- PSObject: адаптер, преобразующий базовый объект в объект PSObject Wi
        ndows PowerShell.
        -- PSTypeNames: список типов объектов, описывающих объект, в порядке их
         специфичности. При форматировании объекта оболочка Windows PowerShell 
        выполняет поиск типов в файлах Format.ps1xml в каталоге установки Windo
        ws PowerShell ($pshome). Она использует определение форматирования перв
        ого найденного типа.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объект, для которого командлет получает элементы.
        
        Использование параметра InputObject отличается от передачи объектов ком
        андлету Get-Member с помощью конвейера. Различия заключаются в следующе
        м.
        
        -- При передаче коллекции объектов командлету Get-Member с помощью конв
        ейера командлет Get-Member получает элементы отдельных объектов коллекц
        ии, например свойства целых значений в целочисленном массиве. 
        
        -- При использовании для передачи коллекции объектов параметра InputObj
        ect командлет Get-Member получает элементы коллекции, например свойства
         массива в целочисленном массиве.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -MemberType <PSMemberTypes>
        Получает только элементы указанного типа. По умолчанию используется зна
        чение "All". 
        
        Допустимые значения этого параметра: 
        
        -- AliasProperty: свойство, определяющее новое имя существующего свойст
        ва;
        -- CodeMethod: метод, ссылающийся на статический метод класса .NET Fram
        ework;
        -- CodeProperty: свойство, ссылающееся на статическое свойство класса .
        NET Framework;
        -- Event: указывает, что объект отправляет сообщение, чтобы уведомить о
         действии или изменении состояния; 
        -- MemberSet: заранее определенный набор свойств и методов, например PS
        Base, PSObject и PSTypeNames;
        -- Method: метод базового объекта .NET Framework;  
        -- NoteProperty: свойство со статическим значением;
        -- ParameterizedProperty: свойство, принимающее параметры и значения па
        раметров; 
        -- Property: свойство базового объекта .NET Framework;
        -- PropertySet: заранее определенный набор свойств объекта;
        -- ScriptMethod: метод, значением которого является результат выполнени
        я скрипта;
        -- ScriptProperty: свойство, значением которого является результат выпо
        лнения скрипта;
        
        -- All: получает все типы элементов;  
        -- Methods: получает все типы методов объекта (например, Method, CodeMe
        thod, ScriptMethod);
        -- Properties: получает все типы свойств объекта (например, Property, C
        odeProperty, AliasProperty, ScriptProperty).
        
        Не у всех объектов имеются элементы каждого из типов. Если указать тип 
        элемента, который у объекта отсутствует, оболочка Windows PowerShell ве
        рнет значение NULL.
        
        Чтобы получить элементы связанных типов, например все расширенные элеме
        нты, следует использовать параметр View. При использовании параметра Me
        mberType с параметрами Static и View командлет Get-Member получает элем
        енты, которые принадлежат обоим наборам.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена одного или нескольких свойств или методов объекта. Командл
        ет Get-Member получает только заданные свойства и методы.
        
        При использовании параметра Name совместно с параметрами MemberType, Vi
        ew или Static командлет Get-Member получает только элементы, которые уд
        овлетворяют всем параметрам. 
        
        Чтобы получить статический элемент по имени, необходимо использовать па
        раметр Static совместно с параметром Name.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Static [<SwitchParameter>]
        Получает только статические свойства и методы объекта. 
        
        Статические свойства и методы определяются для класса объектов, а не дл
        я конкретного экземпляра этого класса.
        
        Если параметр Static использовать с параметром View, параметр View игно
        рируется. При использовании параметра Static с параметром MemberType ко
        мандлет Get-Member получает только те элементы, которые принадлежат обо
        им наборам.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -View <PSMemberViewTypes>
        Получает только элементы (свойства и методы) конкретных типов. Укажите 
        одно или несколько значений. По умолчанию используется значение "Adapte
        d, Extended".
        
        Допустимые значения:
        -- Base: получает только исходные свойства и методы объекта .NET Framew
        ork (без расширения или адаптации);
        -- Adapted: получает только свойства и методы, определенные в расширенн
        ой системе типов Windows PowerShell;
        -- Extended: получает только свойства и методы, добавленные в файлы Typ
        es.ps1xml или с помощью командлета Add-Member;
        -- All: получает элементы, относящиеся к представлениям Base, Adapted и
         Extended.
        
        Параметр View определяет получаемые, а не только отображаемые элементы.
         
        
        Чтобы получить элементы конкретных типов, например свойства скриптов, н
        еобходимо воспользоваться параметром MemberType. При использовании в од
        ной команде параметров MemberType и View командлет Get-Member получает 
        элементы, которые принадлежат обоим наборам. При использовании в одной 
        команде параметров Static и View параметр View игнорируется.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету Get-Member по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.MemberDefinition
        Командлет Get-Member возвращает объект для каждого получаемого им свойс
        тва или метода.
    
    
ПРИМЕЧАНИЯ
    
    
        Данные об объекте коллекции можно получить с помощью параметра InputObj
        ect, или передав объект с запятой в начале командлету Get-Member по кон
        вейеру.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-service | get-member
    
    
       TypeName: System.ServiceProcess.ServiceController
    
    Name                      MemberType    Definition
    ----                      ----------    ----------
    Name                      AliasProperty Name = ServiceName
    Close                     Method        System.Void Close()
    Continue                  Method        System.Void Continue()
    CreateObjRef              Method        System.Runtime.Remoting.ObjRef Crea
    teObjRef(Type requestedType)
    Dispose                   Method        System.Void Dispose()
    Equals                    Method        System.Boolean Equals(Object obj)
    ExecuteCommand            Method        System.Void ExecuteCommand(Int32 co
    mmand)
    GetHashCode               Method        System.Int32 GetHashCode()
    GetLifetimeService        Method        System.Object GetLifetimeService()
    GetType                   Method        System.Type GetType()
    InitializeLifetimeService Method        System.Object InitializeLifetimeSer
    vice()
    Pause                     Method        System.Void Pause()
    Refresh                   Method        System.Void Refresh()
    Start                     Method        System.Void Start(), System.Void St
    art(String[] args)
    Stop                      Method        System.Void Stop()
    ToString                  Method        System.String ToString()
    WaitForStatus             Method        System.Void WaitForStatus(ServiceCo
    ntrollerStatus desiredStatus), System.Voi...
    CanPauseAndContinue       Property      System.Boolean CanPauseAndContinue 
    {get;}
    CanShutdown               Property      System.Boolean CanShutdown {get;}
    CanStop                   Property      System.Boolean CanStop {get;}
    Container                 Property      System.ComponentModel.IContainer Co
    ntainer {get;}
    DependentServices         Property      System.ServiceProcess.ServiceContro
    ller[] DependentServices {get;}
    DisplayName               Property      System.String DisplayName {get;set;
    }
    MachineName               Property      System.String MachineName {get;set;
    }
    ServiceHandle             Property      System.Runtime.InteropServices.Safe
    Handle ServiceHandle {get;}
    ServiceName               Property      System.String ServiceName {get;set;
    }
    ServicesDependedOn        Property      System.ServiceProcess.ServiceContro
    ller[] ServicesDependedOn {get;}
    ServiceType               Property      System.ServiceProcess.ServiceType S
    erviceType {get;}
    Site                      Property      System.ComponentModel.ISite Site {g
    et;set;}
    Status                    Property      System.ServiceProcess.ServiceContro
    llerStatus Status {get;}
    
    
    Описание
    -----------
    Эта команда отображает свойства и методы объектов процессов (System.Service
    Process.ServiceController), создаваемых командлетом Get-Service.
    
    Для передачи результатов выполнения командлета Get-Service командлету Get-M
    ember в этой команде используется оператор конвейера (|).
    
    Поскольку командлет Get-Member в этой команде выполняется без параметров, и
    спользуются все значения по умолчанию. Поэтому он получает элементы всех ти
    пов, однако не получает статические элементы и не отображает встроенные эле
    менты.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-service | get-member -force
    
    C:\PS> (get-service -schedule).psbase
    
    
    Описание
    -----------
    Команда в этом примере получает все элементы (свойства и методы) объектов с
    лужб (System.ServiceProcess.ServiceController), получаемых командлетом Get-
    Service, включая встроенные элементы, такие как PSBase и PSObject, а также 
    методы get_ и set_.
    
    Первая команда с помощью командлета Get-Service получает объекты, представл
    яющие службы системы. Объект службы передается командлету Get-Member с помо
    щью оператора конвейера (|).
    
    Команда Get-Member использует параметр Force, чтобы отобразить встроенные э
    лементы объектов и элементы, создаваемые компилятором. Командлет Get-Member
     получает эти элементы, однако по умолчанию они не отображаются.
    
    Эти свойства и методы можно использовать так же, как используются адаптиров
    анные методы объекта. Вторая команда показывает, как вывести значение свойс
    тва PSBase службы Schedule.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-service    | get-member -view extended
    
       TypeName: System.ServiceProcess.ServiceController
    
    Name MemberType    Definition
    ---- ----------    ----------
    Name AliasProperty Name = ServiceName
    
    
    Описание
    -----------
    Эта команда получает свойства и методы объектов служб, которые были расшире
    ны с помощью файла Types.ps1xml или командлета Add-Member. 
    
    
    Команда Get-Member использует параметр View, чтобы получить только расширен
    ные элементы объектов служб. В данном случае в роли расширенного элемента в
    ыступает свойство Name, которое является псевдонимом свойства ServiceName.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-eventlog -log system | gm -membertype scriptproperty
    
       TypeName: System.Diagnostics.EventLogEntry
    
    Name    MemberType     Definition
    ----    ----------     ----------
    EventID ScriptProperty System.Object EventID {get=$this.get_EventID() -band
     0xFFFF;}
    
    
    Описание
    -----------
    Эта команда получает свойства скрипта объектов журнала событий в журнале "С
    истема" средства "Просмотр событий". В данном случае единственным свойством
     скрипта является EventID.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-eventlog -log system | get-member -membertype scriptproperty
    
    
       TypeName: System.Diagnostics.EventLogEntry
    
    Name    MemberType     Definition
    ----    ----------     ----------
    EventID ScriptProperty System.Object EventID {get=$this.get_EventID() -band
     0xFFFF;}
    
    
    Описание
    -----------
    Эта команда получает свойства скрипта объектов журнала событий в журнале "С
    истема" средства "Просмотр событий". 
    
    Команда использует параметр MemberType, чтобы получить только объекты, для 
    которых свойство MemberType имеет значение AliasProperty.
    
    Команда возвращает свойство EventID объекта EventLog.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>$a = "get-process", "get-service", "get-culture", "get-psdrive", "get
    -executionpolicy"
    
    C:\PS> foreach ($cmdlet in $a) {invoke-expression $cmdlet | get-member -nam
    e machinename}
    
    TypeName: System.Diagnostics.Process
    
    Name        MemberType Definition
    ----        ---------- ----------
    MachineName Property   System.String MachineName {get;}
    
    
       TypeName: System.ServiceProcess.ServiceController
    
    Name        MemberType Definition
    ----        ---------- ----------
    MachineName Property   System.String MachineName {get;set;}
    
    
    Описание
    -----------
    Эта команда получает объекты, у которых имеется свойство MachineName, указа
    нное в командлетах.
    
    Первая команда сохраняет имена нескольких командлетов в переменной $a.
    
    Вторая команда использует инструкцию ForEach, чтобы вызвать каждую из коман
    д, передать результаты в командлет Get-Member и ограничить результаты выпол
    нения командлета Get-Member только элементами с именем "MachineName".
    
    Результаты показывают, что свойство MachineName имеется только у объектов п
    роцессов (System.Diagnostics.Process) и объектов служб (System.ServiceProce
    ss.ServiceController).
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>$a = get-member -inputobject @(1)
    
    C:\PS>$a.count
    
    1
    
    C:\PS> $a = get-member -inputobject 1,2,3
    
       TypeName: System.Object[]
    Name               MemberType    Definition
    ----               ----------    ----------
    Count              AliasProperty Count = Length
    Address            Method        System.Object& Address(Int32 )
    Clone              Method        System.Object Clone()
    ...
    
    C:\PS>$a.count
    1
    
    
    Описание
    -----------
    В этом примере показано, как получить свойства и методы объектов, если имее
    тся только один объект заданного типа.
    
    Поскольку целью этой команды является получение свойств массива, первая ком
    анда использует параметр InputObject. Для указания массива в ней использует
    ся символ "@". В данном случае массив содержит только один объект — целое ч
    исло 1. 
    
    Третья команда получает свойства и методы массива целых чисел с помощью ком
    андлета Get-Member и сохраняет их в переменной $a.
    
    Четвертая команда использует свойство Count массива для определения числа о
    бъектов в переменной $a.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113322
    Add-Member 
    Get-Help 
    Get-Command 
    Get-PSDrive 



Get-Module

ИМЯ
    Get-Module
    
ОПИСАНИЕ
    Получает модули, которые были импортированы или могут быть импортированы в 
    текущий сеанс.
    
СИНТАКСИС
    Get-Module [-All] [-ListAvailable] [-Name <string[]>] [<CommonParameters>]
    
    Get-Module [[-Name] <string[]>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Module возвращает модули, которые были импортированы или могу
    т быть импортированы в сеанс.
    
    Командлет Get-Module только возвращает модули, но не импортирует их. Чтобы 
    импортировать модули в сеанс, воспользуйтесь командлетом Import-Module.
    
ПАРАМЕТРЫ
    -All [<SwitchParameter>]
        Получает объекты модулей для всех файлов модулей. 
        
        При запуске без параметра All командлет Get-Module возвращает только об
        ъект модуля для файла модуля по умолчанию. Типы файлов выбираются коман
        длетом в следующем порядке: файлы манифеста (PSD1), файлы модулей скрип
        та (PSM1) и двоичные файлы (DLL).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ListAvailable [<SwitchParameter>]
        Получает все модули, которые могут быть импортированы в сеанс. Get-Modu
        le получает модули, которые хранятся в путях, заданных переменной среды
         $env:PSModulePath. 
        
        При запуске без этого параметра командлет Get-Module получает информаци
        ю только о тех модулях, которые были импортированы в сеанс.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Получает только модули с заданными именами или шаблонами имен. Подстано
        вочные знаки разрешены. Кроме того, можно передавать имена командлету G
        et-Module с помощью конвейера.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                All imported or available modules.
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  true
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Можно передать имена модулей командлету Get-Module по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSModuleInfo
        Get-Module возвращает объекты, представляющие модули.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Get-Module также можно вызывать с помощью псевдонима "gmo". Д
        ополнительные сведения см. в разделе About_Aliases.
        
        Параметр All возвращает объекты модулей для всех файлов DLL, даже если 
        они не реализуют командлеты или поставщики.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-module
    
    
    Description
    -----------
    Эта команда получает модули, которые были импортированы в текущий сеанс.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-module -listAvailable
    
    
    Description
    -----------
    Эта команда получает модули, которые могут быть импортированы в текущий сеа
    нс.
    
    Get-Module выполняет поиск доступных модулей в пути, указанном переменной с
    реды $env:PSModulePath. Дополнительные сведения о переменной среды PSModule
    Path см. в разделах about_Modules и about_Environment_Variables.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-module -listAvailable -all
    
    
    Description
    -----------
    Эта команда получает все экспортированные файлы для всех доступных модулей.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-module | get-member -type property
    
       TypeName: System.Management.Automation.PSModuleInfo
    
    Name              MemberType Definition
    ----              ---------- ----------
    AccessMode        Property   System.Management.Automation.ModuleAcc
    Description       Property   System.String Description {get;set;}
    ExportedAliases   Property   System.Collections.Generic.Dictionary`
    ExportedCmdlets   Property   System.Collections.Generic.Dictionary`
    ExportedFunctions Property   System.Collections.Generic.Dictionary`
    ExportedVariables Property   System.Collections.Generic.Dictionary`
    Guid              Property   System.Guid Guid {get;}
    ModuleBase        Property   System.String ModuleBase {get;}
    ModuleType        Property   System.Management.Automation.ModuleTyp
    Name              Property   System.String Name {get;}
    NestedModules     Property   System.Collections.ObjectModel.ReadOnl
    OnRemove          Property   System.Management.Automation.ScriptBlo
    Path              Property   System.String Path {get;}
    PrivateData       Property   System.Object PrivateData {get;set;}
    SessionState      Property   System.Management.Automation.SessionSt
    Version           Property   System.Version Version {get;}
    
    
    Description
    -----------
    Эта команда получает свойства объекта PSModuleInfo, возвращаемого командлет
    ом Get-Module. Для каждого файла модуля возвращается один объект.
    
    Эти свойства можно использовать для форматирования и фильтрации объектов мо
    дуля. Дополнительные сведения об этих свойствах см. в разделе "Свойства PSM
    odule" библиотеки MSDN (Microsoft Developer Network) по адресу  (на английс
    ком языке).
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-module -listAvailable -all | format-table -property name, modulet
    ype, path -groupby name -auto
    
       Name: MyTestCmdlets
    
    Name          ModuleType Path
    ----          ---------- ----
    MyTestCmdlets     Script C:\Windows\system32\WindowsPowerShell\v1.0\Modules
    \TestCmdlets\TestCmdlets.dll
    
    
       Name: PSDiagnostics
    
    Name          ModuleType Path
    ----          ---------- ----
    PSDiagnostics   Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules
    \PSDiagnostics\PSDiagnostics.psd1
    PSDiagnostics     Script C:\Windows\system32\WindowsPowerShell\v1.0\Modules
    \PSDiagnostics\PSDiagnostics.psm1
    
    
       Name: FileTransfer
    
    Name         ModuleType Path
    ----         ---------- ----
    FileTransfer   Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\
    FileTransfer\FileTransfer.psd1
    
    
    Description
    -----------
    Эта команда получает все файлы модулей (импортированных и доступных) и груп
    пирует их по имени модуля. Это позволяет увидеть все файлы модулей, экспорт
    ируемые каждым скриптом.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>$m = get-module -list -name FileTransfer | where {$_.moduletype -eq "
    Manifest"}
    
    C:\PS> get-content $m.path
    
    @{
    GUID="{8FA5064B-8479-4c5c-86EA-0D311FE48875}"
    Author="Microsoft Corporation"
    CompanyName="Microsoft Corporation"
    Copyright="© Microsoft Corporation. All rights reserved."
    ModuleVersion="1.0.0.0"
    Description="Windows Powershell File Transfer Module"
    PowerShellVersion="2.0"
    CLRVersion="2.0"
    NestedModules="Microsoft.BackgroundIntelligentTransfer.Management"
    FormatsToProcess="FileTransfer.Format.ps1xml"
    RequiredAssemblies=Join-Path $psScriptRoot "Microsoft.BackgroundIntelligent
    Transfer.Management.Interop.dll"
    }
    
    
    Description
    -----------
    Эти команды отображают содержимое манифеста модуля для модуля Windows Power
    Shell File Transfer.
    
    Первая команда получает объект PSModuleInfo, представляющий манифест модуля
     для модуля File Transfer. Она сохраняет объект в переменной $m.
    
    Вторая команда использует обращение через точку, чтобы получить путь к файл
    у манифеста, который хранится в свойстве Path объекта. Затем она использует
     командлет Get-Content для получения содержимого файла манифеста по указанн
    ому пути.
    
    Модули не обязательно должны иметь файлы манифеста. Если модуль имеет файл 
    манифеста, манифест требуется только для указания номера версии. Однако нер
    едко в файле манифеста содержится полезная информация о модуле, его требова
    ниях и его содержании.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-module -listAvailable  -name FileTransfer | format-list -property
     *
    
    Name              : FileTransfer
    Path              : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\File
    Transfer\FileTransfer.psd1
    Description       : Powershell File Transfer Module
    Guid              : 8fa5064b-8479-4c5c-86ea-0d311fe48875
    ModuleBase        : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\File
    Transfer
    PrivateData       :
    Version           : 1.0.0.0
    ModuleType        : Manifest
    AccessMode        : ReadWrite
    ExportedFunctions : {}
    ExportedCmdlets   : {}
    NestedModules     : {}
    ExportedVariables : {}
    ExportedAliases   : {}
    SessionState      : System.Management.Automation.SessionState
    OnRemove          :
    
    
    Description
    -----------
    Эта команда отображает все свойства модуля FileTransfer в виде списка. 
    
    Поскольку модуль еще не был импортирован в сеансе, значения свойств Exporte
    d* и свойства NestedModules пока не определены. Значения этих свойств будут
     определены только после экспорта элементов и создания экземпляров вложенны
    х модулей.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>dir (get-module -listavailable FileTransfer).modulebase
    
        Directory: C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTrans
    fer
    
    
    Mode                LastWriteTime     Length Name
    ----                -------------     ------ ----
    d----        12/16/2008  12:36 PM            en-US
    -a---        11/19/2008  11:30 PM      16184 FileTransfer.Format.ps1xml
    -a---        11/20/2008  11:30 PM       1044 FileTransfer.psd1
    -a---        12/16/2008  12:20 AM     108544 Microsoft.BackgroundIntelligen
    tTransfer.Management.Interop.dll
    
    
    Description
    -----------
    Эта команда выводит список файлов в каталоге модуля. Это еще один способ оп
    ределить назначение модуля перед его импортом. В комплект поставки некоторы
    х модулей могут входить файлы справки или файлы ReadMe, в которых содержитс
    я описание модуля.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=141552
    Import-Module 
    New-Module 
    Remove-Module 
    about_Modules 



Get-PfxCertificate

ИМЯ
    Get-PfxCertificate
    
ОПИСАНИЕ
    Получает данные о PFX-файлах сертификата в компьютере.
    
СИНТАКСИС
    Get-PfxCertificate [-FilePath] <string[]> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-PfxCertificate получает объект, представляющий каждый указанн
    ый PFX-файл сертификата. PFX-файл содержит как сертификат, так и закрытый к
    люч.
    
ПАРАМЕТРЫ
    -FilePath <string[]>
        Полный путь к PFX-файлу защищенного файла. Имя параметра ("FilePath") н
        еобязательно.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь к файлу, можно передать командлету Get-PfxCerti
        ficate по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Security.Cryptography.X509Certificates
        Командлет Get-PfxCertificate возвращает объект для каждого получаемого 
        сертификата.
    
    
ПРИМЕЧАНИЯ
    
    
        Если для удаленного запуска команды Get-PfxCertificate используется ком
        андлет Invoke-Command, а PFX-файл сертификата не защищается паролем, зн
        ачение параметра Authentication командлета Invoke-Command должно быть р
        авно "CredSSP".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-pfxcertificate -filepath C:\windows\system32\Test.pfx
    
    Password: ******
    Signer Certificate:      Matt Berg (Self Certificate)
    Time Certificate:
    Time Stamp:
    Path:                    C:\windows\system32\zap.pfx
    
    
    Описание
    -----------
    Эта команда получает данные о сертификате Test.pfx в системе.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>invoke-command -computername Server01 -scriptblock {get-pfxcertificat
    e -filepath C:\Text\TestNoPassword.pfx} -authentication CredSSP
    
    
    Описание
    -----------
    Эта команда получает PFX-файл сертификата с удаленного компьютера Server01.
     Для удаленного выполнения команды Get-PfxCertificate она использует команд
    лет Invoke-Command.
    
    Если PFX-файл сертификата не защищен паролем, значение параметра Authentica
    tion командлета Invoke-Command должно быть равно "CredSSP".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113323
    Get-AuthenticodeSignature 
    Set-AuthenticodeSignature 
    about_Signing 



Get-Process

ИМЯ
    Get-Process
    
ОПИСАНИЕ
    Получает процессы, выполняющиеся на локальном или удаленном компьютере.
    
СИНТАКСИС
    Get-Process [[-Name] <string[]>] [-ComputerName <string[]>] [-FileVersionIn
    fo] [-Module] [<CommonParameters>]
    
    Get-Process -Id <Int32[]> [-ComputerName <string[]>] [-FileVersionInfo] [-M
    odule] [<CommonParameters>]
    
    Get-Process -InputObject <Process[]> [-ComputerName <string[]>] [-FileVersi
    onInfo] [-Module] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Process получает процессы, выполняющиеся на локальном или уда
    ленном компьютере. 
    
    При вызове без параметров командлет Get-Process получает все процессы, выпо
    лняющиеся на локальном компьютере. Можно также задать конкретный процесс, у
    казав его имя или идентификатор (PID) или передав объект процесса по конвей
    еру командлету Get-Process.  
    
    По умолчанию командлет Get-Process возвращает объект процесса, который соде
    ржит подробные сведения о процессе и поддерживает методы, позволяющие запус
    кать и останавливать процесс. Параметры командлета Get-Process можно исполь
    зовать для получения информации о версии программы, выполняющейся в конкрет
    ном процессе, а также для получения модулей, загруженных процессом.
    
ПАРАМЕТРЫ
    -ComputerName <string[]>
        Получает процессы, выполняющиеся на указанных компьютерах. По умолчанию
         используется значение "Локальный компьютер".  
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескол
        ьких компьютеров. Чтобы указать локальный компьютер, введите имя компью
        тера, точку (.) или "localhost".
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName командлета Get-Process можно использовать, даже
         если компьютер не настроен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -FileVersionInfo [<SwitchParameter>]
        Получает информацию о версии программы, выполняющейся в конкретном проц
        ессе. 
        
        Чтобы использовать этот параметр для процессов, владельцем которых явля
        етесь не вы, под управлением Windows Vista и более поздних версий Windo
        ws необходимо запускать Windows PowerShell командой "Запуск от имени ад
        министратора".
        
        Использование этого параметра эквивалентно получению свойства MainModul
        e.FileVersionInfo каждого объекта процесса. При использовании этого пар
        аметра командлет Get-Process возвращает объект FileVersionInfo (System.
        Diagnostics.FileVersionInfo), а не объект процесса. Таким образом, нево
        зможно передать выходные данные команды по конвейеру командлету, ожидаю
        щему объект процесса, например Stop-Process.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Id <Int32[]>
        Задает один или несколько процессов, используя их идентификаторы (PID).
         При вводе нескольких идентификаторов необходимо разделять их запятыми.
         Чтобы определить идентификатор процесса, введите команду get-process.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -InputObject <Process[]>
        Задает один или несколько объектов процессов. Введите переменную, содер
        жащую объекты, либо команду или выражение для получения объектов.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Module [<SwitchParameter>]
        Получает модули, загруженные процессами. 
        
        Чтобы использовать этот параметр для процессов, владельцем которых явля
        етесь не вы, под управлением Windows Vista и более поздних версий Windo
        ws необходимо запускать Windows PowerShell командой "Запуск от имени ад
        министратора".
        
        Использование этого параметра эквивалентно получению свойства Modules к
        аждого объекта процесса. При использовании этого параметра командлет Ge
        t-Process возвращает объект ProcessModule (System.Diagnostics.ProcessMo
        dule), а не объект процесса. Таким образом, невозможно передать выходны
        е данные команды по конвейеру командлету, ожидающему объект процесса, н
        апример Stop-Process.
        
        При одновременном использовании параметров Module и FileVersionInfo ком
        андлет Get-Process возвращает объект FileVersionInfo, в котором содержи
        тся информация о версиях файлов всех модулей.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает один или несколько процессов, используя их имена. Можно ввести н
        есколько имен процессов, разделяя их запятыми, либо использовать подста
        новочные знаки. Имя параметра ("Name") указывать необязательно.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Diagnostics.Process
        Объект процесса можно передать командлету Get-Process по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Diagnostics.Process, System.Diagnotics.FileVersionInfo, System.Diagn
    ostics.ProcessModule
        По умолчанию командлет Get-Process возвращает объект System.Diagnostics
        .Process. При использовании параметра FileVersionInfo он возвращает объ
        ект System.Diagnotics.FileVersionInfo.  При использовании параметра Mod
        ule (без параметра FileVersionInfo) он возвращает объект System.Diagnos
        tics.ProcessModule.
    
    
ПРИМЕЧАНИЯ
    
    
        Параметры Name, ID и InputObject нельзя использовать в одной команде.
        
        Командлет Get-Process также можно вызывать с помощью встроенных псевдон
        имов "ps" и "gps". Дополнительные сведения см. в разделе About_Aliases.
        
        В оболочке Windows PowerShell также можно использовать свойства и метод
        ы объекта WMI Win32_Process. Дополнительные сведения см. в описании ком
        андлета Get-WmiObject и пакета SDK инструментария управления Windows (W
        MI).
        
        По умолчанию сведения о процессе представляются в виде таблицы, состоящ
        ей из следующих столбцов.
        
        -- Handles: количество дескрипторов, открытых текущим процессом. 
        
        -- NPM(K): объем невыгружаемой памяти, используемой процессом, в КБ. 
        
        -- PM(K): объем выгружаемой памяти, используемой процессом, в КБ.
        
        -- WS(K): размер рабочего множества процесса, в КБ. Рабочее множество с
        остоит из страниц памяти, к которым недавно обращался процесс. 
        
        -- VM(M): объем виртуальной памяти, используемой процессом, в МБ. Вирту
        альная память представляет собой хранилище файлов подкачки на диске.
        
        -- CPU(s): объем процессорного времени, потраченного на выполнение проц
        есса всеми процессорами, в секундах. 
        
        -- ID: идентификатор процесса (PID).
        
        -- ProcessName: имя процесса.
        
        Описание основных понятий, связанных с процессами, содержатся в глоссар
        ии центра технической поддержки, а также в справке по диспетчеру задач.
         
        
        Также можно использовать другие встроенные представления процессов, дос
        тупные с помощью командлета Format-Table (например, "StartTime" и "Prio
        rity"), либо создавать пользовательские представления. Дополнительные с
        ведения см. в описании командлета Format-Table.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Get-Process
    
    
    Описание
    -----------
    Эта команда извлекает список всех выполняющихся на локальном компьютере про
    цессов. Определение каждого столбца см. разделе в дополнительных примечаний
     в справке для командлета Get-Help.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>Get-Process winword, explorer | format-list *
    
    
    Описание
    -----------
    Эта команда извлекает все доступные сведения о процессах Winword и Explorer
     на компьютере. Для задания процессов в команде используется параметр Name,
     однако он является необязательным и в данном случае опущен. Оператор конве
    йера (|) передает данные командлету Format-List, который отображает все дос
    тупные свойства (*) объектов процессов Winword и Explorer.
    
    Процессы также могут задаваться с помощью идентификаторов, Например, "get-p
    rocess -id 664, 2060".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-process | where-object {$_.WorkingSet -gt 20000000}
    
    
    Описание
    -----------
    Эта команда отображает все процессы, рабочий набор которых превышает 20 МБ.
     Для отображения всех запущенных процессов используется командлет Get-Proce
    ss. Оператор конвейера (|) передает объекты процессов командлету Where-Obje
    ct, который отбирает среди них те, у которых значение свойства WorkingSet п
    ревышает значение 20 000 000 байт. 
    
    Параметр WorkingSet является одним из множества свойств объектов процессов.
     Чтобы просмотреть все свойства, введите "Get-Process | Get-Member". По умо
    лчанию значения всех свойств объема измеряются в байтах, хотя при этом они 
    отображаются в КБ и МБ.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$a = get-process
    
    C:\PS> get-process -inputobject $a | format-table -view priority
    
    
    Описание
    -----------
    Эти команды выводят список выполняющихся на компьютере процессов, которые о
    бъединяются в группы на основе класса приоритета. 
    
    Первая команда получает все процессы, выполняющиеся на компьютере, и сохран
    яет их в переменной $a. 
    
    Вторая команда с помощью параметра InputObject передает объекты процессов, 
    хранящиеся в переменной $a, командлету Get-Process. Объекты передаются по к
    онвейеру командлету Format-Table, который задает формат отображения процесс
    ов с помощью представления Priority. 
    
    Представление Priority и другие представления определены в PS1XML-файлах, х
    ранящихся в домашнем каталоге Windows PowerShell ($pshome).
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-process powershell -computername S1, localhost | ft @{Label="NPM(
    K)";Expression={[int]($_.NPM/1024)}}, @{Label="PM(K)";Expression={[int]($_.
    PM/1024)}},@{Label="WS(K)";Expression={[int]($_.WS/1024)}},@{Label="VM(M)";
    Expression={[int]($_.VM/1MB)}}, @{Label="CPU(s)";Expression={if ($_.CPU -ne
     $()) { $_.CPU.ToString("N")}}}, Id, MachineName, ProcessName -auto
    
    
    NPM(K) PM(K) WS(K) VM(M) CPU(s)   Id MachineName ProcessName
    ------ ----- ----- ----- ------   -- ----------- -----------
         6 23500 31340   142        1980 S1          powershell
         6 23500 31348   142        4016 S1          powershell
        27 54572 54520   576        4428 localhost   powershell
    
    
    Описание
    -----------
    В этом примере представлена команда Format-Table (псевдоним = ft), которая 
    добавляет свойство MachineName в стандартный набор отображаемых выходных да
    нных командлета Get-Process.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-process powershell -fileversioninfo
    
    ProductVersion   FileVersion      FileName
    --------------   -----------      --------
    6.1.6713.1       6.1.6713.1 (f... C:\WINDOWS\system32\WindowsPowerShell\v1.
    0\powershell.exe
    
    
    Описание
    -----------
    Эта команда с помощью параметра FileVersionInfo получает информацию о верси
    и файла PowerShell.exe, который является главным модулем процесса PowerShel
    l. 
    
    Чтобы использовать эту команду для процессов, владельцем которых являетесь 
    не вы, под управлением Windows Vista и более поздних версий Windows необход
    имо запускать Windows PowerShell командой "Запуск от имени администратора".
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-process sql* -module
    
    
    Описание
    -----------
    Эта команда с помощью параметра Module получает модули, загруженные процесс
    ом. Эта команда получает модули процессов, имена которых начинаются на "sql
    ".
    
    Чтобы использовать эту команду для процессов, владельцем которых являетесь 
    не вы, под управлением Windows Vista (и более поздних версий Windows) необх
    одимо запускать Windows PowerShell командой "Запуск от имени администратора
    ".
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>$p = get-wmiobject win32_process -filter "name='powershell.exe'"
    
    C:\PS> $p.getowner()
    
    __GENUS          : 2
    __CLASS          : __PARAMETERS
    __SUPERCLASS     :
    __DYNASTY        : __PARAMETERS
    __RELPATH        :
    __PROPERTY_COUNT : 3
    __DERIVATION     : {}
    __SERVER         :
    __NAMESPACE      :
    __PATH           :
    Domain           : DOMAIN01
    ReturnValue      : 0
    User             : user01
    
    
    Описание
    -----------
    На примере следующих команд показано, как определить владельца процесса. По
    скольку у объекта System.Diagnostics.Process, получаемого с помощью командл
    ета Get-Process, нет свойства или метода, возвращающего владельца процесса,
     команда использует
    командлет Get-WmiObject для получения объекта Win32_Process, который предст
    авляет одноименный процесс.
    
    Первая команда с помощью командлета Get-WmiObject получает процесс PowerShe
    ll. Этот процесс сохраняется в переменной $p.
    
    Вторая команда с помощью метода GetOwner определяет владельца процесса, сох
    раненного в переменной $p. Таким образом, команда позволяет узнать, что вла
    дельцем является пользователь "Domain01\user01".
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>get-process powershell
    
    C:\PS> get-process -id $pid
    
    C:\PS> get-process powershell
    
    Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
    -------  ------    -----      ----- -----   ------     -- -----------
        308      26    52308      61780   567     3.18   5632 powershell
        377      26    62676      63384   575     3.88   5888 powershell
    
    
    C:\PS> get-process -id $pid
    
    Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
    -------  ------    -----      ----- -----   ------     -- -----------
        396      26    56488      57236   575     3.90   5888 powershell
    
    
    Описание
    -----------
    На примере следующих команд показано, как с помощью автоматической переменн
    ой $pid определить хост-процесс текущего сеанса Windows PowerShell. Этот ме
    тод позволяет отличить хост-процесс от других процессов PowerShell, которые
     может потребоваться остановить или завершить.
    
    Первая команда получает все процессы PowerShell, выполняющиеся в текущем се
    ансе. 
    
    Первая команда получает хост-процесс текущего сеанса PowerShell.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113324
    Get-Process 
    Start-Process 
    Stop-Process 
    Wait-Process 
    Debug-Process 



Get-PSBreakpoint

ИМЯ
    Get-PSBreakpoint
    
ОПИСАНИЕ
    Получает настроенные в текущем сеансе точки останова.
    
СИНТАКСИС
    Get-PSBreakpoint [[-Script] <string[]>] [<CommonParameters>]
    
    Get-PSBreakpoint -Command <string[]> [-Script <string[]>] [<CommonParameter
    s>]
    
    Get-PSBreakpoint [-Id] <Int32[]> [<CommonParameters>]
    
    Get-PSBreakpoint [-Type] <BreakpointType[]> [-Script <string[]>] [<CommonPa
    rameters>]
    
    Get-PSBreakpoint -Variable <string[]> [-Script <string[]>] [<CommonParamete
    rs>]
    
    
ОПИСАНИЕ
    Командлет Get-PSBreakPoint получает настроенные в текущем сеансе точки оста
    нова. С помощью параметров командлета можно получать конкретные точки остан
    ова.
    
    Точка останова — это точка в команде или скрипте, на которой выполнение вре
    менно останавливается, чтобы можно было проверить инструкции. Get-PSBreakpo
    int — это один из нескольких командлетов, предназначенных для отладки скрип
    тов и команд Windows PowerShell. Дополнительные сведения об отладчике Windo
    ws PowerShell см. в разделе about_Debuggers.
    
ПАРАМЕТРЫ
    -Command <string[]>
        Получает точки останова команд, для которых заданы имена. Введите имена
         команд, например имя командлета или функции.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Все точки останова
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Id <Int32[]>
        Получает точки останова с заданными идентификаторами. Введите идентифик
        аторы, разделенные запятыми. Кроме того, можно передать идентификаторы 
        точек останова командлету Get-PSBreakpoint по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Все точки останова
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Script <string[]>
        Получает только точки останова в заданных скриптах. Введите путь (необя
        зательно) и имя одного или нескольких файлов скриптов. Местоположением 
        по умолчанию является текущий каталог.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Все точки останова
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Type <BreakpointType[]>
        Получает только точки останова заданных типов. Введите один или несколь
        ко типов. Допустимые значения: Line, Command и Variable. Кроме того, мо
        жно передать типы точек останова командлету Get-PSBreakpoint по конвейе
        ру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Все точки останова
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Variable <string[]>
        Получает точки останова переменных, для которых заданы имена. Введите и
        мена переменных без знака доллара.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Все точки останова
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Int32, Microsoft.PowerShell.Commands.BreakpointType
        Кроме того, можно передать идентификаторы и типы точек останова командл
        ету Get-PSBreakpoint по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Объект точки останова (System.Management.Automation.LineBreakpoint, System.
    Management.Automation.VariableBreakpoint, System.Management.Automation.Comm
    andBreakpoint)
        Командлет Get-PSBreakPoint возвращает объекты, представляющие точки ост
        анова в этом разделе.
    
    
ПРИМЕЧАНИЯ
    
    
        Можно использовать командлет Get-PSBreakpoint или его псевдоним "gbp".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-psbreakpoint
    
    
    Описание
    -----------
    Эта команда получает все точки останова, установленные во всех скриптах и ф
    ункциях в текущем сеансе.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-psbreakpoint -Id 2
    
    Function   : Increment
    Action     :
    Enabled    : True
    HitCount   : 0
    Id         : 2
    Script     : C:\ps-test\sample.ps1
    ScriptName : C:\ps-test\sample.ps1
    
    
    Описание
    -----------
    Эта команда получает точку останова с идентификатором 2.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$b = set-psbreakpoint -script sample.ps1 -function increment
    
    C:\PS> $b.Id | get-psbreakpoint
    
    
    Описание
    -----------
    Эти команды показывают, как получить точку останова путем передачи идентифи
    катора точки останова командлету Get-PSBreakpoint по конвейеру.
    
    Первая команда использует командлет Set-PSBreakpoint, чтобы создать точку о
    станова на функции Increment в скрипте Sample.ps1. Она сохраняет объект точ
    ки останова в переменной $b.
    
    Вторая команда с помощью оператора точки (.) получает свойство Id объекта т
    очки останова в переменной $b. Идентификатор передается командлету Get-PSBr
    eakpoint с помощью оператора конвейера (|).
    
    В результате командлет Get-PSBreakpoint получает точку останова с заданным 
    идентификатором.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-psbreakpoint -script Sample.ps1, SupportScript.ps1
    
    
    Описание
    -----------
    Эта команда получает все точки останова в файлах Sample.ps1 и SupportScript
    .ps1.
    
    Эта команда не получает другие точки останова, которые могут быть установле
    ны в других скриптах или функциях в данном сеансе.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-psbreakpoint -command Read-Host, Write-Host -script Sample.ps1
    
    
    Описание
    -----------
    Эта команда получает все точки останова команд, установленные на командах R
    ead-Host и Write-Host в файле Sample.ps1.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-psbreakpoint -type Command -script Sample.ps1
    
    
    Описание
    -----------
    Эта команда получает все точки останова команд, установленные в файле Sampl
    e.ps1.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-psbreakpoint -variable Index, Swap
    
    
    Описание
    -----------
    Эта команда получает все точки останова, установленные на переменных $index
     и $swap в текущем сеансе.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>get-psbreakpoint -type line, variable -script Sample.ps1
    
    
    Описание
    -----------
    Эта команда получает все точки останова строк и переменных в скрипте Sample
    .ps1.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113325
    about_Debuggers 
    Set-PSBreakpoint 
    Disable-PSBreakpoint 
    Enable-PSBreakpoint 
    Remove-PSBreakpoint 
    Get-PSCallStack 



Get-PSCallStack

ИМЯ
    Get-PSCallStack
    
ОПИСАНИЕ
    Отображает текущий стек вызова.
    
СИНТАКСИС
    Get-PSCallStack [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-PSCallStack отображает текущий стек вызова.  
    
    Хотя этот командлет предназначен для использования с отладчиком Windows Pow
    erShell, его можно использовать для отображения стека вызова в скрипте или 
    функции вне отладчика.
    
    Чтобы выполнить команду Get-PSCallStack в отладчике, введите "k" или "get-p
    scallstack".
    
ПАРАМЕТРЫ
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать объекты этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.CallStackFrame
        Командлет Get-PSCallStack возвращает объект, представляющий элементы в 
        стеке вызова.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>function my-alias { 
       $p = $args[0]
       get-alias | where {$_.definition -like "*$p"} | ft definition, name -aut
    o
    }
    
    PS C:\ps-test> set-psbreakpoint -command my-alias
        
    Command    : my-alias
    Action     :
    Enabled    : True
    HitCount   : 0
    Id         : 0
    Script     : prompt
        
        
    PS C:\ps-test> my-alias get-content
    Entering debug mode. Use h or ? for help.
    
    Hit Command breakpoint on 'prompt:my-alias'
    
    my-alias get-content
    
    [DBG]: PS C:\ps-test> s
    $p = $args[0]
    
    DEBUG: Stepped to ':    $p = $args[0]    '
    
    [DBG]: PS C:\ps-test> s
    get-alias | Where {$_.Definition -like "*$p*"} | ft Definition,
    
    [DBG]: PS C:\ps-test>get-pscallstack
    
    Name        CommandLineParameters         UnboundArguments              Loc
    ation
    ----        ---------------------         ----------------              ---
    -----
    prompt      {}                            {}                            pro
    mpt
    my-alias    {}                            {get-content}                 pro
    mpt
    prompt      {}                            {}                            pro
    mpt
    
    
    [DBG]: PS C:\ps-test> o
        
    Definition  Name
    ----------  ----
    Get-Content gc
    Get-Content cat
    Get-Content type
    
    
    Описание
    -----------
    Эта команда использует командлет Get-PSCallStack для отображения стека вызо
    ва небольшой функции My-Alias, которая получает псевдонимы по имени командл
    ета.
    
    Первая команда входит в функцию в командной строке Windows PowerShell. Втор
    ая команда использует командлет Set-PSBreakpoint, чтобы установить точку ос
    танова на функции My-Alias. Третья команда использует функцию My-Alias, что
    бы получить все псевдонимы в текущем сеансе для командлета Get-Content.
    
    Отладчик останавливается на вызове функции. Две последовательных команды st
    ep-into начинают построчное выполнение функции. Затем команда Get-PSCallSta
    ck получает стек вызова. 
    
    Последняя команда Step-Out выходит из отладчика и продолжает выполнение скр
    ипта до конца.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113326
    about_Debuggers 
    Set-PSBreakpoint 
    Get-PSBreakpoint 
    Enable-PSBreakpoint 
    Disable-PSBreakpoint 
    Remove-PSBreakpoint 



Get-PSDrive

ИМЯ
    Get-PSDrive
    
ОПИСАНИЕ
    Получает диски Windows PowerShell, используемые в текущем сеансе.
    
СИНТАКСИС
    Get-PSDrive [-LiteralName] <string[]> [-PSProvider <string[]>] [-Scope <str
    ing>] [-UseTransaction] [<CommonParameters>]
    
    Get-PSDrive [[-Name] <string[]>] [-PSProvider <string[]>] [-Scope <string>]
     [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-PSDrive получает диски Windows PowerShell в текущем сеансе. М
    ожно получить конкретный диск или все диски, используемые в консоли.
    
    Командлет Get-PSDrive получает следующие диски:
    
    -- логические диски Windows, включая диски, подключенные к общим сетевым ре
    сурсам; 
    
    -- диски, предоставляемые поставщиками Windows PowerShell (например, диски 
    Certificate:, Function: и Alias:), а также диски HKLM: и HKCU:, предоставля
    емые поставщиком Windows PowerShell Registry; 
    
    -- диски, созданные с помощью командлета New-PSDrive.
    
    Командлет Get-PSDrive не возвращает сопоставленные диски Windows, которые б
    ыли добавлены или созданы после открытия консоли Windows PowerShell.
    
ПАРАМЕТРЫ
    -LiteralName <string[]>
        Задает имя диска Windows PowerShell. 
        
        Значение параметра LiteralName используется точно в том виде, в котором
         оно введено. Никакие символы не интерпретируются как подстановочные зн
        аки. Если имя включает escape-символы, его необходимо заключить в одино
        чные кавычки. Одиночные кавычки указывают оболочке Windows PowerShell, 
        что никакие символы не следует интерпретировать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Получает только указанные диски. Введите имя или букву диска без двоето
        чия (:).
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PSProvider <string[]>
        Получает только диски, поддерживаемые указанным поставщиком Windows Pow
        erShell. Введите имя поставщика, например FileSystem, Registry или Cert
        ificate.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Scope <string>
        Получает только диски Windows PowerShell, определенные в указанной обла
        сти. Допустимые значения: "Global", "Local", "Script" или номер относит
        ельно текущей области (от 0 до количества областей, где 0 — текущая обл
        асть, а 1 — ее родительская область). По умолчанию используется значени
        е "Local". Дополнительные сведения см. в разделе about_Scopes.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Объекты невозможно передать командлету Get-PSDrive по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSDriveInfo
        Командлет Get-PSDrive возвращает объекты, представляющие диски Windows 
        PowerShell в этом сеансе.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Get-PSDrive предназначен для работы с данными, предоставляемы
        ми любым поставщиком. Чтобы получить список поставщиков, доступных в те
        кущем сеансе, введите команду "get-psprovider". Дополнительные сведения
         см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-psdrive
    
    Name       Provider      Root
    ----       --------      ----
    Alias      Alias
    C          FileSystem    C:\
    cert       Certificate   \
    D          FileSystem    D:\
    Env        Environment
    Function   Function
    HKCU       Registry      HKEY_CURRENT_USER
    HKLM       Registry      HKEY_LOCAL_MACHINE
    Variable   Variable
    X          FileSystem    X:\
    
    
    Описание
    -----------
    Эта команда получает диски Windows PowerShell в текущем сеансе. 
    
    Выходными данными являются жесткий диск (C:) и дисковод компакт-дисков (D:)
     на компьютере, диски, предоставляемые поставщиками Windows PowerShell (Ali
    as:, Cert:, Env:, Function:, HKCU:, HKLM: и Variable:), и диск, отображающи
    й общие сетевые ресурсы (X:).
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-psdrive d
    
    Name       Provider      Root
    ----       --------      ----
    D          FileSystem    D:\
    
    
    Описание
    -----------
    Эта команда отображает диск D: локального компьютера. Обратите внимание, чт
    о за буквой диска не следует двоеточие.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-psdrive -psprovider filesystem
    
    Name       Provider      Root
    ----       --------      ----
    C          FileSystem    C:\
    D          FileSystem    D:\
    X          FileSystem    X:\
    Y          FileSystem    \\Server01\Public
    Z          FileSystem    C:\Windows\System32
    
    
    Описание
    -----------
    Эта команда отображает все диски, поддерживаемые поставщиком Windows PowerS
    hell FileSystem. К ним относятся жесткие диски, логические разделы, подключ
    енные сетевые диски, а также диски созданные с помощью командлета New-PSDri
    ve и подключенные к дискам файловой системы.
    
    В этом примере показано, что в случае диска, созданного с помощью командлет
    а New-PSDrive, в свойстве Root содержится имя сопоставленного с этим диском
     местоположения. В случае диска Windows в свойстве Root содержится только б
    уква диска.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>if ((get-psdrive X)) { 
        new-psdrive -name X -psprovider Registry -root HKLM:\Network 
    }
    else { write-host "The X: drive is already in use." }
    
    
    Описание
    -----------
    Эта команда проверяет, существует ли диск Windows PowerShellс именем "X". Е
    сли нет, с помощью командлета New-PSDrive создается диск Windows PowerShell
    , который подключается к разделу реестра "HKLM:\Network".
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-psdrive -provider filesystem
    
    C:\PS> get-psdrive -provider filesystem
    
    Name       Provider      Root
    ----       --------      ----
    C          FileSystem    C:\
    D          FileSystem    D:\
    X          FileSystem    X:\
    Y          FileSystem    \\Server01\Public
    Z          FileSystem    C:\Windows\System32
    
    C:\PS> net use
    New connections will be remembered.
    
    Status       Local     Remote                    Network
    ---------------------------------------------------------------------------
    ----
                 X:        \\Server01\Public         Microsoft Windows Network
    
    
    C:\PS> [System.IO.DriveInfo]::getdrives()
    
    Name               : C:\
    DriveType          : Fixed
    DriveFormat        : NTFS
    IsReady            : True
    AvailableFreeSpace : 39831498752
    TotalFreeSpace     : 39831498752
    TotalSize          : 79900368896
    RootDirectory      : C:\
    VolumeLabel        :
    Name               : D:\
    DriveType          : CDRom
    DriveFormat        :
    IsReady            : False
    AvailableFreeSpace :
    TotalFreeSpace     :
    TotalSize          :
    RootDirectory      : D:\
    VolumeLabel        :
    Name               : X:\
    DriveType          : Network
    DriveFormat        : NTFS
    IsReady            : True
    AvailableFreeSpace : 36340559872
    TotalFreeSpace     : 36340559872
    TotalSize          : 36413280256
    RootDirectory      : X:\
    VolumeLabel        : D_Drive
    
    
    C:\PS> get-wmiobject win32_logicaldisk
    
    DeviceID     : C:
    DriveType    : 3
    ProviderName :
    FreeSpace    : 39831252992
    Size         : 79900368896
    VolumeName   :
    DeviceID     : D:
    DriveType    : 5
    ProviderName :
    FreeSpace    :
    Size         :
    VolumeName   :
    DeviceID     : X:
    DriveType    : 4
    ProviderName : \\server01\public
    FreeSpace    : 36340559872
    Size         : 36413280256
    VolumeName   : D_Drive
    
    
    C:\PS> get-wmiobject win32_networkconnection
    LocalName                     RemoteName                    
    --------------               ------------
    x:                            \\server01\public
    
    
    Описание
    -----------
    В этом примере сравниваются типы дисков файловой системы, отображаемых с по
    мощью командлета Get-PSDrive, и типы дисков, отображаемых другими способами
    . В этом примере показаны различные способы отображения дисков в оболочке W
    indows PowerShell; также в нем показано, что диски, созданные с помощью ком
    андлета New-PSDrive, доступны только в Windows PowerShell.
    
    Первая команда с помощью командлета Get-PSDrive получает все диски файловой
     системы, используемые в консоли Windows PowerShell. К ним относятся жестки
    е диски C: и D:, отображаемый сетевой диск X:, а также два диска Windows Po
    werShell Y: и Z:, созданные с помощью командлета New-PsDrive.
    
    Команда "net use", показывающая подключенные сетевые диски Windows, отображ
    ает только диск X:. Она не отображает диски, созданные с помощью командлета
     New-PSDrive. Эта команда также показывает, что диск X: подключен к общему 
    сетевому ресурсу "\\Server01\Public".
    
    В третьей команде используется метод GetDrives класса System.IO.DriveInfo и
    нфраструктуры Microsoft .NET Framework. Эта команда отображает диски файлов
    ой системы Windows, включая диск X:, но не диски, созданные с помощью коман
    длета New-PSDrive.
    
    Четвертая команда с помощью командлета Get-WmiObject отображает экземпляры 
    класса Win32_LogicalDisk. Она отображает диски C:, D:, и X:, но не диски, с
    озданные с помощью командлета New-PSDrive.
    
    Последняя команда с помощью командлета Get-WmiObject отображает экземпляры 
    класса Win32_NetworkConnection. Результат аналогичен результату выполнения 
    команды "net use" — отображается только диск X:.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113327
    about_Providers 
    New-PSDrive 
    Remove-PSDrive 
    Get-Help 
    Get-Command 
    Get-Member 



Get-PSProvider

ИМЯ
    Get-PSProvider
    
ОПИСАНИЕ
    Получает сведения об указанном поставщике Windows PowerShell.
    
СИНТАКСИС
    Get-PSProvider [[-PSProvider] <string[]>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-PSProvider возвращает поставщиков Windows PowerShell, доступн
    ых в текущем сеансе. Можно получить конкретный диск или все диски, использу
    емые в сеансе.
    
    Поставщики Windows PowerShell позволяют осуществлять доступ к различным хра
    нилищам данных, как если бы они являлись дисками файловой системы. Дополнит
    ельные сведения о поставщиках Windows PowerShell см в разделе about_Provide
    rs.
    
ПАРАМЕТРЫ
    -PSProvider <string[]>
        Задает имена поставщиков Windows PowerShell, о которых необходимо получ
        ить сведения.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать объекты этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.ProviderInfo
        Командлет Get-PSProvider возвращает объекты, представляющие поставщики 
        Windows PowerShell в этом сеансе.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-psprovider
    
    
    Описание
    -----------
    Эта команда отображает список всех доступных поставщиков Windows PowerShell
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-psprovider f*, r* | format-list
    
    
    Описание
    -----------
    Эта команда отображает список все поставщики Windows PowerShell, имена кото
    рых начинаются с букв "f" или "r".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-psprovider | format-table name, module, pssnapin -auto
    
    
    Name        Module       PSSnapIn
    ----        ------       --------
    Test        TestModule
    WSMan                    Microsoft.WSMan.Management
    Alias                    Microsoft.PowerShell.Core
    Environment              Microsoft.PowerShell.Core
    FileSystem               Microsoft.PowerShell.Core
    Function                 Microsoft.PowerShell.Core
    Registry                 Microsoft.PowerShell.Core
    Variable                 Microsoft.PowerShell.Core
    Certificate              Microsoft.PowerShell.Security
    
    C:\PS> get-psprovider | where {$_.pssnapin -eq "Microsoft.PowerShell.Securi
    ty"}
    
    Name            Capabilities      Drives
    ----            ------------      ------
    Certificate     ShouldProcess     {cert}
    
    
    Описание
    -----------
    Эти команды определяют оснастки Windows PowerShell или модули, которые испо
    льзовались для добавления поставщиков в текущий сеанс. Все элементы Windows
     PowerShell, включая поставщиков, вызываются оснасткой или модулем.
    
    В этих командах используются свойства PSSnapin и Module объекта ProviderInf
    o, возвращаемого командлетом Get-PSProvider. Значениями этих свойств являют
    ся имена оснастки или модуля, который использовался для добавления поставщи
    ков в текущий сеанс.
    
    Первая команда получает всех поставщиков в сеансе и отображает их в виде та
    блицы, включающей значения свойств Name, Module и PSSnapin.
    
    Вторая команда с помощью командлета Where-Object отображает поставщиков, до
    бавленных оснасткой Microsoft.PowerShell.Security.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113329
    about_Providers 



Get-PSSession

ИМЯ
    Get-PSSession
    
ОПИСАНИЕ
    Получает сеансы Windows PowerShell (объекты PSSession) в текущем сеансе.
    
СИНТАКСИС
    Get-PSSession [[-ComputerName] <string[]>] [<CommonParameters>]
    
    Get-PSSession [-Id] <Int32[]> [<CommonParameters>]
    
    Get-PSSession [-InstanceId <Guid[]>] [<CommonParameters>]
    
    Get-PSSession [-Name <string[]>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-PSSession получает сеансы Windows PowerShell (объекты PSSessi
    on), созданные в текущем сеансе. 
    
    При вызове без параметров команда "Get-PSSession" получает все объекты PSSe
    ssion, созданные в текущем сеансе. Параметры Get-PSSession можно использова
    ть для получения сеансов, связанных с определенными компьютерами, или опред
    еления сеансов по их именам, идентификаторам или идентификаторам экземпляро
    в.
    
    Дополнительные сведения о сеансах Windows PowerShell см. в разделе "about_P
    SSessions".
    
ПАРАМЕТРЫ
    -ComputerName <string[]>
        Получает только сеансы PSSession, связанные с указанными компьютерами. 
        Подстановочные знаки разрешены. 
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескол
        ьких компьютеров. Чтобы указать локальный компьютер, введите имя компью
        тера, "localhost" или точку (.).
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -Id <Int32[]>
        Получает только сеансы PSSession с указанными идентификаторами. Введите
         один или несколько идентификаторов (разделенных запятыми) или использу
        йте оператор диапазона (..), чтобы задать диапазон идентификаторов.  
        
        Идентификатор — это целое значение, которое однозначно определяет сеанс
         PSSession в пределах текущего сеанса. Это значение проще запомнить и в
        вести, чем InstanceId, но оно уникально только в рамках текущего сеанса
        .  Чтобы определить идентификатор сеанса PSSession, используйте команду
         Get-PSSession без параметров.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Все сеансы в рамках оболочки
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -InstanceId <Guid[]>
        Получает только сеансы PSSession с указанными идентификаторами экземпля
        ров. 
        
        Идентификатор экземпляра — это GUID, который однозначно определяет сеан
        с PSSession на локальном или удаленном компьютере. Идентификатор Instan
        ceID является уникальным даже при выполнении нескольких сеансов Windows
         PowerShell.
        
        Идентификатор экземпляра InstanceID хранится в свойстве InstanceID объе
        кта, представляющего сеанс PSSession. Чтобы определить идентификаторы э
        кземпляров InstanceID сеансов PSSession в текущем сеансе, введите коман
        ду "get-pssession | format-table Name, ComputerName, InstanceId".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -Name <string[]>
        Получает только сеансы PSSession с указанными понятными именами. Подста
        новочные знаки разрешены. 
        
        Чтобы определить имена сеансов PSSession в текущем сеансе, введите кома
        нду "get-pssession" без параметров.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.Runspaces.PSSession
        Командлет Get-PSSession возвращает объект PSSession для каждого получае
        мого сеанса PSSession.
    
    
ПРИМЕЧАНИЯ
    
    
        Команда Get-PSSession получает объекты PSSession, созданные в текущем с
        еансе. Она не получает сеансы, которые были созданы при запуске Windows
         PowerShell, и не получает объекты PSSession для сеансов, которые были 
        созданы в других сеансах или на других компьютерах, даже если они подкл
        ючены к локальному компьютеру.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-pssession
    
    
    Description
    -----------
    Эта команда получает все объекты PSSession, созданные в текущем сеансе. 
    
    Она не получает объекты PSSession, которые были созданы в других сеансах ил
    и на других компьютерах, даже если они подключены к этому компьютеру.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$s = get-pssession -computername Server02
    
    
    Description
    -----------
    Эта команда получает объекты PSSession, которые связаны с компьютером Serve
    r02 и сохраняет их в переменной $p.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>new-pssession -computername Server01, Server02, Server03
    
    C:\PS> $s1, $s2, $s3 = get-pssession
    
    
    Description
    -----------
    В этом примере показано, как сохранить результаты выполнения команды Get-PS
    Session в нескольких переменных. 
    
    Первая команда создает сеансы PSSession на трех удаленных компьютерах с исп
    ользованием командлета New-PSSession.
    
    Вторая команда использует командлет Get-PSSession для получения трех объект
    ов PSSession. Затем каждый из сеансов PSSession сохраняется в отдельную пер
    еменную.
    
    Когда Windows PowerShell присваивает массив объектов массиву переменных, пе
    рвый объект присваивается первой переменной, второй объект присваивается вт
    орой переменной и т. д. Если количество объектов превосходит количество пер
    еменных, все оставшиеся объекты присваиваются последней переменной в форме 
    массива. Если количество переменных превышает количество объектов, лишние п
    еременные не используются.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-pssession | format-table -property computername, InstanceID
    
    C:\PS> $s = get-pssession -InstanceID a786be29-a6bb-40da-80fb-782c67f7db0f
    
    C:\PS> remove-pssession -session $s
    
    
    Description
    -----------
    В этом примере показано, как получить сеанс PSSession с использованием иден
    тификатора экземпляра, и затем удалить сеанс PSSession.
    
    Первая команда получает все сеансы PSSession на локальном компьютере. Она о
    тправляет сеансы PSSession командлету Format-Table, который отображает знач
    ения свойств ComputerName и InstanceID для каждого из сеансов PSSession.
    
    Вторая команда использует командлет Get-PSSession для получения определенно
    го сеанса PSSession и сохраняет его в переменной $s. Эта команда использует
     параметр InstanceID для определения сеанса PSSession.
    
    Третья команда использует командлет Remove-PSSession для удаления сеанса PS
    Session, сохраненного в переменной $s.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-pssession -computername Serv*
    
    
    Description
    -----------
    Эта команда получает все сеансы PSSession, связанные с компьютерами, имена 
    которых начинаются на "Serv".
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-pssession -name Test*, Ux*
    
    
    Description
    -----------
    Эта команда возвращает сеансы PSSession, имена которых начинаются на "Test"
     или "Ux".
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-pssession 2
    
    
    Description
    -----------
    Эта команда получает сеанс PSSession с идентификатором, равным 2.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135219
    about_PSSessions 
    about_Remote 
    New-PSSession 
    Remove-PSSession 
    Enter-PSSession 
    Exit-PSSession 
    Invoke-Command 



Get-PSSessionConfiguration

ИМЯ
    Get-PSSessionConfiguration
    
ОПИСАНИЕ
    Получает зарегистрированные конфигурации сеансов на компьютере.
    
СИНТАКСИС
    Get-PSSessionConfiguration [[-Name] <string[]>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-PSSessionConfiguration получает конфигурации сеансов, зарегис
    трированные на локальном компьютере. Этот расширенный командлет предназначе
    н для использования системными администраторами и позволяет управлять конфи
    гурациями сеансов для пользователей.
    
    Чтобы создать и зарегистрировать конфигурацию сеанса, используйте командлет
     Register-PSSessionConfiguration.
    
ПАРАМЕТРЫ
    -Name <string[]>
        Получает только конфигурации сеансов с указанным именем или шаблоном им
        ени. Введите одно или несколько имен конфигураций сеансов. Подстановочн
        ые знаки разрешены.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                Все конфигурации сеансов на локаль
        ном компьютере
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.PSSessionConfigurationCommands#PSSessionConfi
    guration
        
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать этот командлет в Windows Vista, Windows Server 2008 
        и более поздних версиях Windows, необходимо запускать Windows PowerShel
        l командой "Запуск от имени администратора".
        
        Чтобы просмотреть конфигурации сеансов на компьютере, необходимо быть ч
        леном группы "Администраторы" на этом компьютере.
        
        Чтобы выполнить команду Get-PSSessionConfiguration на удаленном компьют
        ере, проверка подлинности поставщика услуг безопасности (CredSSP) должн
        а быть включена в параметрах клиента на локальном компьютере (с помощью
         командлета Enable-WSManCredSSP) и в параметрах службы на удаленном ком
        пьютере; кроме того, при установке удаленного сеанса для параметра Auth
        entication необходимо использовать значение CredSSP. В противном случае
         в доступе будет отказано.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-pssessionconfiguration
    
    
    Description
    -----------
    Эта команда возвращает конфигурации сеансов на компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-pssessionconfiguration -name Microsoft*
    
    Name                      PSVersion  StartupScript        Permission
    ----                      ---------  -------------        ----------
    microsoft.powershell      2.0                             BUILTIN\Administr
    ators AccessAll...
    microsoft.powershell32    2.0                             BUILTIN\Administr
    ators AccessAll...
    
    
    Description
    -----------
    Эта команда использует параметр Name командлета Get-PSSessionConfiguration,
     чтобы получить конфигурации сеансов с именами, которые начинаются с "Micro
    soft".
    
    Эта команда возвращает две конфигурации сеансов по умолчанию Windows PowerS
    hell.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>Get-PSSessionConfiguration -name microsoft.powershell | get-member
    
    
    
       TypeName: Microsoft.PowerShell.Commands.PSSessionConfigurationCommands#P
    SSessionConfiguration
    
    Name                   MemberType     Definition
    ----                   ----------     ----------
    Equals                 Method         bool Equals(System.Object obj)
    GetHashCode            Method         int GetHashCode()
    GetType                Method         type GetType()
    ToString               Method         string ToString()
    Capability             NoteProperty   System.Object[] Capability=System.Obj
    ect[]
    ExactMatch             NoteProperty   System.String ExactMatch=False
    Filename               NoteProperty   System.String Filename=%windir%\syste
    m32\pwrshplugin.dll
    lang                   NoteProperty   System.String lang=en-US
    Name                   NoteProperty   System.String Name=microsoft.powershe
    ll
    PSVersion              NoteProperty   System.String PSVersion=2.0
    ResourceUri            NoteProperty   System.String ResourceUri=http://sche
    mas.microsoft.com/powershell/microsoft.powershell
    SDKVersion             NoteProperty   System.String SDKVersion=1
    SecurityDescriptorSddl NoteProperty   System.String SecurityDescriptorSddl=
    O:NSG:BAD:P(A;;GA;;;BA)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD)
    SupportsOptions        NoteProperty   System.String SupportsOptions=true
    Uri                    NoteProperty   System.String Uri=http://schemas.micr
    osoft.com/powershell/microsoft.powershell
    xmlns                  NoteProperty   System.String xmlns=http://schemas.mi
    crosoft.com/wbem/wsman/1/config/PluginConfiguration
    XmlRenderingType       NoteProperty   System.String XmlRenderingType=text
    Permission             ScriptProperty System.Object Permission {get=trap { 
    continue; }...
    
    
    C:\PS> Get-PSSessionConfiguration -name microsoft.powershell | format-list 
    -property *
    
    
    Name                   : microsoft.powershell
    Filename               : %windir%\system32\pwrshplugin.dll
    SDKVersion             : 1
    XmlRenderingType       : text
    lang                   : en-US
    PSVersion              : 2.0
    ResourceUri            : http://schemas.microsoft.com/powershell/microsoft.
    powershell
    SupportsOptions        : true
    Capability             : {Shell}
    Uri                    : http://schemas.microsoft.com/powershell/microsoft.
    powershell
    SecurityDescriptorSddl : O:NSG:BAD:P(A;;GA;;;BA)S:P(AU;FA;GA;;;WD)(AU;SA;GX
    GW;;;WD)
    ExactMatch             : False
    xmlns                  : http://schemas.microsoft.com/wbem/wsman/1/config/P
    luginConfiguration
    Permission             : BUILTIN\Administrators AccessAllowed
    
    
    Description
    -----------
    Эти команды проверяют объект PSSessionConfiguration, который возвращается G
    et-PSSessionConfiguration.
    
    Первая команда использует командлет Get-PSSessionConfiguration для получени
    я конфигурации по умолчанию Microsoft.PowerShell.
    
    Вторая команда с помощью оператора конвейера (|) передает объект, который G
    et-PSSessionConfiguration возвращает командлету Get-Member. На выходе отобр
    ажаются свойства и методы объекта.
    
    Третья команда передает этот же объект командлету Format-List. Параметр Pro
    perty со значением * (все) указывает команде Format-List отобразить все сво
    йства и значения свойств объекта в списке.
    
    В результате выполнения этой команды выводятся очень полезные сведения, в т
    ом числе местоположение DLL, реализующего тип конфигурации, URI ресурса соз
    даваемой конечной точки и язык определения дескрипторов безопасности (SDDL)
     конфигурации.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>dir wsman:\localhost\plugin
    
       WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin
    
    Name                      Type                 Keys
    ----                      ----                 ----
    Event Forwarding Plugin   Container            {Name=Event Forwarding Plugi
    n}
    MaintenanceShell          Container            {Name=MaintenanceShell}
    microsoft.powershell      Container            {Name=microsoft.powershell}
    microsoft.powershell32    Container            {Name=microsoft.powershell32
    }
    WMI Provider              Container            {Name=WMI Provider}
    
    
    Description
    -----------
    Эта команда использует командлет Get-ChildItem (с псевдонимом "dir") на WSM
    an: — диске поставщика, на котором просматривается содержимое узла Plugin.
    
    Это еще один способ просмотреть конфигурации сеансов на компьютере.
    
    Узел PlugIn содержит объекты ContainerElement (Microsoft.WSMan.Management.W
    SManConfigContainerElement), представляющие зарегистрированные конфигурации
     сеансов Windows PowerShell с другими подключаемыми модулями WS-Management.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>enable-wsmanCredSSP -delegate server02
    
    C:\PS> connect-wsman server02
    
    C:\PS> set-item wsman:\server02*\service\auth\credSSP -value $true
    
    C:\PS> invoke-command -scriptblock {Get-PSSessionConfiguration} -computerna
    me Server02 -authentication CredSSP -credential Domain01\Admin01 
    
    Name                      PSVersion  StartupScript        Permission       
                       PSComputerName
    ----                      ---------  -------------        ----------       
                       --------------
    microsoft.powershell      2.0                             BUILTIN\Administr
    ators AccessAll... server02.corp.fabrikam.com
    microsoft.powershell32    2.0                             BUILTIN\Administr
    ators AccessAll... server02.corp.fabrikam.com
    MyX86Shell                2.0        c:\test\x86Shell.ps1 BUILTIN\Administr
    ators AccessAll... server02.corp.fabrikam.com
    
    
    Description
    -----------
    В этом примере показано, как выполнить команду Get-PSSessionConfiguration н
    а удаленном компьютере. Для выполнения команды необходимо включить делегиро
    вание CredSSP в параметрах клиента на локальном компьютере и в параметрах с
    лужбы на удаленном компьютере. Для выполнения команд в этом примере текущий
     пользователь должен быть членом группы "Администраторы" на локальном и уда
    ленном компьютере.
    
    Первая команда использует командлет Enable-WSManCredSSP для включения делег
    ирования CredSSP с локального компьютера Server01 на удаленном компьютере S
    erver02. Это позволяет настроить параметр клиента CredSSP на локальном комп
    ьютере.
    
    Вторая команда использует командлет Connect-WSMan для подключения к компьют
    еру Server02. Это действие добавляет узел для компьютера Server02 на диск W
    SMan: — диск на локальном компьютере, позволяя просматривать и изменять пар
    аметры WS-Management на компьютере Server02.
    
    Третья команда использует командлет Set-Item для изменения значения элемент
    а CredSSP в узле службы компьютера Server02 на значение "True". Таким образ
    ом выполняется настройка параметров службы на удаленном компьютере.
    
    Четвертая команда использует командлет Invoke-Command для выполнения команд
    ы Get-PSSessionConfiguration на компьютере Server02. Команда использует пар
    аметр Credential и параметр Authentication со значением CredSSP.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>(get-PSSessionConfiguration -name CustomShell).resourceURI
    
    http://schemas.microsoft.com/powershell/microsoft.CustomShell
    
    
    Description
    -----------
    Эта команда с помощью командлета Get-PSSessionConfiguration получает URI ре
    сурса конфигурации сеанса. 
    
    Эта команда полезна при задании значения привилегированной переменной $PSSe
    ssionConfigurationName, получающей URI ресурса. 
    
    Переменная $PSSessionConfiguationName задает конфигурацию по умолчанию, кот
    орая используется при создании сеанса. Эта переменная задается на локальном
     компьютере, но указывает конфигурацию на удаленном компьютере. Дополнитель
    ные сведения о переменной $PSSessionConfiguration см. в разделе about_Prefe
    rence_Variables.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=144304
    about_Session_Configurations 
    Disable-PSSessionConfiguration 
    Enable-PSSessionConfiguration 
    Register-PSSessionConfiguration 
    Set-PSSessionConfiguration 
    Unregister-PSSessionConfiguration 
    WS-Management Provider 



Get-PSSnapin

ИМЯ
    Get-PSSnapin
    
ОПИСАНИЕ
    Возвращает оснастки Windows PowerShell на данном компьютере.
    
СИНТАКСИС
    Get-PSSnapin [[-Name] <string[]>] [-Registered] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-PSSnapin получает оснастки Windows PowerShell, которые были д
    обавлены в текущий сеанс или зарегистрированы в системе. Оснастки перечисля
    ются в том порядке, в котором они обнаруживаются.
    
    Командлет Get-PSSnapin получает только зарегистрированные оснастки. Чтобы з
    арегистрировать оснастку Windows PowerShell, используйте средство InstallUt
    il, входящее в комплект поставки платформы .NET Framework 2.0. Дополнительн
    ые сведения см. в разделе "Регистрация командлетов, поставщиков и ведущих п
    риложений" библиотеки MSDN по адресу  (на английском языке).
    
ПАРАМЕТРЫ
    -Name <string[]>
        Получает только указанные оснастки Windows PowerShell. Введите имена од
        ной или нескольких оснасток Windows PowerShell. Подстановочные знаки ра
        зрешены.
        
        Имя параметра ("Name") указывать необязательно.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Registered [<SwitchParameter>]
        Получает оснастки Windows PowerShell, которые были зарегистрированы в с
        истеме (даже если они не были добавлены в сеанс). 
        
        Оснастки, устанавливаемые с Windows PowerShell, не включаются в этот сп
        исок.
        
        При вызове без этого параметра командлет Get-PSSnapin получает оснастки
         Windows PowerShell, добавленные в сеанс.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Данные невозможно передать командлету Get-PSSnapin по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSSnapInInfo
        Командлет Get-PSSnapin возвращает объект для каждой получаемой оснастки
        .
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Get-PSSnapin можно вызывать с помощью встроенного псевдонима 
        " psnp ". Дополнительные сведения см. в разделе About_Aliases.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-PSSnapIn
    
    
    Description
    -----------
    Эта команда возвращает оснастки Windows PowerShell, которые в данный момент
     загружены в сеанс. Сюда входят как оснастки, установленные с Windows Power
    Shell, так и оснастки, добавленные в сеанс.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-PSSnapIn -registered
    
    
    Description
    -----------
    Эта команда получает оснастки Windows PowerShell, зарегистрированные на ком
    пьютере, в том числе и те, которые уже добавлены в сеанс. В выходные данные
     не включаются оснастки, установленные с Windows PowerShell или библиотекам
    и динамической компоновки (библиотеками DLL) оснасток Windows PowerShell, к
    оторые еще не зарегистрированы в системе.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-PSSnapIn smp*
    
    
    Description
    -----------
    Эта команда получает оснастки Windows PowerShell в текущем сеансе, имена ко
    торых начинаются на "smp".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113330
    Add-PSSnapin 
    Remove-PSSnapin 



Get-Random

ИМЯ
    Get-Random
    
ОПИСАНИЕ
    Получает случайное число или случайным образом выбирает объекты из коллекци
    и.
    
СИНТАКСИС
    Get-Random [-InputObject] <Object[]> [-Count <int>] [-SetSeed <int>] [
    onParameters>]
    
    Get-Random [[-Maximum] <Object>] [-Minimum <Object>] [-SetSeed <int>] [
    monParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Random получает выбранное случайным образом число. Если перед
    ать командлету Get-Random коллекцию объектов, он вернет один или несколько 
    выбранных случайным образом объектов этой коллекции. 
    
    Без параметров или входного значения команда Get-Random возвращает случайно
    е 32-битное целое число без знака от 0 до значения Int32.MaxValue (0x7FFFFF
    FF, 2 147 483 647).
    
    С помощью параметров командлета Get-Random можно задать начальное число, ми
    нимальное и максимальное значения, а также количество объектов, возвращаемы
    х из переданной коллекции.
    
ПАРАМЕТРЫ
    -Count <int>
        Определяет количество возвращаемых объектов. По умолчанию используется 
        значение 1. Если значение Count превышает число объектов в коллекции, к
        омандлет Get-Random возвращает все объекты в случайном порядке.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                1
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <Object[]>
        Задает коллекцию объектов. Командлет Get-Random получает случайным обра
        зом выбранные объекты этой коллекции в случайном порядке. Введите объек
        ты, переменную, содержащую объекты, либо получающую их команду или выра
        жение. Кроме того, коллекцию объектов можно передать командлету Get-Ran
        dom по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Maximum <Object>
        Задает максимальное значение случайного числа. Командлет Get-Random воз
        вращает значение, не превышающее максимальное. Введите 32-битное целое 
        число или число с плавающей запятой двойной точности или объект, которы
        й можно преобразовать в целое число или число двойной точности, наприме
        р числовую строку ("100"). Значение Maximum должно быть больше (не равн
        о) значению Minimum. 
        
        Если значение Maximum или Minimum является числом с плавающей запятой, 
        командлет Get-Random возвращает случайное число с плавающей запятой.
        
        Если значение Minimum является числом с плавающей запятой двойной точно
        сти, значение Maximum по умолчанию равно Double.MaxValue. В противном с
        лучае по умолчанию используется значение Int32.MaxValue (2 147 483 647 
        или 0x7FFFFFFF).
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                Int32.MaxValue
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Minimum <Object>
        Задает минимальное значение случайного числа. Введите 32-битное целое ч
        исло или число с плавающей запятой двойной точности или объект, который
         можно преобразовать в целое число или число двойной точности, например
         числовую строку ("100"). Значение по умолчанию — 0 (нуль). 
        
        Значение Minimum не должно превышать значения Maximum. Если значение Ma
        ximum или Minimum является числом с плавающей запятой, командлет Get-Ra
        ndom возвращает случайное число с плавающей запятой.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                0
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SetSeed <int>
        Задает начальное значение для генератора случайных чисел. Это начальное
         значение будет использоваться для текущей команды и для всех последующ
        их команд Get-Random в текущем сеансе до установки нового значения SetS
        eed или завершения сеанса. Невозможно вернуть начальное значение к свое
        му значению по умолчанию, получаемому на основании показаний часов.
        
        Параметр SetSeed является необязательным. По умолчанию командлет Get-Ra
        ndom использует для получения начального значения системные часы. Поско
        льку при задании значения SetSeed результат выполнения команды не являе
        тся строго случайным, этот параметр обычно используют в случаях, когда 
        требуется воспроизвести определенную ситуацию, например при отладке или
         анализе скриптов, включающих команды Get-Random.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Системные часы
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Object
        Командлету Get-Random можно передать один или несколько объектов по кон
        вейеру. Командлет Get-Random случайным образом выбирает значения из пер
        еданных по конвейеру объектов.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Object
        Командлет Get-Random возвращает целое число или число с плавающей запят
        ой или объект, случайным образом выбранный из переданной коллекции.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Get-Random устанавливает начальное значение для каждого сеанс
        а на основании показаний системных часов в момент запуска сеанса.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-random
    
    3951433
    
    
    Описание
    -----------
    Эта команда получает случайное целое значение в интервале от 0 (нуля) до зн
    ачения Int32.MaxValue.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-random -maximum 100
    
    47
    
    
    Описание
    -----------
    Эта команда получает случайное целое значение в интервале от 0 (нуля) до 99
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-random -minimum -100 -maximum 100
    
    -56
    
    
    Описание
    -----------
    Эта команда получает случайное целое значение в интервале от -100 до 99.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-random -min 10.7 -max 20.93
    
    18.08467273887
    
    
    Описание
    -----------
    Эта команда получает случайное число с плавающей запятой, больше или равное
     10,7 и меньше 20,92.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-random -input 1, 2, 3, 5, 8, 13
    
    8
    
    
    Описание
    -----------
    Эта команда получает случайным образом выбранное число из заданного массива
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-random -input 1, 2, 3, 5, 8, 13 -count 3
    
    3
    1
    13
    
    
    Описание
    -----------
    Эта команда получает три случайным образом выбранных числа из массива в слу
    чайном порядке.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-random -input 1, 2, 3, 5, 8, 13 -count ([int]::MaxValue)
    
    2
    3
    5
    1
    8
    13
    
    
    Описание
    -----------
    Эта команда возвращает все элементы коллекции в случайном порядке. Значение
     параметра Count равно статическому свойству MaxValue целочисленного массив
    а. 
    
    Чтобы вернуть всю коллекцию в случайном порядке, введите любое число, превы
    шающее количество элементов в коллекции или равное ему.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>get-random -input "red", "yellow", "blue"
    
    yellow
    
    
    Описание
    -----------
    Эта команда возвращает случайное значение из коллекции, элементы которой не
     являются числами.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>get-process | get-random
    
    Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
    -------  ------    -----      ----- -----   ------     -- -----------
        144       4     2080        488    36     0.48   3164 wmiprvse
    
    
    Описание
    -----------
    Эта команда получает случайным образом выбранный процесс из коллекции запущ
    енных на компьютере процессов.
    
    
    
    
    
    -------------------------- ПРИМЕР 10 --------------------------
    
    C:\PS>get-content servers.txt | get-random -count (get-content servers.txt)
    .count | foreach {invoke-expression -computer $_ -command 'get-process powe
    rshell'}
    
    
    Описание
    -----------
    Эта команда в случайном порядке выполняет команду для нескольких удаленных 
    компьютеров.
    
    
    
    
    
    -------------------------- ПРИМЕР 11 --------------------------
    
    C:\PS>get-random -max 100 -setseed 23
    
    
    # Commands with the default seed are pseudorandom
    PS C:\ps-test> get-random -max 100
    59
    PS C:\ps-test> get-random -max 100
    65
    PS C:\ps-test> get-random -max 100
    21
    
    # Commands with the same seed are not random
    PS C:\ps-test> get-random -max 100 -setseed 23
    74
    PS C:\ps-test> get-random -max 100 -setseed 23
    74
    PS C:\ps-test> get-random -max 100 -setseed 23
    74
    
    # SetSeed results in a repeatable series
    PS C:\ps-test> get-random -max 100 -setseed 23
    74
    PS C:\ps-test> get-random -max 100
    56
    PS C:\ps-test> get-random -max 100
    84
    PS C:\ps-test> get-random -max 100
    46
    PS C:\ps-test> get-random -max 100 -setseed 23
    74
    PS C:\ps-test> get-random -max 100
    56
    PS C:\ps-test> get-random -max 100
    84
    PS C:\ps-test> get-random -max 100
    46
    
    
    Описание
    -----------
    В этом примере показан результат применения параметра SetSeed. Поскольку пр
    и задании значения SetSeed результат выполнения команды не является случайн
    ым, этот параметр обычно используют в случаях, когда требуется воспроизвест
    и определенную ситуацию, например при отладке или анализе скриптов.
    
    
    
    
    
    -------------------------- ПРИМЕР 12 --------------------------
    
    C:\PS>$files = dir -path c:\* -recurse
    
    C:\PS> $sample = $files | get-random -count 50
    
    
    Описание
    -----------
    Эти команды получают случайным образом выбранный набор из 50 файлов на диск
    е C: локального компьютера.
    
    
    
    
    
    -------------------------- ПРИМЕР 13 --------------------------
    
    C:\PS>get-random 10001
    
    7600
    
    
    Описание
    -----------
    Эта команда получает случайное целое число меньше 10001. Поскольку параметр
     Maximum имеет позицию 1, имя этого параметра можно опустить, если значение
     относится к первому или единственному не указанному параметру в команде.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113446



Get-Service

ИМЯ
    Get-Service
    
ОПИСАНИЕ
    Получает службы на локальном или удаленном компьютере.
    
СИНТАКСИС
    Get-Service [[-Name] <string[]>] [-ComputerName <string[]>] [-DependentServ
    ices] [-Exclude <string[]>] [-Include <string[]>] [-RequiredServices] [<Com
    monParameters>]
    
    Get-Service -DisplayName <string[]> [-ComputerName <string[]>] [-DependentS
    ervices] [-Exclude <string[]>] [-Include <string[]>] [-RequiredServices] [
    CommonParameters>]
    
    Get-Service [-InputObject <ServiceController[]>] [-ComputerName <string[]>]
     [-DependentServices] [-Exclude <string[]>] [-Include <string[]>] [-Require
    dServices] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Service получает объекты, представляющие службы на локальном 
    или удаленном компьютере, как выполняющиеся, так и остановленные. 
    
    Чтобы получить с помощью командлета Get-Service конкретные службы, можно ук
    азать имена или отображаемые имена этих служб либо передать объекты служб к
    омандлету Get-Service по конвейеру.
    
ПАРАМЕТРЫ
    -ComputerName <string[]>
        Получает службы, выполняющиеся на указанных компьютерах. По умолчанию и
        спользуется значение "Локальный компьютер". 
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя удаленного компью
        тера. Чтобы указать локальный компьютер, введите имя компьютера, точку 
        (.) или "localhost".
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName командлета Get-Service можно использовать, даже
         если компьютер не настроен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Localhost
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -DependentServices [<SwitchParameter>]
        Получает только службы, зависящие от указанной службы. 
        
        По умолчанию командлет Get-Service получает все службы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -DisplayName <string[]>
        Задает отображаемые имена извлекаемых служб. Подстановочные знаки разре
        шены. По умолчанию командлет Get-Service возвращает все службы, запущен
        ные на компьютере.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные службы. Значение данного параметра определяет значе
        ние параметра Name. Введите часть имени или шаблон, например "s*". Подс
        тановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Извлекает только указанные службы. Значение данного параметра определяе
        т значение параметра Name. Введите часть имени или шаблон, например "s*
        ". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <ServiceController[]>
        Задает объекты ServiceController, представляющие извлекаемые службы. Вв
        едите переменную, содержащую объекты, либо команду или выражение для по
        лучения объектов. Кроме того, можно передать объект службы командлету G
        et-Service по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена извлекаемых служб. Подстановочные знаки разрешены. По умол
        чанию командлет Get-Service возвращает все службы на компьютере.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -RequiredServices [<SwitchParameter>]
        Получает только службы, которые требуются указанной службе. 
        
        Этот параметр получает значение свойства ServicesDependedOn службы. По 
        умолчанию командлет Get-Service получает все службы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.ServiceProcess.ServiceController, System.String
        Объект службы или имя службы можно передать командлету Get-Service по к
        онвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.ServiceProcess.ServiceController
        Командлет Get-Service возвращает объекты, представляющие службы на комп
        ьютере.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Get-Service также можно вызывать с помощью встроенного псевдо
        нима "gsv". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлет Get-Service отображает список служб, только если пользователь
         имеет право на их просмотр. Если командлет Get-Service не отображает с
        лужбы, возможно, это вызвано отсутствием требуемых прав.
        
        Чтобы найти имена и отображаемые имена всех служб на компьютере, введит
        е команду "get-service". Имена служб содержатся в столбце Name, а отобр
        ажаемые имена — в столбце DisplayName.
        
        При сортировке в порядке возрастания по значению свойства Status остано
        вленные ("Stopped") службы отображаются раньше выполняющихся ("Running"
        ) служб. Свойство Status является свойством перечисляемого типа, приним
        ающим ограниченный набор значений состояния, которым соответствуют целы
        е числа. Сортировка выполняется по числу, а не по значению. Остановленн
        ые службы отображаются раньше выполняющихся, поскольку значению "Stoppe
        d" соответствует число 1, а значению "Running" — число 4.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-service
    
    
    Описание
    -----------
    Эта команда извлекает все службы на компьютере. То же самое произошло бы пр
    и вводе команды "get-service *". По умолчанию для каждой службы выводятся т
    акие параметры, как состояние, имя службы и отображаемое имя.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-service wmi*
    
    
    Описание
    -----------
    Эта команда извлекает службы, имена которых начинаются с "WMI" (сокращение 
    для Windows Management Instrumentation, инструментарий управления Windows).
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-service -displayname *network*
    
    
    Описание
    -----------
    Эта команда выводит на экран список служб, отображаемые имена которых включ
    ают слово 
    "network". Она позволяет найти сетевые службы, даже если в их именах не сод
    ержится подстрока "Net" (например, xmlprov — Network Provisioning Service).
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-service -name win* -exclude winrm
    
    
    Описание
    -----------
    Эти команды получают только службы, имена которых начинаются на "win", кром
    е службы WinRM.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-service | where-object {$_.Status -eq "Running"}
    
    
    Описание
    -----------
    Эта команда отображает только работающие в данный момент службы. Эта команд
    а с помощью командлета Get-Service получает все службы на компьютере. Опера
    тор конвейера (|) передает результаты командлету Where-Object, который отби
    рает среди них те, для которых параметр Status имеет значение "Running".
    
    Status — не единственное свойство объектов служб. Чтобы просмотреть все сво
    йства, введите "get-service | get-member".
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-service -computername Server02
    
    
    Описание
    -----------
    Эта команда получает службы на удаленном компьютере Server02. 
    
    Параметр ComputerName командлета Get-Service не использует удаленное взаимо
    действие Windows PowerShell, поэтому его можно применять, даже если компьют
    ер не настроен на удаленное взаимодействие в Windows PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-service | where-object {$_.DependentServices} | format-list -prop
    erty Name, DependentServices, @{Label="NoOfDependentS
    ervices"; Expression={$_.dependentservices.count}} 
    
    Name                  : AudioEndpointBuilder
    DependentServices     : {AudioSrv}
    NoOfDependentServices : 1
    
    Name                  : Dhcp
    DependentServices     : {WinHttpAutoProxySvc}
    NoOfDependentServices : 1
    ...
    
    
    Описание
    -----------
    Эти команды выводят список служб на компьютере, у которых есть зависимые сл
    ужбы. 
    
    Первая команда с помощью командлета Get-Service получает службы на компьюте
    ре. С помощью оператора конвейера (|) она передает службы командлету Where-
    Object, который выбирает службы, значение свойства DependentServices которы
    х отлично от "null". 
    
    Следующий оператор конвейера передает результаты командлету Format-List. Па
    раметр Property используется в команде для отображения имени службы, имен з
    ависимых служб и значений вычисляемого свойства, определяющих число зависим
    ых служб каждой службы.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>C:\PS> get-service s* | sort-object status 
    
    Status   Name               DisplayName
    ------   ----               -----------
    Stopped  stisvc             Windows Image Acquisition (WIA)
    Stopped  SwPrv              MS Software Shadow Copy Provider
    Stopped  SysmonLog          Performance Logs and Alerts
    Running  Spooler            Print Spooler
    Running  srservice          System Restore Service
    Running  SSDPSRV            SSDP Discovery Service
    Running  ShellHWDetection   Shell Hardware Detection
    Running  Schedule           Task Scheduler
    Running  SCardSvr           Smart Card
    Running  SamSs              Security Accounts Manager
    Running  SharedAccess       Windows Firewall/Internet Connectio...
    Running  SENS               System Event Notification
    Running  seclogon           Secondary Logon
    
    C:\PS> get-service s* | sort-object status -descending
    
    Status   Name               DisplayName
    ------   ----               -----------
    Running  ShellHWDetection   Shell Hardware Detection
    Running  SharedAccess       Windows Firewall/Internet Connectio...
    Running  Spooler            Print Spooler
    Running  SSDPSRV            SSDP Discovery Service
    Running  srservice          System Restore Service
    Running  SCardSvr           Smart Card
    Running  SamSs              Security Accounts Manager
    Running  Schedule           Task Scheduler
    Running  SENS               System Event Notification
    Running  seclogon           Secondary Logon
    Stopped  SysmonLog          Performance Logs and Alerts
    Stopped  SwPrv              MS Software Shadow Copy Provider
    Stopped  stisvc             Windows Image Acquisition (WIA)
    
    
    Описание
    -----------
    На примере этой команды показано, что при сортировке служб в порядке возрас
    тания по значению свойства Status остановленные службы отображаются раньше 
    выполняющихся служб. Остановленные службы отображаются раньше выполняющихся
    , поскольку свойство Status является перечисляемым и значению "Stopped" соо
    тветствует число 1, а значению "Running" — число 4. 
    
    Чтобы в списке сначала отображались выполняющиеся службы, используйте парам
    етр Descending командлета Sort-Object.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>get-service -name winrm -computername localhost, Server01, Server02  
    | format-table -property MachineName, Status, Name, DisplayName -auto
    
    MachineName    Status  Name  DisplayName
    ------------   ------  ----  -----------
    localhost      Running WinRM Windows Remote Management (WS-Management)
    Server01       Running WinRM Windows Remote Management (WS-Management)
    Server02       Running WinRM Windows Remote Management (WS-Management)
    
    
    Описание
    -----------
    Эта команда с помощью командлета Get-Service запускает команду "Get-Service
     Winrm" на двух удаленных компьютерах и на локальном компьютере ("localhost
    "). 
    
    Команда Get-Service выполняется на удаленных компьютерах и возвращает резул
    ьтаты на локальный компьютер. С помощью оператора конвейера (|) результаты 
    передаются командлету Format-Table, который форматирует набор служб в виде 
    таблицы. Параметр Property используется в команде Format-Table для задания 
    отображаемых в таблице свойств, включая свойство MachineName.
    
    
    
    
    
    -------------------------- ПРИМЕР 10 --------------------------
    
    C:\PS>get-service winrm -requiredServices
    
    
    Описание
    -----------
    Эта команда позволяет получить службы, которые требуются службе WinRM. 
    
    Команда возвращает значение свойства ServicesDependedOn службы.
    
    
    
    
    
    -------------------------- ПРИМЕР 11 --------------------------
    
    C:\PS>"winrm" | get-service
    
    
    Описание
    -----------
    Эта команда получает службу WinRM на локальном компьютере. В этом примере п
    оказано, что для передачи строки имени службы (заключенной в кавычки) коман
    длету Get-Service можно использовать оператор конвейера (|).
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113332
    Start-Service 
    Stop-Service 
    Restart-Service 
    Resume-Service 
    Suspend-Service 
    Set-Service 
    New-Service 



Get-TraceSource

ИМЯ
    Get-TraceSource
    
ОПИСАНИЕ
    Возвращает компоненты Windows PowerShell, подготовленные к трассировке.
    
СИНТАКСИС
    Get-TraceSource [[-Name] <string[]>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-TraceSource возвращает источники трассировки для используемых
     компонентов Windows PowerShell. По этим данным можно узнать, для каких ком
    понентов Windows PowerShell возможна трассировка. При трассировке компонент
     создает подробные сообщения о каждом этапе своей внутренней работы. Разраб
    отчики могут использовать трассировочные данные для мониторинга потока данн
    ых и выполнения программы, а также для поиска ошибок. Командлеты трассировк
    и были созданы для разработчиков Windows PowerShell, однако доступны всем п
    ользователям.
    
ПАРАМЕТРЫ
    -Name <string[]>
        Возвращает только указанные источники трассировки. Подстановочные знаки
         разрешены. Имя параметра ("Name") указывать необязательно.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую имя источника трассировки, можно передать по конвейе
        ру командлету Get-TraceSource.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSTraceSource
        Командлет Get-TraceSource возвращает объекты, представляющие источники 
        трассировки.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-traceSource  *provider*
    
    
    Описание
    -----------
    Эта команда возвращает все источники трассировки, имена которых включают сл
    ово "provider".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-tracesource
    
    
    Описание
    -----------
    Эта команда возвращает все компоненты Windows PowerShell, для которых возмо
    жна трассировка.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113333
    Set-TraceSource 
    Trace-Command 



Get-Transaction

ИМЯ
    Get-Transaction
    
ОПИСАНИЕ
    Получает текущую (активную) транзакцию.
    
СИНТАКСИС
    Get-Transaction [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Transaction возвращает объект, представляющий текущую транзак
    цию в сеансе.
    
    Этот командлет никогда не возвращает более одного объекта, поскольку в кажд
    ый момент времени может быть активной только одна транзакция. При запуске о
    дной или нескольких независимых транзакций (с помощью параметра Independent
     командлета Start-Transaction) активной транзакцией является последняя запу
    щенная транзакция; именно эту транзакцию возвращает командлет Get-Transacti
    on.
    
    После отката или фиксации всех активных транзакций командлет Get-Transactio
    n отображает транзакцию, которая являлась последней активной транзакцией в 
    сеансе.
    
    Командлет Get-Transaction входит в набор командлетов, поддерживающих обрабо
    тку транзакций в Windows PowerShell. Дополнительные сведения см. в разделе 
    about_Transactions.
    
ПАРАМЕТРЫ
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать объекты этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSTransaction
        Командлет Get-Transaction возвращает объект, представляющий текущую тра
        нзакцию.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>start-transaction
    
    C:\PS> get-transaction 
    
    RollbackPreference   SubscriberCount   Status
    ------------------   ---------------   ------
    Error                1                 Active
    
    
    Описание
    -----------
    Эта команда с помощью командлета Get-Transaction получает текущую транзакци
    ю.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-transaction | get-member
    
    Name               MemberType Definition
    ----               ---------- ----------
    Dispose            Method     System.Void Dispose(), System.Void Dispose(Bo
    olean disposing)
    Equals             Method     System.Boolean Equals(Object obj)
    GetHashCode        Method     System.Int32 GetHashCode()
    GetType            Method     System.Type GetType()
    ToString           Method     System.String ToString()
    IsCommitted        Property   System.Boolean IsCommitted {get;}
    IsRolledBack       Property   System.Boolean IsRolledBack {get;}
    RollbackPreference Property   System.Management.Automation.RollbackSeverity
     RollbackPreference {get;}
    SubscriberCount    Property   System.Int32 SubscriberCount {get;set;}
    
    
    Описание
    -----------
    Эта команда с помощью командлета Get-Member отображает свойства и методы об
    ъекта транзакции.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>cd hklm:\software
    HKLM:\SOFTWARE> Start-Transaction
    HKLM:\SOFTWARE> New-Item MyCompany -UseTransaction
    HKLM:\SOFTWARE> Undo-Transaction
    HKLM:\SOFTWARE> Get-Transaction
    
    RollbackPreference   SubscriberCount   Status
    ------------------   ---------------   ----------
    Error                0                 RolledBack
    
    
    Описание
    -----------
    Эта команда отображает значения свойств объекта транзакции, откат которой б
    ыл выполнен.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>cd hklm:\software
    HKLM:\SOFTWARE> Start-Transaction
    HKLM:\SOFTWARE> New-Item MyCompany -UseTransaction
    HKLM:\SOFTWARE> Complete-Transaction
    HKLM:\SOFTWARE> Get-Transaction
    
    RollbackPreference   SubscriberCount   Status
    ------------------   ---------------   ---------
    Error                1                 Committed
    
    
    Описание
    -----------
    Эта команда отображает значения свойств объекта транзакции, которая была за
    фиксирована.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>cd hklm:\software
    HKLM:\SOFTWARE> Start-Transaction
    HKLM:\SOFTWARE> New-Item MyCompany -UseTransaction
    
    HKLM:\SOFTWARE> Start-Transaction
    HKLM:\SOFTWARE> New-Item MyCompany2 -UseTransaction
    
    HKLM:\SOFTWARE> Get-Transaction
    
    RollbackPreference   SubscriberCount   Status
    ------------------   ---------------   ------
    Error                2                 Active
    
    HKLM:\SOFTWARE> Complete-Transaction
    HKLM:\SOFTWARE> Get-Transaction
    
    RollbackPreference   SubscriberCount   Status
    ------------------   ---------------   ------
    Error                1                 Active
    
    
    HKLM:\SOFTWARE> Complete-Transaction
    HKLM:\SOFTWARE> Get-Transaction
    
    RollbackPreference   SubscriberCount   Status
    ------------------   ---------------   ---------
    Error                1                 Committed
    
    
    Описание
    -----------
    В этом примере показано, что происходит с объектом транзакции при запуске т
    ранзакции во время выполнения другой транзакции. Обычно такая ситуация возн
    икает, если в скрипте, осуществляющем запуск транзакции, содержится функция
     или вызов скрипта, включающего другую завершенную транзакцию.
    
    Если в команде Start-Transaction не задан параметр Independent, команда Sta
    rt-Transaction не создает новую транзакцию. Вместо этого она добавляет втор
    ого подписчика в исходную транзакцию. 
    
    Первая команда Start-Transaction запускает транзакцию. Команда New-Item с п
    араметром UseTransaction является частью транзакции.
    
    Вторая команда Start-Transaction добавляет подписчика в транзакцию. Следующ
    ая команда New-Item также является частью транзакции.
    
    Первая команда Get-Transaction отображает транзакцию с несколькими подписчи
    ками. Обратите внимание, что количество подписчиков равно 2.
    
    Первая команда Complete-Transaction не фиксирует транзакцию, но сокращает к
    оличество подписчиков до 1.
    
    Вторая команда Complete-Transaction фиксирует транзакцию.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>HKLM:\SOFTWARE> Start-Transaction
    
    HKLM:\SOFTWARE> Get-Transaction
    
    RollbackPreference   SubscriberCount   IsRolledBack   IsCommitted
    ------------------   ---------------   ------------   -----------
    Error                1                 False          False
    
    HKLM:\SOFTWARE> Start-Transaction -Independent
    HKLM:\SOFTWARE> Get-Transaction
    
    RollbackPreference   SubscriberCount   IsRolledBack   IsCommitted
    ------------------   ---------------   ------------   -----------
    Error                1                 False          False
    
    HKLM:\SOFTWARE> Complete-Transaction
    HKLM:\SOFTWARE> Get-Transaction
    
    HKLM:\SOFTWARE> Complete-Transaction
    HKLM:\SOFTWARE> Get-Transaction
    
    
    Описание
    -----------
    В этом примере показано, что происходит с объектом транзакции при запуске н
    езависимой транзакции во время выполнения другой транзакции.
    
    Первая команда Start-Transaction запускает транзакцию. Команда New-Item с п
    араметром UseTransaction является частью транзакции.
    
    Вторая команда Start-Transaction добавляет подписчика в транзакцию. Следующ
    ая команда New-Item также является частью транзакции.
    
    Первая команда Get-Transaction отображает транзакцию с несколькими подписчи
    ками. Обратите внимание, что количество подписчиков равно 2.
    
    Первая команда Complete-Transaction сокращает количество подписчиков до 1, 
    но не фиксирует транзакцию.
    
    Вторая команда Complete-Transaction фиксирует транзакцию.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135220
    about_Transactions 
    about_Providers 
    Start-Transaction 
    Complete-Transaction 
    Undo-Transaction 
    Use-Transaction 



Get-UICulture

ИМЯ
    Get-UICulture
    
ОПИСАНИЕ
    Получает текущие параметры культуры пользовательского интерфейса операционн
    ой системы.
    
СИНТАКСИС
    Get-UICulture [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-UICulture получает сведения о текущих параметрах культуры пол
    ьзовательского интерфейса Windows. Культура пользовательского интерфейса оп
    ределяет строки, которые используются в качестве элементов пользовательског
    о интерфейса, например меню и сообщений.
    
    Можно также использовать командлет Get-Culture, который получает информацию
     о текущей культуре системы. Культура определяет формат отображения таких э
    лементов, как числа, валюта и даты.
    
ПАРАМЕТРЫ
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Globalization.CultureInfo
        Командлет Get-UICulture возвращает объект, представляющий текущую культ
        уру пользовательского интерфейса.
    
    
ПРИМЕЧАНИЯ
    
    
        Кроме того, можно использовать переменные $PsCulture и $PsUICulture. В 
        переменной $PsCulture хранится имя текущей культуры, а в переменной $Ps
        UICulture — имя текущей культуры пользовательского интерфейса.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-uiculture
    
    
    Описание
    -----------
    Эта команда возвращает сведения о текущей культуре пользовательского интерф
    ейса.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-uiculture | format-list *
    
    
    Описание
    -----------
    Эта команда отображает значения всех свойств текущей культуры пользовательс
    кого интерфейса в виде списка.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>(get-uiculture).calendar
    
    
    Описание
    -----------
    Эта команда отображает текущие значения свойства Calendar текущей культуры 
    пользовательского интерфейса. Calendar — это только одно свойство культуры 
    пользовательского интерфейса. Чтобы просмотреть все свойства, введите "get-
    uiculture | get-member".
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>(get-uiculture).datetimeformat.shortdatepattern
    
    
    Описание
    -----------
    Эта команда отображает шаблон формата краткой даты, принятый в текущей куль
    туре пользовательского интерфейса. Чтобы просмотреть все дочерние свойства 
    для свойства DateTimeFormat культуры пользовательского интерфейса, введите 
    команду "(get-uiculture).datetimeformat | gm".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113334



Get-Unique

ИМЯ
    Get-Unique
    
ОПИСАНИЕ
    Возвращает уникальные элементы из отсортированного списка.
    
СИНТАКСИС
    Get-Unique [-AsString] [-InputObject <psobject>] [<CommonParameters>]
    
    Get-Unique [-OnType] [-InputObject <psobject>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Unique сравнивает каждый элемент отсортированного списка со с
    ледующим, исключает дубликаты и возвращает только по одному экземпляру кажд
    ого элемента. Для правильной работы этого командлета список должен быть отс
    ортирован.
    
ПАРАМЕТРЫ
    -AsString [<SwitchParameter>]
        Указывает, что данные должны быть обработаны как строка. Если этот пара
        метр не указан, данные обрабатываются как объект, поэтому при передаче 
        командлету Get-Unique коллекции объектов одного типа (например коллекци
        и файлов) он возвращает только один объект (первый). Этот параметр можн
        о использовать для нахождения уникальных значений свойств объектов, нап
        ример имен файлов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Принимает входные значения для командлета Get-Unique. Введите переменну
        ю, содержащую объекты, либо получающую их команду или выражение.
        
        Командлет Get-Unique рассматривает ввод, переданный с использованием па
        раметра InputObject, как коллекцию; он не работает с отдельными элемент
        ами коллекции. Так как коллекция является одним элементом, ввод, переда
        нный с помощью параметра InputObject, всегда возвращается в неизменном 
        виде.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -OnType [<SwitchParameter>]
        Возвращает только один объект каждого типа.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект любого типа можно передать командлету Get-Unique по конвей
        еру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Тип объекта, возвращаемого командлетом Get-Unique, определяется входным
        и данными.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Get-Unique также можно вызывать с помощью встроенного псевдон
        има "gu". Дополнительные сведения см. в разделе about_Aliases.
        
        Для сортировки списка используйте командлет Sort-Object. Кроме того, дл
        я нахождения уникальных элементов списка можно использовать параметр Un
        ique командлета Sort-Object.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$a = $(foreach ($line in get-content C:\Test1\File1.txt) {$line.tolow
    er().split(" ")}) | sort | get-unique
    
    C:\PS> $a.count
    
    
    Описание
    -----------
    Эти команды определяют число уникальных слов в текстовом файле. 
    
    Первая команда возвращает содержимое файла File.txt. Она преобразует каждую
     строку текста в нижний регистр, после чего разбивает текст на слова по зна
    ку пробела (" ") и помещает их в отдельные строки. Затем она сортирует полу
    чившийся список в алфавитном порядке (порядок сортировки по умолчанию) и ус
    траняет все повторяющиеся слова с помощью командлета Get-Unique. Результат 
    сохраняется в переменной $a.
    
    Во второй команде с помощью свойства Count набора строк, сохраненных в пере
    менной $a, определяется число элементов в $a.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>1,1,1,1,12,23,4,5,4643,5,3,3,3,3,3,3,3 | sort-object | Get-Unique
    
    
    Описание
    -----------
    Эта команда возвращает уникальные элементы набора целых чисел. Первая коман
    да принимает массив целых чисел, введенных в командной строке, и передает е
    го по конвейеру командлету Sort-Object для сортировки. Отсортированный масс
    ив передается по конвейеру командлету Get-Unique, который устраняет повторя
    ющиеся элементы.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-childitem | sort-object {$_.GetType()} |  unique -OnType
    
    
    Описание
    -----------
    Эта команда с помощью командлета Get-ChildItem извлекает содержимое локальн
    ого каталога, включающего файлы и каталоги. Оператор конвейера (|) передает
     результаты командлету Sort-Object. Выражение "$_.GetType()" указывает, что
     метод GetType выполняется для каждого файла или каталога. Затем командлет 
    Sort-Object сортирует элементы по типу. Другой оператор конвейера передает 
    результаты командлету Get-Unique. Параметр OnType указывает, что командлет 
    Get-Unique должен вернуть только по одному объекту каждого типа.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-process | sort-object | select processname | get-unique -asstring
    
    
    Описание
    -----------
    Эта команда возвращает имена выполняемых на компьютере процессов, устранив 
    перед этим дубликаты. 
    
    Команда Get-Process возвращает все процессы на компьютере. Оператор конвейе
    ра (|) передает результат командлету Sort-Object, который по умолчанию сорт
    ирует процессы по значению свойства ProcessName в алфавитном порядке. Резул
    ьтат передается по конвейеру командлету Select-Object, который выбирает тол
    ько значения свойства ProcessName каждого объекта. Затем эти значения перед
    аются по конвейеру командлету Get-Unique для устранения повторяющихся значе
    ний. 
    
    Параметр AsString указывает командлету Get-Unique, что значения ProcessName
     должны обрабатываться как строки. Без этого параметра командлет Get-Unique
     обработал бы значения ProcessName как объекты и возвратил бы только один э
    кземпляр объекта, то есть первое имя процесса в списке.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113335
    Select-Object 
    Sort-Object 



Get-Variable

ИМЯ
    Get-Variable
    
ОПИСАНИЕ
    Получает переменные, определенные для текущей консоли.
    
СИНТАКСИС
    Get-Variable [[-Name] <string[]>] [-Exclude <string[]>] [-Include <string[]
    >] [-Scope <string>] [-ValueOnly] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Variable получает переменные Windows PowerShell, определенные
     для текущей консоли. Можно извлечь только значения переменных, указав пара
    метр ValueOnly, а также отфильтровать возвращенные переменные по имени.
    
ПАРАМЕТРЫ
    -Exclude <string[]>
        Исключает указанные элементы. Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Определяет элементы, которые будут обработаны командлетом, и исключает 
        все остальные. Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имя переменной.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Scope <string>
        Получает только переменные в заданной области. Допустимые значения: "Gl
        obal", "Local", "Script" или номер относительно текущей области (от 0 д
        о количества областей, где 0 — текущая область, а 1 — ее родительская о
        бласть). По умолчанию используется значение "Local". Дополнительные све
        дения см. в разделе about_Scopes.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ValueOnly [<SwitchParameter>]
        Получает только значение переменной.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую имя переменной, можно передать по конвейеру командле
        ту Get-Variable.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Variable object
        Командлет Get-Variable возвращает объект переменной System.Management.A
        utomation для каждой получаемой им переменной. Тип объекта зависит от п
        еременной.
    
    
ПРИМЕЧАНИЯ
    
    
        Этот командлет не управляет переменными среды. Для управления переменны
        ми среды можно воспользоваться поставщиком переменных среды.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-variable m*
    
    
    Описание
    -----------
    Эта команда отображает имена переменных, которые начинаются на букву "m". Т
    акже отображаются значения переменных.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-variable m* -valueonly
    
    
    Описание
    -----------
    Эта команда отображает только значения переменных, имена которых начинаются
     на букву "m".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-variable -include M*,P* | sort-object name
    
    
    Описание
    -----------
    Эта команда получает сведения о переменных, имена которых начинаются на бук
    ву "M" или "P". Результаты передаются по конвейеру командлету Sort-Object, 
    сортируются по имени и отображаются.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-variable -scope 0
    
    C:\PS> compare-object (get-variable -scope 0) (get-variable -scope 1)
    
    
    Описание
    -----------
    Первая команда получает только переменные, определенные в локальной области
    . Она эквивалентна команде "get-variable -scope local", и ее можно сократит
    ь как "gv -s 0". 
    
    Вторая команда с помощью командлета Compare-Object находит переменные, опре
    деленные в родительской области (Scope 1), но видимые только в локальной об
    ласти (Scope 0).
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113336
    Set-Variable 
    New-Variable 
    Clear-Variable 
    Remove-Variable 



Get-Verb

Get-Verb [[-verb] <String[]>] [-Verbose] [-Debug] [-ErrorAction <ActionPreferen
ce>] [-WarningAction <ActionPreference>] [-ErrorVariable <String>] [-WarningVar
iable <String>] [-OutVariable <String>] [-OutBuffer <Int32>]



Get-WinEvent

ИМЯ
    Get-WinEvent
    
ОПИСАНИЕ
    Получает события из журналов событий и файлов журналов отслеживания событий
    , находящихся на локальном компьютере и на удаленных компьютерах.
    
СИНТАКСИС
    Get-WinEvent [-LogName] <string[]> [-ComputerName <string>] [-Credential <P
    SCredential>] [-FilterXPath <string>] [-Force <switch>] [-MaxEvents <int64>
    ] [-Oldest] [<CommonParameters>]
    
    Get-WinEvent [-Path] <string[]> [-ComputerName <string>] [-Credential <PSCr
    edential>] [-FilterXPath <string>] [-Force <switch>] [-MaxEvents <int64>] [
    -Oldest] [<CommonParameters>]
    
    Get-WinEvent [-ProviderName] <string[]> [-ComputerName <string>] [-Credenti
    al <PSCredential>] [-FilterXPath <string>] [-Force <switch>] [-MaxEvents 
    nt64>] [-Oldest] [<CommonParameters>]
    
    Get-WinEvent -FilterHashTable <Hashtable[]> [-ComputerName <string>] [-Cred
    ential <PSCredential>] [-Force <switch>] [-MaxEvents <int64>] [-Oldest] [
    ommonParameters>]
    
    Get-WinEvent [-ListLog] <string[]> [-ComputerName <string>] [-Credential <P
    SCredential>] [<CommonParameters>]
    
    Get-WinEvent [-ListProvider] <string[]> [-ComputerName <string>] [-Credenti
    al <PSCredential>] [<CommonParameters>]
    
    Get-WinEvent -FilterXml <XmlDocument> [-ComputerName <string>] [-Credential
     <PSCredential>] [-Force <switch>] [-MaxEvents <int64>] [-Oldest] [
    arameters>]
    
    
ОПИСАНИЕ
    Командлет Get-WinEvent получает события из журналов событий, включая класси
    ческие журналы событий, такие как журналы системы и приложений, и журналы с
    обытий, создаваемые с помощью новой технологии журнала событий Windows, реа
    лизованной в Windows Vista. Он также получает события из файлов журналов, с
    озданных средством отслеживания событий для Windows (ETW).
    
    При вызове без параметров команда Get-WinEvent получает все события из журн
    алов событий компьютера. Чтобы прервать выполнение команды, нажмите сочетан
    ие клавиш CTRL+C.
    
    Кроме того, командлет Get-WinEvent создает список журналов событий и постав
    щиков журналов событий. События можно получать из выбранных журналов или жу
    рналов, созданных определенными поставщиками событий. В одной команде можно
     объединять события из различных источников. Командлет Get-WinEvent позволя
    ет фильтровать события с помощью запросов XPath, структурированных XML-запр
    осов и упрощенных запросов хэш-таблицы.
    
    Примечание. Командлет Get-WinEvent работает только в Windows Vista, Windows
     Server 2008 R2 и последующих версиях Windows. Кроме того, требуется платфо
    рма Microsoft .NET Framework 3.5 или более поздней версии.
    
ПАРАМЕТРЫ
    -ComputerName <string>
        Получает события из журналов событий на указанном компьютере. Введите N
        etBIOS-имя, IP-адрес или полное доменное имя компьютера. По умолчанию и
        спользуется значение "Локальный компьютер".
        
        Этот параметр одновременно принимает только одно имя компьютера. Чтобы 
        найти журналы событий или события на нескольких компьютерах, воспользуй
        тесь инструкцией ForEach. Дополнительные сведения о данном параметре см
        . в примерах.
        
        Чтобы получать журналы событий и события с удаленных компьютеров, порт 
        брандмауэра для службы ведения журнала должен быть открыт для удаленног
        о доступа.
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName можно использовать, даже если компьютер не наст
        роен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь".
        
        Введите имя пользователя, например User01 или Domain01\User01. Или укаж
        ите объект PSCredential, например один из объектов, созданных командлет
        ом Get-Credential. При вводе имени пользователя система запросит пароль
        . Если указано только имя параметра, командлет запросит имя пользовател
        я и пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Текущий пользователь
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FilterHashTable <Hashtable[]>
        Использует запрос в формате хэш-таблицы для выбора событий из одного ил
        и нескольких журналов событий. Запрос содержит хэш-таблицу с одной или 
        несколькими парами "ключ-значение".
        
        К запросам в виде хэш-таблицы применяются следующие правила:
        -- Ключи и значения обрабатываются без учета регистра.
        -- Подстановочные знаки допускаются только в значениях, связанных с клю
        чами LogName и ProviderName.
        -- Каждый ключ может использоваться в каждой хэш-таблице только один ра
        з.
        -- Значение Path получает пути к файлам журналов ETL, EVT и EVTX.
        -- Ключи LogName, Path и ProviderName можно использовать в одном запрос
        е. 
        -- Ключ UserID может получать допустимый идентификатор безопасности (SI
        D) или имя учетной записи домена, которое можно использовать для создан
        ия допустимого объекта System.Security.Principal.NTAccount.
        -- Значение Data получает данные события в неименованном поле. Это поле
         используется для событий в классических журналах событий.
        -- Ключ * представляет именованное поле данных событий.
        Если командлету Get-WinEvent не удается интерпретировать пару "ключ-зна
        чение", ключ интерпретируется с учетом регистра как имя данных события 
        в событии.
        
        Допустимые пары "ключ-значение":
        -- LogName=<String[]>
        -- ProviderName=<String[]>
        -- Path=<String[]>
        -- Keywords=<Long[]>
        -- ID=<Int32[]>
        -- Level=<Int32[]>
        -- StartTime=<DateTime>
        -- EndTime=<DataTime>
        -- UserID=<SID>
        -- Data=<String[]>
        -- *=<String[]>
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -FilterXml <XmlDocument>
        Использует структурированный XML-запрос для выбора событий из одного ил
        и нескольких журналов событий.
        
        Для создания допустимого XML-запроса следует использовать функции "Созд
        ать настраиваемое представление" и "Фильтровать текущий журнал" средств
        а просмотра событий. Используйте эти функции в диалоговом окне для созд
        ания запроса, а затем перейдите на вкладку "XML" для просмотра запроса 
        в формате XML. XML-запрос можно скопировать с вкладки "XML" и вставить 
        в значение параметра FilterXml. Дополнительные сведения о возможностях 
        средства просмотра событий см. в справке средства просмотра событий.
        
        Как правило, XML-запросы используются для создания сложных запросов, со
        держащих несколько инструкций XPath. Кроме того, формат XML позволяет и
        спользовать XML-элемент "Suppress", который исключает события из запрос
        а. Дополнительные сведения о схеме XML для запросов журнала событий см.
         в указанных ниже разделах библиотеки MSDN (Microsoft Developer Network
        ).
        
        -- "Схема запроса": http://go.microsoft.com/fwlink/?LinkId=143685
        
        -- "Запросы событий XML" в разделе "Выбор событий": http://go.microsoft
        .com/fwlink/?LinkID=143608
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -FilterXPath <string>
        Использует запрос XPath для выбора событий из одного или нескольких жур
        налов.
        
        Дополнительные сведения о языке XPath см. в разделе "Фильтры выбора" ра
        здела "Выбор событий" и в разделе "Справочник по XPath" в библиотеке MS
        DN.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force <switch>
        Получает журналы отладки и аналитики в дополнение к другим журналам соб
        ытий. Параметр Force необходим для получения журнала отладки или аналит
        ики, если значение параметра Name включает подстановочные знаки.
        
        По умолчанию командлет Get-WinEvent не обрабатывает эти журналы, если н
        е указано полное имя журнала отладки или журнала аналитики.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Журналы отладки и аналитики не воз
        вращаются в ответ на запросы с использованием подстановочных знаков.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ListLog <string[]>
        Получает заданные журналы событий. Введите имена журналов событий, разд
        еленные запятыми. Подстановочные знаки разрешены. Чтобы получить все жу
        рналы, введите значение *.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -ListProvider <string[]>
        Получает список заданных поставщиков журналов событий. Поставщик журнал
        а событий — это программа или служба, которая записывает события в журн
        ал событий.
        
        Введите имена поставщиков, разделенные запятыми. Подстановочные знаки р
        азрешены. Чтобы получить список поставщиков всех журналов событий, имею
        щихся на компьютере, введите значение *.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -LogName <string[]>
        Получает события из заданных журналов событий. Введите имена журналов с
        обытий, разделенные запятыми. Подстановочные знаки разрешены. Кроме тог
        о, можно передать имена журналов в Get-WinEvent с помощью конвейера.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  true
        
    -MaxEvents <int64>
        Задает максимальное число событий, возвращаемых Get-WinEvent. Введите ц
        елое число. По умолчанию возвращаются все события во всех журналах и фа
        йлах.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Все события
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Oldest [<SwitchParameter>]
        Возвращает события в порядке от старых к новым.  По умолчанию события в
        озвращаются в порядке от новых к старым. 
        
        Это параметр необходим для получения событий из ELT- и EVT-файлов, а та
        кже из журналов отладки и аналитики. В этих файлах события регистрируют
        ся в порядке от старых к новым и могут быть возвращены только в этом по
        рядке.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Получает события из заданных файлов журналов событий. Введите пути к фа
        йлам журналов, разделенные запятыми, или используйте подстановочные зна
        ки для ввода шаблонов путей файлов. 
        
        Командлет Get-WinEvent поддерживает файлы с расширениями EVT, EVTX и ET
        L. В одной команде можно объединять события из различных файлов и типов
         файлов.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -ProviderName <string[]>
        Возвращает события, записанные указанными поставщиками журналов событий
        . Введите имена поставщиков, разделенные запятыми, или используйте подс
        тановочные знаки для ввода шаблонов имен поставщиков.
        
        Поставщик журнала событий — это программа или служба, которая записывае
        т события в журнал событий. Такой поставщик не является поставщиком Win
        dows PowerShell.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String, System.Xml.XmlDocument, System.Collections.Hashtable.
        Параметр LogName (строка), запрос FilterXML и запрос FilterHashTable мо
        жно по конвейеру передать в командлет Get-WinEvent.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Diagnostics.Eventing.Reader.EventLogConfiguration, System.Diagnostic
    s.Eventing.Reader.EventLogRecord, System.Diagnostics.Eventing.Reader.Provid
    erMetadata
        С параметром ListLog команда Get-WinEvent -Listlog возвращает объекты S
        ystem.Diagnostics.Eventing.Reader.EventLogConfiguration. С параметром L
        istProvider команда Get-WinEvent возвращает 
        объекты System.Diagnostics.Eventing.Reader.ProviderMetadata. При исполь
        зовании всех других параметров командлет Get-WinEvent возвращает объект
        ы System.Diagnostics.Eventing.Reader.EventLogRecord.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Get-WinEvent заменяет командлет Get-EventLog на компьютерах п
        од управлением Windows Vista и более поздних версий Windows. Командлет 
        Get-EventLog получает события только из классических журналов событий. 
        Командлет Get-EventLog сохранен в Windows PowerShell 2.0 для операционн
        ых систем, предшествующих Windows Vista.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-winevent -listlog  *
    
    
    Описание
    -----------
    Эта команда получает все журналы, имеющиеся на локальном компьютере.
        
    Журналы указаны в порядке их получения командлетом Get-WinEvent. Как правил
    о, сначала извлекаются классические журналы, а затем — новые журналы обрабо
    тки событий Windows.
        
    Поскольку обычно используется более сотни журналов событий, для этого парам
    етра требуется имя журнала или шаблон имени. Чтобы получить все журналы, ис
    пользуйте значение *.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-winevent -listlog Setup | format-list -property *
    
        
        FileSize                       : 69632
        IsLogFull                      : False
        LastAccessTime                 : 2/14/2008 12:55:12 AM
        LastWriteTime                  : 7/9/2008 3:12:05 AM
        OldestRecordNumber             : 1
        RecordCount                    : 3
        LogName                        : Setup
        LogType                        : Operational
        LogIsolation                   : Application
        IsEnabled                      : True
        IsClassicLog                   : False
        SecurityDescriptor             : O:BAG:SYD:(A;;0xf0007;;;SY)(A;
                                         (A;;0x1;;;S-1-5-32-573)
        LogFilePath                    : %SystemRoot%\System32\Winevt\L
        MaximumSizeInBytes             : 1052672
        LogMode                        : Circular
        OwningProviderName             : Microsoft-Windows-Eventlog
        ProviderNames                  : {Microsoft-Windows-WUSA, Micro
        ProviderLevel                  :
        ProviderKeywords               :
        ProviderBufferSize             : 64
        ProviderMinimumNumberOfBuffers : 0
        ProviderMaximumNumberOfBuffers : 64
        ProviderLatency                : 1000
        ProviderControlGuid            :
    
    
    Описание
    -----------
    Эти команды получают объект, представляющий классический системный журнал н
    а локальном компьютере. Объект содержит сведения о журнале, в том числе: ра
    змер журнала, поставщик журнала событий и путь к файлу, а также индикатор т
    ого, включен ли журнал.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-winevent -listlog * -computername Server01| where {$_.recordcount
    }
    
    
    Описание
    -----------
    Эта команда извлекает только журналы событий на компьютере Server01, содерж
    ащие события. Многие журналы могут быть пустыми. 
        
    Эта команда использует свойство RecordCount объекта EventLogConfiguration, 
    возвращаемого командлетом Get-WinEvent при использовании параметра ListLog.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$s = "Server01", "Server02", "Server03"
    
    C:\PS> foreach ($server in $s) 
         {$server; get-winevent -listlog "Windows PowerShell" -computername $se
    rver}
    
    
    Описание
    -----------
    В данном примере команда извлекает объекты, представляющие журналы событий 
    Windows PowerShell на трех компьютерах: Server01, Server02 и Server03. В ко
    манде используется ключевой слово Foreach, так как параметр ComputerName пр
    инимает только одно значение.
        
    Первая команда сохраняет имена компьютеров в переменной $s.
        
    Во второй команде используется инструкция Foreach. Для каждого из компьютер
    ов, указанных в переменной $s, выполняется команда в блоке скрипта (в фигур
    ных скобках). Сначала команда выводит имя компьютера. Затем она выполняет к
    оманду Get-WinEvent для получения объекта, представляющего журнал Windows P
    owerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-winevent -listprovider *
    
    
    Описание
    -----------
    Эта команда получает список поставщиков журналов событий на локальном компь
    ютере и журналов, в которые они выполняют запись (если есть).
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>(get-winevent -listlog Application).providernames
    
    
    Описание
    -----------
    Эта команда возвращает всех поставщиков, которые выполняют запись в журнал 
    приложений на локальном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>>get-winevent -listprovider *policy*
    
    
    Описание
    -----------
    Эта команда возвращает поставщиков журналов событий, имена которых содержат
     слово "policy".
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>(get-winevent -listprovider microsoft-windows-grouppolicy).events | f
    ormat-table id, description -auto
    
    
    Описание
    -----------
    Эта команда возвращает список идентификаторов событий, созданных поставщико
    м событий Microsoft-Windows-GroupPolicy, и соответствующих описаний событий
    .
        
    В ней используется свойство Events объекта, возвращаемого командлетом Get-W
    inEvent при использовании параметра ListProvider, а также свойства ID и Des
    cription объекта в свойстве Events.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>$events = get-winevent -logname "Windows PowerShell"
    
    C:\PS> $events.count
    195
        
    C:\PS> $events | group-object id -noelement | sort-object count -desc
    Count Name
    ----- ----
      147 600
       22 400
       21 601
        3 403
        2 103
        
     C:\PS> $events | group-object leveldisplayname -noelement
    Count Name
    ----- ----
        2 Warning
      193 Information
    
    
    Описание
    -----------
    В этом примере показано, как с помощью свойств объектов событий, возвращенн
    ых командлетом Get-WinEvent, получить сведения о событиях в журнале событий
    .
        
    Первая команда с помощью командлета Get-WinEvent возвращает все события в ж
    урнале событий Windows PowerShell. После этого они сохраняются в переменной
     $events. Имя журнала заключено в кавычки, поскольку оно содержит пробел.
        
    Вторая команда использует свойство Count коллекций объектов для определения
     количества записей в журнале событий. 
        
    Третья команда отображает количество экземпляров каждого события в журнале,
     при этом сначала выводятся самые часто возникающие события. В данном приме
    ре чаще всего возникает событие с идентификатором 600.
        
    Четвертая команда группирует элементы по значению свойства LevelDisplayName
     для отображения количества сообщений типа Error, Warning и Information в ж
    урнале.
    
    
    
    
    
    -------------------------- ПРИМЕР 10 --------------------------
    
    C:\PS>get-winevent -logname *disk*, Microsoft-Windows-Kernel-WHEA
    
    
    Описание
    -----------
    Эта команда извлекает события типа "Ошибка", имена которых содержат слово "
    disk", из всех журналов событий на компьютере, а также из журнала событий M
    icrosoft-Windows-Kernel-WHEA.
    
    
    
    
    
    -------------------------- ПРИМЕР 11 --------------------------
    
    C:\PS>get-winevent -path 'c:\ps-test\Windows PowerShell.evtx'
    
    
    Описание
    -----------
    Эта команда получает события из копии файла журнала событий Windows PowerSh
    ell, находящейся в тестовом каталоге. Путь заключен в кавычки, поскольку им
    я журнала содержит пробел.
    
    
    
    
    
    -------------------------- ПРИМЕР 12 --------------------------
    
    C:\PS>get-winevent -path 'c:\tracing\tracelog.etl' -maxevents 100 -oldest
        
    C:\PS> get-winevent -path 'c:\tracing\tracelog.etl' -oldest | sort-object -
    property timecreated -desc | select-object -first 100
    
    
    Описание
    -----------
    Эти команды извлекают первые 100 событий из файла журнала средства отслежив
    ания событий для Windows (ETW).
    
    Первая команда извлекает из журнала 100 самых ранних событий. С помощью ком
    андлета Get-WinEvent она получает события из файла Tracelog.etl. Параметр M
    axEvents ограничивает количество извлекаемых событий до 100. События перечи
    сляются в порядке их записи в журнал (от старых к новым), поэтому необходим
    о использовать параметр Oldest.
    
    Вторая команда извлекает из журнала 100 последних событий. С помощью команд
    лета Get-WinEvent она получает все события из файла Tracing.etl. Она переда
    ет
    события командлету Sort-Object, который сортирует их в порядке убывания зна
    чений свойства TimeCreated. Затем упорядоченные события передаются командле
    ту Select-Object для выбора 100 последних событий.
    
    
    
    
    
    -------------------------- ПРИМЕР 13 --------------------------
    
    C:\PS>get-winevent -path "c:\tracing\tracelog.etl", "c:\Logs\Windows PowerS
    hell.evtx" -oldest | where {$_.id -eq "103"}
    
    
    Описание
    -----------
    В этом примере показано, как извлечь события из файла журнала отслеживания 
    событий (ETL) и из копии файла журнала Windows PowerShell (EVTX), сохраненн
    ой в тестовом каталоге.
    
    В одной команде можно использовать различные типы файлов. Поскольку файлы с
    одержат объект .NET Framework одного типа (объект EventLogRecord), для их ф
    ильтрации можно использовать одни и те же свойства.
    
    Обратите внимание, что в команде необходимо использовать свойство Oldest, п
    отому что выполняется чтение из файла ETL, однако параметр Oldest применяет
    ся в отношении обоих файлов.
    
    
    
    
    
    -------------------------- ПРИМЕР 14 --------------------------
    
    C:\PS># Use the Where-Object cmdlet
    C:\PS> $yesterday = (get-date) - (new-timespan -day 1)
    C:\PS> get-winevent -logname "Windows PowerShell" | where {$_.timecreated -
    ge $yesterday}
    
    
    # Uses FilterHashTable
    C:\PS> $yesterday = (get-date) - (new-timespan -day 1)
    C:\PS> get-winevent -FilterHashTable @{LogName='Windows PowerShell'; Level=
    3; StartTime=$yesterday}
    
    
    # Use FilterXML
    C:\PS> get-winevent -FilterXML "<QueryList><Query><Select Path='Windows Pow
    erShell'>*[System[Level=3 and TimeCreated[timediff(@SystemTime) <= 86400000
    ]]]</Select></Query></QueryList>"
    
    
    # Use FilterXPath
    C:\PS> get-winevent -LogName "Windows Powershell" -FilterXPath "*[System[Le
    vel=3 and TimeCreated[timediff(@SystemTime) <= 86400000]]]"
    
    
    Описание
    -----------
    В этом примере продемонстрированы различные методы фильтрации для выбора со
    бытий из журнала событий. Все эти команды извлекают из журнала событий Wind
    ows PowerShell события, произошедшие в течение последних 24 часов.
    
    Фильтрация эффективнее использования командлета Where-Object, поскольку фил
    ьтры применяются во время извлечения объектов (вместо того чтобы сначала из
    влечь все объекты, а затем фильтровать их).
    
    Поскольку даты неудобно задавать в форматах XML и XPath, для создания XML-с
    одержимого дат используется функция фильтрации текущего журнала средства пр
    осмотра событий. Дополнительные сведения об этой возможности см. в справке 
    средства просмотра событий.
    
    
    
    
    
    -------------------------- ПРИМЕР 15 --------------------------
    
    C:\PS>$date = (get-date).AddDays(-2)
        
    C:\PS> $events = get-winevent -FilterHashTable @{ logname = "Microsoft-Wind
    ows-Diagnostics-Performance/Operational"; StartTime = $date; ID = 100 }
    
    
    Описание
    -----------
    В этом примере для получения событий из журнала производительности использу
    ется хэш-таблица фильтра. 
        
    Первая команда с помощью командлета Get-Date и метода AddDays получает дату
    , на два дня предшествующую текущей дате. Дата сохраняется в переменной $da
    te.
        
    Вторая команда использует командлет Get-WinEvent с параметром FilterHashTab
    le. Ключи хэш-таблицы определяют фильтр для выбора из журнала производитель
    ности событий с идентификатором события 100, которые произошли в течение по
    следних двух дней. 
        
    Ключ LogName задает журнал событий, ключ StartTime — дату, а ключ ID — иден
    тификатор события.
    
    
    
    
    
    -------------------------- ПРИМЕР 16 --------------------------
    
    C:\PS>$starttime = (get-date).adddays(-7)        
        
    C:\PS> $ie-error = Get-WinEvent -FilterHashtable @{logname="application"; p
    rovidername="Application Error"; data="iexplore.exe"; starttime=$starttime}
    
    
    Описание
    -----------
    В этом примере хэш-таблица фильтра используется для поиска ошибок приложени
    я Internet Explorer, произошедших в течение последней недели.
        
    Первая команда получает дату, на семь дней предшествующую текущей дате, и с
    охраняет ее в переменной $starttime.
        
    Вторая команда использует командлет Get-WinEvent с параметром FilterHashTab
    le. Ключи хэш-таблицы определяют фильтр для выбора из журнала приложений со
    бытий, записанных поставщиком ошибок приложений и содержащих фразу "iexplor
    e.exe".
        
    Ключ LogName задает журнал событий. Ключ ProviderName задает поставщик собы
    тий, ключ StartTime — начальную дату событий, а ключ Data — текст в сообщен
    ии события.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=138336
    Get-EventLog 
    Get-Counter 
    about_EventLogs 



Get-WmiObject

ИМЯ
    Get-WmiObject
    
ОПИСАНИЕ
    Получает экземпляры классов WMI или сведения о доступных классах.
    
СИНТАКСИС
    Get-WmiObject [-Authority <string>] [-Amended] [-AsJob] [-Authentication {D
    efault | None | Connect | Call | Packet | PacketIntegrity | PacketPrivacy |
     Unchanged}] [-ComputerName <string[]>] [-Credential <PSCredential>] [-Enab
    leAllPrivileges] [-Impersonation {Default | Anonymous | Identify | Imperson
    ate | Delegate}] [-Locale <string>] [-Namespace <string>] [-ThrottleLimit 
    int>] [<CommonParameters>]
    
    Get-WmiObject [[-Class] <string>] [-Authority <string>] [-List] [-Recurse] 
    [-Amended] [-AsJob] [-Authentication {Default | None | Connect | Call | Pac
    ket | PacketIntegrity | PacketPrivacy | Unchanged}] [-ComputerName <string[
    ]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {De
    fault | Anonymous | Identify | Impersonate | Delegate}] [-Locale <string>] 
    [-Namespace <string>] [-ThrottleLimit <int>] [<CommonParameters>]
    
    Get-WmiObject [-Authority <string>] [-Amended] [-AsJob] [-Authentication {D
    efault | None | Connect | Call | Packet | PacketIntegrity | PacketPrivacy |
     Unchanged}] [-ComputerName <string[]>] [-Credential <PSCredential>] [-Enab
    leAllPrivileges] [-Impersonation {Default | Anonymous | Identify | Imperson
    ate | Delegate}] [-Locale <string>] [-Namespace <string>] [-ThrottleLimit 
    int>] [<CommonParameters>]
    
    Get-WmiObject [-Class] <string> [[-Property] <string[]>] [-Authority <strin
    g>] [-DirectRead] [-Filter <string>] [-Amended] [-AsJob] [-Authentication {
    Default | None | Connect | Call | Packet | PacketIntegrity | PacketPrivacy 
    | Unchanged}] [-ComputerName <string[]>] [-Credential <PSCredential>] [-Ena
    bleAllPrivileges] [-Impersonation {Default | Anonymous | Identify | Imperso
    nate | Delegate}] [-Locale <string>] [-Namespace <string>] [-ThrottleLimit 
    <int>] [<CommonParameters>]
    
    Get-WmiObject -Query <string> [-Authority <string>] [-DirectRead] [-Amended
    ] [-AsJob] [-Authentication {Default | None | Connect | Call | Packet | Pac
    ketIntegrity | PacketPrivacy | Unchanged}] [-ComputerName <string[]>] [-Cre
    dential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {Default | A
    nonymous | Identify | Impersonate | Delegate}] [-Locale <string>] [-Namespa
    ce <string>] [-ThrottleLimit <int>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-WmiObject отображает экземпляры классов WMI или сведения о до
    ступных классах WMI. Параметр ComputerName всегда можно использовать для ук
    азания удаленного компьютера. При задании параметра List этот командлет изв
    лекает сведения о классах WMI, доступных в заданном пространстве имен. При 
    указании параметра Query командлет запускает инструкцию языка запросов WMI 
    (WQL).
      
    Командлет Get-WmiObject не использует инфраструктуру удаленного взаимодейст
    вия Windows PowerShell для выполнения удаленных операций. Параметр Computer
    Name командлета Get-WmiObject можно использовать, даже если компьютер не со
    ответствует требованиям для удаленного взаимодействия Windows PowerShell и 
    не настроен на удаленное взаимодействие в Windows PowerShell.
    
ПАРАМЕТРЫ
    -Amended [<SwitchParameter>]
        Получает или задает значение, указывающее, должны ли возвращаемые из хр
        анилища WMI объекты содержать уточняющую информацию. Как правило, уточн
        яющая информация представляет собой прикрепленные к объекту WMI локализ
        уемые сведения, например описание объекта и его свойств.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -AsJob [<SwitchParameter>]
        Запускает команду в качестве фонового задания. Этот параметр служит для
         запуска команд, выполнение которых занимает длительное время.
        
        При использовании параметра AsJob команда возвращает объект, представля
        ющий фоновое задание, а затем отображает командную строку. Пока задание
         выполняется можно продолжать работу в сеансе. Если командлет Get-WmiOb
        ject используется для работы с удаленным компьютером, задание создается
         на локальном компьютере, и результаты с удаленных компьютеров автомати
        чески возвращаются на локальный компьютер. Для управления заданием испо
        льзуйте командлеты, в именах которых содержится существительное Job (ко
        мандлеты Job). Чтобы получить результаты задания, используйте командлет
         Receive-Job.
        
        Примечание. Чтобы использовать этот параметр для удаленных компьютеров,
         для локального и удаленного компьютеров должно быть настроено удаленно
        е взаимодействие. Кроме того, при работе с компьютером под управлением 
        Windows Vista и более поздних версий Windows необходимо запускать Windo
        ws PowerShell командой "Запуск от имени администратора". Дополнительные
         сведения см. в разделе about_Remote_Requirements.
        
        Дополнительные сведения о фоновых заданиях в Windows PowerShell см. в р
        азделах about_Jobs и about_Remote_Jobs.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authentication <AuthenticationLevel>
        Задает уровень проверки подлинности, используемый для WMI-соединения. Д
        опустимые значения:
        
        -1: Unchanged
        0: Default
        1: None (проверка подлинности не используется).
        2: Connect (проверка подлинности выполняется только при установке клиен
        том подключения к приложению).
        3: Call (проверка подлинности выполняется только в начале каждого вызов
        а при получении запроса приложением).
        4: Packet (проверка подлинности выполняется при обработке всех данных, 
        полученных от клиента).
        5: PacketIntegrity (для всех данных, передаваемых между клиентом и прил
        ожением, проводится проверка подлинности и проверка целостности).
        6: PacketPrivacy (используются свойства других уровней проверки подлинн
        ости, все данные шифруются).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authority <string>
        Задает центр, который используется для проверки подлинности WMI-соедине
        ния. Можно указать стандартную проверку подлинности NTLM или Kerberos. 
        Чтобы использовать NTLM, задайте для параметра Authority значение "ntlm
        domain:<имя_домена>", где <имя_домена> — допустимое имя домена NTLM. Чт
        обы использовать Kerberos, укажите "kerberos:<имя_домена>\<имя_сервера>
        ". При подключении к локальному компьютеру нельзя использовать параметр
         Authority.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Class <string>
        Задает имя класса WMI. При использовании данного параметра командлет из
        влекает экземпляры класса WMI.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string[]>
        Задает компьютер, к которому требуется применить операцию управления. З
        начение может быть полным доменным именем, именем NetBIOS или IP-адресо
        м. Используйте имя локального компьютера, "localhost" или точку (.) что
        бы указать "Локальный компьютер". Локальный компьютер используется по у
        молчанию. Если пользователь и удаленный компьютер находятся в разных до
        менах, необходимо использовать полное доменное имя. Значение этого пара
        метра также может передаваться командлету по конвейеру.
         
        Этот параметр не использует функцию удаленного взаимодействия Windows P
        owerShell, которая использует протокол WS-Management. Параметр Computer
        Name командлета Get-WmiObject можно использовать, даже если компьютер н
        е настроен на выполнение удаленных команд по протоколу WS-Management.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". Введите имя пользователя, например "User01", "Domain01\
        User01" или User@Contoso.com. Или укажите объект PSCredential, например
         объект, возвращенный командлетом Get-Credential. При вводе имени польз
        ователя появится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -DirectRead [<SwitchParameter>]
        Определяет, будет ли запрашиваться прямой доступ к поставщику WMI для у
        казанного класса независимо от его базового класса или производных от н
        его классов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -EnableAllPrivileges [<SwitchParameter>]
        Включает все привилегии текущего пользователя перед вызовом WMI из кома
        нды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает предложение Where, используемое в качестве фильтра. Использует с
        интаксис языка запросов WMI (WQL). 
        
        Важно Ключевое слово "Where" не должно включаться в значение параметра
        . Например, следующие команды возвращают только логические диски, у кот
        орых свойство DeviceID имеет значение "c:", и службы с именем "WinRM", 
        при этом ключевое слово "Where" не используется. 
        
        get-WmiObject Win32_LogicalDisk -filter "DeviceID = 'c:' " 
        get-wmiobject win32_service -filter "name='WinRM'"
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Impersonation <ImpersonationLevel>
        Задает используемый уровень олицетворения. Допустимые значения: 
        
        0: Default (считывает значение уровня представления по умолчанию из лок
        ального реестра, обычно это значение равняется "3: Impersonate").
        1: Anonymous (скрывает учетные данные вызывающего).
        2: Identify (позволяет объектам запрашивать учетные данные вызывающего)
        .
        3: Impersonate (позволяет объектам использовать учетные данные вызывающ
        его).
        4: Delegate (позволяет объектам разрешать другим объектам использовать 
        учетные данные вызывающего).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -List [<SwitchParameter>]
        Указывает, извлекаются ли и отображаются ли имена классов WMI пространс
        тва имен хранилища WMI, заданного значением параметра Namespace. Этот к
        омандлет не использует запись реестра Default Namespace раздела "HKEY_L
        OCAL_MACHINE\SOFTWARE\Microsoft\WBEM\Scripting" для определения простра
        нства имен по умолчанию. Если указан параметр List и при этом не указан
         параметр Namespace, по умолчанию используется пространство имен root\C
        IMV2.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Locale <string>
        Задает предпочтительную локаль для объектов WMI. Задает значение параме
        тра Locale как массив в формате MS_<LCID> в желаемом порядке.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Namespace <string>
        При использовании с параметром Class данный параметр задает пространств
        о имен хранилища WMI, в котором находится указанный класс WMI. При испо
        льзовании с параметром List данный параметр задает пространство имен, и
        з которого следует извлекать сведения о классе WMI.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Property <string[]>
        Задает свойство или набор свойств класса WMI, которые необходимо извлеч
        ь.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Query <string>
        Задает выполняемую инструкцию языка запросов WMI (WQL). Этот параметр н
        е поддерживает запрос событий.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Recurse [<SwitchParameter>]
        Указывает команде выполнять поиск имени класса, заданного параметром Cl
        ass, в текущем пространстве имен и других пространствах имен.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ThrottleLimit <int>
        Дает возможность пользователю указать пороговое значение количества опе
        раций WMI, которые могут выполняться одновременно. Этот параметр исполь
        зуется вместе с параметром AsJob.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Данные невозможно передать командлету Get-WmiObject по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    PSObject или System.Management.Automation.RemotingJob
        Если задан параметр AsJob, командлет возвращает объект задания. В проти
        вном случае командлет Get-WmiObject возвращает объект в зависимости от 
        параметра Class.
    
    
ПРИМЕЧАНИЯ
    
    
        Для получения доступа к сведениям WMI на удаленном компьютере с помощью
         командлета необходимо, чтобы запускающий его пользователь входил на уд
        аленном компьютере в группу "Администраторы". Также можно изменить пара
        метры управления доступом к пространству имен WMI удаленного хранилища,
         заданные по умолчанию, чтобы предоставить права доступа другой учетной
         записи.
        
        По умолчанию отображаются только некоторые свойства класса WMI. Набор о
        тображаемых свойств для каждого класса WMI задается в файле конфигураци
        и Types.ps1xml. В одном из прилагаемых к настоящему разделу справки при
        меров показано, как переопределить это поведение при помощи командлета 
        Format-List.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-wmiobject win32_process
    
    
    __GENUS                    : 2
    __CLASS                    : Win32_Process
    __SUPERCLASS               : CIM_Process
    __DYNASTY                  : CIM_ManagedSystemElement
    __RELPATH                  : Win32_Process.Handle="0"
    __PROPERTY_COUNT           : 45
    __DERIVATION               : {CIM_Process, CIM_LogicalElement, CIM_ManagedS
    ystemElement}
    __SERVER                   : SYSTEM01
    __NAMESPACE                : root\cimv2
    __PATH                     : \\SYSTEM01\root\cimv2:Win32_Process.Handle="0"
    Caption                    : System Idle Process
    CommandLine                :
    CreationClassName          : Win32_Process
    CreationDate               :
    CSCreationClassName        : Win32_ComputerSystem
    CSName                     : SYSTEM01
    Description                : System Idle Process
    ExecutablePath             :
    ExecutionState             :
    Handle                     : 0
    HandleCount                : 0
    InstallDate                :
    KernelModeTime             : 6138394740432
    MaximumWorkingSetSize      :
    MinimumWorkingSetSize      :
    Name                       : System Idle Process
    OSCreationClassName        : Win32_OperatingSystem
    OSName                     : Microsoftr Windows VistaT Ultimate |C:\Windows
    |\Device\Harddisk0\Partition3
    OtherOperationCount        : 0
    OtherTransferCount         : 0
    PageFaults                 : 0
    PageFileUsage              : 0
    ParentProcessId            : 0
    PeakPageFileUsage          : 0
    PeakVirtualSize            : 0
    PeakWorkingSetSize         : 0
    Priority                   : 0
    PrivatePageCount           : 0
    ProcessId                  : 0
    QuotaNonPagedPoolUsage     : 0
    QuotaPagedPoolUsage        : 0
    QuotaPeakNonPagedPoolUsage : 0
    QuotaPeakPagedPoolUsage    : 0
    ReadOperationCount         : 0
    ReadTransferCount          : 0
    SessionId                  : 0
    Status                     :
    TerminationDate            :
    ThreadCount                : 2
    UserModeTime               : 0
    VirtualSize                : 0
    WindowsVersion             : 6.0.6001
    WorkingSetSize             : 24576
    WriteOperationCount        : 0
    WriteTransferCount         : 0
    ProcessName                : System Idle Process
    Handles                    : 0
    VM                         : 0
    WS                         : 24576
    Path                       :
    
    ...
    
    
    Описание
    -----------
    Эта команда отображает сведения о всех процессах, выполняющихся на компьюте
    ре.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-wmiobject win32_service -computername 127.0.0.1
    
    __GENUS                    : 2
    __CLASS                    : Win32_Process
    __SUPERCLASS               : CIM_Process
    __DYNASTY                  : CIM_ManagedSystemElement
    __RELPATH                  : Win32_Process.Handle="0"
    __PROPERTY_COUNT           : 45
    __DERIVATION               : {CIM_Process, CIM_LogicalElement, CIM_ManagedS
    ystemElement}
    __SERVER                   : SYSTEM02
    __NAMESPACE                : root\cimv2
    __PATH                     : \\SYSTEM02\root\cimv2:Win32_Process.Handle="0"
    Caption                    : System Idle Process
    CommandLine                :
    CreationClassName          : Win32_Process
    CreationDate               :
    CSCreationClassName        : Win32_ComputerSystem
    CSName                     : SYSTEM02
    Description                : System Idle Process
    ExecutablePath             :
    ExecutionState             :
    Handle                     : 0
    HandleCount                : 0
    InstallDate                :
    KernelModeTime             : 6138394740432
    MaximumWorkingSetSize      :
    MinimumWorkingSetSize      :
    Name                       : System Idle Process
    OSCreationClassName        : Win32_OperatingSystem
    OSName                     : Microsoftr Windows VistaT Ultimate |C:\Windows
    |\Device\Harddisk0\Partition3
    OtherOperationCount        : 0
    OtherTransferCount         : 0
    PageFaults                 : 0
    PageFileUsage              : 0
    ParentProcessId            : 0
    PeakPageFileUsage          : 0
    PeakVirtualSize            : 0
    PeakWorkingSetSize         : 0
    Priority                   : 0
    PrivatePageCount           : 0
    ProcessId                  : 0
    QuotaNonPagedPoolUsage     : 0
    QuotaPagedPoolUsage        : 0
    QuotaPeakNonPagedPoolUsage : 0
    QuotaPeakPagedPoolUsage    : 0
    ReadOperationCount         : 0
    ReadTransferCount          : 0
    SessionId                  : 0
    Status                     :
    TerminationDate            :
    ThreadCount                : 2
    UserModeTime               : 0
    VirtualSize                : 0
    WindowsVersion             : 6.0.6001
    WorkingSetSize             : 24576
    WriteOperationCount        : 0
    WriteTransferCount         : 0
    ProcessName                : System Idle Process
    Handles                    : 0
    VM                         : 0
    WS                         : 24576
    Path                       :
    
    ...
    
    
    Описание
    -----------
    Эта команда отображает сведения о службах на удаленном компьютере. Отобража
    емая информация задается путем указания IP-адреса 127.0.0.1. Указанный IP-а
    дрес можно заменить на любой другой допустимый IP-адрес в сети. В результат
    е будут показаны сведения о службах на заданном удаленном компьютере. По ум
    олчанию пользователь, запускающий команду, должен входить в группу "Админис
    траторы" на удаленном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-wmiobject -namespace "root/default" -list
    
    
       NameSpace: ROOT\default
    
    Name                                Methods              Properties
    ----                                -------              ----------
    __NotifyStatus                      {}                   {StatusCode}
    __ExtendedStatus                    {}                   {Description, Oper
    ation, ParameterInfo, ProviderName...}
    __SecurityRelatedClass              {}                   {}
    __Trustee                           {}                   {Domain, Name, SID
    , SidLength...}
    __NTLMUser9X                        {}                   {Authority, Flags,
     Mask, Name...}
    __ACE                               {}                   {AccessMask, AceFl
    ags, AceType, GuidInheritedObjectType...}
    __SecurityDescriptor                {}                   {ControlFlags, DAC
    L, Group, Owner...}
    __PARAMETERS                        {}                   {}
    __SystemClass                       {}                   {}
    __ProviderRegistration              {}                   {provider}
    __EventProviderRegistration         {}                   {EventQueryList, p
    rovider}
    __ObjectProviderRegistration        {}                   {InteractionType, 
    provider, QuerySupportLevels, SupportsBat...
    __ClassProviderRegistration         {}                   {CacheRefreshInter
    val, InteractionType, PerUserSchema, prov...
    __InstanceProviderRegistration      {}                   {InteractionType, 
    provider, QuerySupportLevels, SupportsBat...
    __MethodProviderRegistration        {}                   {provider}
    __PropertyProviderRegistration      {}                   {provider, Support
    sGet, SupportsPut}
    __EventConsumerProviderRegistration {}                   {ConsumerClassName
    s, provider}
    __thisNAMESPACE                     {}                   {SECURITY_DESCRIPT
    OR}
    __NAMESPACE                         {}                   {Name}
    __IndicationRelated                 {}                   {}
    __FilterToConsumerBinding           {}                   {Consumer, Creator
    SID, DeliverSynchronously, DeliveryQoS...}
    __EventConsumer                     {}                   {CreatorSID, Machi
    neName, MaximumQueueSize}
    LogFileEventConsumer                {}                   {CreatorSID, Filen
    ame, IsUnicode, MachineName...}
    ActiveScriptEventConsumer           {}                   {CreatorSID, KillT
    imeout, MachineName, MaximumQueueSize...}
    NTEventLogEventConsumer             {}                   {Category, Creator
    SID, EventID, EventType...}
    SMTPEventConsumer                   {}                   {BccLine, CcLine, 
    CreatorSID, FromLine...}
    CommandLineEventConsumer            {}                   {CommandLineTempla
    te, CreateNewConsole, CreateNewProcessGro...
    __AggregateEvent                    {}                   {NumberOfEvents, R
    epresentative}
    __TimerNextFiring                   {}                   {NextEvent64BitTim
    e, TimerId}
    __EventFilter                       {}                   {CreatorSID, Event
    Access, EventNamespace, Name...}
    __Event                             {}                   {SECURITY_DESCRIPT
    OR, TIME_CREATED}
    __NamespaceOperationEvent           {}                   {SECURITY_DESCRIPT
    OR, TargetNamespace, TIME_CREATED}
    __NamespaceModificationEvent        {}                   {PreviousNamespace
    , SECURITY_DESCRIPTOR, TargetNamespace, T...
    __NamespaceDeletionEvent            {}                   {SECURITY_DESCRIPT
    OR, TargetNamespace, TIME_CREATED}
    __NamespaceCreationEvent            {}                   {SECURITY_DESCRIPT
    OR, TargetNamespace, TIME_CREATED}
    __ClassOperationEvent               {}                   {SECURITY_DESCRIPT
    OR, TargetClass, TIME_CREATED}
    __ClassDeletionEvent                {}                   {SECURITY_DESCRIPT
    OR, TargetClass, TIME_CREATED}
    __ClassModificationEvent            {}                   {PreviousClass, SE
    CURITY_DESCRIPTOR, TargetClass, TIME_CREA...
    __ClassCreationEvent                {}                   {SECURITY_DESCRIPT
    OR, TargetClass, TIME_CREATED}
    __InstanceOperationEvent            {}                   {SECURITY_DESCRIPT
    OR, TargetInstance, TIME_CREATED}
    __InstanceCreationEvent             {}                   {SECURITY_DESCRIPT
    OR, TargetInstance, TIME_CREATED}
    
    ...
    
    
    Описание
    -----------
    Эта команда отображает список классов WMI в пространстве имен root/default 
    на локальном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-wmiobject -query "select * from win32_service where name='WinRM'"
     -computername server01, server02
    
    ExitCode  : 0
    Name      : WinRM
    ProcessId : 1708
    StartMode : Auto
    State     : Running
    Status    : OK
    
    ExitCode  : 0
    Name      : WinRM
    ProcessId : 948
    StartMode : Auto
    State     : Running
    Status    : OK
    
    
    Описание
    -----------
    Эта команда отображает информацию о службе WinRM на компьютерах, заданных п
    араметром ComputerName.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>(get-wmiobject win32_service -filter "name='WinRM'" -computername ser
    ver01).StopService()
    
    __GENUS          : 2
    __CLASS          : __PARAMETERS
    __SUPERCLASS     :
    __DYNASTY        : __PARAMETERS
    __RELPATH        :
    __PROPERTY_COUNT : 1
    __DERIVATION     : {}
    __SERVER         :
    __NAMESPACE      :
    __PATH           :
    ReturnValue      : 0
    
    Another query using get-wmiobject -query "select * from win32_service where
     name='WinRM'" -computername server01, shows the service as stopped.
    
    ExitCode  : 0
    Name      : WinRM
    ProcessId : 0
    StartMode : Auto
    State     : Stopped
    Status    : OK
    
    
    Описание
    -----------
    Эта команда останавливает службу WinRM на удаленном компьютере Server01. Ис
    пользуется стандартная команда Get-WmiObject и добавляется вызов метода Sto
    pService класса Win32_Service WMI.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-wmiobject win32_bios | format-list *
    
    Status                : OK
    Name                  : Phoenix ROM BIOS PLUS Version 1.10 2.3.1
    Caption               : Phoenix ROM BIOS PLUS Version 1.10 2.3.1
    SMBIOSPresent         : True
    __GENUS               : 2
    __CLASS               : Win32_BIOS
    __SUPERCLASS          : CIM_BIOSElement
    __DYNASTY             : CIM_ManagedSystemElement
    __RELPATH             : Win32_BIOS.Name="Phoenix ROM BIOS PLUS Version 1.10
     2.3.1 ",SoftwareElementID="Phoenix ROM BIOS
                             PLUS Version 1.10 2.3.1 ",SoftwareElementState=3,T
    argetOperatingSystem=0,Version="DELL   - 14"
    __PROPERTY_COUNT      : 27
    __DERIVATION          : {CIM_BIOSElement, CIM_SoftwareElement, CIM_LogicalE
    lement, CIM_ManagedSystemElement}
    __SERVER              : SERVER01
    __NAMESPACE           : root\cimv2
    __PATH                : \\SERVER01\root\cimv2:Win32_BIOS.Name="Phoenix ROM 
    BIOS PLUS Version 1.10 2.3.1 ",Software
                            ElementID="Phoenix ROM BIOS PLUS Version 1.10 2.3.1
     ",SoftwareElementState=3,TargetOperatingSys
                            tem=0,Version="DELL   - 14"
    BiosCharacteristics   : {7, 9, 10, 11...}
    BIOSVersion           : {DELL   - 14, Phoenix ROM BIOS PLUS Version 1.10 2.
    3.1 , Phoenix ROM BIOS PLUS Version 1.10 2.3
                            .1 , Phoenix ROM BIOS PLUS Version 1.10 2.3.1 }
    BuildNumber           :
    CodeSet               :
    CurrentLanguage       : en|US|iso8859-1
    Description           : Phoenix ROM BIOS PLUS Version 1.10 2.3.1
    IdentificationCode    :
    InstallableLanguages  : 1
    InstallDate           :
    LanguageEdition       :
    ListOfLanguages       : {en|US|iso8859-1}
    Manufacturer          : Dell Inc.
    OtherTargetOS         :
    PrimaryBIOS           : True
    ReleaseDate           : 20070521000000.000000+000
    SerialNumber          : 8PWRVD1
    SMBIOSBIOSVersion     : 2.3.1
    SMBIOSMajorVersion    : 2
    SMBIOSMinorVersion    : 3
    SoftwareElementID     : Phoenix ROM BIOS PLUS Version 1.10 2.3.1
    SoftwareElementState  : 3
    TargetOperatingSystem : 0
    Version               : DELL   - 14
    Scope                 : System.Management.ManagementScope
    Path                  : \\SERVER01\root\cimv2:Win32_BIOS.Name="Phoenix ROM 
    BIOS PLUS Version 1.10 2.3.1 ",Software
                            ElementID="Phoenix ROM BIOS PLUS Version 1.10 2.3.1
     ",SoftwareElementState=3,TargetOperatingSys
                            tem=0,Version="DELL   - 14"
    Options               : System.Management.ObjectGetOptions
    ClassPath             : \\SERVER01\root\cimv2:Win32_BIOS
    Properties            : {BiosCharacteristics, BIOSVersion, BuildNumber, Cap
    tion...}
    SystemProperties      : {__GENUS, __CLASS, __SUPERCLASS, __DYNASTY...}
    Qualifiers            : {dynamic, Locale, provider, UUID}
    Site                  :
    Container             :
    
    
    Описание
    -----------
    Эта команда отображает сведения о BIOS. Она отображает все свойства класса 
    WMI, а не только перечисленные в файле конфигурации Types.ps1xml.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-wmiobject win32_service -credential FABRIKAM\administrator -compu
    ter fabrikam
    
    ExitCode  : 0
    Name      : AeLookupSvc
    ProcessId : 0
    StartMode : Manual
    State     : Stopped
    Status    : OK
    
    ExitCode  : 1077
    Name      : ALG
    ProcessId : 0
    StartMode : Manual
    State     : Stopped
    Status    : OK
    
    ExitCode  : 1077
    Name      : AppIDSvc
    ProcessId : 0
    StartMode : Manual
    State     : Stopped
    Status    : OK
    
    ExitCode  : 0
    Name      : Appinfo
    ProcessId : 888
    StartMode : Manual
    State     : Running
    Status    : OK
    
    ExitCode  : 1077
    Name      : AppMgmt
    ProcessId : 0
    StartMode : Manual
    State     : Stopped
    Status    : OK
    
    ...
    
    
    Описание
    -----------
    Эта команда отображает сведения о службах на компьютере с именем "Fabrikam"
    . В данной команде с помощью параметра Credential указывается учетная запис
    ь пользователя, в результате чего выводится диалоговое окно, в котором нужн
    о ввести соответствующий пароль.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113337
    Invoke-WmiMethod 
    Remove-WmiObject 
    Set-WmiInstance 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManInstance 
    Remove-WSManInstance 



Get-WSManCredSSP

ИМЯ
    Get-WSManCredSSP
    
ОПИСАНИЕ
    Получает связанную с поставщиком услуг безопасности конфигурацию для клиент
    а.
    
СИНТАКСИС
    Get-WSManCredSSP [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-WSManCredSPP получает связанную с поставщиком услуг безопасно
    сти конфигурацию клиента и сервера. В выходных данных указывается, включена
     или отключена проверка подлинности поставщика услуг безопасности CredSSP. 
    Также отображаются сведения о конфигурации для политики CredSSP AllowFreshC
    redentials. При использовании проверки подлинности CredSSP учетные данные п
    ользователя передаются для проверки подлинности на удаленный компьютер. Это
    т тип проверки подлинности предназначен для команд, которые создают удаленн
    ый сеанс из другого удаленного сеанса. Например, он используется в случаях,
     когда требуется запустить фоновое задание на удаленном компьютере.
    
    Командлет выполняет следующие операции:
    
        - Получает значение параметра CredSSP поставщика WS-Management на клиен
    те (<localhost|имя_компьютера>\Client\Auth\CredSSP).
        - Получает значение политики AllowFreshCredentials Windows CredSSP.
        - Получает значение параметра CredSSP поставщика WS-Management на серве
    ре (<localhost|имя_компьютера>\Service\Auth\CredSSP).
    
    Внимание При проверке подлинности CredSSP учетные данные пользователя деле
    гируются с локального компьютера на удаленный компьютер. Такой подход повыш
    ает угрозы безопасности удаленных операций. Если безопасность удаленного ко
    мпьютера нарушена, при передаче на него учетных данных эти данные могут быт
    ь использованы для управления сетевым сеансом.
    
    Для отключения проверки подлинности CredSSP используйте командлет Disable-W
    SManCredSSP. Для включения проверки подлинности CredSSP используйте командл
    ет Enable-WSManCredSSP.
    
ПАРАМЕТРЫ
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает никаких входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-wsmancredssp
    
    
    Описание
    -----------
    Эта команда отображает сведения о конфигурации CredSSP для клиента и для се
    рвера.
    
    В выходных данных указывается, настроен ли данный компьютер на использовани
    е CredSSP.
    
    Если компьютер настроен на использование CredSSP, выходные данные выглядят 
    следующим образом:
    
    "Параметры компьютера позволяют делегировать новые учетные данные следующим
     конечным объектам: wsman/server02.accounting.fabrikam.com"
    
    Если компьютер не настроен на использование CredSSP, выходные данные выгляд
    ят следующим образом:
    
    "Параметры компьютера не позволяют делегировать новые учетные данные."
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkId=141443
    Connect-WSMan 
    Disable-WSManCredSSP 
    Disconnect-WSMan 
    Enable-WSManCredSSP 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManInstance 
    New-WSManSessionOption 
    Remove-WSManInstance 
    Set-WSManInstance 
    Set-WSManQuickConfig 
    Test-WSMan 



Get-WSManInstance

ИМЯ
    Get-WSManInstance
    
ОПИСАНИЕ
    Отображает сведения об управлении для экземпляра ресурса, заданного URI рес
    урса.
    
СИНТАКСИС
    Get-WSManInstance -SelectorSet <hashtable> [-ApplicationName <string>] [-Co
    mputerName <string>] [-Credential <PSCredential>] [-Fragment <string>] [-Po
    rt <int>] [-UseSSL] [-ResourceURI] <Uri> [-Authentication <Authentication>]
     [-Dialect <Uri>] [-OptionSet <hashtable>] [-SessionOption <hashtable>] [
    ommonParameters>]
    
    Get-WSManInstance [-ApplicationName <string>] [-BasePropertiesOnly <switch>
    ] [-ComputerName <string>] [-Credential <PSCredential>] [-Enumerate] [-filt
    er <string>] [-Port <int>] [-References <switch>] [-ReturnType 
    Shallow <switch>] [-UseSSL] [-ResourceURI] <Uri> [-Authentication <Authenti
    cation>] [-Dialect <Uri>] [-OptionSet <hashtable>] [-SessionOption <hashtab
    le>] [<CommonParameters>]
    
    Get-WSManInstance -ConnectionURI <Uri> -SelectorSet <hashtable> [-Fragment 
    <string>] [-ResourceURI] <Uri> [-Authentication <Authentication>] [-Dialect
     <Uri>] [-OptionSet <hashtable>] [-SessionOption <hashtable>] [
    eters>]
    
    Get-WSManInstance -ConnectionURI <Uri> [-BasePropertiesOnly <switch>] [-Enu
    merate] [-filter <string>] [-References <switch>] [-ReturnType <string>] [-
    Shallow <switch>] [-ResourceURI] <Uri> [-Authentication <Authentication>] [
    -Dialect <Uri>] [-OptionSet <hashtable>] [-SessionOption <hashtable>] [
    monParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-WSManInstance извлекает экземпляр ресурса управления, заданно
    го URI ресурса. Извлекаемые сведения могут быть сложным информационным набо
    ром (объектом) XML или простым значением. Этот командлет эквивалентен станд
    артной команде WS-Management Get.
    
    Для извлечения сведений командлет использует уровень соединений/транспорта 
    WS-Management.
    
ПАРАМЕТРЫ
    -ApplicationName <string>
        Задает имя приложения для подключения. По умолчанию параметр Applicatio
        nName имеет значение "WSMAN". Полный идентификатор удаленной конечной т
        очки имеет следующий формат:
        
              <протокол>://<сервер>:<порт>/
        
        Пример:
        
              http://server01:8080/WSMAN
        
        Службы IIS, которые обрабатывают сеанс, перенаправляют запросы с данной
         конечной точкой указанному приложению. Значение по умолчанию "WSMAN" п
        одходит для большинства случаев. Этот параметр предназначен для использ
        ования, когда большое число компьютеров устанавливают удаленные подключ
        ения к одному компьютеру, на котором работает Windows PowerShell. В это
        м случае для повышения эффективности веб-службы WS-Management размещают
        ся в службах IIS.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                wsman
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authentication <Authentication>
        Задает механизм проверки подлинности, используемый на сервере. Возможны
        е значения:
        
        - Basic: при использовании схемы Basic имя пользователя и пароль переда
        ются серверу или прокси-серверу открытым текстом.
        - Default: использовать метод проверки подлинности, реализованный прото
        колом WS-Management. Это значение используется по умолчанию.
        - Digest: при использовании схемы Digest проверка подлинности проводитс
        я по принципу "запрос-ответ". В качестве запроса поступает строка данны
        х, указанная сервером.
        - Kerberos: выполняется взаимная проверка подлинности компьютера и серв
        ера с использованием сертификатов Kerberos.
        - Negotiate: при использовании схемы Negotiate между компьютером и серв
        ером или прокси происходит обмен данными по принципу "запрос-ответ", в 
        ходе которого определяется схема, используемая для проверки подлинности
        . Например, это значение параметра разрешает согласование одного из дву
        х методов проверки подлинности: Kerberos или NTLM.
        - CredSSP: использовать проверку подлинности CredSSP (Credential Securi
        ty Service Provider), при которой пользователю разрешается делегировать
         учетные данные. Этот вариант предназначен для команд, которые запускаю
        тся на одном удаленном компьютере, но собирают данные с других удаленны
        х компьютеров или выполняют на них дополнительные команды. 
        
        Внимание При проверке подлинности CredSSP учетные данные пользователя 
        делегируются с локального компьютера на удаленный компьютер. Такой подх
        од повышает угрозы безопасности удаленных операций. Если безопасность у
        даленного компьютера нарушена, при передаче на него учетных данных эти 
        данные могут быть использованы для управления сетевым сеансом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Default
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -BasePropertiesOnly <switch>
        Перечисляет только те свойства, которые принадлежат базовому классу, за
        данному параметром ResourceURI. Этот параметр не учитывается, если опре
        делен параметр Shallow.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string>
        Задает компьютер, к которому требуется применить операцию управления. З
        начение может быть полным доменным именем, именем NetBIOS или IP-адресо
        м. Чтобы задать локальный компьютер, введите имя компьютера, "localhost
        " или точку (.). Локальный компьютер используется по умолчанию. Если по
        льзователь и удаленный компьютер находятся в разных доменах, необходимо
         использовать полное доменное имя. Значение этого параметра можно перед
        ать командлету по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                localhost
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ConnectionURI <Uri>
        Задает конечную точку соединения. Строка имеет следующий формат: 
        
             <протокол>://<сервер>:<порт>/
        
        Следующая строка представляет собой правильно отформатированное значени
        е для этого параметра: 
        
             http://Server01:8080/WSMAN 
        
        Значение URI должно быть указано полностью.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". Введите имя пользователя, например "User01", "Domain01\
        User01" или "User@Domain.com". Или укажите объект PSCredential, наприме
        р возвращенный командлетом Get-Credential. При вводе имени пользователя
         появится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Dialect <Uri>
        Задает диалект, который должен использоваться в предикате фильтра. Это 
        может быть любой диалект, поддерживаемый удаленной службой. Для URI диа
        лекта можно использовать следующие псевдонимы:
        
        - WQL: http://schemas.microsoft.com/wbem/wsman/1/WQL 
        - Selector: http://schemas.microsoft.com/wbem/wsman/1/wsman/SelectorFil
        ter
        - Association: http://schemas.dmtf.org/wbem/wsman/1/cimbinding/associat
        ionFilter
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                http://schemas.microsoft.com/wbem/
        wsman/1/WQL
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Enumerate [<SwitchParameter>]
        Возвращает все экземпляры ресурса управления.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -filter <string>
        Задает критерий фильтра для перечисления. Если используется этот параме
        тр, необходимо также указать параметр Dialect. 
        
        Допустимые значения этого параметра зависят от заданного значения парам
        етра Dialect. Например, если для параметра Dialect установлено значение
         "WQL", параметр Filter должен содержать строку, содержащую допустимый 
        запрос WQL, например:
        
             "Select * from Win32_Service where State = Running"
        
        Если для параметра Dialect установлено значение" Association", параметр
         Filter должен содержать строку, содержащую допустимый фильтр, например
        :
        
        -filter:Object=EPR[;AssociationClassName=AssocClassName][;ResultClassNa
        me=ClassName][;Role=RefPropertyName][;ResultRole=RefPropertyName]}
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Fragment <string>
        Задает раздел внутри экземпляра, который будет обновлен или извлечен ук
        азанной операцией. Например, для получения состояния службы очереди печ
        ати укажите "-Fragment Status".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -OptionSet <hashtable>
        Передает службе набор параметров для изменения или уточнения запроса. П
        ередаваемые параметры похожи на параметры, используемые в оболочках ком
        андной строки: они зависят от конкретной службы. Можно задать произволь
        ное количество параметров. 
        
        В следующем примере показано синтаксическое выражение, позволяющее пере
        дать значения 1, 2 и 3 параметрам a, b и c соответственно:
        
              -OptionSet @{a=1;b=2;c=3}
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Port <int>
        Задает порт, используемый клиентом для подключения к службе WinRM. Если
         в качестве транспорта выбран HTTP, по умолчанию используется порт 80. 
        Если в качестве транспорта выбран HTTPS, по умолчанию используется порт
         443. При использовании в качестве транспорта HTTPS значение параметра 
        ComputerName должно соответствовать общему имени сертификата сервера. О
        днако, если в качестве элемента параметра SessionOption указан параметр
         SkipCNCheck, общее имя сертификата сервера не обязательно должно соотв
        етствовать имени узла сервера. Параметр SkipCNCheck следует использоват
        ь только в случае доверенных компьютеров.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -References <switch>
        Указывает, что необходимо извлечь экземпляры ассоциации вместо ассоциир
        ованных экземпляров. Этот параметр можно использовать только в случае, 
        если для параметра Dialect установлено значение "Association".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ResourceURI <Uri>
        Содержит универсальный идентификатор ресурса (URI) экземпляра или класс
        а ресурса. URI используется для определения конкретного типа ресурса, н
        апример диска или процесса, на компьютере. 
        
        URI состоит из префикса и пути к ресурсу. Пример: 
        
             http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Log
        icalDisk
             http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSenso
        r
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -ReturnType <string>
        Указывает тип возвращаемых данных. Допустимые значения:
        
            Object (используется по умолчанию;)
            EPR;
            ObjectAndEPR.
        
        Если задано значение Object или этот параметр не используется, возвраща
        ются только объекты. Если задано значение EPR, возвращаются только ссыл
        ки на конечные точки объектов. Ссылки на конечные точки содержат информ
        ацию о URI ресурса и селекторах экземпляра. Если задано значение Object
        AndEPR, возвращаются как объект, так и связанные с ним ссылки на конечн
        ые точки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Object
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SelectorSet <hashtable>
        Задает набор пар значений, которые используются для выбора конкретных э
        кземпляров ресурса управления. Параметр SelectorSet используется в случ
        ае существования нескольких экземпляров ресурса. Значение параметра Sel
        ectorSet представляет собой хэш-таблицу. 
        
        В следующем примере показано, как задать значение для этого параметра: 
        
            -SelectorSet @{Name="WinRM";ID="yyy"}
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SessionOption <hashtable>
        Определяет расширенные параметры сеанса WS-Management. Введите объект S
        essionOption, созданный с помощью командлета New-WSManSessionOption. До
        полнительные сведения о доступных параметрах см. в разделе New-WSManSes
        sionOption.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Shallow <switch>
        Обеспечивает возврат только экземпляров базового класса, указанного в U
        RI ресурса. Если этот переключатель не указан, возвращаются экземпляры 
        базового класса, указанного в URI, и экземпляры всех производных классо
        в этого класса.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseSSL [<SwitchParameter>]
        Указывает, что для установки подключения к удаленному компьютеру должен
         использоваться протокол SSL (Secure Sockets Layer). По умолчанию SSL н
        е используется. 
        
        Протокол WS-Management шифрует все передаваемое по сети содержимое Wind
        ows PowerShell. Параметр UseSSL позволяет указать, что необходимо испол
        ьзовать дополнительную меру защиты: протокол HTTPS вместо HTTP. Если ук
        азан этот параметр, однако используемый для подключения порт не поддерж
        ивает SSL, команда завершается с ошибкой.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает никаких входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Xml.XmlElement
        Командлет Get-WSManInstance формирует объект XMLElement.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-wsmaninstance wmicimv2/win32_service -selectorset @{name="winrm"}
     -computername server01
    
    xsi                     : http://www.w3.org/2001/XMLSchema-instance
    p                       : http://schemas.microsoft.com/wbem/wsman/1/wmi/roo
    t/cimv2/Win32_Service
    cim                     : http://schemas.dmtf.org/wbem/wscim/1/common
    type                    : p:Win32_Service_Type
    lang                    : en-US
    AcceptPause             : false
    AcceptStop              : true
    Caption                 : Windows Remote Management (WS-Management)
    CheckPoint              : 0
    CreationClassName       : Win32_Service
    Description             : Windows Remote Management (WinRM) service impleme
    nts the WS-Management protocol for remote 
                              management. WS-Management is a standard web servi
    ces protocol used for remote software and 
                              hardware management. The WinRM service listens on
     the network for WS-Management requests 
                              and processes them. The WinRM Service needs to be
     configured with a listener using the 
                              winrm.cmd command line tool or through Group Poli
    cy in order for it to listen over the 
                              network. The WinRM service provides access to WMI
     data and enables event collection. Event 
                              collection and subscription to events require tha
    t the service is running. WinRM messages 
                              use HTTP and HTTPS as transports. The WinRM servi
    ce does not depend on IIS but is 
                              preconfigured to share a port with IIS on the sam
    e machine.  The WinRM service reserves the
                              /wsman URL prefix. To prevent conflicts with IIS,
     administrators should ensure that any 
                              websites hosted on IIS do not use the /wsman URL 
    prefix.
    DesktopInteract         : false
    DisplayName             : Windows Remote Management (WS-Management)
    ErrorControl            : Normal
    ExitCode                : 0
    InstallDate             : InstallDate
    Name                    : winrm
    PathName                : C:\Windows\System32\svchost.exe -k NetworkService
    ProcessId               : 948
    ServiceSpecificExitCode : 0
    ServiceType             : Share Process
    Started                 : true
    StartMode               : Auto
    StartName               : NT AUTHORITY\NetworkService
    State                   : Running
    Status                  : OK
    SystemCreationClassName : Win32_ComputerSystem
    SystemName              : SERVER01
    TagId                   : 0
    WaitHint                : 0
    
    
    Описание
    -----------
    Эта команда возвращает все предоставляемые инструментарием управления Windo
    ws (WMI) сведения о службе WinRM на удаленном компьютере server01.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-wsmaninstance wmicimv2/win32_service -selectorset @{name="spooler
    "} -fragment status -computername server01
    
    XmlFragment=OK
    
    
    Описание
    -----------
    Эта команда возвращает только состояние службы очереди печати на удаленном 
    компьютере server01.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-wsmaninstance -enumerate wmicimv2/win32_process 
    
    OSName                     : Microsoft Windows Vista Ultimate |C:\Windows|\
    Device\Harddisk0\Partition3
    OtherOperationCount        : 11441
    OtherTransferCount         : 428570
    PageFaults                 : 27346
    PageFileUsage              : 16428
    ParentProcessId            : 604
    PeakPageFileUsage          : 17588
    PeakVirtualSize            : 93876224
    PeakWorkingSetSize         : 12472
    Priority                   : 8
    PrivatePageCount           : 16822272
    ProcessId                  : 1160
    QuotaNonPagedPoolUsage     : 14
    QuotaPagedPoolUsage        : 126
    QuotaPeakNonPagedPoolUsage : 16
    QuotaPeakPagedPoolUsage    : 159
    ReadOperationCount         : 29568
    ReadTransferCount          : 1660581404
    SessionId                  : 0
    Status                     : Status
    TerminationDate            : TerminationDate
    ThreadCount                : 23
    UserModeTime               : 763156892
    VirtualSize                : 80846848
    WindowsVersion             : 6.0.6001
    WorkingSetSize             : 11624448
    WriteOperationCount        : 1913
    WriteTransferCount         : 6825768
    
    xsi                        : http://www.w3.org/2001/XMLSchema-instance
    p                          : http://schemas.microsoft.com/wbem/wsman/1/wmi/
    root/cimv2/Win32_Process
    cim                        : http://schemas.dmtf.org/wbem/wscim/1/common
    type                       : p:Win32_Process_Type
    lang                       : en-US
    Caption                    : svchost.exe
    CommandLine                : C:\Windows\System32\svchost.exe -k LocalSystem
    NetworkRestricted
    CreationClassName          : Win32_Process
    CreationDate               : CreationDate
    CSCreationClassName        : Win32_ComputerSystem
    CSName                     : COMPUTER01
    Description                : svchost.exe
    ExecutablePath             : C:\Windows\System32\svchost.exe
    ExecutionState             : ExecutionState
    Handle                     : 1192
    HandleCount                : 832
    
    ...
    
    
    Описание
    -----------
    Эта команда возвращает все экземпляры класса WMI Win32_Process на локальном
     компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-wsmaninstance -enumerate wmicimv2/win32_service -returntype epr
    
    xsi                     : http://www.w3.org/2001/XMLSchema-instance
    p                       : http://schemas.microsoft.com/wbem/wsman/1/wmi/roo
    t/cimv2/Win32_Service
    cim                     : http://schemas.dmtf.org/wbem/wscim/1/common
    type                    : p:Win32_Service_Type
    lang                    : en-US
    AcceptPause             : false
    AcceptStop              : false
    Caption                 : Visual Studio 2008 Remote Debugger
    CheckPoint              : 0
    CreationClassName       : Win32_Service
    Description             : Allows members of the Administrators group to rem
    otely debug server applications using Visual
                               Studio 2008. Use the Visual Studio 2008 Remote D
    ebugging Configuration Wizard to enable this
                               service.
    DesktopInteract         : false
    DisplayName             : Visual Studio 2008 Remote Debugger
    ErrorControl            : Ignore
    ExitCode                : 1077
    InstallDate             : InstallDate
    Name                    : msvsmon90
    PathName                : "C:\Program Files\Microsoft Visual Studio 9.0\Com
    mon7\IDE\Remote Debugger\x86\msvsmon.exe" /s
                              ervice msvsmon90
    ProcessId               : 0
    ServiceSpecificExitCode : 0
    ServiceType             : Own Process
    Started                 : false
    StartMode               : Disabled
    StartName               : LocalSystem
    State                   : Stopped
    Status                  : OK
    SystemCreationClassName : Win32_ComputerSystem
    SystemName              : COMPUTER01
    TagId                   : 0
    WaitHint                : 0
    
    ...
    
    
    Описание
    -----------
    Эта команда возвращает ссылки на конечные точки, соответствующие всем служб
    ам на локальном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>Get-WSManInstance -Enumerate wmicimv2/* -filter "select * from win32_
    service where StartMode = 'Auto' and State = 'Stopped'" -computername serve
    r01
    
    xsi                     : http://www.w3.org/2001/XMLSchema-instance
    p                       : http://schemas.microsoft.com/wbem/wsman/1/wmi/roo
    t/cimv2/Win32_Service
    cim                     : http://schemas.dmtf.org/wbem/wscim/1/common
    type                    : p:Win32_Service_Type
    lang                    : en-US
    AcceptPause             : false
    AcceptStop              : false
    Caption                 : Windows Media Center Service Launcher
    CheckPoint              : 0
    CreationClassName       : Win32_Service
    Description             : Starts Windows Media Center Scheduler and Windows
     Media Center Receiver services 
                              at startup if TV is enabled within Windows Media 
    Center.
    DesktopInteract         : false
    DisplayName             : Windows Media Center Service Launcher
    ErrorControl            : Ignore
    ExitCode                : 0
    InstallDate             : InstallDate
    Name                    : ehstart
    PathName                : C:\Windows\system32\svchost.exe -k LocalServiceNo
    Network
    ProcessId               : 0
    ServiceSpecificExitCode : 0
    ServiceType             : Share Process
    Started                 : false
    StartMode               : Auto
    StartName               : NT AUTHORITY\LocalService
    State                   : Stopped
    Status                  : OK
    SystemCreationClassName : Win32_ComputerSystem
    SystemName              : Server01
    TagId                   : 0
    WaitHint                : 0
    
    ...
    
    
    Описание
    -----------
    Эта команда выводит список всех служб на удаленном компьютере server01, удо
    влетворяющих следующим критериям:
    
       - тип запуска службы — "Авто";
       - служба остановлена.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-wsmaninstance winrm/config/listener -selectorset @{Address="*";Tr
    ansport="http"}
    
    cfg                   : http://schemas.microsoft.com/wbem/wsman/1/config/li
    stener
    xsi                   : http://www.w3.org/2001/XMLSchema-instance
    lang                  : en-US
    Address               : *
    Transport             : HTTP
    Port                  : 80
    Hostname              :
    Enabled               : true
    URLPrefix             : wsman
    CertificateThumbprint :
    ListeningOn           : {100.0.0.1, 123.123.123.123, ::1, 2001:4898:0:fff:0
    :5efe:123.123.123.123...}
    
    
    Описание
    -----------
    Эта команда выводит конфигурацию прослушивателя WS-Management на локальном 
    компьютере для прослушивателя, удовлетворяющего критериям в наборе селектор
    ов.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-wsmaninstance winrm/config/listener -selectorset @{Address="*";Tr
    ansport="http"} -computername server01
    
    cfg                   : http://schemas.microsoft.com/wbem/wsman/1/config/li
    stener
    xsi                   : http://www.w3.org/2001/XMLSchema-instance
    lang                  : en-US
    Address               : *
    Transport             : HTTP
    Port                  : 80
    Hostname              :
    Enabled               : true
    URLPrefix             : wsman
    CertificateThumbprint :
    ListeningOn           : {100.0.0.1, 123.123.123.124, ::1, 2001:4898:0:fff:0
    :5efe:123.123.123.124...}
    
    
    Описание
    -----------
    Эта команда выводит конфигурацию прослушивателя WS-Management на удаленном 
    компьютере server01 для прослушивателя, удовлетворяющего критериям в наборе
     селекторов.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>Get-WSManInstance -Enumerate -Dialect association -filter "{Object=wi
    n32_service?name=winrm}" -res wmicimv2/*
    
    xsi                       : http://www.w3.org/2001/XMLSchema-instance
    p                         : http://schemas.microsoft.com/wbem/wsman/1/wmi/r
    oot/cimv2/Win32_ComputerSystem
    cim                       : http://schemas.dmtf.org/wbem/wscim/1/common
    type                      : p:Win32_ComputerSystem_Type
    lang                      : en-US
    AdminPasswordStatus       : 1
    AutomaticManagedPagefile  : true
    AutomaticResetBootOption  : true
    AutomaticResetCapability  : true
    BootOptionOnLimit         : BootOptionOnLimit
    BootOptionOnWatchDog      : BootOptionOnWatchDog
    BootROMSupported          : true
    BootupState               : Normal boot
    Caption                   : SERVER01
    ChassisBootupState        : 3
    CreationClassName         : Win32_ComputerSystem
    CurrentTimeZone           : -480
    DaylightInEffect          : false
    Description               : AT/AT COMPATIBLE
    DNSHostName               : server01
    Domain                    : site01.corp.fabrikam.com
    DomainRole                : 1
    EnableDaylightSavingsTime : true
    FrontPanelResetStatus     : 2
    InfraredSupported         : false
    InstallDate               : InstallDate
    KeyboardPasswordStatus    : 2
    LastLoadInfo              : LastLoadInfo
    Manufacturer              : Dell Inc.
    Model                     : OptiPlex 745
    Name                      : SERVER01
    NameFormat                : NameFormat
    NetworkServerModeEnabled  : true
    NumberOfLogicalProcessors : 2
    NumberOfProcessors        : 1
    OEMStringArray            : www.dell.com
    PartOfDomain              : true
    PauseAfterReset           : -1
    PCSystemType              : 5
    PowerManagementSupported  : PowerManagementSupported
    PowerOnPasswordStatus     : 1
    PowerState                : 0
    PowerSupplyState          : 3
    PrimaryOwnerContact       : PrimaryOwnerContact
    PrimaryOwnerName          : testuser01
    ResetCapability           : 1
    ResetCount                : -1
    ResetLimit                : -1
    Roles                     : {LM_Workstation, LM_Server, SQLServer, NT}
    Status                    : OK
    SystemStartupDelay        : SystemStartupDelay
    SystemStartupSetting      : SystemStartupSetting
    SystemType                : X86-based PC
    ThermalState              : 3
    TotalPhysicalMemory       : 3217760256
    UserName                  : FABRIKAM\testuser01
    WakeUpType                : 6
    Workgroup                 : Workgroup
    
    xsi                     : http://www.w3.org/2001/XMLSchema-instance
    p                       : http://schemas.microsoft.com/wbem/wsman/1/wmi/roo
    t/cimv2/Win32_Service
    cim                     : http://schemas.dmtf.org/wbem/wscim/1/common
    type                    : p:Win32_Service_Type
    lang                    : en-US
    AcceptPause             : false
    AcceptStop              : false
    Caption                 : Remote Procedure Call (RPC)
    CheckPoint              : 0
    CreationClassName       : Win32_Service
    Description             : Serves as the endpoint mapper and COM Service Con
    trol Manager. If this service is stopped 
                              or disabled, programs using COM or Remote Procedu
    re Call (RPC) services will not function 
                              properly.
    DesktopInteract         : false
    DisplayName             : Remote Procedure Call (RPC)
    ErrorControl            : Normal
    ExitCode                : 0
    InstallDate             : InstallDate
    Name                    : RpcSs
    PathName                : C:\Windows\system32\svchost.exe -k rpcss
    ProcessId               : 1100
    ServiceSpecificExitCode : 0
    ServiceType             : Share Process
    Started                 : true
    StartMode               : Auto
    StartName               : NT AUTHORITY\NetworkService
    State                   : Running
    Status                  : OK
    SystemCreationClassName : Win32_ComputerSystem
    SystemName              : SERVER01
    TagId                   : 0
    WaitHint                : 0
    
    xsi                     : http://www.w3.org/2001/XMLSchema-instance
    p                       : http://schemas.microsoft.com/wbem/wsman/1/wmi/roo
    t/cimv2/Win32_SystemDriver
    cim                     : http://schemas.dmtf.org/wbem/wscim/1/common
    type                    : p:Win32_SystemDriver_Type
    lang                    : en-US
    AcceptPause             : false
    AcceptStop              : true
    Caption                 : HTTP
    CreationClassName       : Win32_SystemDriver
    Description             : HTTP
    DesktopInteract         : false
    DisplayName             : HTTP
    ErrorControl            : Normal
    ExitCode                : 0
    InstallDate             : InstallDate
    Name                    : HTTP
    PathName                : C:\Windows\system32\drivers\HTTP.sys
    ServiceSpecificExitCode : 0
    ServiceType             : Kernel Driver
    Started                 : true
    StartMode               : Manual
    StartName               :
    State                   : Running
    Status                  : OK
    SystemCreationClassName : Win32_ComputerSystem
    SystemName              : SERVER01
    TagId                   : 0
    
    
    Описание
    -----------
    Эта команда получает ассоциированные экземпляры, связанные с заданным экзем
    пляром (winrm).
    
    Важно: фильтр должен быть заключен в кавычки, как показано в этом примере.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>Get-WSManInstance -Enumerate -Dialect association -References -filter
     "{Object=win32_service?name=winrm}" -res wmicimv2/*
    
    
    Описание
    -----------
    Эта команда получает экземпляры ассоциации, связанные с заданным экземпляро
    м (winrm). Поскольку для параметра Dialect установлено значение "associatio
    n" и используется параметр Reference, команда возвращает экземпляры ассоциа
    ции, а не ассоциированные экземпляры.
    
    Важно: фильтр должен быть заключен в кавычки, как показано в этом примере.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkId=141444
    Connect-WSMan 
    Disable-WSManCredSSP 
    Disconnect-WSMan 
    Enable-WSManCredSSP 
    Get-WSManCredSSP 
    Invoke-WSManAction 
    New-WSManInstance 
    New-WSManSessionOption 
    Remove-WSManInstance 
    Set-WSManInstance 
    Set-WSManQuickConfig 
    Test-WSMan 



Group-Object

ИМЯ
    Group-Object
    
ОПИСАНИЕ
    Группирует объекты, в которых указанные свойства имеют одно и то же значени
    е.
    
СИНТАКСИС
    Group-Object [-AsHashTable] [-AsString] [[-Property] <Object[]>] [-CaseSens
    itive] [-Culture <string>] [-InputObject <psobject>] [-NoElement] [<CommonP
    arameters>]
    
    
ОПИСАНИЕ
    Командлет Group-Object отображает объекты в виде групп, построенных на осно
    вании значений заданных свойств. Командлет Group-Object возвращает таблицу,
     каждая строка которой соответствует одному значению свойства, а в столбце 
    отображается количество элементов с этим значением.
    
    Если задать более одного свойства, командлет Group-Object сначала сгруппиру
    ет их по значениям первого свойства, а затем, внутри каждой из групп свойст
    в, по значениям следующего свойства.
    
ПАРАМЕТРЫ
    -AsHashTable [<SwitchParameter>]
        Возвращает группу в форме хэш-таблицы.  Ключами хэш-таблицы являются зн
        ачения свойств, по которым группируются объекты. Значениями хэш-таблицы
         являются объекты, имеющие это значение свойства.
        
        Сам по себе параметр AsHashTable возвращает каждую хэш-таблицу, в котор
        ой ключи являются экземплярами группируемых объектов. При использовании
         с параметром AsString ключи хэш-таблицы являются строками.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Объект GroupInfo
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -AsString [<SwitchParameter>]
        Преобразует ключи хэш-таблицы в строки. По умолчанию ключами хэш-таблиц
        ы являются экземпляры группируемых объектов. Этот параметр допустим тол
        ько при использовании с параметром AsHashTable.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Объекты GroupInfo
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CaseSensitive [<SwitchParameter>]
        Включает группировку с учетом регистра. Без указания этого параметра ре
        гистры значений свойств объектов в одной группе могут различаться.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Culture <string>
        Задает культуру, используемую при сравнении строк.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объекты, включаемые в группу. Введите переменную, содержащую объ
        екты, либо команду или выражение для получения объектов.
        
        Если для передачи коллекции объектов командлету Group-Object использует
        ся параметр InputObject, командлет Group-Object получает один объект, п
        редставляющий коллекцию. В результате он создает одну группу, элементом
         которой является этот объект.
        
        Чтобы сгруппировать объекты в коллекции, передайте их командлету Group-
        Object с помощью конвейера.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -NoElement [<SwitchParameter>]
        Исключает элементы группы из результатов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Property <Object[]>
        Задает свойства для группировки. Объекты объединяются в группы на основ
        ании значения заданного свойства.
        
        Значение параметра Property может быть новым вычисляемым свойством. Что
        бы создать вычисляемое свойство, создайте хэш-таблицу с ключом Expressi
        on, задающим строковое значение или блок скрипта.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету Group-Object по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.GroupInfo или System.Collections.Hashtable
        Если задан параметр AsHashTable, командлет Group-Object возвращает хэш-
        таблицу. В противном случае он возвращает объект GroupInfo.
    
    
ПРИМЕЧАНИЯ
    
    
        Для группировки объектов можно также использовать параметр GroupBy кома
        ндлетов форматирования (например, Format-Table [m2] или Format-List [m2
        ]). В отличие от командлета Group-Object, создающего единую таблицу, в 
        которой каждому значению свойства соответствует отдельная строка, парам
        етры GroupBy создают для каждого значения свойства отдельную таблицу, в
         строках которой указываются элементы, обладающие свойством с заданным 
        значением.
        
        Командлет Group-Object не требует, чтобы группируемые объекты относилис
        ь к одному типу Microsoft .NET Framework. При группировке объектов разл
        ичных типов .NET Framework командлет Group-Object использует следующие 
        правила.
        
        -- Одинаковые имена и типы свойств. Если у объектов имеется свойство с 
        заданным именем, а значения этого свойства относятся к одному типу .NET
         Framework, значения свойства группируются по тем же правилам, по котор
        ым группировались бы объекты одного типа.
        
        -- Одинаковые имена свойств, различные типы. Если у объектов имеется св
        ойство с заданным именем, но значения этих свойств в разных объектах пр
        инадлежат к различным типам .NET Framework, командлет Group-Object испо
        льзует в качестве типа .NET Framework для группы свойств тип первого вх
        ождения данного свойства. Если у объекта имеется свойство другого типа,
         значение этого свойства преобразуется к типу данной группы. Если преоб
        разование типов выполнить не удается, объект не включается в данную гру
        ппу.
        
        -- Отсутствующие свойства. Объекты, в которых нет указанного свойства, 
        считаются негруппируемыми. В итоговом объекте GroupInfo такие объекты о
        тносятся к группе с именем AutomationNull.Value.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-childitem *.doc | group-object -property length
    
    
    Описание
    -----------
    Эта команда получает DOC-файлы в текущем местоположении, группируя их по ра
    змеру.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-childitem | sort-object -property extension | group-object -prope
    rty extension
    
    
    Описание
    -----------
    Эта команда получает файлы в текущем местоположении, сортирует их по расшир
    ению имени файла и группирует их по расширению имени файла. Обратите вниман
    ие, что файлы сортируются до группировки.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>1..35 | group-object -property {$_ % 2},{$_ % 3}
    
    
    Описание
    -----------
    В этом примере показано, как использовать в качестве значения параметра Pro
    perty блоки скрипта. 
    
    Эта команда отображает целые числа от 1 до 35, группируя их по остатку от д
    еления на 2 или 3.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$events = get-eventlog -logname system -newest 1000 
    
    C:\PS> $events | group-object -property eventID 
    
    Count Name                      Group
    ----- ----                      -----
       44 Information               {System.Diagnostics.EventLogEntry,
        5 Error                     {System.Diagnostics.EventLogEntry,
        1 Warning                   {System.Diagnostics.EventLogEntry}
    
    
    Описание
    -----------
    Эта команда отображает 1000 последних записей в журнале системных событий, 
    сгруппированных по идентификатору события. 
    
    Первая команда получает события с помощью командлета Get-EventLog, а затем 
    с помощью оператора присваивания (=) сохраняет их в переменной $events. 
    
    Вторая команда с помощью оператора конвейера (|) передает события из переме
    нной $events в командлет Group-Object. Чтобы указать, что события должны гр
    уппироваться в соответствии со значением свойства EventID, команда использу
    ет параметр Property. 
    
    При отображении результатов в столбце Count указывается число элементов в к
    аждой группе, в столбце Name — значения EventID, определяющие группу, а в с
    толбце Group — объекты каждой из групп.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-process | group-object -property priorityclass
    
    Count Name                Group
    ----- ----                -----
       55 Normal              {System.Diagnostics.Process (AdtAgent), System.Di
    agnostics.Process (alg), System.Dia...
        1                     {System.Diagnostics.Process (Idle)}
        3 High                {System.Diagnostics.Process (Newproc), System.Dia
    gnostics.Process (winlogon), System.D... 
        2 BelowNormal         {System.Diagnostics.Process (winperf),  
    
    
    C:\PS>get-process | group-object -property company -noelement
    Count Name
    ----- ----
       55 Normal
        1
        3 High
        2 BelowNormal
    
    
    Описание
    -----------
    В этом примере показано действие параметра NoElement. Эти команды группирую
    т процессы на компьютере по их классу приоритета.
    
    Первая команда с помощью командлета Get-Process получает выполняющиеся на к
    омпьютере процессы. С помощью оператора конвейера (|) она передает результа
    ты в командлет Group-Object, который группирует объекты по значению свойств
    а PriorityClass процесса.
    
    Вторая команда идентична первой, но она использует параметр NoElement, чтоб
    ы исключить из результатов элементы группы. Результатом выполнения команды 
    является таблица, в которой указаны только имена значений свойства и число 
    соответствующих элементов.
    
    Результаты показаны в следующем примере выходных данных.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-eventlog -logname system -newest 1000 | group-object -property {$
    _.TimeWritten - $_.TimeGenerated}
    
    
    Описание
    -----------
    Эта команда показывает, как задать значение параметра Property с помощью бл
    ока скрипта.
    
    Эта команда отображает 1000 последних записей в журнале системных событий, 
    сгруппированных по интервалу между моментом создания записи и моментом ее с
    охранения в журнале. 
    
    Эта команда с помощью командлета Get-EventLog получает текущие записи из жу
    рнала событий. Эти записи передаются командлету Group-Object с помощью опер
    атора конвейера (|). Значение параметра Property указано как блок скрипта (
    выражение в фигурных скобках). Результатом обработки блока скрипта является
     интервал между временем создания записи и временем ее сохранения в журнале
    . Вычисленное значение используется для группировки 1000 последних событий.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-childitem | group-object extension -noelement 
    
    Count Name
    ----- ----
       21
       82 .txt
        9 .cmd
        5 .log
       12 .xml
        5 .htm
       36 .ps1
        1 .psc1
        3 .exe
        6 .csv
        1 .psd1
        2 .bat
    
    
    Описание
    -----------
    Эта команда группирует элементы в текущем каталоге по расширению имени файл
    а. Параметр NoElement используется для исключения элементов групп.
    
    Результаты показаны в следующем примере выходных данных.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>"a", "b", "c", "c", "d" | get-unique
    
    a
    b
    c
    d
    
    C:\PS> "a", "b", "c", "c", "d" | group-object -noelement | where {$_.Count 
    -gt 1}
    Count Name
    ----- ----
        2 c
    
    C:\PS> get-process | group-object -property Name -noelement | where {$_.cou
    nt -gt 1}
    Count Name
    ----- ----
        2 csrss
        5 svchost
        2 winlogon
        2 wmiprvse
    
    
    Описание
    -----------
    В этом примере показано, как находить в коллекции уникальные и неуникальные
     (повторяющиеся) значения свойств. 
    
    Первая команда получает уникальные элементы массива путем передачи массива 
    командлету Get-Unique по конвейеру.
    
    Вторая команда получает неуникальные элементы массива. Она по конвейеру пер
    едает массив командлету Group-Object, который группирует объекты по значени
    ю. Получаемые группы по конвейеру передаются командлету Where-Object, котор
    ый выбирает объекты, относящиеся к группам с более чем одним элементом.
    
    Третья команда демонстрирует практическое применение такого подхода. Она ис
    пользует этот метод для обнаружения на компьютере процессов с одинаковыми и
    менами.
    
    Результаты показаны в следующем примере выходных данных.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>$a = get-command get-*, set-* -type cmdlet | group-object -property v
    erb -ashashtable -asstring
    
    C:\PS> $a 
    
    Name    Value
    ----    -----
    Get     {Get-PSCallStack, Get-PSBreakpoint, Get-PSDrive, Get-PSSession...}
    Set     {Set-Service, Set-StrictMode, Set-PSDebug, Set-PSSessionConfigurati
    on...}
    
    C:\PS> $a.get
    
    CommandType     Name                 Definition
    -----------     ----                 ----------
    Cmdlet          Get-PSCallStack      Get-PSCallStack [-Verbose] [-Debug] [-
    ErrorAction <ActionPrefer...
    Cmdlet          Get-PSBreakpoint     Get-PSBreakpoint [[-Id] <Int32[]>] [-V
    erbose] [-Debug] [-ErrorA...
    Cmdlet          Get-PSDrive          Get-PSDrive [[-Name] <String[]>] [-Sco
    pe <String>] [-PSProvider...
    ...
    
    
    Описание
    -----------
    В этом примере параметры AsHashTable и AsString используются для возврата г
    рупп в хэш-таблице, т. е. в виде набора пар "ключ-значение". 
    
    В полученной хэш-таблице каждое значение свойства является ключом, а элемен
    ты групп — значениями. Поскольку каждый ключ является свойством объекта хэш
    -таблицы, для отображения значений можно использовать обращение через точку
    .
    
    Первая команда получает командлеты Get и Set в сеансе, группирует их по наз
    начению, возвращает группы в виде хэш-таблицы и сохраняет хэш-таблицу в пер
    еменной $a. 
    
    Вторая команда отображает хэш-таблицу из переменной $a. В ней имеется две п
    ары "ключ-значение": первая для командлетов Get и вторая для командлетов Se
    t.
    
    В третьей команде с помощью обращения через точку отображаются значения клю
    ча Get в переменной $a. Эти значения являются объектами CmdletInfo. Парамет
    р AsString не преобразует объекты в группах в строки.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113338



help

ИМЯ
    Get-Help
    
ОПИСАНИЕ
    Отображает сведения о командах и концепциях Windows PowerShell.
    
СИНТАКСИС
    Get-Help [-Full] [[-Name] <string>] [-Category <string[]>] [-Component <str
    ing[]>] [-Functionality <string[]>] [-Online] [-Path <string>] [-Role <stri
    ng[]>] [<CommonParameters>]
    
    Get-Help [-Detailed] [[-Name] <string>] [-Category <string[]>] [-Component 
    <string[]>] [-Functionality <string[]>] [-Online] [-Path <string>] [-Role 
    string[]>] [<CommonParameters>]
    
    Get-Help [-Examples] [[-Name] <string>] [-Category <string[]>] [-Component 
    <string[]>] [-Functionality <string[]>] [-Online] [-Path <string>] [-Role 
    string[]>] [<CommonParameters>]
    
    Get-Help [-Parameter <string>] [[-Name] <string>] [-Category <string[]>] [-
    Component <string[]>] [-Functionality <string[]>] [-Online] [-Path <string>
    ] [-Role <string[]>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Get-Help выводит сведения о командах и концепциях Windows PowerSh
    ell, в том числе командлетах, поставщиках, функциях и скриптах. Чтобы просм
    отреть полный список разделов справки по командлетам, введите команду "get-
    help *". 
    
    Если команда "Get-Help" введена с указанием точного имени раздела справки и
    ли слова, являющегося уникальным признаком раздела справки, команда Get-Hel
    p отобразит содержимое указанного раздела справки. Если введено слово или ш
    аблон слова, которому соответствуют несколько заголовков разделов справки, 
    Get-Help отобразит список соответствующих заголовков. Если введено слово, к
    оторое не используется ни в одном из заголовков разделов справки, Get-Help 
    отобразит список соответствующих разделов, в содержимом которых встречается
     это слово.
    
    Кроме команды "get-help", можно вводить команды "help" или "man", позволяющ
    ие просматривать справку по экранам, или команду "<cmdlet-name> -?", котора
    я полностью соответствует команде Get-Help, но распространяется только на к
    омандлеты. 
    
    Можно отобразить весь файл справки или некоторые его разделы, например синт
    аксис, параметры или примеры. Для отображения интернет-версии файла справки
     по командлету в браузере можно использовать параметр Online. Эти параметры
     не влияют на отображение разделов справки по основным понятиям.
    
    Разделы справки по основным понятиям Windows PowerShell начинаются с префик
    са "about_", например " about_Comparison_Operators". Чтобы просмотреть спис
    ок всех разделов "about_", введите команду "get-help about_*". Чтобы просмо
    треть определенный раздел, введите команду "get-help about_<имя_раздела>", 
    например "get-help about_Comparison_Operators".
    
ПАРАМЕТРЫ
    -Category <string[]>
        Отображает справку по элементам в указанной категории. Допустимые значе
        ния: Alias, Cmdlet, Provider и HelpFile. Разделы основных сведений прин
        адлежат к категории HelpFile.
        
        Категория является свойством объекта MamlCommandHelpInfo, возвращаемого
         командлетом Get-Help. Этот параметр не влияет на отображение справки п
        о основным понятиям ("about_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Component <string[]>
        Отображает список средств с заданным значением компонента, таким как "E
        xchange". Введите имя компонента. Подстановочные знаки разрешены.
        
        Компонент является свойством объекта MamlCommandHelpInfo, возвращаемого
         командлетом Get-Help. Этот параметр не влияет на отображение справки п
        о основным понятиям ("About_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Detailed [<SwitchParameter>]
        Добавляет описания параметров и примеры к отображаемой базовой справке.
        
        Этот параметр не влияет на отображение справки по основным понятиям ("A
        bout_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Examples [<SwitchParameter>]
        Отображает только имя, краткое описание и примеры. Чтобы отобразить тол
        ько примеры, введите команду "(get-help <имя_командлета>).examples".
        
        Этот параметр не влияет на отображение справки по основным понятиям ("A
        bout_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Full [<SwitchParameter>]
        Отображает весь файл справки по командлету, включая описания параметров
         и атрибуты, примеры, сведения о типах входных и выходных объектов, а т
        акже дополнительные примечания. 
        
        Этот параметр не влияет на отображение справки по основным понятиям ("A
        bout_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Functionality <string[]>
        Отображает справку для элементов с указанной функциональностью. Введите
         функциональность. Подстановочные знаки разрешены.
        
        Функциональность является свойством объекта MamlCommandHelpInfo, возвра
        щаемого командлетом Get-Help. Этот параметр не влияет на отображение сп
        равки по основным понятиям ("About_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Запрашивает справку по указанному средству или раздел основных сведений
        .
         Введите имя командлета, поставщика, скрипта или функции, например Get-
        Member, имя раздела основных сведений, например "about_Objects", или пс
        евдоним, например "ls". Подстановочные знаки можно использовать в имена
        х командлетов и поставщиков, но их нельзя использовать при поиске разде
        лов справки для функций и скриптов.
        
        Чтобы получить справку для скрипта, который не расположен в папке, указ
        анной в переменной среды Path, введите путь и имя файла скрипта.
        
        Если введено точное название раздела справки, Get-Help отобразит содерж
        имое раздела. Если введено слово или шаблон слова, которому соответству
        ют несколько заголовков разделов справки, Get-Help отобразит список соо
        тветствующих заголовков. Если введено слово, которое не соответствует н
        и одному из заголовков разделов справки, Get-Help отобразит список соот
        ветствующих разделов, в содержимом которых встречается это слово.
        
        Имена разделов основных сведений, например about_Objects, должны указыв
        аться на английском языке даже в версиях Windows PowerShell, отличных о
        т английской.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Online [<SwitchParameter>]
        Отображает интернет-версию раздела справки в браузере по умолчанию. Это
        т параметр допустим только для разделов справки, посвященных командлета
        м, функциям и скриптам.
        
        Get-Help использует адрес в Интернете (URI), который указан в первом эл
        ементе раздела "Ссылки по теме" описания командлета, функции или скрипт
        а в справочной системе. Этот параметр работает, только если раздел спра
        вки включает URI, начинающийся на "Http" или "Https", и в системе устан
        овлен браузер. 
        
        Сведения о поддержке этой функции в собственных разделах справки см. в 
        разделе about_Comment_Based_Help и в документе "Написание справки для к
        омандлетов" (http://go.microsoft.com/fwlink/?LinkID=123415) в библиотек
        е MSDN.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Parameter <string>
        Отображает только подробные описания указанных параметров. Подстановочн
        ые знаки разрешены.
        
        Этот параметр не влияет на отображение справки по основным понятиям ("A
        bout_").
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Получает справку, в которой поясняется работа командлета по заданному п
        ути поставщика. Введите путь к поставщику Windows PowerShell.
        
        Этот параметр получает адаптированную версию раздела справки по командл
        ету, в котором описано, как этот командлет работает по указанному пути 
        поставщика Windows PowerShell. Этот параметр можно использовать только 
        для получения справки о командлете поставщика, и только если поставщик 
        включил пользовательскую версию раздела справки по командлету поставщик
        а.
        
        Чтобы открыть справку по пользовательскому командлету для пути поставщи
        ка, перейдите по пути поставщика и введите команду Get-Help, или в любо
        м расположении воспользуйтесь параметром Path команды Get-Help, чтобы з
        адать путь поставщика. Дополнительные сведения см. в разделе About_Prov
        iders.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Role <string[]>
        Отображает специальную справку по указанной роли пользователя. Введите 
        роль. Подстановочные знаки разрешены.
        
        Введите роль, которую пользователь выполняет в организации. Некоторые к
        омандлеты отображают различный текст в файлах справки в зависимости от 
        значения этого параметра. Этот параметр не влияет на справку по основны
        м командлетам.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать объекты этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String или MamlCommandHelpInfo
        Команда Get-Help возвращает раздел основных сведений в форме строки. Ес
        ли задано имя командлета, функции или скрипта, она возвращает объект Ma
        mlCommandHelpInfo. В противном случае команда Get-Help возвращает форма
        тированные представления, заданные в файле Help.Format.ps1xml каталога 
        $pshome.
    
    
ПРИМЕЧАНИЯ
    
    
        При вызове без параметров команда "Get-Help" отображает сведения о спра
        вочной системе оболочки Windows PowerShell.
        
        Полное представление справки (-full) включает таблицу со сведениями о п
        араметрах. В таблице содержатся следующие поля.
        
        -- Необходимый. Показывает, является ли параметр необходимым (да) или н
        еобязательным (нет).
        
        -- Позиция. Показывает, используется ли параметр как именованный или по
        зиционный (под номером). Позиционные параметры должны появляться в указ
        анном месте команды.
        
        -- "Именованный" означает, что параметру необходимо имя, но такой парам
        етр может появляться в любом месте команды.
        
        -- <Число> означает, что имя параметра необязательно, но при его отсутс
        твии параметр должен располагаться в месте, определяемом этим числом. Н
        апример, "2" означает, что при отсутствии имени параметра этот параметр
         должен быть вторым (2) или единственным неименованным параметром коман
        ды. Если используется имя параметра, параметр может располагаться в люб
        ом месте команды. 
        
        -- Значение по умолчанию. Значение параметра, используемое оболочкой Wi
        ndows PowerShell, если параметр не включен в команду.
        
        -- Принимает вход с конвейера. Показывает, можно ли (да) или нельзя (не
        т) посылать объекты в этот параметр по конвейеру. "По имени свойства" о
        значает, что конвейеризованный объект должен иметь свойство с тем же им
        енем, что и имя данного параметра. 
        
        -- Принимает подстановочные знаки. Показывает, может ли значение параме
        тра включать подстановочные знаки, такие как "*" и "?".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-help
    
    
    Description
    -----------
    Эта команда отображает справку по справочной системе оболочки Windows Power
    Shell.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-help *
    
    
    Description
    -----------
    Эта команда отображает список всех файлов справки в справочной системе обол
    очки Windows PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-help get-alias
    
    C:\PS>help get-alias
    
    C:\PS>get-alias -?
    
    
    Description
    -----------
    Эта команда отображает базовые сведения о командлете get-alias. Команды "Ge
    t-Help" и "-?" выводят сведения на одной странице. Команда "Help" отображае
    т сведения постранично.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-help about_*
    
    
    Description
    -----------
    Эта команда выводит список разделов основных сведений, содержащихся в справ
    ке для оболочки Windows PowerShell. Все эти разделы начинаются со строки "a
    bout_". Для вывода конкретного файла справки введите команду "get-help <имя
    _раздела>, например "get-help about_signing".
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-help ls -detailed
    
    
    Description
    -----------
    Эта команда выводит подробную справку по командлету Get-ChildItem, заданном
    у одним из своих псевдонимов "ls". Параметр Detailed требует подробного пре
    дставления файла справки, включая описания параметров и примеры. Для просмо
    тра полного файла справки по командлету воспользуйтесь параметром Full.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-help format-string -full
    
    
    Description
    -----------
    Эта команда выводит полное представление справки по командлету Format-Strin
    g. Полное представление справки включает описание параметров, примеры и таб
    лицу технических сведений о параметрах.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-help start-service -examples
    
    
    Description
    -----------
    Эта команда выводит примеры использования командлета start-service в команд
    ах Windows PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>get-help get-childitem -parameter f*
    
    
    Description
    -----------
    Эта команда выводит описания параметров командлета Get-ChildItem, которые н
    ачинаются с буквы "f" (filter и force). Чтобы просмотреть описания всех пар
    аметров, введите команду "get-help get-childitem parameter*".
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>(get-help write-output).syntax
    
    
    Description
    -----------
    Эта команда выводит только синтаксис вызова командлета Write-Output. 
    
    Синтаксис является одним из свойств объектов справки. Также доступны описан
    ие, дополнительные сведения, примеры и параметры. Чтобы определить все свой
    ства и методы объектов справки, введите команду "get-help <имя_командлета> 
    | get-member", например "get-help start-service | get member".
    
    
    
    
    
    -------------------------- ПРИМЕР 10 --------------------------
    
    C:\PS>(get-help trace-command).alertset
    
    
    Description
    -----------
    Эта команда отображает примечания о командлете. Примечания сохраняются в св
    ойстве alertSet объекта справки.
    
    В примечания включаются основные сведения и советы по использованию командл
    ета. По умолчанию примечания отображаются только при использовании параметр
    а Full команды Get-Help, но их также можно отобразить с помощью свойства al
    ertSet.
    
    
    
    
    
    -------------------------- ПРИМЕР 11 --------------------------
    
    C:\PS>get-help add-member -full | out-string -stream | select-string -patte
    rn clixml
    
    
    Description
    -----------
    В этом примере показано, как выполнить поиск слова в определенном разделе с
    правки по командлету. Эта команда выполняет поиск слова "clixml" в полной в
    ерсии раздела справки по командлету Add-Member. 
    
    Поскольку командлет Get-Help создает объект MamlCommandHelpInfo, а не строк
    у, необходимо использовать команду, преобразующую содержимое раздела в стро
    ку, например Out-String или Out-File.
    
    
    
    
    
    -------------------------- ПРИМЕР 12 --------------------------
    
    C:\PS>get-help get-member -online
    
    
    Description
    -----------
    Эта команда отображает интернет-версию раздела справки по командлету Get-Me
    mber.
    
    
    
    
    
    -------------------------- ПРИМЕР 13 --------------------------
    
    C:\PS>get-help remoting
    
    
    Description
    -----------
    Эта команда выводит список разделов, в содержимом которых встречается слово
     "remoting". 
    
    Если введено слово, которое не используется ни в одном из разделов справки,
     Get-Help отобразит список разделов, в содержимом которых встречается это с
    лово.
    
    
    
    
    
    -------------------------- ПРИМЕР 14 --------------------------
    
    C:\PS>get-help get-item -path SQLSERVER:\DataCollection
    
    NAME
        Get-Item
    
    SYNOPSIS
        Gets a collection of Server objects for the local computer and any comp
    uters to which you have made a SQL Server PowerShell connection.       
    ...
    
    C:\PS> cd SQLSERVER:\DataCollection
    C:\PS> SQLSERVER:\DataCollection> get-help get-item
    
    
    NAME
        Get-Item
    
    SYNOPSIS
        Gets a collection of Server objects for the local computer and any comp
    uters to which you have made a SQL Server PowerShell connection.       
    ...
    
    
    C:\PS> Get-Item
    
    NAME
        Get-Item
    
    SYNOPSIS
        Gets the item at the specified location.
    
    ...
    
    
    Description
    -----------
    В этом примере показано, как получить справку по командлету Get-Item, в кот
    орой поясняется использование командлета в узле DataCollection поставщика S
    QL Server Windows PowerShell.
    
    В примере демонстрируются два способа получение специальной справки по Get-
    Item. 
    
    В первой команде используется параметр Path командлета Get-Help для задания
     пути поставщика. Эта команда может вводиться в любом местоположении.
    
    Во второй команде используется командлет Set-Location (псевдоним "cd") для 
    перехода в путь поставщика. Из этого местоположения команда Get-Help возвра
    тит специальную справку по пути поставщика даже без использования параметра
     Path.
    
    Третья команда демонстрирует, что при использовании Get-Help в пути файлово
    й системы без указания параметра Path будет возвращена стандартная справка 
    по командлету Get-Item.
    
    
    
    
    
    -------------------------- ПРИМЕР 15 --------------------------
    
    C:\PS>get-help c:\ps-test\MyScript.ps1
    
    
    Description
    -----------
    Эта команда возвращает справку по скрипту MyScript.ps1. Информацию о написа
    нии разделов справки для функций и скриптов см. в разделе about_Comment_Bas
    ed_Help.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113316
    
    about_Comment_Based_Help 
    Get-Command 
    Get-PSDrive 
    Get-Member 



Import-Alias

ИМЯ
    Import-Alias
    
ОПИСАНИЕ
    Импортирует список псевдонимов из файла.
    
СИНТАКСИС
    Import-Alias [-Path] <string> [-Force] [-PassThru] [-Scope <string>] [-Conf
    irm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Import-Alias импортирует список псевдонимов из файла.
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Позволяет командлету импортировать псевдоним, который уже определен и д
        оступен только для чтения. Для отображения сведений об определенных на 
        текущий момент псевдонимах можно использовать следующую команду: 
        
        get-alias | select-object name,Options
        Если соответствующий псевдоним доступен только для чтения, значение сво
        йства Options будет включать фрагмент "ReadOnly".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий псевдоним. По умолчанию этот командле
        т не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Задает путь к файлу, включающему экспортированные сведения о псевдонима
        х. Использовать подстановочные знаки можно, но они должны разрешаться в
         одно имя.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Scope <string>
        Задает область, в которую импортируются псевдонимы. Допустимые значения
        : "Global", "Local", "Script" или номер относительно текущей области (о
        т 0 до количества областей, где 0 — текущая область, а 1 — ее родительс
        кая область). По умолчанию используется значение "Local". Дополнительны
        е сведения см. в разделе about_Scopes.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Import-Alias по конв
        ейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.AliasInfo
        Если задан параметр Passthru, командлет Import-Alias возвращает объект 
        System.Management.Automation.AliasInfo, представляющий псевдоним. В про
        тивном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>import-alias test.txt
    
    
    Описание
    -----------
    Эта команда импортирует сведения о псевдонимах из файла test.txt.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113339
    Export-Alias 
    Get-Alias 
    New-Alias 
    Set-Alias 



Import-Clixml

ИМЯ
    Import-Clixml
    
ОПИСАНИЕ
    Импортирует файл CLIXML и создает соответствующие объекты в оболочке Window
    s PowerShell.
    
СИНТАКСИС
    Import-Clixml [-Path] <string[]> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Import-Clixml импортирует файл CLIXML с данными, представляющими 
    объекты Microsoft .NET Framework, и создает объекты в Windows PowerShell.
    
ПАРАМЕТРЫ
    -Path <string[]>
        Задает расположение файлов XML, преобразуемых в объекты Windows PowerSh
        ell.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Import-Clixml по кон
        вейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    PSObject
        Командлет Import-Clixml возвращает объекты, десериализованные из сохран
        енных XML-файлов.
    
    
ПРИМЕЧАНИЯ
    
    
        При указании нескольких значений параметра разделяйте их запятыми. Напр
        имер: "<имя-параметра> <значение1>, <значение2>".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-process | export-clixml pi.xml
    
    C:\PS> $processes = import-clixml pi.xml
    
    
    Описание
    -----------
    Эта команда с помощью командлета Export-Clixml сохраняет сериализованную ко
    пию сведений о процессах, возвращенных командлетом Get-Process. Затем испол
    ьзуется командлет Import-Clixml, извлекающий содержимое сериализованного фа
    йла и воссоздающий объект, который сохраняется в переменной $processes.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113340



Import-Counter

ИМЯ
    Import-Counter
    
ОПИСАНИЕ
    Импортирует файлы журналов счетчиков производительности (BLG, CSV, TSV) и с
    оздает объекты, представляющие каждую выборку счетчика в журнале.
    
СИНТАКСИС
    Import-Counter [-Path] <string[]> [-Counter <string[]>] [-EndTime <DateTime
    >] [-MaxSamples <Int64>] [-StartTime <DateTime>] [<CommonParameters>]
    
    Import-Counter [-Path] <string[]> -ListSet <string[]> [<CommonParameters>]
    
    Import-Counter [-Path] <string[]> -Summary <switch> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Import-Counter импортирует данные счетчиков производительности из
     файлов журналов счетчиков производительности и создает объекты для каждой 
    выборки счетчика в файле. Созданные объекты PerformanceCounterSampleSet, ид
    ентичны объектам, возвращаемым командлетом Get-Counter при сборе данных сче
    тчиков производительности. 
    
    Данные можно импортировать из файлов журналов производительности в формате 
    значений, разделенных запятыми (CSV), в формате значений, разделенных табул
    яциями (TSV), и в формате двоичных журналов производительности (BLG). При и
    спользовании файлов BLG с помощью одной команды можно импортировать до 32 р
    азличных файлов. Кроме того, для фильтрации импортируемых данных можно испо
    льзовать командлет Import-Counter.
    
    С помощью этой возможности, а также командлетов Get-Counter и Export-Counte
    r, можно собирать, экспортировать, импортировать, объединять, фильтровать, 
    обрабатывать и повторно экспортировать данные счетчиков производительности 
    в оболочке Windows PowerShell.
    
ПАРАМЕТРЫ
    -Counter <string[]>
        Импортирует данные только для указанных счетчиков производительности. П
        о умолчанию командлет Import-Counter импортирует все данные для всех сч
        етчиков во входных файлах. Введите один или несколько путей счетчиков. 
        Подстановочные знаки разрешается использовать только в часть Instance п
        ути. 
        
        Путь счетчика имеет следующий формат. Обратите внимание, что значение C
        omputerName необходимо указывать в пути даже для локального компьютера.
               "\\<ComputerName>\<CounterSet>(<Instance>)\
        
        Пример: 
                "\\Server01\Processor(2)\% User Time"
                "\Processor(*)\% Processor Time
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -EndTime <DateTime>
        Импортирует только данные счетчика, штамп времени которых меньше либо р
        авен указанным дате и времени. Укажите объект DateTime, например объект
        , возвращенный командлетом Get-Date. По умолчанию командлет Import-Coun
        ter импортирует все данные счетчиков из файлов, указанных в параметре P
        ath.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ListSet <string[]>
        Получает наборы счетчиков производительности, представленные в экспорти
        рованных файлах. Команды с этим параметром не импортируют данные.
        
        Введите одно или несколько имен наборов счетчиков. Подстановочные знаки
         разрешены.  Чтобы получить все наборы счетчиков, имеющиеся в файле, вв
        едите команду "import-counter -listset *".
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -MaxSamples <Int64>
        Задает максимальное число выборок, импортируемых для каждого счетчика. 
        По умолчанию командлет Get-Counter импортирует все данные из файлов, ук
        азанных в параметре Path.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает пути к импортируемым файлам. Это обязательный параметр. 
        
        Введите путь и имя файла с расширением CSV, TSV или BLG, экспортированн
        ого с помощью командлета Export-Counter. В каждой команде можно задать 
        только один файл CSV или TSV, но несколько файлов BLG (до 32). Кроме то
        го, строки путей к файлам (в кавычках) можно по конвейеру передать в ко
        мандлет Import-Counter.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  true
        
    -StartTime <DateTime>
        Импортирует только данные счетчика, штамп времени которых больше либо р
        авен указанным дате и времени. Укажите объект DateTime, например объект
        , возвращенный командлетом Get-Date. По умолчанию командлет Import-Coun
        ter импортирует все данные счетчиков из файлов, указанных в параметре P
        ath.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Summary <switch>
        Получает сводку импортированных данных вместо получения отдельных выбор
        ок данных счетчиков.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Пути журналов счетчиков производительности можно передать в командлет I
        mport-Counter по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSet, Micro
    soft.PowerShell.Commands.GetCounter.CounterSet, Microsoft.PowerShell.Comman
    ds.GetCounter.CounterFileInfo
        По умолчанию командлет Import-Counter возвращает Microsoft.PowerShell.C
        ommands.GetCounter.PerformanceCounterSampleSet. При использовании парам
        етра ListSet командлет Import-Command возвращает объект Microsoft.Power
        Shell.Commands.GetCounter.CounterSet. При использовании параметра Summa
        ry командлет Import-Command возвращает объект Microsoft.PowerShell.Comm
        ands.GetCounter.CounterFileInfo.
    
    
ПРИМЕЧАНИЯ
    
    
        В командлете Import-Counter не предусмотрен параметр ComputerName. Одна
        ко, если компьютер настроен на удаленное взаимодействие в Windows Power
        Shell, с помощью командлета Invoke-Command можно запускать команду Impo
        rt-Counter на удаленном компьютере.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS># Import-Counter
    
    
    Описание
    -----------
    Эта команда импортирует все данные счетчиков из файла ProcessorData.csv в п
    еременную $data.
    
    C:\PS> $data = import-counter -path ProcessorData.csv
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS># Import-Counter
    
    
    Описание
    -----------
    Эта команда импортирует только данные счетчика "Processor(_total)\Interrupt
    s\sec" из файла ProcessorData.blg в переменную $i.
    
    C:\PS> $i = import-counter -path ProcessorData.blg -counter "\\SERVER01\Pro
    cessor(_Total)\Interrupts/sec"
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS># Import-Counter
    
    
    Описание
    -----------
    В этом примере показано, как выбирать данные в файле журнала счетчика произ
    водительности (BLG), а затем экспортировать выбранные данные в CSV-файл. 
    
    Первые четыре команды получают из файла пути счетчиков и сохраняют их в пер
    еменной. Последние две команды импортируют выбранные данные, а затем экспор
    тируют только выбранные данные.
    
    
    Первая команда с помощью командлета Import-Counter импортирует все данные с
    четчиков производительности из файлов ProcessorData.blg. Команда сохраняет 
    данные в переменной $data.
    
    C:\PS> $data = import-counter .\processordata.blg
    
    
    
    Вторая команда отображает пути счетчиков, сохраненные в переменной $data, в
     результатах выполнения команды.
    
    C:\PS> $data[0].countersamples | format-table path
    
    Path
    ----
    \\SERVER01\Processor(_Total)\DPC Rate
    \\SERVER01\Processor(1)\DPC Rate
    \\SERVER01\Processor(0)\DPC Rate
    \\SERVER01\Processor(_Total)\% Idle Time
    \\SERVER01\Processor(1)\% Idle Time
    \\SERVER01\Processor(0)\% Idle Time
    \\SERVER01\Processor(_Total)\% C3 Time
    \\SERVER01\Processor(1)\% C3 Time
    ...
    
    
    Третья команда получает пути счетчиков, которые заканчиваются на "Interrupt
    s/sec", и сохраняет их в переменной $IntCtrs.
    
    C:\PS> $IntCtrs = $data[0].countersamples | where {$_.path -like "*interrup
    ts/sec"} | foreach {$_.path}
    
    
    
    Четвертая команда отображает выбранные пути счетчиков.
    
    C:\PS> $IntCtrs
    
    \\SERVER01\Processor(_Total)\Interrupts/sec
    \\SERVER01\Processor(1)\Interrupts/sec
    \\SERVER01\Processor(0)\Interrupts/sec
    
    
    
    Пятая команда с помощью командлета Import-Counter импортирует данные. В ней
     используется параметр Counter с переменной $IntCtrs, чтобы импортировать д
    анные только для путей счетчиков, указанных в переменной $IntCtrs.
    
    C:\PS> $i = import-counter -path .\processordata.blg -counter $intCtrs
        
    
    
    Шестая команда с помощью командлета Export-Counter экспортирует данные. 
    
    C:\PS> $i | export-counter -path .\interrupts.csv -format CSV
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS># Import-Counter
    
    
    Описание
    -----------
    В этом примере показано, как отобразить все пути счетчиков в группе импорти
    рованных наборов счетчиков. 
    
    Первая команда с помощью параметра ListSet получает наборы счетчиков, предс
    тавленные в файле данных счетчика.
    
    C:\PS> import-counter -path processordata.csv -listset * 
    
    CounterSetName     : Processor
    MachineName        : \\SERVER01
    CounterSetType     : MultiInstance
    Description        :
    Paths              : {\\SERVER01\Processor(*)\DPC Rate, \\SERVER01\Processo
    r(*)\% Idle Time, \\SERVER01
                         \Processor(*)\% C3 Time, \\SERVER01\Processor(*)\% Int
    errupt Time...}
    PathsWithInstances : {\\SERVER01\Processor(_Total)\DPC Rate, \\SERVER01\Pro
    cessor(1)\DPC Rate, \\SERVER01
                         \Processor(0)\DPC Rate, \\SERVER01\Processor(_Total)\%
     Idle Time...}
    Counter            : {\\SERVER01\Processor(*)\DPC Rate, \\SERVER01\Processo
    r(*)\% Idle Time, \\SERVER01
                         \Processor(*)\% C3 Time, \\SERVER01\Processor(*)\% Int
    errupt Time...}
    
    
    
    Вторая команда получает все пути счетчиков из набора списка.
    
    C:\PS> import-counter -path processordata.csv -listset * | foreach {$_.path
    s}
    
    \\SERVER01\Processor(*)\DPC Rate
    \\SERVER01\Processor(*)\% Idle Time
    \\SERVER01\Processor(*)\% C3 Time
    \\SERVER01\Processor(*)\% Interrupt Time
    \\SERVER01\Processor(*)\% C2 Time
    \\SERVER01\Processor(*)\% User Time
    \\SERVER01\Processor(*)\% C1 Time
    \\SERVER01\Processor(*)\% Processor Time
    \\SERVER01\Processor(*)\C1 Transitions/sec
    \\SERVER01\Processor(*)\% DPC Time
    \\SERVER01\Processor(*)\C2 Transitions/sec
    \\SERVER01\Processor(*)\% Privileged Time
    \\SERVER01\Processor(*)\C3 Transitions/sec
    \\SERVER01\Processor(*)\DPCs Queued/sec
    \\SERVER01\Processor(*)\Interrupts/sec
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS># Import-Counter
    
    
    Описание
    -----------
    В этом примере импортируются только данные счетчиков со штампом времени в д
    иапазоне времени, указанном в команде.
    
    Первая команда составляет список штампов времени всех данных в файле Proces
    sorData.blg.
    
      C:\PS> import-counter -path .\disk.blg | format-table timestamp
    
    
    Вторая и третья команды сохраняют начальный и конечный штампы времени в пер
    еменных $start и $end. Строки преобразуются в объекты DateTime.
    
      C:\PS> $start = [datetime]"7/9/2008 3:47:00 PM"
      C:\PS> $end = [datetime]"7/9/2008 3:47:59 PM"
    
    
    Четвертая команда с помощью командлета Import-Counter получает данные счетч
    иков со штампами времени в диапазоне между начальным и конечным временами (
    включительно). Для указания диапазона времени в команде используются параме
    тры StartTime и EndTime.
    
      C:\PS> $t-data = import-counter -path disk.blg -starttime $start -endtime
     $end
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS># Import-Counter
    
    
    Описание
    -----------
    В этом примере показано, как импортировать пять самых старых и пять самых н
    овых выборок из файла журнала счетчика производительности.
    
    Первая команда использует командлет Import-Counter для импорта данных из фа
    йла Disk.blg.
     В команде используется параметр MaxSamples для ограничения числа импортиру
    емых выборок до 5. Эта команда получает первые (самые старые) пять выборок 
    из файла.
    
    C:\PS> import-counter -path disk.blg -maxSamples 5
    
    Вторая команда использует синтаксис работы с массивами и оператор диапазона
     Windows PowerShell (..) для получения последних пяти выборок счетчиков из 
    файла. Это пять самых новых выборок.
    
    C:\PS> (import-counter -path disk.blg)[-1 .. -5]
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS># Import-Counter
    
    
    Описание
    -----------
    Команда использует параметр Summary, чтобы получить сводку данных счетчика 
    из файла Memory.blg.
    
    C:\PS> import-counter D:\Samples\memory.blg -summary
    
    OldestRecord            NewestRecord            SampleCount
    ------------            ------------            -----------
    10.07.2008 14:59:18    10.07.2008 15:00:27    1000
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS># Import-Counter
    
    
    Описание
    -----------
    В этом примере обновляется файл журнала счетчиков производительности. 
    
    Первая команда с помощью параметра ListSet командлета Import-Counter получа
    ет счетчики из существующего файла журнала счетчиков OldData.blg. В команде
     используется оператор конвейера (|) для передачи данных команде Foreach-Ob
    ject, которая получает для каждого объекта только значения свойства PathsWi
    thInstances.
    
    C:\PS> $counters = import-counter olddata.blg -ListSet * | foreach {$_.Path
    sWithInstances}
    
    
    Вторая команда использует эти счетчики в новой команде Get-Counter для полу
    чения текущей выборки, а затем экспортирует ее в файл NewData.blg.
    
    C:\PS> get-counter -counter $counters -maxSamples 20 | export-counter c:\Lo
    gs\newdata.blg
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS># Import-Counter
    
    
    Описание
    -----------
    Эта команда импортирует данные из двух журналов производительности и сохран
    яет их в переменной $counters. Команда передает пути журналов производитель
    ности в командлет Import-Counter с помощью оператора конвейера. 
    
    C:\PS> $counters = "d:\test\pdata.blg", "d:\samples\netlog.blg" | import-co
    unter
    
    Обратите внимание, что каждый путь заключен в кавычки, и пути разделены зап
    ятыми.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=138338
    Get-Counter 
    Export-Counter 



Import-CSV

ИМЯ
    Import-CSV
    
ОПИСАНИЕ
    Преобразует свойства объекта из CSV-файла (с разделителями-запятыми) в CSV-
    версии исходных объектов.
    
СИНТАКСИС
    Import-CSV [[-Delimiter] <char>] [-Path] <string[]> [-Header <string[]>] [
    CommonParameters>]
    
    Import-CSV -UseCulture [-Path] <string[]> [-Header <string[]>] [<CommonPara
    meters>]
    
    
ОПИСАНИЕ
    Командлет Import-CSV создает объекты из CSV-файлов переменной длины, создан
    ных с помощью командлета Export-CSV. 
    
    Параметры командлета Import-CSV позволяют задать строку заголовков столбцов
    , определяющую имена свойств конечных объектов, задать разделитель элементо
    в или сделать так, чтобы командлет Import-CSV использовал в качестве раздел
    ителя значений установленный для текущей культуры разделитель элементов спи
    сков.
    
    Объекты, создаваемые командлетом Import-CSV, являются CSV-версиями исходных
     объектов. Значения свойств CSV-объектов являются строковыми версиями значе
    ний свойств исходных объектов. У CSV-версий объектов нет методов.
    
    Можно также преобразовывать объекты в строки CSV и обратно, используя для э
    того командлеты ConvertTo-CSV и ConvertFrom-CSV. Эти командлеты очень похож
    и на командлеты Export-CSV и Import-CSV за исключением того, что они не сох
    раняют строки CSV в файл.
    
ПАРАМЕТРЫ
    -Delimiter <char>
        Задает разделитель значений свойств в CSV-файле. По умолчанию используе
        тся запятая (,). Введите символ, например двоеточие (:). Чтобы задать т
        очку с запятой (;), заключите ее в кавычки.
        
        Если указать символ, отличный от фактического разделителя, используемог
        о в файле, командлет Import-CSV не сможет создать объекты из строк CSV.
         Вместо этого он возвращает строки.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                ,
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Header <string[]>
        Задает строку заголовков столбцов для импортируемого файла. Заголовки с
        толбцов определяют имена свойств объекта, создаваемого с помощью команд
        лета Import-CSV. 
        
        Введите список заголовков столбцов, разделенных запятыми. Заключите каж
        дый элемент в кавычки (одиночные или двойные). Не заключайте строку заг
        оловка в кавычки. Если количество введенных заголовков столбцов меньше,
         чем количество столбцов, у оставшихся столбцов не будет заголовков. Ес
        ли количество заголовков столбцов превышает количество столбцов, лишние
         заголовки игнорируются.
        
        При использовании параметра Header удалите исходную строку заголовков и
        з CSV-файла. В противном случае командлет Import-CSV создаст из элемент
        ов строки заголовков лишний объект.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к импортируемому CSV-файлу. Кроме того, можно передать путь
         командлету Import-CSV по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -UseCulture [<SwitchParameter>]
        Использовать в качестве разделителя записей разделитель элементов списк
        а из текущей культуры. По умолчанию используется запятая (,).
        
        Чтобы найти разделитель элементов списка для текущей культуры, воспольз
        уйтесь следующей командой: (Get-Culture).TextInfo.ListSeparator. Если у
        казать символ, отличный от разделителя, используемого в строках CSV, ко
        мандлет ConvertFrom-CSV не сможет создать объекты из строк CSV. Вместо 
        этого он возвращает строки.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Запятая
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Import-CSV по конвей
        еру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Объект.
        Командлет Import-CSV возвращает объекты, описываемые содержимым CSV-фай
        ла.
    
    
ПРИМЕЧАНИЯ
    
    
        Поскольку импортируемые объекты являются CSV-версиями типа объекта, они
         не распознаются и не форматируются записями форматирования типов Windo
        ws PowerShell, которые используются для форматирования объектов данного
         типа, не являющихся CSV-версиями.
        
        В CSV-файле каждый объект представляется списком разделенных запятыми з
        начений свойств этого объекта. Значения свойств преобразуются в строков
        ый формат (с помощью метода ToString() объекта), поэтому они обычно пре
        дставляются именами значений свойств. Командлет Export-CSV не экспортир
        ует методы объекта.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-process | export-csv processes.csv
    
    C:\PS> $p = import-CSV processes.csv
    
    C:\PS> $p | get-member
    
       TypeName: CSV:System.Diagnostics.Process
    
    Name                       MemberType   Definition
    ----                       ----------   ----------
    Equals                     Method       System.Boolean Equals(Object obj)
    GetHashCode                Method       System.Int32 GetHashCode()
    GetType                    Method       System.Type GetType()
    ToString                   Method       System.String ToString()
    BasePriority               NoteProperty System.String BasePriority=8
    Company                    NoteProperty System.String Company=Microsoft Cor
    poration
    ...
    
    C:\PS> $p | out-gridview
    
    
    Описание
    -----------
    В этом примере показано, как экспортировать, а затем импортировать CSV-файл
     с объектами Microsoft .NET Framework.
    
    Первая команда с помощью командлета Get-Process получает выполняющийся на л
    окальном компьютере процесс. С помощью оператора конвейера (|) она передает
     объекты процесса командлету Export-CSV, который экспортирует объекты проце
    ссов в файл Processes.csv в текущем каталоге. 
    
    Вторая команда использует командлет Import-CSV для импорта процессов из фай
    ла Processes.csv. Результирующие объекты процессов сохраняются в переменной
     $p.
    
    Третья команда с помощью оператора конвейера передает импортированные объек
    ты командлетам Get-Member. Результаты показывают, эти объекты являются объе
    ктами CSV:System.Diagnostic.Process, а не объектами System.Diagnostic.Proce
    ss, возвращаемыми командлетом Get-Process.
    
    Кроме того, поскольку для CSV-версии объектов процессов в файлах форматиров
    ания не указан тип, эти объекты не приводятся к формату, к которому обычно 
    приводятся стандартные объекты процессов. 
    
    Чтобы отобразить эти объекты, необходимо воспользоваться командлетами форма
    тирования, такими как Format-Table и Format-List, или передать объекты кома
    ндлету Out-GridView по конвейеру.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-process | export-csv processes.csv -Delimiter :
    
    C:\PS> $p = import-csv processes.csv -Delimiter :
    
    
    Описание
    -----------
    В этом примере показано, как использовать параметр Delimiter командлета Imp
    ort-CSV. В этом примере процессы экспортируются в файл, где в качестве разд
    елителя используется знак двоеточия (:).
    
    При импорте в файл командлет Import-CSV использует параметр Delimiter, чтоб
    ы задать используемый в этом файле разделитель.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$p = import-csv processes.csv -UseCulture
    
    C:\PS> (get-culture).textinfo.listseparator
    
    ,
    
    
    Описание
    -----------
    В этом примере демонстрируется использование параметра UseCulture командлет
    а Import-CSV.
    
    Первая команда импортирует объекты в файле Processes.csv в переменную $p. О
    на использует параметр UseCulture, чтобы указать, что командлет Import-CSV 
    должен использовать разделитель элементов списка, определенный для текущей 
    культуры.
    
    Вторая команда отображает разделитель элементов списка для текущей культуры
    . С помощью командлета Get-Culture она получает текущее значение культуры. 
    Используя обращение через точку (.), команда получает свойство TextInfo тек
    ущей культуры и свойство ListSeparator объекта TextInfo. В этом примере ком
    анда возвращает запятую.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>start-job -scriptblock { get-process } | export-csv jobs.csv
    
    C:\PS> $header = "MoreData","StatusMessage","Location","Command","State","F
    inished","InstanceId","SessionId","Name","ChildJobs","Output","Error","Prog
    ress","Verbose","Debug","Warning","StateChanged"
    
    # Delete header from file
    C:\PS> $a = (get-content jobs.csv)
    C:\PS> $a = $a[0], $a[2..($a.count - 1)]
    C:\PS> $a > jobs.csv
    
    C:\PS> $j = import-csv jobs.csv -header $header
    
    C:\PS> $j
    
    MoreData      : True
    StatusMessage :
    Location      : localhost
    Command       : get-process
    State         : Running
    Finished      : System.Threading.ManualResetEvent
    InstanceId    : 135bdd25-40d6-4a20-bd68-05282a59abd6
    SessionId     : 1
    Name          : Job1
    ChildJobs     : System.Collections.Generic.List`1[System.Management.Automat
    ion.Job]
    Output        : System.Management.Automation.PSDataCollection`1[System.Mana
    gement.Automation.PSObject]
    Error         : System.Management.Automation.PSDataCollection`1[System.Mana
    gement.Automation.ErrorRecord]
    Progress      : System.Management.Automation.PSDataCollection`1[System.Mana
    gement.Automation.ProgressRecord]
    Verbose       : System.Management.Automation.PSDataCollection`1[System.Stri
    ng]
    Debug         : System.Management.Automation.PSDataCollection`1[System.Stri
    ng]
    Warning       : System.Management.Automation.PSDataCollection`1[System.Stri
    ng]
    StateChanged  :
    
    
    Описание
    -----------
    В этом примере показано, как с помощью параметра Header командлета Import-C
    SV изменять имена свойств в конечном импортированном объекте.
    
    Первая команда с помощью командлета Start-Job запускает на локальном компью
    тере фоновое задание, выполняющее команду Get-Process. С помощью оператора 
    конвейера (|) полученный объект задания передается командлету Export-CSV, к
    оторый преобразует его в формат CSV. С помощью оператора присваивания (=) п
    олученные данные CSV сохраняются в файле Jobs.csv.
    
    Вторая команда сохраняет заголовок в переменной $header. В отличие от загол
    овка по умолчанию, в этом заголовке вместо имени "HasMoreData" используется
     имя "MoreData", а вместо имени "JobStateInfo" — имя "State".
    
    Следующие три команды удаляют исходный заголовок (вторую строку) из файла J
    obs.csv.  
    
    Шестая команда с помощью командлета Import-CSV импортирует файл Jobs.csv и 
    преобразует строки CSV в CSV-версию объекта задания. Параметр Header в этой
     команде используется для указания альтернативного заголовка. Результат сох
    раняется в переменной $j. 
    
    Седьмая команда выводит объект, сохраненный в переменной $j. Полученный объ
    ект имеет свойства "MoreData" и "State", как показано в результатах выполне
    ния команды.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>".\processes.csv" | import-csv
    
    
    Описание
    -----------
    Эта команда импортирует объекты из файла Processes.csv.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113341
    Export-CSV 
    ConvertTo-CSV 
    ConvertFrom-CSV 



Import-LocalizedData

ИМЯ
    Import-LocalizedData
    
ОПИСАНИЕ
    Импортирует относящиеся к конкретному языку данные в скрипты и функции на о
    снове выбранной в операционной системе культуры пользовательского интерфейс
    а.
    
СИНТАКСИС
    Import-LocalizedData [-BindingVariable] <string> [[-UICulture] <string>] [-
    BaseDirectory <string>] [-FileName <string>] [-SupportedCommand <string[]>]
     [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Import-LocalizedData динамически извлекает строки из подкаталога,
     имя которого соответствует языку пользовательского интерфейса, заданному д
    ля текущего пользователя операционной системы. Он позволяет создавать скрип
    ты, отображающие сообщения на языке пользовательского интерфейса, выбранном
     текущим пользователем.
    
    Командлет Import-LocalizedData импортирует данные из файлов PSD1 в подкатал
    огах определенных языков, содержащихся в каталоге скриптов, и сохраняет их 
    в локальной переменной, указанной в команде. Командлет выбирает подкаталог 
    и файл на основании значения автоматической переменной $PSUICulture. При ис
    пользовании в скрипте локальной переменной для отображения сообщения это со
    общение появляется на выбранном языке пользовательского интерфейса. 
    
    С помощью параметров командлета Import-LocalizedData можно задать альтернат
    ивную культуру пользовательского интерфейса, путь и имя файла, добавить под
    держиваемые команды, а также отключить появление сообщений об ошибках, отоб
    ражаемых, если файлы PSD1 найти не удается.
    
    Командлет Import-LocalizedData поддерживает вывод сообщений скриптов Window
    s PowerShell 2.0 на различных языках. Эта инициатива направлена на лучшую п
    оддержку пользователей по всему миру, чтобы скрипты выводили сообщения на я
    зыке пользовательского интерфейса текущего пользователя.  Дополнительные св
    едения об этом, а также о формате файлов PSD1, см. в разделе about_Script_I
    nternationalization.
    
ПАРАМЕТРЫ
    -BaseDirectory <string>
        Задает базовый каталог, в котором размещаются файлы PSD1. Каталогом по 
        умолчанию является каталог со скриптами. Командлет Import-LocalizedData
         осуществляет поиск файла PSD1 для скрипта в относящемся к конкретному 
        языку подкаталоге базового каталога.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -BindingVariable <string>
        Задает переменную, в которую импортируются текстовые строки. Указываетс
        я имя переменной (без знака доллара).
        
        При использовании командлета Import-LocalizedData для замены текстовых 
        строк по умолчанию, заданных в разделе DATA скрипта, присвойте раздел D
        ATA переменной и укажите ее имя в качестве значения параметра BindingVa
        riable. В этом случае при сохранении командлетом Import-LocalizedData и
        мпортированного содержимого в переменной BindingVariable импортированны
        е данные заменят текстовые строки по умолчанию. Если указаны не текстов
        ые строки по умолчанию, можно выбрать любое имя переменной.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FileName <string>
        Задает имя файла PSD1 для импорта. Укажите имя файла без расширения PSD
        1. 
        
        Значением по умолчанию является имя скрипта. Например, если скрипт назы
        вается FindFiles.ps1, то командлет Import-LocalizedData будет искать фа
        йл FindFiles.psd1. Этот параметр позволяет сделать так, чтобы командлет
         Import-LocalizedData искал другой файл PSD1.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SupportedCommand <string[]>
        Указывает командлеты и функции, создающие только данные.
        
        Используйте этот параметр для добавления созданных или протестированных
         вами командлетов и функций. Дополнительные сведения см. в разделе abou
        t_Script_Internationalization.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UICulture <string>
        Задает альтернативную культуру пользовательского интерфейса. Значением 
        по умолчанию является автоматическая переменная $PsUICulture. Укажите к
        ультуру пользовательского интерфейса в формате "<язык>-<регион>", напри
        мер en-US, de-DE или ru-RU. 
        
        Значение параметра UICulture определяет относящийся к конкретному языку
         каталог (внутри базового каталога), из которого командлет Import-Local
        izedData получает файл PSD1 для скрипта. 
        
        Командлет осуществляет поиск подкаталога с именем, совпадающим со значе
        нием параметра UICulture или автоматической переменной $PsUICulture, на
        пример "de-DE" или "ru-RU". Если найти каталог не удается или в каталог
        е нет файла PSD1 для скрипта, осуществляется поиск подкаталога с именем
        , соответствующим коду языка, например "de" или "ru". Если найти подкат
        алог или файл PSD1 не удается, команда завершается с ошибкой, а данные 
        отображаются на заданном в скрипте языке по умолчанию.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Collections.Hashtable
        Командлет Import-LocalizedData сохраняет хэш-таблицу в переменной, указ
        анной в качестве значения параметра BindingVariable.
    
    
ПРИМЕЧАНИЯ
    
    
        Перед использованием командлета Import-LocalizedData необходимо локализ
        овать пользовательские сообщения. Приведите сообщения для каждой локали
         (культуры пользовательского интерфейса) к формату пар "имя/значение" х
        эш-таблицы и сохраните хэш-таблицу в файл с именем, совпадающим с имене
        м скрипта, и расширением PSD1. Создайте в каталоге скрипта подкаталог д
        ля каждой культуры пользовательского интерфейса и сохраните файл PSD1 д
        ля каждой культуры в соответствующем подкаталоге. 
        
        Например, переведите сообщения для локали ru-RU и отформатируйте их в в
        иде хэш-таблицы. Сохраните хэш-таблицу в файле <Имя-скрипта>.psd1. Посл
        е этого создайте в каталоге скрипта подкаталог ru-RU и сохраните файл 
        Имя-скрипта>.psd1 для культуры ru-RU в подкаталоге ru-RU. Повторите эту
         операцию для всех поддерживаемых локалей.
        
        Командлет Import-LocalizedData выполняет структурированный поиск локали
        зованных пользовательских сообщений для скрипта.
        
        Import-LocalizedData начинает поиск с каталога, в котором находится фай
        л скрипта, или каталога, заданного параметром BaseDirectory. Он осущест
        вляет поиск в базовом каталоге подкаталога с именем, совпадающим со зна
        чением переменной $PsUICulture или значением параметра UICulture, напри
        мер "de-DE" или "ru-RU". После этого он осуществляет в подкаталоге поис
        к файла PSD1 с именем, совпадающим с именем скрипта или значением парам
        етра FileName. 
        
        Если командлету Import-LocalizedData не удается найти подкаталог с имен
        ем культуры пользовательского интерфейса или найти в этом подкаталоге ф
        айл PSD1 для скрипта, он осуществляет поиск файла PSD1 для скрипта в по
        дкаталоге с именем кода языка, например "de" или "ru". Если найти подка
        талог или файл PSD1 не удается и в этом случае, команда завершается сбо
        ем, данные отображаются на заданном в скрипте языке по умолчанию, и поя
        вляется сообщение об ошибке, в котором говорится, что данные импортиров
        ать не удалось. Чтобы отключить появление этого сообщения в случае сбоя
        , воспользуйтесь общим параметром ErrorAction, указав для него значение
         SilentlyContinue.
        
        Если командлет Import-LocalizedData обнаружит подкаталог и файл PSD1, о
        н импортирует хэш-таблицу пользовательских сообщений в переменную, зада
        нную параметром BindingVariable в команде. После этого при выводе сообщ
        ений из хранящейся в данной переменной хэш-таблицы будут отображаться л
        окализованные сообщения.
        
        Дополнительные сведения см. в разделе about_Script_Internationalization
        .
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>import-localizeddata -bindingVariable messages
    
    
    Описание
    -----------
    Эта команда импортирует текстовые строки в переменную $messages. Она исполь
    зует все значения по умолчанию параметров командлета.
    
    Если команда включена в скрипт Archives.ps1 в каталоге C:\test, а автоматич
    еская переменная $PsUICulture имеет значение zh-CN, командлет Import-Locali
    zedData импортирует файл Archives.psd1 в каталог C:\test\zh-CN.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>import-localizeddata -bindingVariable msgTbl -uiculture ar-SA -filena
    me Simple -baseDirectory C:\Data\Localized
    
    
    Описание
    -----------
    Эта команда импортирует текстовые строки в переменную $msgTbl скрипта. 
    
    Она использует параметр UICulture, чтобы командлет импортировал данные из ф
    айла Simple.psd1 в подкаталоге ar-SA каталога C:\Data\Localized.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS># In C:\Test\en-US\test.psd1:
    
    ConvertFrom-StringData @'
     # English strings
    Msg1 = "The Name parameter is missing from the command."
    Msg2 = "This command requires the credentials of a member of the Administra
    tors group on the computer."
    Msg3 = "Use $_ to represent the object that is being processed."
    '@
    
    # In C:\Test\Test.ps1
    
    import-localizeddata -bindingvariable messages
    write-host $messages.msg2
    
    # In Windows PowerShell
    
    C:\PS> .\test.ps1
    This command requires the credentials of a member of the Administrators gro
    up on the computer.
    
    
    Описание
    -----------
    В этом примере показано, как использовать локализованные данные в примере с
    крипта.
    
    В первой части примера показано содержимое файла Test.psd1. Он содержит ком
    анду ConvertFrom-StringData, которая преобразует последовательность именова
    нных текстовых строк в хэш-таблицу. Файл test.psd1 расположен в подкаталоге
     en-US каталога C:\Test directory, содержащего скрипт.
    
    Во второй части примера показано содержимое файла Test.ps1. В ней содержитс
    я команда Import-LocalizedData, импортирующая данные из соответствующего фа
    йла PDS1 в переменную $Messages, а также команда Write-Host, записывающая о
    дно из сообщений из переменной $Messages в основную программу.
    
    Последняя команда в этом примере выполняет скрипт. Выходные данные подтверж
    дают, что отображается надлежащее пользовательское сообщение на языке польз
    овательского интерфейса, заданного для текущего пользователя операционной с
    истемы.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS># In TestScript.ps1
    
    $UserMessages = DATA {
        ConvertFrom-StringData @'
        # English strings
            Msg1 = "Enter a name."
            Msg2 = "Enter your employee ID."
            Msg3 = "Enter your building number."
    '@ }
    
    Import-LocalizedData -bindingVariable UserMessages
    
    $UserMessages.Msg1
    ...
    
    
    Описание
    -----------
    В этом примере показано, как с помощью командлета Import-LocalizedData заме
    нить текстовые строки по умолчанию, определенные в разделе DATA скрипта.
    
    В этом примере раздел DATA скрипта TestScript.ps1 содержит команду ConvertF
    rom-StringData, преобразующую содержимое раздела DATA в хэш-таблицу и сохра
    няющая ее в качестве значения переменной $UserMessages. 
    
    В скрипте также используется команда Import-LocalizedData, импортирующая хэ
    ш-таблицу с переведенными текстовыми строками из файла TestScript.psd1 в по
    дкаталоге, заданном переменной $PsUICulture. Если команда находит файл PSD1
    , она сохраняет переведенные строки из файла в ту же самую переменную $User
    Messages вместо хэш-таблицы, сохраненной логикой из раздела DATA.
    
    Третья команда отображает первое сообщение из переменной $UserMessages.
    
    Если команда Import-LocalizedData находит файл PSD1 для языка $PsUICulture,
     значение переменной $UserMessages содержит переведенные текстовые строки. 
    Если выполнение команды по какой-то причине завершается с ошибкой, команда 
    выводит текстовые строки, определенные в разделе скрипта DATA.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS># In Day1.ps1
    Import-LocalizedData -bindingVariable Day
    Day.MessageDate
    
    # In Day2.ps1
    Import-LocalizedData -bindingVariable Day -errorAction:silentlycontinue
    Day.MessageDate
    
    C:\PS> .\Day1.ps1
    
    Import-LocalizedData : Cannot find PowerShell data file 'Day1.psd1' in dire
    ctory 'C:\ps-test\fr-BE\' or any parent culture directories.
    At C:\ps-test\Day1.ps1:17 char:21
    + Import-LocalizedData <  Day
    Today is Tuesday
    
    
    C:\PS> .\Day2.ps1
    
    Today is Tuesday
    
    
    Описание
    -----------
    В этом примере показано, как отключить сообщения об ошибках, которые появля
    ются, если командлету Import-LocalizedData не удается найти каталоги, соотв
    етствующие заданной культуре пользовательского интерфейса, или файл PSD1 дл
    я скрипта в этих каталогах.
    
    Используя общий параметр ErrorAction со значением SilentlyContinue, можно о
    тключить появление сообщений об ошибках. Это бывает особенно полезным, если
     имеются пользовательские сообщения на языке по умолчанию или "резервном" я
    зыке, и показывать сообщения об ошибках не нужно.
    
    В этом примере сравниваются два скрипта (Day1.ps1 и Day2.ps1), которые вклю
    чают команду Import-LocalizedData. Эти скрипты идентичны за исключением тог
    о, что в скрипте Day2 используется общий параметр ErrorAction со значением 
    SilentlyContinue.
    
    Результат выполнения примера показывает, что произойдет при запуске обоих с
    криптов, если для культуры пользовательского интерфейса установлено значени
    е fr-BE, а соответствующие файлы и каталоги отсутствуют. Скрипт Day1.ps1 вы
    водит сообщение об ошибке и текст на английском языке. Скрипт Day2.ps1 выво
    дит только текст на английском языке.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113342
    about_Script_Internationalization 



Import-Module

ИМЯ
    Import-Module
    
ОПИСАНИЕ
    Добавляет модули в текущий сеанс.
    
СИНТАКСИС
    Import-Module [-Name] <string[]> [-Alias <string[]>] [-ArgumentList <Object
    []>] [-AsCustomObject] [-Cmdlet <string[]>] [-Force] [-Function <string[]>]
     [-Global] [-PassThru] [-Prefix <string>] [-Variable <string[]>] [-Version 
    <Version>] [<CommonParameters>]
    
    Import-Module [-Assembly] <Assembly[]> [-Alias <string[]>] [-ArgumentList 
    Object[]>] [-AsCustomObject] [-Cmdlet <string[]>] [-Force] [-Function <stri
    ng[]>] [-Global] [-PassThru] [-Prefix <string>] [-Variable <string[]>] [-Ve
    rsion <Version>] [<CommonParameters>]
    
    Import-Module [-ModuleInfo] <PSModuleInfo[]> [-Alias <string[]>] [-Argument
    List <Object[]>] [-AsCustomObject] [-Cmdlet <string[]>] [-Force] [-Function
     <string[]>] [-Global] [-PassThru] [-Prefix <string>] [-Variable <string[]>
    ] [-Version <Version>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Import-Module добавляет один или несколько модулей в текущий сеан
    с. 
    
    Модуль представляет собой пакет, содержащий элементы (такие как командлеты,
     поставщики, скрипты, функции, переменные и другие средства и файлы), котор
    ые можно использовать в Windows PowerShell. После импорта модуля в сеансе м
    ожно использовать элементы модуля. 
    
    Чтобы импортировать модуль, используйте параметр Name, Assembly или ModuleI
    nfo для указания импортируемого модуля. По умолчанию командлет Import-Modul
    e импортирует все элементы, экспортируемые модулем, но для ограничения импо
    рта элементов можно использовать параметры Alias, Function, Cmdlet и Variab
    le. 
    
    Командлет Import-Module импортирует модуль только в текущий сеанс. Чтобы им
    портировать модуль во все сеансы, команду Import-Module следует добавить в 
    профиль Windows PowerShell пользователя. Дополнительные сведения о профилях
     см. в разделе about_Profiles. 
    
    Дополнительные сведения о модулях см. в разделе about_Modules.
    
ПАРАМЕТРЫ
    -Alias <string[]>
        Импортирует только указанные псевдонимы из модуля в текущий сеанс. Введ
        ите список псевдонимов, разделенных запятыми. Подстановочные знаки разр
        ешены.
        
        Некоторые модули автоматически экспортируют некоторые псевдонимы в сеан
        с при импорте модуля. Этот параметр позволяет выбирать из экспортирован
        ных псевдонимов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -ArgumentList <Object[]>
        Указывает аргументы (значения параметров), которые передаются модулю ск
        рипта при обработке команды Import-Module.  Этот параметр допустим толь
        ко при импорте модуля скрипта.
        
        Параметр ArgumentList также можно вызвать с помощью псевдонима "args". 
        Дополнительные сведения см. в разделе About_Aliases.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -AsCustomObject [<SwitchParameter>]
        Возвращает пользовательский объект с элементами, представляющими импорт
        ированные элементы модуля. Этот параметр допустим только для модулей ск
        рипта.
        
        При использовании параметра AsCustomObject команда Import-Module импорт
        ирует элементы модуля в сеанс и возвращает объект PSCustomObject, а не 
        объект PSModuleInfo. Можно сохранить пользовательский объект в переменн
        ой и использовать точку для обращения к его элементам.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Assembly <Assembly[]>
        Импортирует командлеты и поставщики, реализованные в заданных объектах 
        сборки. Введите переменную, содержащую объекты сборки, либо введите ком
        анду, создающую их. Кроме того, можно передать объект сборки командлету
         Import-Module по конвейеру.
        
        При использовании этого параметра из заданных сборок импортируются толь
        ко командлеты и поставщики. Если в модуле содержатся другие файлы, они 
        не импортируются, в результате важные элементы модуля могут отсутствова
        ть. Используйте этот параметр для отладки и тестирования модуля или в с
        лучае, если такое указание дается автором модуля.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Cmdlet <string[]>
        Импортирует только указанные командлеты из модуля в текущий сеанс. Введ
        ите список командлетов. Подстановочные знаки разрешены.
        
        Некоторые модули автоматически экспортируют некоторые командлеты в сеан
        с при импорте модуля. Этот параметр позволяет выбирать из экспортирован
        ных командлетов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Force [<SwitchParameter>]
        Повторно импортирует модуль и его элементы, даже если модуль или его эл
        ементы находятся в режиме доступа только для чтения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Function <string[]>
        Импортирует только указанные функции из модуля в текущий сеанс. Введите
         список функций. Подстановочные знаки разрешены.
        
        Некоторые модули автоматически экспортируют некоторые функции в сеанс п
        ри импорте модуля. Этот параметр позволяет выбирать из экспортированных
         функций.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Global [<SwitchParameter>]
        При использовании в модуле скрипта (PSM1) этот параметр импортирует мод
        ули в состояние глобального сеанса. 
        
        Этот параметр можно использовать, только когда он появляется в модуле с
        крипта. В противном случае он игнорируется.
        
        По умолчанию команды в модуле скрипта, включая команды из вложенных мод
        улей, импортируются в состояние сеанса вызывающего объекта. Для огранич
        ения команд, экспортируемых модулем, используйте команду Export-ModuleM
        ember в модуле скрипта.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ModuleInfo <PSModuleInfo[]>
        Задает объекты модулей, которые требуется импортировать. Введите переме
        нную, содержащую объекты модулей, либо команду, получающую объекты моду
        лей, например "get-module -listavailable". Кроме того, можно передать о
        бъекты модулей командлету Import-Module по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Определяет имена импортируемых модулей. Введите имя модуля или имя файл
        а модуля, например файла PSD1, PSM1, DLL или PS1. Пути к файлам являютс
        я необязательным параметром. Подстановочные знаки запрещены. Имена моду
        лей и имена файлов можно передать командлету Import-Module по конвейеру
        .
        
        Если путь не указан, командлет Import-Module выполняет поиск модуля, ко
        торый присутствует в путях, сохраненных в переменной среды PSModulePath
         ($env:PSModulePath).  
        
        Укажите только имя модуля, если это возможно. При указании имени файла 
        будут импортированы только элементы, реализованные в этом файле. Если в
         модуле содержатся другие файлы, они не импортируются, в результате важ
        ные элементы модуля могут отсутствовать.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объекты, представляющие импортированные модули. По умолчанию
         этот командлет не формирует никаких выходных данных.
        
        Примечания  
        -- При передаче выходных данных команды "get-module -listavailable" по 
        конвейеру команде Import-Module с помощью параметра PassThru команда Im
        port-Module возвращает объект, переданный ей командой Get-Module, не об
        новляя его. Таким образом, значения свойств Exported и NestedModules ос
        таются неопределенными.
        
        -- При использовании параметра Prefix для указания префикса элемента пр
        ефикс не отображается в именах элементов в свойствах объекта модуля. В 
        объект заносится информация об экспорте, выполненном до применения преф
        икса.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Prefix <string>
        Добавляет заданный префикс к существительным в именах импортированных э
        лементов модуля. 
        
        Этот параметр используется для предотвращения конфликтов имен, который 
        может возникнуть, если несколько элементов в сеансе будут иметь одинако
        вые имена. Этот параметр не изменяет содержимое модуля и не влияет на ф
        айлы, импортируемые модулем для внутреннего использования (так называем
        ые "вложенные модули"). Он влияет только на имена элементов в текущем с
        еансе.
        
        Например, если указать префикс "UTC" и импортировать командлет Get-Date
        , командлет в сеансе будет называться Get-UTCDate, и система не будет п
        утать его с исходным командлетом Get-Date.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Variable <string[]>
        Импортирует только указанные переменные из модуля в текущий сеанс. Введ
        ите список переменных. Подстановочные знаки разрешены.
        
        Некоторые модули автоматически экспортируют некоторые переменные в сеан
        с при импорте модуля. Этот параметр позволяет выбирать из экспортирован
        ных переменных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Version <Version>
        Задает версию импортируемого модуля. Этот параметр следует использовать
         в случае, если в системе присутствуют различные версии одного модуля.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String, System.Management.Automation.PSModuleInfo, System.Reflection
    .Assembly
        Командлету Import-Module можно передать по конвейеру имя модуля, объект
         модуля или объект сборки.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    None, System.Management.Automation.PSModuleInfo или System.Management.Autom
    ation.PSCustomObject
        По умолчанию командлет Import-Module не формирует никаких выходных данн
        ых. При использовании параметра Passthru командлет создает объект Syste
        m.Management.Automation.PSModuleInfo, представляющий модуль. Если испол
        ьзуется параметр AsCustomObject, командлет создает объект PSCustomObjec
        t.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Import-Module также можно вызывать с помощью псевдонима "ipmo
        ". Дополнительные сведения см. в разделе About_Aliases.
        
        Перед импортом модуля необходимо скопировать каталог модуля в каталог, 
        доступный на локальном компьютере. Дополнительные сведения см. в раздел
        е About_Modules.
        
        Элементы модуля выполняются в собственном состоянии закрытого сеанса мо
        дуля, поэтому команды, используемые ими для внутренней обработки, не вл
        ияют на состояние сеанса.
        
        При импорте в сеанс элементов с одинаковыми именами, принадлежащих к од
        ному типу, по умолчанию Windows PowerShell использует последний импорти
        рованный элемент. Переменные и псевдонимы заменяются параметрами нового
         элемента, при этом исходные версии недоступны. Функции, командлеты и п
        оставщики просто затеняются новыми элементами, доступ к ним возможен пр
        и использовании имени команды с указанием имени оснастки, модуля или пу
        ти к функции. 
        
        Чтобы обновить данные форматирования для команд, импортированных из мод
        уля, используйте командлет Update-FormatData. Кроме того, командлет Upd
        ate-FormatData обновляет данные форматирования для команд в сеансе, имп
        ортированных из модулей. При изменении файла форматирования для модуля 
        можно выполнить команду Update-FormatData, чтобы обновить данные формат
        ирования для импортированных команд. Импортировать модуль повторно не т
        ребуется.
        
        Для импорта модуля, созданного командлетом Import-PSSession или Export-
        PSSession, политика выполнения в текущем сеансе не может иметь значение
         Restricted или AllSigned, поскольку создаваемые командлетами Import-PS
        Session и Export-PSSession модули содержат неподписанные файлы скриптов
        , которые запрещены этими политиками. Чтобы использовать командлет Impo
        rt-Module без изменения политики выполнения для локального компьютера, 
        необходимо с помощью параметра Scope командлета Set-ExecutionPolicy зад
        ать менее жесткую политику выполнения для одного процесса.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>import-module -name BitsTransfer
    
    
    Описание
    -----------
    Эта команда импортирует элементы модуля BitsTransfer в текущий сеанс.
    
    Имя параметра Name (-Name) не является обязательным и может быть опущено.
    
    По умолчанию командлет Import-Module не формирует никаких выходных данных п
    ри импорте модуля. Чтобы обеспечить формирование выходных данных, используй
    те параметр PassThru или AsCustomObject либо общий параметр Verbose.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-module -listAvailable | import-module
    
    
    Описание
    -----------
    Этак команда импортирует все доступные модули в пути, указанном переменной 
    среды PSModulePath ($env:psmodulepath), в текущий сеанс.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$m = get-module -ListAvailable BitsTransfer, ServerBackup
    
    C:\PS> import-module -moduleInfo $m
    
    
    Описание
    -----------
    Эти команды импортируют элементы модулей BitsTransfer и ServerBackup в теку
    щий сеанс. 
    
    Первая команда использует командлет Get-Module для получения объектов PSMod
    uleInfo, представляющих модули BitsTransfer и ServerBackup. Она сохраняет о
    бъекты в переменной $m. Параметр ListAvailable является обязательным при по
    лучении модулей, пока не импортированных в сеанс.
    
    Вторая команда использует параметр ModuleInfo командлета Import-Module, что
    бы импортировать модули в текущий сеанс. 
    
    Эти команды эквиваленты использованию оператора конвейера (|) для передачи 
    выходных данных команды Get-Module командлету Import-Module.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>import-module -name c:\ps-test\modules\test -verbose
    
    VERBOSE: Loading module from path 'C:\ps-test\modules\Test\Test.psm1'.
    VERBOSE: Exporting function 'my-parm'.
    VERBOSE: Exporting function 'get-parm'.
    VERBOSE: Exporting function 'get-spec'.
    VERBOSE: Exporting function 'get-specDetails'.
    
    
    Описание
    -----------
    Эта команда использует путь, заданный явным образом, для указания импортиру
    емого модуля. 
    
    Она также использует общий параметр Verbose для получения списка элементов,
     импортированных из модуля. При вызове параметров Verbose, PassThru или AsC
    ustomObject командлет Import-Module не формирует никаких выходных данных пр
    и импорте модуля.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>import-module BitsTransfer -cmdlet Add-BitsTransferFile, Get-BitsTran
    sfer
    
    C:\PS> get-module BitsTransfer
    
    Name              : BitsTransfer
    Path              : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Bits
    Transfer\BitsTransfer.psd1
    Description       :
    Guid              : 8fa5064b-8479-4c5c-86ea-0d311fe48875
    Version           : 1.0.0.0
    ModuleBase        : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Bits
    Transfer
    ModuleType        : Manifest
    PrivateData       :
    AccessMode        : ReadWrite
    ExportedAliases   : {}
    ExportedCmdlets   : {[Add-BitsTransfer, Add-BitsTransfer], [Complete-BitsTr
    ansfer, Complete-BitsTransfer], [Get-BitsTransfer, Get-BitsTransfer], [Rem
                        ove-BitsTransfer, Remove-BitsTransfer]...}
    ExportedFunctions : {}
    ExportedVariables : {}
    NestedModules     : {Microsoft.BackgroundIntelligentTransfer.Management}
    
    
    C:\PS> get-command -module BitsTransfer
    
    CommandType Name                Definition
    ----------- ----                ----------
    Cmdlet      Add-BitsTransfer    Add-BitsTransfer [-BitsJob] <BitsJob[]> [-S
    ource] <String[]> [[-Destination] <String[]>] [-Verbose] [-Debug] [-ErrorA.
    ..
    Cmdlet      Get-BitsTransfer    Get-BitsTransfer [[-Name] <String[]>] [-All
    Users] [-Verbose] [-Debug] [-ErrorAction <ActionPreference>] [-WarningActi.
    ..
    
    
    Описание
    -----------
    В этом примере показано, как ограничить элементы модуля, импортируемые в се
    анс, а также влияние этой команды на сеанс. 
    
    Первая команда импортирует только командлеты Add-BitsTransfer и Get-BitsTra
    nsfer из модуля BitsTransfer. Эта команда использует параметр Cmdlet для ог
    раничения командлетов, импортируемых модулем. Параметры Alias, Variable и F
    unction также можно использовать для ограничения других элементов, импортир
    уемых модулем.
    
    Вторая команда использует командлет Get-Module для получения объекта, предс
    тавляющего модуль BitsTransfer. В свойстве ExportedCmdlets перечислены все 
    командлеты, экспортируемые модулем, даже если не все они были импортированы
    .
    
    Третья команда использует параметр Module командлета Get-Command для получе
    ния команд, импортированных из модуля BitsTransfer. Результаты подтверждают
    , что были импортированы только командлеты Add-BitsTransfer и Get-BitsTrans
    fer.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>import-module BitsTransfer -prefix PS -passthru
    
    Name              : bitstransfer
    Path              : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\bits
    transfer\bitstransfer.psd1
    Description       :
    Guid              : 8fa5064b-8479-4c5c-86ea-0d311fe48875
    Version           : 1.0.0.0
    ModuleBase        : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\bits
    transfer
    ModuleType        : Manifest
    PrivateData       :
    AccessMode        : ReadWrite
    ExportedAliases   : {}
    ExportedCmdlets   : {[Add-BitsTransfer, Add-BitsTransfer], [Remove-BitsTran
    sfer, Remove-BitsTransfer], [Complete-BitsTransfer, Complete-BitsTransfer]
                        , [Get-BitsTransfer, Get-BitsTransfer]...}
    ExportedFunctions : {}
    ExportedVariables : {}
    NestedModules     : {Microsoft.BackgroundIntelligentTransfer.Management}
    
    
    C:\PS> get-command -module bitstransfer
    
    CommandType     Name                        Definition
    -----------     ----                        ----------
    Cmdlet          Add-PSBitsTransfer          Add-PSBitsTransfer [-BitsJob] 
    BitsJob[]> [-Source] <String[]> ...
    Cmdlet          Complete-PSBitsTransfer     Complete-PSBitsTransfer [-BitsJ
    ob] <BitsJob[]> [-Verbose] [-Deb...
    Cmdlet          Get-PSBitsTransfer          Get-PSBitsTransfer [[-Name] <St
    ring[]>] [-AllUsers] [-Verbose] ...
    Cmdlet          Remove-PSBitsTransfer       Remove-PSBitsTransfer [-BitsJob
    ] <BitsJob[]> [-Verbose] [-Debug...
    Cmdlet          Resume-PSBitsTransfer       Resume-PSBitsTransfer [-BitsJob
    ] <BitsJob[]> [-Asynchronous] [-...
    Cmdlet          Set-PSBitsTransfer          Set-PSBitsTransfer [-BitsJob] 
    BitsJob[]> [-DisplayName <String...
    Cmdlet          Start-PSBitsTransfer        Start-PSBitsTransfer [[-Source]
     <String[]>] [[-Destination] <St...
    Cmdlet          Suspend-PSBitsTransfer      Suspend-PSBitsTransfer [-BitsJo
    b] <BitsJob[]> [-Verbose] [-Debu...
    
    
    Описание
    -----------
    Эти команды импортируют модуль BitsTransfer в текущий сеанс, добавляют преф
    икс к именам элементов и затем отображают элементы с именами, к которым доб
    авлен префикс. 
    
    Первая команда импортирует модуль BitsTransfer с помощью командлета Import-
    Module. Она использует параметр Prefix для добавления префикса PS ко всем э
    лементам, импортированным из модуля, и параметр PassThru для возврата объек
    та модуля, представляющего импортированный модуль.
    
    Объект модуля, возвращаемого командой, имеет свойство ExportedCmdlets, в ко
    тором перечисляются экспортированные элементы. Префикс не отображается в им
    енах командлетов, поскольку он применяется после экспорта элементов (но пер
    ед импортом элементов).
    
    Вторая команда использует командлет Get-Command для получения элементов, им
    портированных из модуля. Для указания модуля используется параметр Module. 
    В выходных данных отображаются элементы модуля с именами, к которым добавле
    н префикс.
    
    Префикс применяется к именам элементов только в рамках текущего сеанса. Он 
    не изменяет содержимое модуля.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-module -list | format-table -property name, moduletype -auto
    
    Name          ModuleType
    ----          ----------
    Show-Calendar     Script
    BitsTransfer    Manifest
    PSDiagnostics   Manifest
    TestCmdlets       Script
    
    C:\PS> $a = import-module -name Show-Calendar -asCustomObject
    
    C:\PS> $a | get-member 
    
    
       TypeName: System.Management.Automation.PSCustomObject
    
    Name          MemberType   Definition
    ----          ----------   ----------
    Equals        Method       bool Equals(System.Object obj)
    GetHashCode   Method       int GetHashCode()
    GetType       Method       type GetType()
    ToString      Method       string ToString()
    Show-Calendar ScriptMethod System.Object Show-Calendar();
    
    C:\PS> $a."show-calendar"()
    
    
    Описание
    -----------
    В этих командах показано, как получать и использовать пользовательский объе
    кт, возвращаемый командлетом Import-Module. 
    
    В пользовательские объекты включаются виртуальные элементы, представляющие 
    импортированные элементы модуля. Например, командлеты и функции в модуле пр
    еобразуются в методы-скрипты пользовательского объекта.
    
    Пользовательские объекты очень удобны при создании скриптов. Они также удоб
    ны при совпадении имен нескольких импортированных объектов. Использование м
    етода-скрипта объекта эквивалентно указанию полного имени импортированного 
    элемента, включая имя модуля.
    
    Параметр AsCustomObject может использоваться только в рамках модуля скрипта
    , поэтому первой задачей является определение, какой из доступных модулей я
    вляется модулем скрипта.
    
    Первая команда получает все доступные модули с помощью командлета Get-Modul
    e. Команда использует оператор конвейера (|) для передачи объектов модулей 
    командлету Format-Table, который отображает в таблице значения параметров N
    ame и ModuleType для каждого модуля.
    
    Вторая команда импортирует модуль-скрипт ShowCalendar с помощью командлета 
    Import-Module. Параметр AsCustomObject используется для формирования пользо
    вательского объекта. Полученный пользовательский объект сохраняется в перем
    енной $a.
    
    Третья команда с помощью оператора конвейера передает переменную $a командл
    ету Get-Member, который получает свойства и методы объекта PSCustomObject, 
    сохраненного в переменной $a. В выходных данных отображается метод-скрипт S
    how-Calendar.
    
    Последняя команды использует метод-скрипт Show-Calendar. Имя метода должно 
    быть заключено в кавычки, поскольку оно содержит дефис.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>import-module BitsTransfer
    
    C:\PS> import-module BitsTransfer -force -prefix PS
    
    
    Описание
    -----------
    В этом примере показано, как использовать параметр Force командлета Import-
    Module при повторном импорте модуля в тот же сеанс. 
    
    Первая команда импортирует модуль BitsTransfer. Вторая команда повторно имп
    ортирует модуль, на этот раз с указанием параметра Prefix. 
    
    Во второй команде также задан параметр Force, который удаляет модуль и снов
    а импортирует его. Без этого параметра сеанс содержал бы две копии каждого 
    командлета BitsTransfer: одну копию со стандартным именем, а вторую — с име
    нем с префиксом.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>get-date
    
    Saturday, September 12, 2009 6:47:04 PM
    
    C:\PS> import-module TestModule
    
    C:\PS> get-date
    09255
    
    C:\PS> get-command get-date | format-table -property commandtype, name, pss
    napin, module -auto
    
    CommandType  Name       pssnapin                       Module
    -----------  ----       --------                       ------
       Function  Get-Date                                  TestModule
         Cmdlet  Get-Date   Microsoft.PowerShell.Utility
    
    
    C:\PS> Microsoft.PowerShell.Utility\get-date
    
    Saturday, September 12, 2009 6:33:23 PM
    
    
    Описание
    -----------
    В этом примере показано, как выполнить команды, скрытые импортированными ко
    мандами.
    
    Первая команда выполняет командлет Get-Date, входящий в Windows PowerShell.
     Она возвращает объект DateTime с текущей датой.
    
    Вторая команда импортирует модуль TestModule. В этот модуль входит функция 
    Get-Date, которая возвращает дату по юлианскому календарю. 
    
    Третья команда снова выполняет команду Get-Date. Поскольку функции имеют пр
    иоритет перед командлетами, была выполнена функция Get-Date из модуля TestM
    odule, а не командлет Get-Date.
    
    Четвертая команда показывает, что в сеансе имеется две команды Get-Date, фу
    нкция из модуля TestModule и командлет из оснастки Microsoft.PowerShell.Uti
    lity.
    
    Пятая команда выполняет скрытый командлет, указав имя команды с именем осна
    стки. 
    
    Дополнительные сведения о приоритете команд в Windows PowerShell см. в разд
    еле about_command_precedence.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=141553
    Get-Module 
    New-Module 
    Remove-Module 
    Export-ModuleMember 
    about_Modules 



Import-PSSession

ИМЯ
    Import-PSSession
    
ОПИСАНИЕ
    Импортирует в текущий сеанс команды из другого сеанса.
    
СИНТАКСИС
    Import-PSSession [-Session] <PSSession> [[-CommandName] <string[]>] [[-Form
    atTypeName] <string[]>] [-AllowClobber] [-ArgumentList <Object[]>] [-Comman
    dType {Alias | Function | Filter | Cmdlet | ExternalScript | Application | 
    Script | All}] [-Module <string[]>] [-Prefix <string>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Import-PSSession импортирует команды (такие как командлеты, функц
    ии и псевдонимы) из сеанса PSSession на локальном или удаленном компьютере 
    в текущий сеанс. Возможен импорт любой команды, которую можно найти в друго
    м сеансе PSSession с помощью командлета Get-Command.
    
    Командлет Import-PSSession служит для импорта команд из настроенной оболочк
    и, например из оболочки Microsoft Exchange Server или из сеанса, включающег
    о модули и оснастки Windows PowerShell, а также для импорта других элементо
    в, не являющихся частью текущего сеанса.
    
    Чтобы импортировать команды, создайте сеанс PSSession с помощью команды New
    -PSSession. Затем с помощью командлета Import-PSSession импортируйте нужные
     команды. По умолчанию командлет Import-PSSession импортирует все команды, 
    за исключением тех, имена которых совпадают с именами команд в текущем сеан
    се. Чтобы импортировать все сеансы, используйте параметр AllowClobber.
    
    Импортированные команды можно использовать так же, как используются и други
    е команды в сеансе. При выполнении импортированной команды ее импортированн
    ая часть косвенно выполняется в сеансе, из которого она была импортирована.
     Однако удаленные операции полностью обрабатываются в оболочке Windows Powe
    rShell. Пользователю не нужно заботиться об этом, но ему нужно поддерживать
     открытым подключение к другому сеансу (PSSession). Если закрыть подключени
    е, импортированные команды станут недоступными.
    
    Поскольку импортированные команды могут выполняться дольше, чем локальные к
    оманды, командлет Import-PSSession добавляет к каждой импортируемой команде
     параметр AsJob. Этот параметр позволяет выполнять команды в качестве фонов
    ых заданий Windows PowerShell. Дополнительные сведения см. в разделе about_
    Jobs.
    
    При использовании командлета Import-PSSession оболочка Windows PowerShell д
    обавляет импортируемые команды во временный модуль, который существует толь
    ко в рамках данного сеанса, и возвращает объект, представляющий этот модуль
    . Чтобы создать сохраняющийся модуль, который можно будет использовать в по
    следующих сеансах, используйте командлет Export-PSSession.
    
    Командлет Import-PSSession использует функцию косвенного удаленного взаимод
    ействия Windows PowerShell. При импорте команд в текущий сеанс они косвенно
     выполняются в исходном сеансе или в аналогичном сеансе на исходном компьют
    ере.
    
ПАРАМЕТРЫ
    -AllowClobber [<SwitchParameter>]
        Импортирует указанные команды, даже если их имена совпадают с именами к
        оманд в текущем сеансе.
        
        В случае импорта команды, имя которой совпадает с именем команды в теку
        щем сеансе, импортируемая команда скрывает или заменяет исходную. Допол
        нительные сведения см. в разделе about_Command_Precedence.
        
        По умолчанию командлет Import-PSSession не импортирует команды, имена к
        оторых совпадают с именами команд в текущем сеансе.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ArgumentList <Object[]>
        Импортирует вариант команды, получаемый при использовании заданных аргу
        ментов (значений параметров). 
        
        Например, чтобы импортировать вариант команды Get-Item на диске сертифи
        катов (Cert:) в сеансе $s, введите команду "import-pssession -session $
        s -command get-item -argumentlist cert:".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Все команды в сеансе PSSession, кр
        оме команд, имена которых совпадают с именами команд в текущем сеансе.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CommandName <string[]>
        Импортирует только команды с заданными именами или шаблонами имен. Подс
        тановочные знаки разрешены. Используйте имя "CommandName" или псевдоним
         "Name".
        
        По умолчанию командлет Import-PSSession импортирует из сеанса все коман
        ды, кроме тех, имена которых совпадают с именами команд в текущем сеанс
        е. Это позволяет избежать скрытия и замены команд в сеансе импортируемы
        ми командами. Чтобы импортировать все команды, даже те, которые скрываю
        т или заменяют другие команды, следует использовать параметр AllowClobb
        er.
        
        Если используется параметр CommandName, файлы форматирования команд не 
        импортируются, если не используется параметр FormatTypeName. Аналогично
        , если используется параметр FormatTypeName, ни одна из команд не будет
         импортироваться, если не используется параметр CommandName.
        
        Требуется?                    false
        Позиция?                    3
        Значение по умолчанию                Все команды в сеансе PSSession, кр
        оме команд, имена которых совпадают с именами команд в текущем сеансе.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -CommandType <CommandTypes>
        Импортирует командные объекты только указанных типов. По умолчанию испо
        льзуется значение Cmdlet. Используйте "CommandType" или псевдоним "Type
        ". 
        
        Допустимые значения:
        -- Alias: псевдонимы Windows PowerShell в удаленном сеансе.
        -- All: командлеты и функции в удаленном сеансе.
        -- Application: все файлы, отличные от файлов Windows PowerShell, котор
        ые расположены по путям, указанным в переменной среды Path ($env:path) 
        в удаленном сеансе, в том числе файлы TXT, EXE и DLL.
        -- Cmdlet: командлеты в удаленном сеансе. По умолчанию используется зна
        чение "Cmdlet".
        -- ExternalScript: файлы PS1, которые расположены по путям, указанным в
         переменной среды Path ($env:path) в удаленном сеансе.
        -- Filter and Function: функции Windows PowerShell в удаленном сеансе.
        -- Script: блоки скриптов в удаленном сеансе.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Все команды в сеансе PSSession, кр
        оме команд, имена которых совпадают с именами команд в текущем сеансе.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FormatTypeName <string[]>
        Импортирует инструкции по форматированию для заданных типов Microsoft .
        NET Framework. Введите имена типов. Подстановочные знаки разрешены. 
        
        Значением этого параметра должно быть имя типа, возвращаемое командой G
        et-FormatData в сеансе, из которого импортируются команды. Чтобы получи
        ть все данные форматирования в удаленном сеансе, введите *.
        
        Если команда не включает параметр CommandName или FormatTypeName, коман
        длет Import-PSSession 
        импортирует инструкции по форматированию для всех типов .NET Framework,
         возвращаемых командой Get-FormatData в удаленном сеансе.
        
        Если используется параметр FormatTypeName, ни одна из команд не будет и
        мпортироваться, если не используется параметр CommandName.
        Аналогично, если используется параметр CommandName, файлы форматировани
        я команд не импортируются, если не используется параметр FormatTypeName
        .
        
        Требуется?                    false
        Позиция?                    4
        Значение по умолчанию                Типы в пространстве имен System.Ma
        nagement.Automation
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Module <string[]>
        Импортирует только команды из заданных оснасток и модулей Windows Power
        Shell. Введите имена оснасток и модулей. Подстановочные знаки запрещены
        .
        
        Дополнительные сведения см. в разделах about_PSSnapins и Import-Module.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Все команды в сеансе PSSession, кр
        оме команд, имена которых совпадают с именами команд в текущем сеансе.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Prefix <string>
        Добавляет заданный префикс к существительным в именах импортируемых ком
        анд.
        
        Этот параметр используется для предотвращения конфликтов имен, которые 
        могут возникнуть, если несколько команд в сеансе имеют одинаковые имена
        . 
        Например, если указать префикс "Remote" и импортировать командлет Get-D
        ate, командлет в сеансе будет называться Get-RemoteDate, и система не б
        удет путать его с исходным командлетом Get-Date.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Session <PSSession>
        Задает сеанс PSSession, из которого импортируются командлеты. Введите п
        еременную, содержащую объект сеанса, или команду, получающую объект сеа
        нса, например New-PSSession или Get-PSSession. Можно указать только оди
        н сеанс. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать объекты этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSModuleInfo
        Командлет Import-PSSession возвращает тот же объект модуля, что и коман
        длеты New-Module и Get-Module. Однако импортированный модуль является в
        ременным и существует только в рамках текущего сеанса. Чтобы создать на
         диске постоянный модуль, воспользуйтесь командлетом Export-PSSession.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Import-PSSession использует инфраструктуру удаленного взаимод
        ействия Windows PowerShell. Чтобы использовать этот командлет, компьюте
        р должен быть настроен для удаленного взаимодействия WS-Management. Доп
        олнительные сведения см. в разделах about_Remote и about_Remote_Require
        ments. 
        
        Командлет Import-PSSession не позволяет импортировать переменные и пост
        авщики Windows PowerShell.
        
        При импорте команд, имена которых совпадают с именами команд в текущем 
        сеансе, импортируемые команды могут скрывать псевдонимы, функции и кома
        ндлеты в сеансе, а также заменять функции и переменные в сеансе. Дополн
        ительные сведения см. в разделе about_Command_Precedence.
        
        Командлет Import-PSSession преобразует все команды в функции перед их и
        мпортом. В результате импортированные команды работают не так, как они 
        бы работали в случае сохранения своего исходного типа команд. Например,
         если импортировать командлет из сеанса PSSession, а затем импортироват
        ь командлет с тем же именем из модуля или оснастки, по умолчанию всегда
         будет выполняться командлет из сеанса PSSession, поскольку функции име
        ют приоритет по сравнению с командлетами. И наоборот, если импортироват
        ь псевдоним в сеанс, у котором имеется одноименный псевдоним, всегда бу
        дет использоваться исходный псевдоним, поскольку псевдонимы имеют приор
        итет по сравнению с функциями. Дополнительные сведения см. в разделе ab
        out_Command_Precedence.
        
        Командлет Import-PSSession использует для отображения хода выполнения к
        оманды командлет Write-Progress. Во время выполнения команды отображает
        ся индикатор выполнения.
        
        Чтобы найти команды для импорта, командлет Import-PSSession с помощью к
        омандлета Invoke-Command запускает в сеансе PSSession команду Get-Comma
        nd. Для получения данных форматирования для команд используется командл
        ет Get-FormatData. При выполнении команды Import-PSSession могут появля
        ться сообщения об ошибках командлетов Invoke-Command, Get-Command и Get
        -FormatData. Кроме того, командлет Import-PSSession не позволяет импорт
        ировать команды из сеансов PSSession, в которых отсутствуют командлеты 
        Get-Command, Get-FormatData, Select-Object и Get-Help.
        
        На импортированные команды накладываются те же ограничения, что и на др
        угие удаленные команды, включая невозможность запускать программы с пол
        ьзовательским интерфейсом, например "Блокнот".
        
        Поскольку профили Windows PowerShell выполняются вне сеансов PSSessions
        , команды, добавляемые в сеанс через профиль, недоступны командлету Imp
        ort-PSSession. Чтобы импортировать команды из профиля, необходимо с пом
        ощью команды Invoke-Command вручную запустить профиль в сеансе PSSessio
        n, прежде чем импортировать команды. 
        
        Временный модуль, создаваемый командлетом Import-PSSession, может включ
        ать файл форматирования, даже если команда не импортирует данные формат
        ирования. Если команда не импортирует данные форматирования, ни один из
         создаваемых файлов форматирования, не будет содержать данных форматиро
        вания.
        
        Чтобы можно было использовать командлет Import-PSSession, политика выпо
        лнения в текущем сеансе не может иметь значение Restricted или AllSigne
        d, поскольку создаваемый командлетом Import-PSSession модуль содержит н
        еподписанные файлы скриптов, которые запрещены этими политиками. Чтобы 
        использовать командлет Import-PSSession без изменения политики выполнен
        ия для локального компьютера, необходимо с помощью параметра Scope кома
        ндлета Set-ExecutionPolicy задать менее жесткую политику выполнения для
         одного процесса.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$s = new-pssession -computername Server01
    
    C:\PS> import-pssession -session $s
    
    
    Описание
    -----------
    Эта команда импортирует в текущий сеанс все команды из сеанса PSSession на 
    компьютере Server01, кроме команд, имена которых совпадают с именами команд
     в текущем сеансе. 
    
    Поскольку в этой команде не используется параметр CommandName, она также им
    портирует все данные форматирования, необходимые импортируемым командам.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$s = new-pssession https://ps.testlabs.com/powershell
    
    C:\PS> import-pssession -session $s -commandname *-test -formatTypeName *
    
    C:\PS> new-test -name test1
    
    C:\PS> get-test test1 | run-test
    
    
    Описание
    -----------
    Эти команды импортируют в локальный сеанс команды с именами, заканчивающими
    ся на "-test", и демонстрируют использование импортированного командлета.
    
    Первая команда с помощью командлета New-PSSession создает сеанс PSSession. 
    Она сохраняет сеанс PSSession в переменной $s.
    
    Вторая команда с помощью командлета Import-PSSession импортирует команды из
     сеанса PSSession в переменной $s в текущий сеанс. Для задания команд с сущ
    ествительным "Test" используется параметр CommandName, а для импорта данных
     форматирования для этих команд используется параметр FormatTypeName.
    
    The third and fourth commands use the imported commands in the current sess
    ion. Поскольку импортированные командлеты фактически добавляются в локальны
    й сеанс, для их запуска используется локальный синтаксис. Для выполнения им
    портированной команды не нужно использовать командлет Invoke-Command.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$s1 = new-pssession -computername s1 
    
    C:\PS> $s2 = new-pssession -computername s2
    
    C:\PS> import-pssession -session s1 -type cmdlet -name New-Test, Get-Test -
    FormatTypeName *
    
    C:\PS> import-pssession -session s2 -type cmdlet -name Set-Test -FormatType
    Name *
    
    C:\PS> new-test Test1 | set-test -runtype full
    
    
    Описание
    -----------
    В этом примере показано, что импортированные командлеты можно использовать 
    так же, как и локальные командлеты. 
    
    Эти команды импортируют командлеты New-Test и Get-Test из сеанса PSSession 
    на компьютере Server01 и командлет Set-Test из сеанса PSSession на компьюте
    ре Server02. 
    
    Хотя эти командлеты и были импортированы из различных сеансов PSSession, об
    ъекты можно по конвейеру передавать из одного командлета в другой без ошибо
    к.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$s = new-pssession -computername Server01
    
    C:\PS> import-pssession -session $s -commandname *-test* -formattypename *
    
    C:\PS> $batch = new-test -name Batch -asjob
    
    C:\PS> receive-job $batch
    
    
    Описание
    -----------
    В этом примере показано, как выполнить импортированную команду в качестве ф
    онового задания. 
    
    Поскольку импортированные команды могут выполняться дольше, чем локальные к
    оманды, командлет Import-PSSession добавляет к каждой импортируемой команде
     параметр AsJob. Параметр AsJob позволяет выполнять команду в качестве фоно
    вого задания.
    
    Первая команда создает сеанс PSSession на компьютере Server01 и сохраняет о
    бъект PSSession в переменной $s.
    
    Вторая команда с помощью командлета Import-PSSession импортирует командлеты
     Test из сеанса PSSession в переменной $s в текущий сеанс.
    
    Третья команда использует параметр AsJob импортированного командлета New-Te
    st для запуска команды New-Test в качестве фонового задания. Команда сохран
    яет объект задания, возвращенный командлетом New-Test, в переменной $batch.
    
    Четвертая команда использует командлет Receive-Job для получения результато
    в задания в переменной $batch.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$s = new-pssession -comp Server01
    
    C:\PS> invoke-command -session $s {import-module TestManagement}
    
    C:\PS> import-pssession -session $s -module TestManagement
    
    
    Описание
    -----------
    В этом примере показано, как импортировать в текущий сеанс командлеты и фун
    кции из модуля Windows PowerShell на удаленном компьютере.
    
    Первая команда создает сеанс PSSession на компьютере Server01 и сохраняет е
    го в переменной $s. 
    
    Вторая команда использует командлет Invoke-Command для выполнения команды I
    mport-Module в сеансе PSSession, указанном в переменной $s.
    
    Обычно модуль добавляется во все сеансы с помощью команды Import-Module в п
    рофиле Windows PowerShell, однако профили не выполняются в сеансах PSSessio
    ns.
    
    Третья команда использует параметр Module командлета Import-PSSession, чтоб
    ы импортировать в текущий сеанс командлеты и функции из модуля.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>import-pssession $s -CommandName Get-Date, SearchHelp  -formatTypeNam
    e * -AllowClobber
    
    
    Name              : tmp_79468106-4e1d-4d90-af97-1154f9317239_tcw1zunz.ttf
    Path              : C:\Users\User01\AppData\Local\Temp\tmp_79468106-4e1d-4d
    90-af97-1154f9317239_tcw1zunz.ttf\tmp_79468106-4e1d-4d90-af97-1154f9317239_
                        tcw1zunz.ttf.psm1
    Description       : Implicit remoting for http://server01.corp.fabrikam.com
    /wsman
    Guid              : 79468106-4e1d-4d90-af97-1154f9317239
    Version           : 1.0
    ModuleBase        : C:\Users\User01\AppData\Local\Temp\tmp_79468106-4e1d-4d
    90-af97-1154f9317239_tcw1zunz.ttf
    ModuleType        : Script
    PrivateData       : {ImplicitRemoting}
    AccessMode        : ReadWrite
    ExportedAliases   : {}
    ExportedCmdlets   : {}
    ExportedFunctions : {[Get-Date, Get-Date], [SearchHelp, SearchHelp]}
    ExportedVariables : {}
    NestedModules     : {}
    
    
    Описание
    -----------
    В этом примере показано, что командлет Import-PSSession создает модуль во в
    ременном файле на диске. Кроме того, в нем показано, что все команды преобр
    азуются в функции, прежде чем они будут импортированы в текущий сеанс.
    
    В этой команде для импорта командлета Get-Date и функции SearchHelp в текущ
    ий сеанс используется командлет Import-PSSession. 
    
    Командлет Import-PSSession возвращает объект PSModuleInfo, представляющий в
    ременный модуль. Значение свойства Path показывает, что командлет Import-PS
    Session создал во временной папке файл модуля скрипта (PSM1). Свойство Expo
    rtedFunctions показывает, что командлет Get-Date и функция SearchHelp были 
    импортированы в виде функций.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>import-pssession $s -CommandName Get-Date -formatTypeName * -AllowClo
    bber
    
    C:\PS> get-command get-date
    
    CommandType   Name       Definition
    -----------   ----       ----------
    Function      Get-Date   ...
    Cmdlet        Get-Date   Get-Date [[-Date] <DateTime>] [-Year <Int32>] [-Mo
    nth <Int32>]
    
    C:\PS> Get-Date
    09074   
    
    C:\PS> (get-command -type cmdlet -name get-date).pssnapin.name
    Microsoft.PowerShell.Utility
    
    C:\PS> Microsoft.PowerShell.Utility\get-date
    
    Sunday, March 15, 2009 2:08:26 PM
    
    
    Описание
    -----------
    В этом примере показано, как выполнить команду, скрытую импортированной ком
    андой.
    
    Первая команда импортирует командлет Get-Date из сеанса PSSession в перемен
    ной $s. Поскольку текущий сеанс включает командлет Get-Date, в команде необ
    ходимо указать параметр AllowClobber.
    
    Вторая команда с помощью командлета Get-Command получает команды Get-Date в
     текущем сеансе. Выходные данные показывают, что сеанс включает исходный ко
    мандлет Get-Date и функцию Get-Date. Функция Get-Date выполняет импортирова
    нный командлет Get-Date в сеансе PSSession в переменной $s.
    
    Третья команда выполняет команду Get-Date. Поскольку функции имеют приорите
    т перед командлетами, Windows PowerShell выполняет импортированную функцию 
    Get-Date, которая возвращает юлианскую дату.
    
    Четвертая и пятая команды показывают, как с помощью полного имени выполнить
     команду, скрытую импортированной командой. 
    
    Четвертая команда получает имя оснастки Windows PowerShell, которая добавил
    а в текущий сеанс исходный командлет Get-Date.
    
    Пятая команда с помощью заданного оснасткой полного имени командлета Get-Da
    te выполняет команду Get-Date.
    
    Дополнительные сведения о приоритете команд и скрытых командах см. в раздел
    е about_Command_Precedence.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>import-pssession -session $s -commandName *Item* -AllowClobber
    
    
    Описание
    -----------
    Эта команда импортирует команды, имена которых включают слово "Item", из се
    анса PSSession в переменной $s. Поскольку команда включает параметр Command
    Name, но не включает параметр FormatTypeData, импортируется только команда.
    
    Это команду следует использовать, если для выполнения команды на удаленном 
    компьютере используется командлет Import-PSSession, а в текущем сеансе уже 
    имеются данные форматирования для команды.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>$m = import-pssession -session $s -CommandName *bits* -formattypename
     *bits*
    
    C:\PS> get-command -module $m
    
    CommandType     Name
    -----------     ----
    Function        Add-BitsFile
    Function        Complete-BitsTransfer
    Function        Get-BitsTransfer
    Function        Remove-BitsTransfer
    Function        Resume-BitsTransfer
    Function        Set-BitsTransfer
    Function        Start-BitsTransfer
    Function        Suspend-BitsTransfer
    
    
    Описание
    -----------
    Эта команда показывает, как с помощью параметра Module командлета Get-Comma
    nd определить, какие команды были импортированы в сеанс с помощью команды I
    mport-PSSession.
    
    Первая команда с помощью командлета Import-PSSession импортирует из сеанса 
    PSSession в переменной $s команды, имена которых включают слово "bits". Ком
    анда Import-PSSession возвращает временный модуль и сохраняет его в перемен
    ной $m.
    
    Вторая команда с помощью командлета Get-Command получает команды, экспортир
    ованные модулем в переменной $m. 
    
    Параметр Module принимает строковое значение, которое обозначает имя модуля
    . Однако при отправке объекта модуля Windows PowerShell использует метод To
    String объекта модуля, возвращающий имя модуля. 
    
    Команда Get-Command эквивалентна команде "get-command $m.name".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135221
    about_Command_Precedence 
    New-PSSession 
    Export-PSSession 
    about_Jobs 
    about_PSSessions 



ImportSystemModules

ImportSystemModules 



Invoke-Command

ИМЯ
    Invoke-Command
    
ОПИСАНИЕ
    Выполняет команды на локальном и удаленных компьютерах.
    
СИНТАКСИС
    Invoke-Command [-ScriptBlock] <scriptblock> [[-ComputerName] <string[]>] [-
    ApplicationName <string>] [-AsJob] [-Authentication {Default | Basic | Nego
    tiate | NegotiateWithImplicitCredential | Credssp | Digest | Kerberos}] [-C
    ertificateThumbprint <string>] [-ConfigurationName <string>] [-Credential 
    PSCredential>] [-HideComputerName] [-JobName <string>] [-Port <int>] [-Sess
    ionOption <PSSessionOption>] [-ThrottleLimit <int>] [-UseSSL] [-ArgumentLis
    t <Object[]>] [-InputObject <psobject>] [<CommonParameters>]
    
    Invoke-Command [-FilePath] <string> [[-ComputerName] <string[]>] [-Applicat
    ionName <string>] [-AsJob] [-Authentication {Default | Basic | Negotiate | 
    NegotiateWithImplicitCredential | Credssp | Digest | Kerberos}] [-Configura
    tionName <string>] [-Credential <PSCredential>] [-HideComputerName] [-JobNa
    me <string>] [-Port <int>] [-SessionOption <PSSessionOption>] [-ThrottleLim
    it <int>] [-UseSSL] [-ArgumentList <Object[]>] [-InputObject <psobject>] [
    CommonParameters>]
    
    Invoke-Command [-FilePath] <string> [[-Session] <PSSession[]>] [-AsJob] [-H
    ideComputerName] [-JobName <string>] [-ThrottleLimit <int>] [-ArgumentList 
    <Object[]>] [-InputObject <psobject>] [<CommonParameters>]
    
    Invoke-Command [-FilePath] <string> [[-ConnectionURI] <Uri[]>] [-AllowRedir
    ection] [-AsJob] [-Authentication {Default | Basic | Negotiate | NegotiateW
    ithImplicitCredential | Credssp | Digest | Kerberos}] [-ConfigurationName 
    string>] [-Credential <PSCredential>] [-HideComputerName] [-JobName <string
    >] [-SessionOption <PSSessionOption>] [-ThrottleLimit <int>] [-ArgumentList
     <Object[]>] [-InputObject <psobject>] [<CommonParameters>]
    
    Invoke-Command [-ScriptBlock] <scriptblock> [-ArgumentList <Object[]>] [-In
    putObject <psobject>] [<CommonParameters>]
    
    Invoke-Command [-ScriptBlock] <scriptblock> [[-Session] <PSSession[]>] [-As
    Job] [-HideComputerName] [-JobName <string>] [-ThrottleLimit <int>] [-Argum
    entList <Object[]>] [-InputObject <psobject>] [<CommonParameters>]
    
    Invoke-Command [-ScriptBlock] <scriptblock> [[-ConnectionURI] <Uri[]>] [-Al
    lowRedirection] [-AsJob] [-Authentication {Default | Basic | Negotiate | Ne
    gotiateWithImplicitCredential | Credssp | Digest | Kerberos}] [-Certificate
    Thumbprint <string>] [-ConfigurationName <string>] [-Credential <PSCredenti
    al>] [-HideComputerName] [-JobName <string>] [-SessionOption <PSSessionOpti
    on>] [-ThrottleLimit <int>] [-ArgumentList <Object[]>] [-InputObject <psobj
    ect>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Invoke-Command выполняет команды на локальном или удаленном компь
    ютере и возвращает все выходные данные команд, включая ошибки. С помощью од
    ной команды Invoke-Command можно выполнять команды на нескольких компьютера
    х. 
    
    Для выполнения одной команды на удаленном компьютере следует использовать п
    араметр ComputerName. Чтобы выполнить последовательность команд, совместно 
    использующих данные, создайте сеанс PSSession (постоянное подключение) на у
    даленном компьютере и используйте параметр Session командлета Invoke-Comman
    d для выполнения команды в рамках PSSession.
    
    Также можно использовать Invoke-Command на локальном компьютере для анализа
     или выполнения строки или блока скрипта как команды. Windows PowerShell пр
    еобразует блок скрипта в команду и немедленно выполняет эту команду в рамка
    х текущего сеанса вместо отображения текста строки в командной строке. 
    
    Перед использованием Invoke-Command для выполнения команд на удаленном комп
    ьютере ознакомьтесь с разделом about_Remote.
    
ПАРАМЕТРЫ
    -AllowRedirection [<SwitchParameter>]
        Разрешает перенаправление данного соединения на альтернативный URI. 
        
        При использовании параметра ConnectionURI удаленный узел может вернуть 
        инструкцию с перенаправлением на другой URI. По умолчанию Windows Power
        Shell не перенаправляет соединения, но можно воспользоваться параметром
         AllowRedirection и разрешить перенаправление соединений.
        
        Кроме того, можно ограничить число операций перенаправления подключения
        , присвоив соответствующее значение свойству MaximumConnectionRedirecti
        onCount привилегированной переменной $PSSessionOption или свойству Maxi
        mumConnectionRedirectionCount значения параметра SessionOption. По умол
        чанию используется значение 5. Дополнительные сведения см. в описании п
        араметра SessionOption и в разделе справки для командлета New-PSSession
        Option.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ApplicationName <string>
        Задает сегмент имени приложения в URI подключения. Этот параметр служит
         для указания имени приложения, если в команде не используется параметр
         ConnectionURI.
        
        По умолчанию используется значение привилегированной переменной $PSSess
        ionApplicationName на локальном компьютере. Если эта привилегированная 
        переменная не определена, используется значение по умолчанию "WSMAN". Э
        то значение подходит для большинства случаев. Дополнительные сведения с
        м. в разделе about_Preference_Variables. 
        
        Служба WinRM использует имя приложения для выбора прослушивателя для об
        служивания запроса подключения. Значение этого параметра должно соответ
        ствовать значению свойства URLPrefix прослушивателя на удаленном компью
        тере.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                WSMAN
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -ArgumentList <Object[]>
        Значения локальных переменных в команде. Переменные в команде заменяютс
        я этими значениями перед выполнением команды на удаленном компьютере. В
        ведите значения, разделенные запятыми. Значения связываются с переменны
        ми в порядке перечисления. Псевдоним ArgumentList — "Args".
        
        Параметр ArgumentList может содержать как фактические значения, наприме
        р "1024", так и локальные переменные, например "$max".
        
        Чтобы использовать в команде локальные переменные, используйте следующи
        й формат команды.
        {param($<name1>[, $<name2>]...) <команда-с-локальными-переменными>} -Ar
        gumentList <значение | $локальная-переменная>
        
        Ключевое слово "param" служит для перечисления локальных переменных, ис
        пользуемых в команде. Параметр ArgumentList содержит значения переменны
        х в порядке их перечисления.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -AsJob [<SwitchParameter>]
        Запускает команду в качестве фонового задания на удаленном компьютере. 
        Этот параметр служит для запуска команд, выполнение которых занимает дл
        ительное время. 
        
        При использовании параметра AsJob команда возвращает объект, представля
        ющий задание, а затем появляется командная строка. Можно продолжить раб
        оту в рамках данного сеанса, пока задание завершается.  Чтобы управлять
         заданием, используйте командлеты Job. Чтобы получить результаты задани
        я, используйте командлет Receive-Job. 
        
        Использование параметра AsJob аналогично использованию команды Invoke-C
        ommand для удаленного запуска команды Start-Job. Однако при использован
        ии AsJob задание создается на локальном компьютере, хотя и выполняется 
        на удаленном компьютере, а результаты удаленного задания автоматически 
        возвращаются на локальный компьютер. 
        
        Дополнительные сведения о фоновых заданиях в Windows PowerShell см. в р
        азделах about_Jobs и about_Remote_Jobs.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authentication <AuthenticationMechanism>
        Задает механизм, используемый при проверке подлинности учетных данных п
        ользователя.   Допустимые значения: Default, Basic, Credssp, Digest, Ke
        rberos, Negotiate и NegotiateWithImplicitCredential.  По умолчанию испо
        льзуется значение "Default".
        
        Проверка подлинности CredSSP доступна только в Windows Vista, Windows S
        erver 2008 и более поздних версиях Windows.
        
        Дополнительные сведения о значениях этого параметра см. в описании пере
        числения System.Management.Automation.Runspaces.AuthenticationMechanism
         в библиотеке MSDN.
        
        ВНИМАНИЕ Проверка подлинности CredSSP, при которой учетные данные поль
        зователя передаются на удаленный компьютер, предназначена для команд, к
        оторые должны пройти процедуру проверки подлинности на нескольких ресур
        сах, например при доступе к удаленному общему сетевому ресурсу. Такой м
        еханизм повышает угрозы безопасности удаленных операций. Если безопасно
        сть удаленного компьютера нарушена, передаваемые ему учетные данные мог
        ут использоваться для управления сетевым сеансом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Default
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CertificateThumbprint <string>
        Задает цифровой сертификат с открытым ключом (X509) учетной записи поль
        зователя, который располагает разрешением для выполнения этого действия
        . Введите отпечаток сертификата.  
        
        Сертификаты используются при проверке подлинности на основе сертификата
         клиента. Их можно сопоставить только с учетными записями локальных пол
        ьзователей; они не работают с учетными записями доменов. 
        
        Чтобы получить отпечаток сертификата, воспользуйтесь командой Get-Item 
        или Get-ChildItem в Windows PowerShell на диске Cert:.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string[]>
        Задает компьютеры, на которых выполняется команда. По умолчанию использ
        уется значение "Локальный компьютер". 
        
        При использовании параметра ComputerName Windows PowerShell создает вре
        менное подключение, которое используется только для запуска заданной ко
        манды и затем закрывается. Если требуется создать постоянное подключени
        е, используйте параметр Session.
        
        Введите имя NETBIOS, IP-адрес или полное доменное имя одного или нескол
        ьких компьютеров в виде списка разделенных запятыми значений. Чтобы ука
        зать локальный компьютер, введите имя компьютера, "localhost" или точку
         (.).
        
        Для использования IP-адреса в значении параметра ComputerName в команду
         необходимо включить параметр Credential. Кроме того, необходимо настро
        ить компьютер на использование транспорта HTTPS или включить IP-адрес у
        даленного компьютера в список TrustedHosts WinRM на локальном компьютер
        е. Инструкции по добавлению имени компьютера в список TrustedHosts см. 
        в статье "Добавление компьютера в список доверенных узлов" в разделе ab
        out_Remote_Troubleshooting.
        
        Примечание. Чтобы включить локальный компьютер в значение параметра Com
        puterName под управлением Windows Vista и более поздних версий Windows,
         необходимо запускать Windows PowerShell командой "Запуск от имени адми
        нистратора".
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -ConfigurationName <string>
        Задает конфигурацию нового сеанса PSSession. 
        
        Введите имя конфигурации или полный URI ресурса для конфигурации сеанса
        . Если указано только имя конфигурации, перед ним добавляется следующий
         URI схемы: http://schemas.microsoft.com/powershell.
        
        Конфигурация сеанса находится на удаленном компьютере. Если указанная к
        онфигурация сеанса не существует на удаленном компьютере, команда завер
        шается с ошибкой.
        
        По умолчанию используется значение привилегированной переменной $PSSess
        ionConfigurationName на локальном компьютере. Если значение этой привил
        егированной переменной не установлено, используется значение по умолчан
        ию "Microsoft.PowerShell". Дополнительные сведения см. в разделе about_
        preference_variables.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                http://Schemas.Microsoft.com/Power
        Shell/Microsoft.PowerShell
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -ConnectionURI <Uri[]>
        Задает универсальный идентификатор ресурса (URI), определяющий конечную
         точку соединения. Значение URI должно быть указано полностью. 
        
        Строка имеет следующий формат: 
            <Транспорт>://<Имя_компьютера>:<Порт>/
        
        По умолчанию используется следующее значение.
            http://localhost:80/WSMAN
        
        Допустимые значения сегмента транспорта в URI: HTTP и HTTPS. Если в ком
        анде не указан параметр ConnectionURI, для указания значений URI можно 
        использовать параметры UseSSL, ComputerName, Port и ApplicationName. 
        
        Если конечный компьютер перенаправляет соединение на другой URI, Window
        s PowerShell предотвращает перенаправление, если в команде не задан пар
        аметр AllowRedirection.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                http://localhost:80/wsman
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите переменную, содержащую объект PSCredential, например объект, со
        здаваемый командлетом Get-Credential. При вводе имени пользователя появ
        ится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -FilePath <string>
        Выполняет заданный локальный скрипт на одном или нескольких удаленных к
        омпьютерах. Введите путь и имя файла скрипта или передайте путь к скрип
        ту командлету Invoke-Command по конвейеру. Скрипт должен находиться на 
        локальном компьютере или в каталоге, к которому можно получить доступ с
         локального компьютера. Чтобы указать значения параметров скрипта, испо
        льзуйте параметр ArgumentList.
        
        При использовании этого параметра Windows PowerShell преобразует указан
        ный файл скрипта в блок скрипта, передает блок скрипта на удаленный ком
        пьютер и выполняет его на удаленном компьютере.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -HideComputerName [<SwitchParameter>]
        Исключает имя компьютера каждого объекта из выводимых результатов. По у
        молчанию на дисплее отображается имя компьютера, создавшего объект.
        
        Этот параметр влияет только на выводимый результат. Это не изменяет объ
        ект.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает входные данные команды. Введите переменную, содержащую объекты, 
        либо получающую их команду или выражение. 
        
        При использовании параметра InputObject следует использовать в значении
         параметра ScriptBlock автоматическую переменную $input для представлен
        ия входных объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -JobName <string>
        Задает понятное имя фонового задания. По умолчанию заданиям присваивают
        ся имена "Job<n>", где <n> — порядковый номер.  Этот параметр допустим 
        только с параметром AsJob.
        
        Если в команде используется параметр JobName, команда выполняется как з
        адание, и Invoke-Command возвращает объект задания, даже если в команду
         не включен параметр AsJob.
        
        Чтобы получить дополнительные сведения о фоновых заданиях Windows Power
        Shell, см. раздел about_Jobs.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Job<n>
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Port <int>
        Задает сетевой порт на удаленном компьютере, используемый для данной ко
        манды. По умолчанию используется значение "Порт 80" (HTTP-порт).
        
        Перед использованием альтернативного порта необходимо настроить прослуш
        иватель WinRM на удаленном компьютере на прослушивание этого порта. Что
        бы настроить прослушиватель, введите следующие две команды в командной 
        строке Windows PowerShell.
        
        remove-item -path wsman:\Localhost\listener\listener* -recurse
        new-item -path wsman:\Localhost\listener -Transport http -Address * -po
        rt <номер_порта>
        
        Не используйте параметр Port, если этого можно избежать. Порт, указанны
        й в команде, распространяется на все компьютеры или сеансы, для которых
         используется эта команда. Параметр альтернативного порта может позволи
        ть предотвратить выполнение этой команды на всех компьютерах.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ScriptBlock <scriptblock>
        Задает выполняемые команды. Чтобы создать блок скрипта, заключите коман
        ды в фигурные скобки ( { } ). Это обязательный параметр.
        
        По умолчанию оценка значений всех переменных команды выполняется на уда
        ленном компьютере. Чтобы включить в команду локальные переменные, испол
        ьзуйте параметр ArgumentList.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Session <PSSession[]>
        Выполняет команду в указанных сеансах Windows PowerShell (PSSession). В
        ведите переменную, содержащую объекты PSSession, либо команду, создающу
        ю или получающую объекты PSSession, например New-PSSession или Get-PSSe
        ssion.
        
        При создании сеанса PSSession Windows PowerShell создает постоянное под
        ключение к удаленному компьютеру. Используйте сеанс PSSession для выпол
        нения последовательности связанных команд, работающих с общими данными.
         Для выполнения одной команды или последовательности несвязанных команд
         следует использовать параметр ComputerName.
        
        Для создания сеанса PSSession используйте командлет New-PSSession. Допо
        лнительные сведения см. в разделе about_PSSessions.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -SessionOption <PSSessionOption>
        Устанавливает расширенные параметры сеанса. Введите объект SessionOptio
        n, созданный с помощью командлета New-PSSessionOption.
        
        Значения по умолчанию для параметров определяются значением привилегиро
        ванной переменной $PSSessionOption, если оно задано. В противном случае
         в сеансе используются системные значения по умолчанию.
        
        Описание параметров сеанса, включая значения по умолчанию, см. в раздел
        е справки для командлета New-PSSessionOption. Дополнительные сведения о
         привилегированной переменной $PSSessionOption см. в разделе about_Pref
        erence_Variables.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ThrottleLimit <int>
        Задает максимальное количество одновременных соединений, которые могут 
        быть установлены для выполнения данной команды. Если этот параметр не з
        адан или для него введено значение 0, используется значение по умолчани
        ю 32.
        
        Ограничение скорости относится только к текущей команде, но не к сеансу
         или компьютеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                32
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseSSL [<SwitchParameter>]
        Использует протокол SSL (Secure Sockets Layer) для установки подключени
        я к удаленному компьютеру. По умолчанию SSL не используется.
        
        Протокол WS-Management шифрует все передаваемое по сети содержимое Wind
        ows PowerShell. UseSSL — это дополнительная мера защиты, которая позвол
        яет передавать данные по протоколу HTTPS, а не HTTP.
        
        Если используется этот параметр, но установить SSL-соединение с портом,
         указанным в команде, не удается, команда завершается с ошибкой.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.ScriptBlock
        Можно передать команду командлету Invoke-Command в блоке скрипта по кон
        вейеру. Для представления входных объектов команды следует использовать
         автоматическую переменную $input.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSRemotingJob или результат, созданный выполне
    нной командой
        При использовании параметра AsJob командлет Invoke-Command возвращает о
        бъект задания. В противном случае он возвращает результат, созданный вы
        полненной командой (значением параметра ScriptBlock).
    
    
ПРИМЕЧАНИЯ
    
    
        -- Чтобы использовать параметр ComputerName командлета Invoke-Command д
        ля выполнения команды на локальном компьютере под управлением Windows V
        ista и более поздних версий Windows, необходимо запускать Windows Power
        Shell командой "Запуск от имени администратора".
        
        -- При выполнении команд на нескольких компьютерах Windows PowerShell п
        одключается к компьютерам в том порядке, в котором они указаны в списке
        . Результаты выполнения команд отображаются в порядке поступления резул
        ьтатов от удаленных компьютеров, который может отличаться от порядка вы
        полнения команд.
        
        -- Ошибки, возникающие при выполнении команд с помощью командлета Invok
        e-Command, отображаются в результатах выполнения команд. Ошибки, которы
        е были бы прерывающими при локальном выполнении команды, обрабатываются
         как непрерывающие при удаленном выполнении команды. Такой подход позво
        ляет избежать ситуации, в которой прерывающие ошибки на одном компьютер
        е прервут выполнение команды на всех остальных компьютерах. Данное утве
        рждение справедливо даже при удаленном выполнении команды на одном комп
        ьютере.
        
        -- Если удаленный компьютер не входит в домен, которому доверяет локаль
        ный компьютер, этот компьютер может оказаться неспособным выполнить про
        верку подлинности учетных данных пользователя. Чтобы добавить удаленный
         компьютер в список "доверенных узлов" в WS-Management, используйте сле
        дующую команду в поставщике WSMAN, где <Remote-Computer-Name> — имя уда
        ленного компьютера:
        set-item -path wsman:\Localhost\Client\TrustedHosts -value <имя_удаленн
        ого_компьютера>.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>invoke-command -filepath c:\scripts\test.ps1 -computerName Server01
    
    Disks: C:, D:, E:
    Status: Warning, Normal, Normal
    
    
    Описание
    -----------
    Эта команда выполняет скрипт Test.ps1 на компьютере Server01. 
    
    Команда использует параметр FilePath для указания скрипта, который располож
    ен на локальном компьютере. Скрипт выполняется на удаленном компьютере и во
    звращает результаты на локальный компьютер.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>invoke-command -computername server01 -credential domain01\user01 -sc
    riptblock {get-culture}
    
    
    Описание
    -----------
    Эта команда выполняет команду Get-Culture на удаленном компьютере Server01.
     
    
    Параметр ComputerName используется для задания имени компьютера, а параметр
     Credential — для выполнения команды в контексте безопасности "Domain01\Use
    r01", пользователя с разрешением на выполнение команд. Параметр ScriptBlock
     используется для задания команды, которая должна выполняться на удаленном 
    компьютере.
    
    Windows PowerShell отображает диалоговое окно, в котором необходимо указать
     пароль и метод проверки подлинности для учетной записи User01. Затем коман
    да выполняется на компьютере Server01 и возвращает результаты.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$s = new-pssession -computername server02 -credential domain01\user01
    
    C:\PS> invoke-command -session $s -scriptblock {get-culture}
    
    
    Описание
    -----------
    В этом примере та же команда "Get-Culture" выполняется в сеансе (постоянное
     подключение) на удаленном компьютере Server02. Обычно сеанс создается толь
    ко при выполнении на удаленном компьютере последовательности команд.
    
    Первая команда использует командлет New-PSSession для создания сеанса на уд
    аленном компьютере Server02. После этого она сохраняет сеанс в переменной $
    s.
    
    Вторая команда выполняет команду Get-Culture на компьютере Server02 с помощ
    ью командлета Invoke-Command. Параметр Session используется для задания сеа
    нса, сохраненного в переменной $s. 
    
    Windows PowerShell выполняет команду в рамках сеанса на компьютере Server02
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>invoke-command -computername Server02 -scriptblock {$p = get-process 
    powershell}
    
    C:\PS> invoke-command -computername Server02 -scriptblock {$p.virtualmemory
    size}
    C:\PS>
    
    C:\PS> $s = new-pssession -computername Server02
    C:\PS> invoke-command -session $s -scriptblock {$p = get-process powershell
    }
    C:\PS> invoke-command -session $s -scriptblock {$p.virtualmemorysize}
    17930240
    
    
    Описание
    -----------
    В этом примере сравниваются результаты использования параметров командлета 
    Invoke-Command ComputerName и Session. В нем показано использование сеанса 
    для выполнения последовательности команд, работающих с общими данными.
    
    Первые две команды используют параметр ComputerName командлета Invoke-Comma
    nd для выполнения команд на удаленном компьютере Server02. Первая команда и
    спользует команду Get-Process для получения процесса PowerShell на удаленно
    м компьютере и сохраняет его в переменной $p. Вторая команда получает значе
    ние свойства VirtualMemorySize процесса PowerShell. 
    
    Первая команда выполняется успешно. Но вторая команда выполняется с ошибкой
    , поскольку при использовании параметра ComputerName Windows PowerShell соз
    дает подключение только для выполнения этой команды. После выполнения коман
    ды оболочка закрывает подключение. Переменная $p была создана в одном подкл
    ючении, но она не существует в подключении, созданном для второй команды.
    
    Проблема решается путем создания сеанса (постоянного подключения) на удален
    ном компьютере и запуска обеих связанных команд в рамках одного сеанса.
    
    Третья команда использует командлет New-PSSession для создания сеанса на ко
    мпьютере Server02. После этого она сохраняет сеанс в переменной $s. Четверт
    ая и пятая команды повторяют последовательность команд, выполнявшуюся раньш
    е, но в данном случае используется параметр Session команды Invoke-Command 
    для выполнения обеих команд в рамках одного сеанса. 
    
    В данном случае, поскольку обе команды выполняются в рамках одного сеанса, 
    они выполняются успешно, и переменная $p остается активной в рамках сеанса 
    $s для использования в дальнейшем.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$command = { get-eventlog -log "windows powershell" | where {$_.messa
    ge -like "*certificate*"} }
    
    C:\PS> invoke-command -computername S1, S2 -scriptblock $command
    
    
    Описание
    -----------
    В этом примере показано, как вводить команду, сохраненную в локальной перем
    енной. 
    
    Если вся команда сохранена в локальной переменной, можно указать переменную
     в качестве значения параметра ScriptBlock. Для отправки значения локальной
     переменной не требуется использовать ключевое слово "param" или переменную
     ArgumentList.
    
    Первая команда сохраняет команду Get-Eventlog в переменной $command. Формат
     команды соответствует формату блока скрипта.
    
    Вторая команда использует командлет Invoke-Command для выполнения команды, 
    содержащейся в переменной $command, на удаленных компьютерах S1 и S2.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>invoke-command -computername server01, server02, TST-0143, localhost 
    -configurationname MySession.PowerShell -scriptblock {get-eventlog "windows
     powershell"}
    
    
    Описание
    -----------
    В этом примере показано, как использовать командлет Invoke-Command для выпо
    лнения одной команды на нескольких компьютерах. 
    
    Параметр ComputerName используется в команде для указания компьютеров. Имен
    а компьютеров представлены в формате списка, разделенного запятыми. В списо
    к компьютеров входит значение "localhost", представляющее локальный компьют
    ер.
    
    Команда используется параметр ConfigurationName для указания альтернативной
     конфигурации сеанса Windows PowerShell и параметр ScriptBlock для указания
     команды.
    
    В этом примере команда в блоке скрипта получает события из журнала событий 
    Windows PowerShell на всех удаленных компьютерах.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>$version = invoke-command -computername (get-content machines.txt) -s
    criptblock {(get-host).version}
    
    
    Описание
    -----------
    Эта команда получает версию основного приложения Windows PowerShell, запуще
    нного на 200 удаленных компьютерах. 
    
    Поскольку выполняется только одна команда, не требуется создавать постоянны
    е подключения (сеансы) ко всем компьютерам. Вместо этого для указания компь
    ютеров в команде используется параметр ComputerName.
    
    Команда использует командлет Invoke-Command для выполнения команды Get-Host
    . Для получения значения свойства Version основного приложения Windows Powe
    rShell используется обращение через точку.
    
    Для указания компьютеров используется командлет Get-Content, который получа
    ет содержимое файла с именами компьютеров Machine.txt.
    
    Эти команды выполняются синхронно (по одной за раз). После выполнения коман
    д их выходные данные о всех компьютерах сохраняются в переменной $version. 
    В выходных данных указано имя компьютера, от которого поступили данные.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>$s = new-pssession -computername Server01, Server02
    
    C:\PS> invoke-command -session $s -scriptblock {get-eventlog system} -AsJob
    
    Id   Name    State      HasMoreData   Location           Command
    ---  ----    -----      -----         -----------        --------          
       -------
    1    Job1    Running    True          Server01,Server02  get-eventlog syste
    m
    
    
    C:\PS> $j = Get-Job
    
    C:\PS> $j | format-list -property *
    
    HasMoreData   : True
    StatusMessage :
    Location      : Server01,Server02
    Command       : get-eventlog system
    JobStateInfo  : Running
    Finished      : System.Threading.ManualResetEvent
    InstanceId    : e124bb59-8cb2-498b-a0d2-2e07d4e030ca
    Id            : 1
    Name          : Job1
    ChildJobs     : {Job2, Job3}
    Output        : {}
    Error         : {}
    Progress      : {}
    Verbose       : {}
    Debug         : {}
    Warning       : {}
    StateChanged  :
    
    C:\PS> $results = $j | Receive-Job
    
    
    Описание
    -----------
    Эти команды выполняют фоновое задание на двух удаленных компьютерах. Поскол
    ьку команда Invoke-Command использует параметр AsJob, команды выполняются н
    а удаленных компьютерах, но задание фактически размещается на локальном ком
    пьютере, и результаты передаются на локальный компьютер.
    
    Первая команда использует командлет New-PSSession для создания сеансов на у
    даленных компьютерах Server01 и Server02.
    
    Вторая команда использует командлет Invoke-Command для выполнения фонового 
    задания в рамках каждого сеанса. Параметр AsJob используется для выполнения
     команды в качестве фонового задания. Эта команда возвращает объект задания
    , содержащий два дочерних объекта задания (по объекту для каждого из задани
    й, выполняемых на двух удаленных компьютерах).
    
    Третья команда использует команду Get-Job для сохранения объекта задания в 
    переменной $j. 
    
    Четвертая команда использует оператор конвейера (|) для отправки значения п
    еременной $j командлету Format-List, который выводит все свойства объекта з
    адания в виде списка.
    
    Пятая команда получает результаты выполнения заданий. Она по конвейеру пере
    дает объект задания, сохраненный в переменной $j, командлету Receive-Job и 
    сохраняет результаты в переменной $results.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>$MWFO-LOg = Microsoft-Windows-Forwarding/Operational
    
    C:\PS> invoke-command -computername server01 -scriptblock {param($log, $num
    ) get-eventlog -logname $log -newest $num} -ArgumentList $MWFO-log, 10
    
    
    Описание
    -----------
    В этом примере показано, как включать значения локальных переменных в коман
    ду, выполняемую на удаленном компьютере.
    
    Первая команда сохраняет имя журнала событий Microsoft-Windows-Forwarding/O
    perational в переменной $MWFO-Log.
    
    Вторая команда использует командлет Invoke-Command для выполнения команды G
    et-EventLog на удаленном компьютере Server01. Эта команда получает 10 самых
     последних событий из журнала событий Microsoft-Windows-Forwarding/Operatio
    nal на компьютере Server01.
    
    В этой команде ключевое слово "param" используется для создания двух переме
    нных, $log и $num, которые служат в качестве заполнителей для команды Get-E
    ventLog. Произвольные имена этих заполнителей могут не соответствовать имен
    ам локальных переменных, используемых для установки значений заполнителей.
    
    Значения параметра ArgumentList демонстрируют два различных способа указани
    я значений в списке аргументов. Значение заполнителя $log — значение переме
    нной $MFWO-Log, которое определяется в первой команде. Значение переменной 
    $num равняется 10.
    
    Перед отправкой команды на удаленный компьютер переменные заменяются заданн
    ыми значениями.
    
    
    
    
    
    -------------------------- ПРИМЕР 10 --------------------------
    
    C:\PS>invoke-command -computername S1, S2 -scriptblock {get-process powersh
    ell} 
    
    PSComputerName    Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id
       ProcessName
    --------------    -------  ------    -----      ----- -----   ------     --
       -----------
    S1                575      15        45100      40988   200     4.68     13
    92 powershell
    S2                777      14        35100      30988   150     3.68     67
       powershell
    
    
    C:\PS> invoke-command -computername S1, S2 -scriptblock {get-process powers
    hell} -HideComputerName
    
    Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id   ProcessName
    -------  ------    -----      ----- -----   ------     --   -----------
    575      15        45100      40988   200     4.68     1392 powershell
    777      14        35100      30988   150     3.68     67   powershell
    
    
    Описание
    -----------
    В этом примере показан результат использования параметра HideComputerName к
    омандлета Invoke-Command. 
    
    Первые две команды используют командлет Invoke-Command для выполнения коман
    ды Get-Process для процесса PowerShell. В выходные данные первой команды вх
    одит свойство PsComputerName, содержащее имя компьютера, на котором выполня
    лась команда. В выходные данные второй команды, в которой используется пара
    метр HideComputerName, столбец PsComputerName не входит.
    
    Использования параметра HideComputerName не приводит к изменению объекта. М
    ожно по-прежнему использовать командлеты Format для отображения свойства Ps
    ComputerName любого соответствующего объекта.
    
    
    
    
    
    -------------------------- ПРИМЕР 11 --------------------------
    
    C:\PS>invoke-command -comp (get-content servers.txt) -filepath c:\scripts\s
    ample.ps1 -argumentlist Process, Service
    
    
    Описание
    -----------
    В этом примере командлет Invoke-Command используется для выполнения скрипта
     Sample.ps1 на всех компьютерах, указанных в файле Servers.txt. Для указани
    я файла скрипта в этой команде используется параметр FilePath. Эта команда 
    позволяет выполнить скрипт на удаленных компьютерах, даже если файл скрипта
     недоступен на удаленных компьютерах.
    
    При отправке этой команды содержимое файла Sample.ps1 копируется в блок скр
    ипта, и блок скрипта выполняется на всех удаленных компьютерах. Эта команда
     эквивалентна использованию параметра ScriptBlock для отправки содержимого 
    скрипта.
    
    
    
    
    
    -------------------------- ПРИМЕР 12 --------------------------
    
    C:\PS>$LiveCred = Get-Credential
    
    C:\PS> Invoke-Command -ConfigurationName Microsoft.Exchange `
             -ConnectionUri https://ps.exchangelabs.com/powershell `
             -Credential $LiveCred  -Authentication Basic `
             -scriptblock {Invoke-Command {Set-Mailbox dan -DisplayName "Dan Pa
    rk"}
    
    
    Описание
    -----------
    В этом примере показано, как выполнять команду на удаленном компьютере, ука
    занном с помощью URI (интернет-адреса). В этом конкретном примере на удален
    ном сервере Exchange Server выполняется команда Set-Mailbox. Открывающая ка
    вычка (`) в команде Windows PowerShell является знаком продолжения строки.
    
    Первая команда использует командлет Get-Credential для сохранения учетных д
    анных Windows Live ID в переменной $LiveCred. Когда на экране появится диал
    оговое окно учетных данных, введите учетные данные Windows Live ID.
    
    Вторая команда использует командлет Invoke-Command для выполнения команды S
    et-Mailbox. Параметр ConfigurationName используется командой для указания, 
    что команда должна выполняться в рамках сеанса, конфигурация которого соотв
    етствует конфигурации сеанса Microsoft Exchange. Параметр ConnectionURI ука
    зывает URL-адрес конечной точки сервера Exchange Server. 
    
    Параметр Credential указывает учетные данные Windows Live, сохраненные в пе
    ременной $LiveCred. Параметр AuthenticationMechanism указывает на использов
    ание обычной проверки подлинности. Параметр ScriptBlock задает блок скрипта
    , в котором содержится команда.
    
    
    
    
    
    -------------------------- ПРИМЕР 13 --------------------------
    
    C:\PS>$max = New-PSSessionOption -MaximumRedirection 1
    
    C:\PS> Invoke-Command -ConnectionUri https://ps.exchangelabs.com/powershell
     `
             -scriptblock {Invoke-Command {Get-Mailbox dan} `
             -AllowRedirection -SessionOption $max
    
    
    Описание
    -----------
    Эта команда показывает, как использовать параметры AllowRedirection и Sessi
    onOption для управления перенаправлением URI в удаленную команду.
    
    Первая команда использует командлет New-PSSessionOption для создания объект
    а PSSessionOpption, сохраняемого в переменной $max. Команда использует пара
    метр MaximumRedirection для задания свойству MaximumConnectionRedirectionCo
    unt объекта PSSessionOption значения 1. 
    
    Вторая команда использует командлет Invoke-Command для выполнения команды G
    et-Mailbox на удаленном сервере Microsoft Exchange Server. Команда использу
    ет параметр AllowRedirection, чтобы явно разрешить перенаправление соединен
    ия на альтернативную конечную точку. Она также использует параметр SessionO
    ption для указания объекта сеанса, сохраненного в переменной $max.
    
    В результате, если удаленный компьютер, указанный в параметре ConnectionURI
    , возвращает сообщение о перенаправлении, Windows PowerShell выполняет пере
    направление соединения, но если новая конечная точка также возвращает сообщ
    ение о перенаправлении, то обнаруживается превышение счетчика перенаправлен
    ий (равного 1), и команда Invoke-Command возвращает непрерывающую ошибку.
    
    
    
    
    
    -------------------------- ПРИМЕР 14 --------------------------
    
    C:\PS>$so = New-PSSessionOption -SkipCACheck
    
    PS C:\> invoke-command $s { get-hotfix } -SessionOption $so -credential ser
    ver01\user01
    
    
    Описание
    -----------
    В этом примере демонстрируется создание и использование параметра SessionOp
    tion. 
    
    Первая команда создает параметр сеанса с помощью командлета New-PSSessionOp
    tion. Результирующий объект SessionOption сохраняется в параметре $so.
    
    Вторая команда выполняет команду Get-Hotfix на удаленном компьютере с помощ
    ью командлета Invoke-Command. Значением параметра SessionOption является об
    ъект SessionOption, сохраненный в переменной $so.
    
    
    
    
    
    -------------------------- ПРИМЕР 15 --------------------------
    
    C:\PS>enable-wsmanCredSSP -delegate server02
    
    C:\PS> connect-wsman Server02
    
    C:\PS> set-item wsman:\server02*\service\auth\credSSP -value $true
    
    C:\PS> $s = new-pssession server02
    
    C:\PS> invoke-command -session $s -script {get-item \\Net03\Scripts\LogFile
    s.ps1} -authentication credssp -credential domain01\admin01
    
    
    Описание
    -----------
    В этом примере показано, как получить доступ к общему сетевому ресурсу из у
    даленного сеанса. 
    
    Для выполнения команды необходимо включить делегирование CredSSP в параметр
    ах клиента на локальном компьютере и в параметрах службы на удаленном компь
    ютере. Для выполнения команд в этом примере текущий пользователь должен быт
    ь членом группы "Администраторы" на локальном и удаленном компьютере.
    
    Первая команда использует командлет Enable-WSManCredSSP для включения делег
    ирования CredSSP с локального компьютера Server01 на удаленном компьютере S
    erver02. Это позволяет настроить параметр клиента CredSSP на локальном комп
    ьютере.
    
    Вторая команда использует командлет Connect-WSman для подключения к компьют
    еру Server02. Это действие добавляет узел для компьютера Server02 на диск W
    SMan: на локальном компьютере, позволяя просматривать и изменять параметры 
    WS-Management на компьютере Server02.
    
    Третья команда использует командлет Set-Item для изменения значения элемент
    а CredSSP в узле службы компьютера Server02 на значение "True". Это позволя
    ет включить CredSSP в параметрах службы на удаленном компьютере.
    
    Четвертая команда использует командлет New-PSSession для создания сеанса PS
    Session на компьютере Server02. Она сохраняет сеанс PSSession в переменной 
    $s.
    
    Пятая команда использует командлет Invoke-Command для выполнения команды Ge
    t-Item в сеансе в $s, которая возвращает скрипт из общего сетевого ресурса 
    Net03\Scripts. Команда использует параметр Credential и параметр Authentica
    tion со значением CredSSP.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135225
    about_Remote 
    about_PSSessions 
    New-PSSession 
    Get-PSSession 
    Remove-PSSession 
    Enter-PSSession 
    Exit-PSSession 
    WS-Management Provider 



Invoke-Expression

ИМЯ
    Invoke-Expression
    
ОПИСАНИЕ
    Выполняет команды или выражения на локальном компьютере.
    
СИНТАКСИС
    Invoke-Expression [-Command] <string> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Invoke-Expression обрабатывает или выполняет заданную строку в ка
    честве команды и возвращает результаты выражения или команды. Без командлет
    а Invoke-Expression строка, переданная в командную строку, будет возвращена
     без изменений.
    
ПАРАМЕТРЫ
    -Command <string>
        Задает команду или выражение для выполнения. Введите команду или выраже
        ние или введите переменную, которая содержит команду или выражение. Пар
        аметр Command является обязательным.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String или PSObject
        Объект, представляющий команду, можно передать командлету Invoke-Expres
        sion с помощью конвейера. Для представления входных объектов команды сл
        едует использовать автоматическую переменную $input.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    PSObject
        Возвращает результат, созданный вызванной командой (значением параметра
         Command).
    
    
ПРИМЕЧАНИЯ
    
    
        -- Выражение является инструкцией, которую можно обработать, чтобы полу
        чить результат, например командой Windows PowerShell.
         
        -- При использовании командлета Invoke-Expression в скриптах необходимо
         принять соответствующие меры предосторожности. Если с помощью командле
        та Invoke-Expression выполняется команда, параметры которой задает поль
        зователь, следует предварительно убедиться, что команда безопасна. В об
        щем случае рекомендуется задавать параметры команд на этапе разработки 
        скрипта, а не разрешать ввод этих параметров в свободной форме.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$command = "Get-Process"
    
    C:\PS> $command
    Get-Process
    
    
    C:\PS> invoke-expression $command
    
    Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
    -------  ------    -----      ----- -----   ------     -- -----------
        296       4     1572       1956    20     0.53   1348 AdtAgent
        270       6     1328        800    34     0.06   2396 alg
         67       2      620        484    20     0.22    716 ati2evxx
       1060      15    12904      11840    74    11.48    892 CcmExec
       1400      33    25280      37544   223    38.44   2564 communicator
    ...
    
    
    Описание
    -----------
    В этом примере показано использование командлета Invoke-Expression для вычи
    сления выражения. Без указания Invoke-Expression выражение выводится на экр
    ан, но не обрабатывается.
    
    Первая команда присваивает переменной $command значение "Get-Process" (стро
    ка). 
    
    Вторая команда показывает результат ввода в командной строке имени переменн
    ой. Windows PowerShell повторяет эту строку в выводе.
    
    Третья команда использует командлет Invoke-Expression для обработки строки.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>invoke-expression -command "C:\ps-test\testscript.ps1"
    
    C:\PS> "C:\ps-test\testscript.ps1" | invoke-expression
    
    
    Описание
    -----------
    Эти команды используют Invoke-Expression для запуска на локальном компьютер
    е скрипта TestScript.ps1. Две приведенные команды эквивалентны. Первая испо
    льзует параметр Command для задания команды для выполнения. Во второй коман
    де для передачи командлету Invoke-Expression командной строки используется 
    оператор конвейера (|).
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$cmd = 'get-process | where {$_.cpu -gt 1000}'
    
    C:\PS> iex $command
    
    
    Описание
    -----------
    В этом примере выполняется командная строка, сохраненная в переменной $cmd.
     
    
    Командная строка заключена в одиночные кавычки, поскольку она включает пере
    менную $_, представляющую текущий объект. Если бы она была заключена в двой
    ные кавычки, перед сохранением команды в строке $command переменная $_ была
     бы заменена значением.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$cmdlet_name = "get-eventlog"
    
    C:\PS> $example_number = 1
    
    C:\PS> $example_code = (get-help $cmdlet_name).examples.example[($example_n
    umber-1)].code
    
    C:\PS> invoke-expression $example_code
    
    
    Описание
    -----------
    Эта команда извлекает и выполняет первый пример в разделе справки, посвящен
    ном командлету Get-EventLog. 
    
    Чтобы выполнить пример другого командлета, присвойте переменной $cmdlet_nam
    e имя командлета. Затем присвойте переменной $example_number номер примера,
     который требуется выполнить. Если примера с указанным номером не существуе
    т, выполнение команды завершится сбоем.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113343
    Invoke-Command 



Invoke-History

ИМЯ
    Invoke-History
    
ОПИСАНИЕ
    Выполняет команды из журнала сеанса.
    
СИНТАКСИС
    Invoke-History [[-Id] <string>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Invoke-History выполняет команды из журнала сеанса. Командлету In
    voke-History можно передавать объекты, которые представляют команды, возвра
    щенные командлетом Get-History, либо указывать команды в текущем журнале пр
    и помощи их идентификационного номера. Чтобы определить идентификационный н
    омер команды, используйте командлет Get-History.
    
ПАРАМЕТРЫ
    -Id <string>
        Определяет команду в журнале. Можно ввести идентификационный номер кома
        нды или первые несколько символов команды. 
        
        При вводе символов командлет Invoke-History начинает поиск с последних 
        команд. Если пропустить этот параметр, командлет Invoke-History выполня
        ет последнюю (самую недавнюю) команду. Имя параметра ("id") указывать н
        еобязательно. Чтобы определить идентификационный номер команды, использ
        уйте командлет Get-History.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды без ее фактического вы
        полнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Сам командлет Invoke-History не генерирует выходных данных, но выходные
         данные могут генерироваться командами, которые выполняются командлетом
         Invoke-History.
    
    
ПРИМЕЧАНИЯ
    
    
        Журнал сеанса представляет собой список команд, введенных за время сеан
        са, вместе с идентификатором. В журнале сеанса представлен порядок выпо
        лнения, состояние, время начала и завершения выполнения команды. При вв
        оде каждой команды Windows PowerShell добавляет ее в журнал, чтобы обес
        печить возможность ее повторного использования.  Дополнительные сведени
        я о журнале сеанса см. в разделе about_History.
        
        Командлет Invoke-History также можно вызывать с помощью встроенных псев
        донимов "r" и "ihy". Дополнительные сведения см. в разделе About_Aliase
        s.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>invoke-history
    
    
    Описание
    -----------
    Эта команда выполняет последнюю (наиболее свежую) команду в журнале сеанса.
     Эту команду можно сократить до "r" (от слова "repeat", повтор, или "rerun"
    , повторный запуск) — псевдонима командлета Invoke-History.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>invoke-history -id 132
    
    
    Описание
    -----------
    Эта команда выполняет команду в журнале сеанса с идентификатором 132. Поско
    льку имя параметра Id необязательно, команду можно сократить до "Invoke-His
    tory 132", "ihy 132" или "r 132".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>invoke-history get-pr
    
    
    Описание
    -----------
    Эта команда выполняет самую недавнюю команду Get-Process в журнале сеанса. 
    При вводе знаков в параметре Id командлет Invoke-History выполняет первую о
    бнаруженную команду, соответствующую шаблону, начиная с последних команд в 
    журнале. Параметр ID используется, но пропущено необязательное имя параметр
    а.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>invoke-history (16..24), 27
    
    
    Описание
    -----------
    Эта команда выполняет команды от 16 до 24 и 27. Несколько идентификаторов и
     диапазоны идентификаторов разделяются запятыми.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-history -id 255 -count 7 | invoke-history
    
    
    Описание
    -----------
    Эта команда выполняет 7 команд в журнале, заканчивая командой 255 (обычно о
    т 249 до 255). Для извлечения команд используется командлет Get-History. Оп
    ератор конвейера (|) передает команды командлету Invoke-History, который их
     выполняет.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113344
    about_History 
    Get-History 
    Add-History 
    Clear-History 



Invoke-Item

ИМЯ
    Invoke-Item
    
ОПИСАНИЕ
    Выполняет действие по умолчанию над указанным элементом.
    
СИНТАКСИС
    Invoke-Item [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Exclud
    e <string[]>] [-Filter <string>] [-Include <string[]>] [-Confirm] [-WhatIf]
     [-UseTransaction] [<CommonParameters>]
    
    Invoke-Item [-Path] <string[]> [-Credential <PSCredential>] [-Exclude <stri
    ng[]>] [-Filter <string>] [-Include <string[]>] [-Confirm] [-WhatIf] [-UseT
    ransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Invoke-Item выполняет действие по умолчанию над указанным элемент
    ом. Например, его можно использовать для запуска исполняемого файла или отк
    рытия файла документа в приложении, связанном с типом данного файла докумен
    та. Действие по умолчанию зависит от типа элемента и определяется поставщик
    ом Windows PowerShell, предоставляющим доступ к данным.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Выполняет действие по умолчанию только над указанными элементами. Значе
        ние этого параметра определяет значение параметра Path. Введите элемент
         пути или шаблон, например "*.txt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к элементу. Значение параметра LiteralPath используется точ
        но в том виде, в котором оно введено. Никакие символы не интерпретируют
        ся как подстановочные знаки. Если путь включает escape-символы, его нуж
        но заключить в одиночные кавычки. Одиночные кавычки указывают оболочке 
        Windows PowerShell, что никакие символы не следует интерпретировать как
         escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к выбранному элементу.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Invoke-Item по конве
        йеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Эта команда не формирует никаких выходных данных. Однако вызываемые это
        й командой элементы могут создавать выходные данные.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Invoke-Item предназначен для работы с данными, предоставляемы
        ми любым поставщиком. Чтобы получить список поставщиков, доступных в те
        кущем сеансе, введите команду "Get-PsSProvider". Дополнительные сведени
        я см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>invoke-item C:\Test\aliasApr04.doc
    
    
    Описание
    -----------
    Эта команда открывает файл aliasApr04.doc в приложении Microsoft Office Wor
    d. В данном случае открытие в приложении Word является действием по умолчан
    ию для DOC-файлов.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>invoke-item "C:\Documents and Settings\Lister\My Documents\*.xls"
    
    
    Описание
    -----------
    Эта команда открывает все таблицы Microsoft Office Excel, расположенные в п
    апке C:\Documents and Settings\Lister\My Documents. Каждая таблица открывае
    тся в отдельном экземпляре Excel. В данном случае открытие в приложении Exc
    el является действием по умолчанию для XLS-файлов.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113345
    about_Providers 
    Clear-Item 
    Get-Item 
    Move-Item 
    Set-Item 
    New-Item 
    Remove-Item 
    Rename-Item 
    Copy-Item 



Invoke-WmiMethod

ИМЯ
    Invoke-WmiMethod
    
ОПИСАНИЕ
    Вызывает методы инструментария управления Windows (WMI)
    
СИНТАКСИС
    Invoke-WmiMethod [-Class] <string> [[-ArgumentList] <Object[]>] [-Authentic
    ation {Default | None | Connect | Call | Packet | PacketIntegrity | PacketP
    rivacy | Unchanged}] [-Authority <string>] [-ComputerName <string[]>] [-Cre
    dential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {Default | A
    nonymous | Identify | Impersonate | Delegate}] [-Locale <string>] [-Namespa
    ce <string>] [-Name] <string> [-AsJob] [-ThrottleLimit <int>] [-Confirm] [-
    WhatIf] [<CommonParameters>]
    
    Invoke-WmiMethod [-Authentication {Default | None | Connect | Call | Packet
     | PacketIntegrity | PacketPrivacy | Unchanged}] [-Authority <string>] [-Co
    mputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] 
    [-Impersonation {Default | Anonymous | Identify | Impersonate | Delegate}] 
    [-Locale <string>] [-Namespace <string>] [-Name] <string> [-AsJob] [-Thrott
    leLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Invoke-WmiMethod -InputObject <ManagementObject> [-ArgumentList <Object[]>]
     [-Name] <string> [-AsJob] [-ThrottleLimit <int>] [-Confirm] [-WhatIf] [<Co
    mmonParameters>]
    
    Invoke-WmiMethod -Path <string> [-ArgumentList <Object[]>] [-Authentication
     {Default | None | Connect | Call | Packet | PacketIntegrity | PacketPrivac
    y | Unchanged}] [-Authority <string>] [-ComputerName <string[]>] [-Credenti
    al <PSCredential>] [-EnableAllPrivileges] [-Impersonation {Default | Anonym
    ous | Identify | Impersonate | Delegate}] [-Locale <string>] [-Namespace <s
    tring>] [-Name] <string> [-AsJob] [-ThrottleLimit <int>] [-Confirm] [-WhatI
    f] [<CommonParameters>]
    
    Invoke-WmiMethod [-Authentication {Default | None | Connect | Call | Packet
     | PacketIntegrity | PacketPrivacy | Unchanged}] [-Authority <string>] [-Co
    mputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] 
    [-Impersonation {Default | Anonymous | Identify | Impersonate | Delegate}] 
    [-Locale <string>] [-Namespace <string>] [-Name] <string> [-AsJob] [-Thrott
    leLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Invoke-WmiMethod [-Authentication {Default | None | Connect | Call | Packet
     | PacketIntegrity | PacketPrivacy | Unchanged}] [-Authority <string>] [-Co
    mputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] 
    [-Impersonation {Default | Anonymous | Identify | Impersonate | Delegate}] 
    [-Locale <string>] [-Namespace <string>] [-Name] <string> [-AsJob] [-Thrott
    leLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Invoke-WmiMethod вызывает методы WMI.
    
ПАРАМЕТРЫ
    -ArgumentList <Object[]>
        Задает параметры, которые требуется передать вызываемому методу. Значен
        ием этого параметра должен быть массив объектов, упорядоченных в соотве
        тствии с требованиями вызываемого метода. 
        
        Важно Необходимо второе значение $null, в противном случае команда соз
        даст ошибку, например "Невозможно привести объект типа 'System.Byte' к 
        типу 'System.Array'.".   
        
        Пример использования массива объектов ($binSD) и последующего значения 
        null ($null):
        
        PS C:\> $acl = get-acl test.txt
        PS C:\> $binSD = $acl.GetSecurityDescriptorBinaryForm()
        PS C:\> invoke-wmimethod -class Win32_SecurityDescriptorHelper -Name Bi
        narySDToSDDL -argumentlist $binSD, $null
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -AsJob [<SwitchParameter>]
        Запускает команду в качестве фонового задания. Этот параметр служит для
         запуска команд, выполнение которых занимает длительное время.
        
        При использовании параметра AsJob команда возвращает объект, представля
        ющий фоновое задание, а затем отображает командную строку. Пока задание
         выполняется можно продолжать работу в сеансе. Если командлет Invoke-Wm
        iMethod используется для работы с удаленным компьютером, задание создае
        тся на локальном компьютере, и результаты с удаленных компьютеров автом
        атически возвращаются на локальный компьютер. Для управления заданием и
        спользуйте командлеты, в именах которых содержится существительное Job 
        (командлеты Job). Чтобы получить результаты задания, используйте команд
        лет Receive-Job.
        
        Примечание. Чтобы использовать этот параметр для удаленных компьютеров,
         для локального и удаленного компьютеров должно быть настроено удаленно
        е взаимодействие. Кроме того, при работе с компьютером под управлением 
        Windows Vista и более поздних версий Windows необходимо запускать Windo
        ws PowerShell командой "Запуск от имени администратора". Дополнительные
         сведения см. в разделе about_Remote_Requirements.
        
        Дополнительные сведения о фоновых заданиях в Windows PowerShell см. в р
        азделах about_Jobs и about_Remote_Jobs.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authentication <AuthenticationLevel>
        Задает уровень проверки подлинности, используемый для WMI-соединения. Д
        опустимые значения:
        
        -1: Unchanged
        0: Default
        1: None (проверка подлинности не используется).
        2: Connect (проверка подлинности выполняется только при установке клиен
        том подключения к приложению).
        3: Call (проверка подлинности выполняется только в начале каждого вызов
        а при получении запроса приложением).
        4: Packet (проверка подлинности выполняется при обработке всех данных, 
        полученных от клиента).
        5: PacketIntegrity (для всех данных, передаваемых между клиентом и прил
        ожением, проводится проверка подлинности и проверка целостности).
        6: PacketPrivacy (используются свойства других уровней проверки подлинн
        ости, все данные шифруются).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authority <string>
        Задает центр, который используется для проверки подлинности WMI-соедине
        ния. Можно указать стандартную проверку подлинности NTLM или Kerberos. 
        Чтобы использовать NTLM, задайте для параметра Authority значение "ntlm
        domain:<имя_домена>", где <имя_домена> — допустимое имя домена NTLM. Чт
        обы использовать Kerberos, укажите "kerberos:<имя_домена>\<имя_сервера>
        ". При подключении к локальному компьютеру нельзя использовать параметр
         Authority.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Class <string>
        Задает класс WMI, в котором содержится вызываемый статический метод.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string[]>
        Задает компьютер, к которому требуется применить операцию управления. З
        начение может быть полным доменным именем, именем NetBIOS или IP-адресо
        м. Используйте имя локального компьютера, "localhost" или точку (.) что
        бы указать "Локальный компьютер". Локальный компьютер используется по у
        молчанию. Если пользователь и удаленный компьютер находятся в разных до
        менах, необходимо использовать полное доменное имя. Кроме того, можно п
        ередать значение этому параметру по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". Введите имя пользователя, например "User01", "Domain01\
        User01" или User@Contoso.com. Или укажите объект PSCredential, например
         объект, возвращенный командлетом Get-Credential. При вводе имени польз
        ователя появится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -EnableAllPrivileges [<SwitchParameter>]
        Включает все привилегии текущего пользователя перед вызовом WMI из кома
        нды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Impersonation <ImpersonationLevel>
        Задает используемый уровень олицетворения. Допустимые значения: 
        
        0: Default (считывает значение уровня представления по умолчанию из лок
        ального реестра, обычно это значение равняется "3: Impersonate").
        1: Anonymous (скрывает учетные данные вызывающего).
        2: Identify (позволяет объектам запрашивать учетные данные вызывающего)
        .
        3: Impersonate (позволяет объектам использовать учетные данные вызывающ
        его).
        4: Delegate (позволяет объектам разрешать другим объектам использовать 
        учетные данные вызывающего).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <ManagementObject>
        Задает объект ManagementObject, используемый в качестве входных данных.
         При использовании этого параметра все остальные параметры, за исключен
        ием параметров Flag и Argument, игнорируются.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Locale <string>
        Задает предпочтительную локаль для объектов WMI. Задает значение параме
        тра Locale как массив в формате MS_<LCID> в желаемом порядке.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя вызываемого метода. Этот параметр обязателен и не может имет
        ь пустое значение или значение NULL.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Namespace <string>
        При использовании с параметром Class данный параметр задает пространств
        о имен хранилища WMI, в котором находится указанный класс или объект WM
        I.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Задает путь к классу WMI или экземпляру класса WMI. Указанные класс или
         экземпляр должны содержать метод, заданный параметром Name.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ThrottleLimit <int>
        Дает возможность пользователю указать пороговое значение количества опе
        раций WMI, которые могут выполняться одновременно. Этот параметр исполь
        зуется вместе с параметром AsJob. Ограничение скорости относится только
         к текущей команде, но не к сеансу или компьютеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает никаких входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>invoke-wmimethod -path win32_process -name create -argumentlist notep
    ad.exe
    
    __GENUS          : 2
    __CLASS          : __PARAMETERS
    __SUPERCLASS     :
    __DYNASTY        : __PARAMETERS
    __RELPATH        :
    __PROPERTY_COUNT : 2
    __DERIVATION     : {}
    __SERVER         :
    __NAMESPACE      :
    __PATH           :
    ProcessId        : 4844
    ReturnValue      : 0
    
    
    Описание
    -----------
    Эта команда запускает экземпляр Блокнота, вызвав метод Create класса Win32_
    Process.
    
    Примечание. Если команда завершена, свойство ReturnValue имеет значение "0"
    , а свойство ProcessId содержит целое число (следующий номер идентификатора
     процесса).
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>invoke-wmimethod -path "CIM_DataFile.Name='C:\scripts\test.txt'" -Nam
    e Rename -ArgumentList "C:\scripts\test_bu.txt"
    
    __GENUS          : 2
    __CLASS          : __PARAMETERS
    __SUPERCLASS     :
    __DYNASTY        : __PARAMETERS
    __RELPATH        :
    __PROPERTY_COUNT : 1
    __DERIVATION     : {}
    __SERVER         :
    __NAMESPACE      :
    __PATH           :
    ReturnValue      : 0
    
    
    Описание
    -----------
    Эта команда переименовывает файл. В ней используется параметр Path для ссыл
    ки на экземпляр класса CIM_DataFile. Затем применяется метод Rename к данно
    му конкретному экземпляру.
    
    Примечание. Свойство ReturnValue имеет значение 0, если команда завершается
    .
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113346
    Get-WmiObject 
    Remove-WmiObject 
    Set-WmiInstance 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManInstance 
    Remove-WSManInstance 



Invoke-WSManAction

ИМЯ
    Invoke-WSManAction
    
ОПИСАНИЕ
    Вызывает действие на объекте, заданном при помощи URI ресурса и селекторов.
    
СИНТАКСИС
    Invoke-WSManAction [-ApplicationName <string>] [-ComputerName <string>] [-C
    redential <PSCredential>] [-Credential <PSCredential>] [-Credential <PSCred
    ential>] [-Credential <PSCredential>] [-Credential <PSCredential>] [-Creden
    tial <PSCredential>] [-Credential <PSCredential>] [-Credential <PSCredentia
    l>] [-Credential <PSCredential>] [-Port <int>] [-Port <int>] [-Port 
    [-Port <int>] [-Port <int>] [-Port <int>] [-Port 
    t <int>] [-UseSSL] [-ResourceURI] <Uri> [-Action] <string> [-Authentication
     <AuthenticationMechanism>] [-FilePath <File>] [-OptionSet <hashtable>] [-S
    electorSet <hashtable>] [-SessionOption <hashtable>] [-ValueSet <hashtable>
    ] [<CommonParameters>]
    
    Invoke-WSManAction [-ConnectionURI <Uri>] [-ResourceURI] <Uri> [-Action] <s
    tring> [-Authentication <AuthenticationMechanism>] [-FilePath <File>] [-Opt
    ionSet <hashtable>] [-SelectorSet <hashtable>] [-SessionOption <hashtable>]
     [-ValueSet <hashtable>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Invoke-WSManAction выполняет действие на объекте, заданном RESOUR
    CE_URI, где параметры задаются парами "ключ-значение".
     
    Для выполнения действия командлет использует уровень соединений/транспорта 
    WS-Management.
    
ПАРАМЕТРЫ
    -Action <string>
        Указывает метод, который нужно выполнить на объекте управления, заданно
        м значением параметра ResourceURI и селекторами.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ApplicationName <string>
        Задает имя приложения для подключения. По умолчанию параметр Applicatio
        nName имеет значение "WSMAN". Полный идентификатор удаленной конечной т
        очки имеет следующий формат:
        
              <протокол>://<сервер>:<порт>/
        
        Пример:
        
             http://server01:8080/WSMAN 
        
        Службы IIS, которые обрабатывают сеанс, перенаправляют запросы с данной
         конечной точкой указанному приложению. Значение по умолчанию "WSMAN" п
        одходит для большинства случаев. Этот параметр предназначен для использ
        ования, когда большое число компьютеров устанавливают удаленные подключ
        ения к одному компьютеру, на котором работает Windows PowerShell. В это
        м случае для повышения эффективности веб-службы WS-Management размещают
        ся в службах IIS.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                wsman
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authentication <AuthenticationMechanism>
        Задает механизм проверки подлинности, используемый на сервере. Возможны
        е значения:
        
        - Basic: при использовании схемы Basic имя пользователя и пароль переда
        ются серверу или прокси-серверу открытым текстом.
        - Default: использовать метод проверки подлинности, реализованный прото
        колом WS-Management. Это значение используется по умолчанию.
        - Digest: при использовании схемы Digest проверка подлинности проводитс
        я по принципу "запрос-ответ". В качестве запроса поступает строка данны
        х, указанная сервером.
        - Kerberos: выполняется взаимная проверка подлинности компьютера и серв
        ера с использованием сертификатов Kerberos.
        - Negotiate: при использовании схемы Negotiate между компьютером и серв
        ером или прокси происходит обмен данными по принципу "запрос-ответ", в 
        ходе которого определяется схема, используемая для проверки подлинности
        . Например, это значение параметра разрешает согласование одного из дву
        х методов проверки подлинности: Kerberos или NTLM.
        - CredSSP: использовать проверку подлинности CredSSP (Credential Securi
        ty Service Provider), при которой пользователю разрешается делегировать
         учетные данные. Этот вариант предназначен для команд, которые запускаю
        тся на одном удаленном компьютере, но собирают данные с других удаленны
        х компьютеров или выполняют на них дополнительные команды. 
        
        Внимание При проверке подлинности CredSSP учетные данные пользователя 
        делегируются с локального компьютера на удаленный компьютер. Такой подх
        од повышает угрозы безопасности удаленных операций. Если безопасность у
        даленного компьютера нарушена, при передаче на него учетных данных эти 
        данные могут быть использованы для управления сетевым сеансом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string>
        Задает компьютер, к которому требуется применить операцию управления. З
        начение может быть полным доменным именем, именем NetBIOS или IP-адресо
        м. Чтобы задать локальный компьютер, введите имя компьютера, "localhost
        " или точку (.). Локальный компьютер используется по умолчанию. Если по
        льзователь и удаленный компьютер находятся в разных доменах, необходимо
         использовать полное доменное имя. Значение этого параметра можно перед
        ать командлету по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                localhost
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ConnectionURI <Uri>
        Задает конечную точку соединения. Строка имеет следующий формат: 
        
             <протокол>://<сервер>:<порт>/
        
        Следующая строка представляет собой правильно отформатированное значени
        е для этого параметра: 
        
             http://Server01:8080/WSMAN 
        
        Значение URI должно быть указано полностью.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". Введите имя пользователя, например "User01", "Domain01\
        User01" или "User@Domain.com". Или укажите объект PSCredential, наприме
        р возвращенный командлетом Get-Credential. При вводе имени пользователя
         появится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FilePath <File>
        Задает путь к файлу, который используется для обновления ресурса управл
        ения. Ресурс управления указывается с помощью параметров ResourceURI и 
        SelectorSet. Например, в следующей команде используется параметр FilePa
        th:
        
        invoke-wsmanaction -action stopservice -resourceuri wmicimv2/Win32_Serv
        ice -SelectorSet @{Name="spooler"} -FilePath:c:\input.xml -authenticati
        on default
        
        Эта команда вызывает метод StopService службы очереди печати, используя
         входные данные из файла. В файле Input.xml содержатся следующие данные
        : 
        
        <p:StopService_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1
        /wmi/root/cimv2/Win32_Service"/>
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -OptionSet <hashtable>
        Передает службе набор параметров для изменения или уточнения запроса. П
        ередаваемые параметры похожи на параметры, используемые в оболочках ком
        андной строки: они зависят от конкретной службы. Можно задать произволь
        ное количество параметров. 
        
        В следующем примере показано синтаксическое выражение, позволяющее пере
        дать значения 1, 2 и 3 параметрам a, b и c соответственно:
        
              -OptionSet @{a=1;b=2;c=3}
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Port <int>
        Задает порт, используемый клиентом для подключения к службе WinRM. Если
         в качестве транспорта выбран HTTP, по умолчанию используется порт 80. 
        Если в качестве транспорта выбран HTTPS, по умолчанию используется порт
         443. При использовании в качестве транспорта HTTPS значение параметра 
        ComputerName должно соответствовать общему имени сертификата сервера. О
        днако, если в качестве элемента параметра SessionOption указан параметр
         SkipCNCheck, общее имя сертификата сервера не обязательно должно соотв
        етствовать имени узла сервера. Параметр SkipCNCheck следует использоват
        ь только в случае доверенных компьютеров.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ResourceURI <Uri>
        Содержит универсальный идентификатор ресурса (URI) экземпляра или класс
        а ресурса. URI используется для определения конкретного типа ресурса, н
        апример диска или процесса, на компьютере. 
        
        URI состоит из префикса и пути к ресурсу. Пример: 
        
             http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Log
        icalDisk
             http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSenso
        r
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -SelectorSet <hashtable>
        Задает набор пар значений, которые используются для выбора конкретных э
        кземпляров ресурса управления. Параметр SelectorSet используется в случ
        ае существования нескольких экземпляров ресурса. Значение параметра Sel
        ectorSet представляет собой хэш-таблицу. 
        
        В следующем примере показано, как задать значение для этого параметра: 
        
            -SelectorSet @{Name="WinRM";ID="yyy"}
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SessionOption <hashtable>
        Определяет расширенные параметры сеанса WS-Management. Введите объект S
        essionOption, созданный с помощью командлета New-WSManSessionOption. До
        полнительные сведения о доступных параметрах см. в разделе New-WSManSes
        sionOption.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseSSL [<SwitchParameter>]
        Указывает, что для установки подключения к удаленному компьютеру должен
         использоваться протокол SSL (Secure Sockets Layer). По умолчанию SSL н
        е используется. 
        
        Протокол WS-Management шифрует все передаваемое по сети содержимое Wind
        ows PowerShell. Параметр UseSSL позволяет указать, что необходимо испол
        ьзовать дополнительную меру защиты: протокол HTTPS вместо HTTP. Если ук
        азан этот параметр, однако используемый для подключения порт не поддерж
        ивает SSL, команда завершается с ошибкой.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ValueSet <hashtable>
        Задает хэш-таблицу, которая позволяет изменить ресурс управления. Ресур
        с управления указывается с помощью параметров ResourceURI и SelectorSet
        . Значение параметра ValueSet должно быть хэш-таблицей.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает никаких входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>invoke-wsmanaction -action startservice -resourceuri wmicimv2/win32_s
    ervice  -selectorset @{name="spooler"} -authentication default
    
    xsi         : http://www.w3.org/2001/XMLSchema-instance
    p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win3
    2_Service
    cim         : http://schemas.dmtf.org/wbem/wscim/1/common
    lang        : en-US
    ReturnValue : 0
    
    
    Описание
    -----------
    Эта команда вызывает метод StartService экземпляра класса WMI Win32_Service
    , соответствующего службе очереди печати.
    
    Возвращенное командой значение указывает, успешно ли было выполнено действи
    е. В данном случае возвращенное значение, равное 0, указывает на успешное з
    авершение действия. Возвращенное значение, равное 5, указывает, что служба 
    уже запущена.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>invoke-wsmanaction -action stopservice -resourceuri wmicimv2/Win32_Se
    rvice -SelectorSet @{Name="spooler"} -FilePath:input.xml -authentication de
    fault
    
    xsi         : http://www.w3.org/2001/XMLSchema-instance
    p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win3
    2_Service
    cim         : http://schemas.dmtf.org/wbem/wscim/1/common
    lang        : en-US
    ReturnValue : 0
    
    
    Описание
    -----------
    Эта команда вызывает метод StopService службы очереди печати, используя вхо
    дные данные из файла. В файле (Input.xml) содержатся следующие данные:
    
     <p:StopService_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wm
    i/root/cimv2/Win32_Service"/>
    
    Возвращенное командой значение указывает, успешно ли было выполнено действи
    е. В данном случае возвращенное значение, равное 0, указывает на успешное з
    авершение действия. Возвращенное значение, равное 5, указывает, что служба 
    уже запущена.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>invoke-wsmanaction -action create -resourceuri wmicimv2/win32_process
     -valueset @{commandline="notepad.exe";currentdirectory="C:\"}
    
    xsi         : http://www.w3.org/2001/XMLSchema-instance
    p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win3
    2_Process
    cim         : http://schemas.dmtf.org/wbem/wscim/1/common
    lang        : en-US
    ProcessId   : 6356
    ReturnValue : 0
    
    
    Описание
    -----------
    Эта команда вызывает метод Create класса Win32_Process. Методу передаются д
    ва значения параметров: "Notepad.exe" и "C:\". В результате создается новый
     процесс для запуска Блокнота, а в качестве текущего каталога для этого нов
    ого процесса устанавливается каталог C:\.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>invoke-wsmanaction -action startservice -resourceuri wmicimv2/win32_s
    ervice  -selectorset @{name="spooler"} -computername server01 -authenticati
    on default
    
    xsi         : http://www.w3.org/2001/XMLSchema-instance
    p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win3
    2_Service
    cim         : http://schemas.dmtf.org/wbem/wscim/1/common
    lang        : en-US
    ReturnValue : 0
    
    
    Описание
    -----------
    Эта команда вызывает метод StartService экземпляра класса WMI Win32_Service
    , соответствующего службе очереди печати. Поскольку задан параметр Computer
    Name, команда выполняется на удаленном компьютере server01.
    
    Возвращенное командой значение указывает, успешно ли было выполнено действи
    е. В данном случае возвращенное значение, равное 0, указывает на успешное з
    авершение действия.  Возвращенное значение, равное 5, указывает, что служба
     уже запущена.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkId=141446
    Connect-WSMan 
    Disable-WSManCredSSP 
    Disconnect-WSMan 
    Enable-WSManCredSSP 
    Get-WSManCredSSP 
    Get-WSManInstance 
    New-WSManInstance 
    New-WSManSessionOption 
    Remove-WSManInstance 
    Set-WSManInstance 
    Set-WSManQuickConfig 
    Test-WSMan 
    Invoke-WmiMethod 



Join-Path

ИМЯ
    Join-Path
    
ОПИСАНИЕ
    Соединяет корневой и вложенный пути в один. Поставщик задает разделители пу
    ти.
    
СИНТАКСИС
    Join-Path [-Path] <string[]> [-ChildPath] <string> [-Credential <PSCredenti
    al>] [-Resolve] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Join-Path соединяет корневой и вложенный пути в один. Поставщик з
    адает разделители пути.
    
ПАРАМЕТРЫ
    -ChildPath <string>
        Задает элементы, присоединяемые к значению параметра Path. Подстановочн
        ые знаки разрешены. Параметр ChildPath обязателен, но его имя ("ChildPa
        th") можно не указывать.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01". Или 
        укажите объект PSCredential, например один из объектов, созданных коман
        длетом Get-Credential. При вводе имени пользователя система запросит па
        роль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает главный путь (или пути), к которому присоединяется дочерний путь
        . Подстановочные знаки разрешены.
        
        Значение параметра Path определяет, какой из поставщиков соединяет пути
         и добавляет разделители. Параметр Path обязателен, но его имя ("Path")
         можно не указывать.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Resolve [<SwitchParameter>]
        Отображает элементы, на которые указывает объединенный путь.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Join-Path по конвейе
        ру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String
        Командлет Join-Path возвращает строку с конечным путем.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлеты, в именах которых содержится существительное Path (командлет
        ы Path), оперируют именами путей и возвращают эти имена в сокращенном ф
        ормате, который поддерживается всеми поставщиками Windows PowerShell. О
        ни предназначены для использования в программах и скриптах, в которых т
        ребуется отображать имя пути или его часть в конкретном формате. Исполь
        зуйте их аналогично другим командам для работы с путями, таким как Dirn
        ame, Normpath, Realpath и Join.
        
        Командлеты для работы с путями можно использовать с несколькими поставщ
        иками, включая FileSystem, Registry и Certificate.
        
        Командлет Join-Path предназначен для работы с данными, предоставляемыми
         любым поставщиком. Чтобы получить список поставщиков, доступных в теку
        щем сеансе, введите команду "Get-PSProvider". Дополнительные сведения с
        м. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>join-path -path c:\win* -childpath System*
    
    
    Описание
    -----------
    В данной команде для соединения путей "c:\Win*" и "System*" используется ко
    мандлет Join-Path. При работе с поставщиком файловой системы Windows PowerS
    hell командлет FileSystem производит соединение путей и добавляет разделите
    ль "\".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>join-path c:\win* System* -resolve
    
    
    Описание
    -----------
    Эта команда выводит список файлов и папок, находящихся в местоположении, за
    даваемом с помощью пути, полученного объединением "c:\Win*" и "System*". Сп
    исок отображаемых элементов совпадает со списком, возвращаемым командлетом 
    Get-ChildItem, но отличается от него тем, что элементы задаются полными пут
    ями. В данной команде имена необязательных параметров Path и ChildPath опущ
    ены.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>PS HKLM:\> join-path System *ControlSet* -resolve
    
    
    Описание
    -----------
    Эта команда отображает список разделов реестра в разделе HKLM\System, включ
    ающих в себя параметр "ControlSet". В данном примере показано, как использо
    вать командлет Join-Path с поставщиком реестра Windows PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>join-path -path C:, D:, E:, F: -childpath New
    
    
    Описание
    -----------
    Эта команда с помощью командлета Join-Path объединяет несколько корневых пу
    тей с дочерним путем.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-psdrive -psprovider filesystem | foreach {$_.root} | join-path -c
    hildpath Subdir
    
    
    Описание
    -----------
    Эта команда объединяет корневые пути каждого диска файловой системы Windows
     PowerShell в консоли с дочерним путем Subdir. 
    
    С помощью командлета Get-PSDrive команда получает диски Windows PowerShell,
     поддерживаемые поставщиком FileSystem. Инструкция ForEach позволяет выбрат
    ь только свойство Root объектов PSDriveInfo и объединить его с указанным до
    черним путем.
    
    Выходные данные показывают, что диски Windows PowerShell на компьютере вклю
    чают диск, подключенный к каталогу "C:\Program Files".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113347
    about_Providers 
    Test-Path 
    Split-Path 
    Resolve-Path 
    Convert-Path 



Limit-EventLog

ИМЯ
    Limit-EventLog
    
ОПИСАНИЕ
    Задает свойства журнала событий, устанавливающие ограничения размера журнал
    а и возраста его записей.
    
СИНТАКСИС
    Limit-EventLog [-LogName] <string[]> [-ComputerName <string[]>] [-MaximumSi
    ze <Int64>] [-OverFlowAction {OverwriteAsNeeded | OverwriteOlder | DoNotOve
    rwrite}] [-RetentionDays <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Limit-EventLog задает максимальный размер классического журнала с
    обытий, срок хранения данных каждого события и действие, выполняемое при до
    стижении максимального размера журнала. Его можно использовать для задания 
    ограничений журналов событий на локальном и удаленном компьютерах.
    
    Командлеты, в имени которых содержится существительное EventLog (командлеты
     EventLog) работают только с классическими журналами событий. Чтобы получат
    ь события из журналов, основанных на технологии журнала событий Windows (в 
    Windows Vista и более поздних версиях Windows), используйте командлет Get-W
    inEvent.
    
ПАРАМЕТРЫ
    -ComputerName <string[]>
        Задает удаленный компьютер. По умолчанию используется значение "Локальн
        ый компьютер".
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя удаленного компью
        тера. Чтобы указать локальный компьютер, введите имя компьютера, точку 
        (.) или "localhost".
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName командлета Limit-EventLog можно использовать, д
        аже если компьютер не настроен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Локальный компьютер
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LogName <string[]>
        Задает журналы событий. Введите имена (значение свойства Log; а не свой
        ства LogDisplayName) одного или нескольких журналов событий, разделенны
        е запятыми.  Подстановочные знаки запрещены. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MaximumSize <Int64>
        Задает максимальный размер журналов событий в байтах. Введите значение 
        в диапазоне от 64 КБ до 4 ГБ. Значение должно быть кратно 64 КБ (65536 
        байтам).
         
        Этот параметр задает значение свойства MaximumKilobytes объекта System.
        Diagnostics.EventLog, представляющего классический журнал событий.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -OverFlowAction <OverflowAction>
        Задает действие, выполняемое при достижении максимального размера журна
        ла событий.
        
        Допустимые значения:
        -- DoNotOverwrite: существующие записи сохраняются, новые записи не рег
        истрируются.
        -- OverwriteAsNeeded: каждая новая запись перезаписывает самую старую з
        апись.
        -- OverwriteOlder: новые события перезаписывают события, возраст которы
        х превышает значение свойства MinimumRetentionDays. В случае отсутствия
         событий, возраст которых превышает значение свойства MinimumRetentionD
        ays, новые события не регистрируются.
        
        Этот параметр задает значение свойства OverflowAction объекта System.Di
        agnostics.EventLog, представляющего классический журнал событий.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -RetentionDays <int>
        Задает минимальный срок хранения события в журнале событий (в днях).
        
        Этот параметр задает значение свойства MinimumRetentionDays объекта Sys
        tem.Diagnostics.EventLog, представляющего классический журнал событий.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Нет
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Нет
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать командлет Limit-EventLog в Windows Vista и более поз
        дних версиях Windows, необходимо запускать Windows PowerShell командой 
        "Запуск от имени администратора".
        
        Командлет Limit-EventLog изменяет свойства объекта System.Diagnostics.E
        ventLog, представляющего классический журнал событий. Чтобы просмотреть
         текущие значения свойств журнала событий, введите команду "get-eventlo
        g -list".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>limit-eventLog -logname "Windows PowerShell" -MaximumSize 20KB
    
    
    Описание
    -----------
    Эта команда увеличивает максимальный размер журнала событий Windows PowerSh
    ell на локальном компьютере до 20480 КБ (20 МБ).
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>limit-eventlog -logname Security -comp Server01, Server02 -retentionD
    ays 7
    
    
    Описание
    -----------
    Эта команда обеспечивает хранение событий журнала Security на компьютерах S
    erver01 и Server02 в течение как минимум 7 дней.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$logs = get-eventlog -list | foreach {$_.log}
    
    C:\PS> limit-eventlog -overflowaction OverwriteOlder -logname $logs
    
    C:\PS> get-eventlog -list
    
    Max(K) Retain OverflowAction     Entries  Log
    ------ ------ --------------     -------  ---
    15,168      0 OverwriteOlder       3,412  Application
       512      0 OverwriteOlder           0  DFS Replication
       512      0 OverwriteOlder          17  DxStudio
    10,240      7 OverwriteOlder           0  HardwareEvents
       512      0 OverwriteOlder           0  Internet Explorer
       512      0 OverwriteOlder           0  Key Management Service
    16,384      0 OverwriteOlder           4  ODiag
    16,384      0 OverwriteOlder         389  OSession
                                              Security
    15,168      0 OverwriteOlder      19,360  System
    15,360      0 OverwriteOlder      15,828  Windows PowerShell
    
    
    Описание
    -----------
    Эти команды изменяют действие, выполняемое при переполнении всех журналов с
    обытий на локальном компьютере, на "OverwriteOlder". 
    
    Первая команда получает имена всех журналов на локальном компьютере. Вторая
     команда задает действие, выполняемое при переполнении. Третья команда отоб
    ражает результаты.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135227
    Clear-EventLog 
    Get-EventLog 
    Limit-EventLog 
    New-EventLog 
    Remove-EventLog 
    Show-EventLog 
    Write-EventLog 
    Get-WinEvent 



Measure-Command

ИМЯ
    Measure-Command
    
ОПИСАНИЕ
    Измеряет время выполнения блоков скриптов и командлетов.
    
СИНТАКСИС
    Measure-Command [-Expression] <scriptblock> [-InputObject <psobject>] [<Com
    monParameters>]
    
    
ОПИСАНИЕ
    Командлет Measure-Command выполняет во внутреннем контексте блок скрипта ил
    и командлет, измеряет время выполнения операции и возвращает полученное зна
    чение.
    
ПАРАМЕТРЫ
    -Expression <scriptblock>
        Задает выражение, длительность выполнения которого нужно определить. За
        ключайте выражение в фигурные скобки ({}). Имя параметра ("-Expression"
        ) указывать необязательно.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объекты, представляющие выражения для измерения. Введите перемен
        ную, содержащую объекты, либо получающую их команду или выражение.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Объект можно передать командлету Measure-Command по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.TimeSpan
        Measure-Command возвращает объект интервала времени, представляющий рез
        ультат.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы получить дополнительные сведения, введите команду "Get-Help Measu
        re-Command -detailed". Чтобы получить технические сведения, введите ком
        анду "Get-Help Measure-Command -full".
        
         При указании нескольких значений параметра разделяйте их запятыми. Нап
        ример: "<имя-параметра> <значение1>, <значение2>".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Measure-Command { get-eventlog "windows powershell" }
    
    
    Описание
    -----------
    Эта команда измеряет время выполнения команды get-eventlog, которая возвращ
    ает события из журнала событий Windows PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>measure-command {get-childitem c:\windows -include *.txt -recurse}
    
    Days              : 0
    Hours             : 0
    Minutes           : 0
    Seconds           : 8
    Milliseconds      : 618
    Ticks             : 86182763
    TotalDays         : 9.9748568287037E-05
    TotalHours        : 0.00239396563888889
    TotalMinutes      : 0.143637938333333
    TotalSeconds      : 8.6182763
    TotalMilliseconds : 8618.2763
    
    C:\PS>measure-command {get-childitem c:\windows -filter "*.txt" -recurse}
    
    Days              : 0
    Hours             : 0
    Minutes           : 0
    Seconds           : 1
    Milliseconds      : 140
    Ticks             : 11409189
    TotalDays         : 1.32050798611111E-05
    TotalHours        : 0.000316921916666667
    TotalMinutes      : 0.019015315
    TotalSeconds      : 1.1409189
    TotalMilliseconds : 1140.9189
    
    
    Описание
    -----------
    Эти команды показывают преимущества использования специфического для постав
    щика фильтра в командах Windows PowerShell. Первая команда измеряет время в
    ыполнения рекурсивной команды Get-ChildItem с параметром Include. Вторая ко
    манда измеряет время выполнения рекурсивной команды Get-ChildItem, в которо
    й используется специфический для поставщика параметр Filter.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113348
    Trace-Command 
    Invoke-Command 



Measure-Object

ИМЯ
    Measure-Object
    
ОПИСАНИЕ
    Рассчитывает числовые свойства объектов, а также количество знаков, слов и 
    строк в строковых объектах, например в текстовых файлах.
    
СИНТАКСИС
    Measure-Object [-Average] [-Maximum] [-Minimum] [-Sum] [[-Property] <string
    []>] [-InputObject <psobject>] [<CommonParameters>]
    
    Measure-Object [-Character] [-IgnoreWhiteSpace] [-Line] [-Word] [[-Property
    ] <string[]>] [-InputObject <psobject>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Measure-Object вычисляет значения свойств объектов определенного 
    типа. Measure-Object выполняет измерения трех типов в зависимости от параме
    тров команды.
    Командлет Measure-Object выполняет вычисления, связанные со свойствами объе
    ктов. Он позволяет подсчитывать объекты, а также находить минимальные, макс
    имальные, суммарные и средние числовые значения. Для текстовых объектов он 
    позволяет подсчитывать число строк, слов и знаков.
    
ПАРАМЕТРЫ
    -Average [<SwitchParameter>]
        Отображает среднее значение для заданных свойств.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Character [<SwitchParameter>]
        Подсчитывает количество знаков объекта ввода.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -IgnoreWhiteSpace [<SwitchParameter>]
        Игнорирует пробелы при подсчете количества слов и количества знаков. По
         умолчанию пробелы учитываются.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Указывает, какие объекты нужно измерять. Введите переменную, содержащую
         объекты, либо команду или выражение для получения объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Line [<SwitchParameter>]
        Подсчитывает количество строк объекта ввода.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Maximum [<SwitchParameter>]
        Отображает максимальное значение для заданных свойств.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Minimum [<SwitchParameter>]
        Отображает минимальное значение для заданных свойств.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Property <string[]>
        Задает одно или более числовых свойств для измерения. По умолчанию испо
        льзуется свойство Count (Length) объекта.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                Count
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Sum [<SwitchParameter>]
        Отображает сумму значений заданных свойств.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Word [<SwitchParameter>]
        Подсчитывает количество слов объекта ввода.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Объекты можно передать командлету Measure-Object по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    GenericMeasureInfo или TextMeasureInfoObject
        
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-childitem | measure-object
    
    
    Описание
    -----------
    Эта команда определяет число файлов и папок в текущем каталоге.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-childitem | measure-object -property length -minimum -maximum -av
    erage
    
    
    Описание
    -----------
    Эта команда отображает минимальный, максимальный, суммарный и средний разме
    р всех файлов в текущем каталоге.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-content C:\test.txt | measure-object -character -line -word
    
    
    Описание
    -----------
    Эта команда отображает число знаков, слов и строк в файле Text.txt.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-process | measure-object -property workingset -minimum -maximum -
    average
    
    
    Описание
    -----------
    Эта команда отображает минимальный, максимальный и средний размер всех рабо
    чих наборов процессов на компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>import-csv d:\test\serviceyrs.csv | measure-object -property years -m
    inimum -maximum -average
    
    
    Описание
    -----------
    Команда вычисляет среднее время работы сотрудников в компании. 
    
    ServiceYrs.csv — это CSV-файл, содержащий номера сотрудников и время работы
     каждого из сотрудников в годах. Первая строка таблицы представляет собой с
    троку заголовков "EmpNo, Years".
    
    При импорте файла с помощью командлета Import-Csv создается объект PSCustom
    Object, имеющий свойства-примечания EmpNo и Years. Командлет Measure-Object
     позволяет вычислить значения этих свойств, как для любых других свойств об
    ъекта.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-childitem | measure-object -property psiscontainer -max -sum -min
     -average
    
    Count    : 126
    Average  : 0.0634920634920635
    Sum      : 8
    Maximum  : 1
    Minimum  : 0
    Property : PSIsContainer
    
    
    Описание
    -----------
    В этом примере показано, что командлет Measure-Object позволяет измерять зн
    ачения типа Boolean. В данном случае используется свойство PSIsContainer ти
    па Boolean для измерения количества папок (файлов vs.) в текущем каталоге.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113349
    Compare-Object 
    ForEach-Object 
    Group-Object 
    New-Object 
    Select-Object 
    Sort-Object 
    Tee-Object 
    Where-Object 



mkdir

ИМЯ
    New-Item
    
ОПИСАНИЕ
    Создает новый элемент.
    
СИНТАКСИС
    New-Item [-Path] <string[]> [-Credential <PSCredential>] [-Force] [-ItemTyp
    e <string>] [-Value <Object>] [-Confirm] [-WhatIf] [-UseTransaction] [<Comm
    onParameters>]
    
    New-Item -Name <string> [[-Path] <string[]>] [-Credential <PSCredential>] [
    -Force] [-ItemType <string>] [-Value <Object>] [-Confirm] [-WhatIf] [-UseTr
    ansaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-Item создает новый элемент и задает его значение. Типы создав
    аемых элементов зависят от местоположения этих элементов. Например, в файло
    вой системе командлет New-Item создает файлы и папки. В реестре командлет N
    ew-Item создает разделы и записи реестра. 
    
    С помощью командлета New-Item можно также задавать значения создаваемых эле
    ментов. Например, при создании нового файла командлет New-Item можно исполь
    зовать для добавления в файл исходного содержимого.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету создать элемент, заменяющий существующий элемент, 
        доступный только для чтения. Реализация варьируется от поставщика к пос
        тавщику. Дополнительные сведения см. в разделе About_Providers. Даже пр
        и использовании параметра Force командлет не может переопределить огран
        ичения безопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ItemType <string>
        Задает тип нового элемента, определяемый поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя нового элемента. Имя нового элемента можно задать с помощью 
        этого параметра или включить это имя в значение параметра Path.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к местоположению нового элемента. Подстановочные знаки разр
        ешены.
        
        Можно задать имя нового элемента параметром Name или включить это имя в
         параметр Path.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Value <Object>
        Задает значение нового элемента. Также значение можно передать командле
        ту New-Item с помощью конвейера.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Object
        Значение для нового элемента можно передать командлету New-Item по конв
        ейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Object
        Командлет New-Item возвращает созданный им элемент.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет New-Item предназначен для работы с данными, предоставляемыми 
        любым поставщиком. Чтобы получить список поставщиков, доступных в текущ
        ем сеансе, введите команду "Get-PsProvider". Дополнительные сведения см
        . в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>new-item -path . -name testfile1.txt -type "file" -value "This is a t
    ext string."
    
    
    Описание
    -----------
    Эта команда создает в текущем каталоге текстовый файл с именем testfile1.tx
    t. Точка (.) в значении параметра Path обозначает текущий каталог. Текст, у
    казанный в кавычках после параметра Value, добавляется в файл в качестве ег
    о содержимого.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>new-item -path c:\ -name logfiles -type directory
    
    
    Описание
    -----------
    Эта команда создает папку с именем Logfiles на диске C: Параметр Type указы
    вает, что создаваемый элемент является каталогом, а не файлом или другим об
    ъектом файловой системы.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>new-item -path $profile -type file -force
    
    
    Описание
    -----------
    Эта команда создает профиль Windows PowerShell в местоположении, заданном п
    еременной $profile. 
    
    Профили можно использовать для настройки Windows PowerShell. $profile являе
    тся автоматической (встроенной) переменной, в которой хранится путь и имя ф
    айла профиля "CurrentUser/CurrentHost". Несмотря на наличие в Windows Power
    Shell пути и имени соответствующего файла, по умолчанию профиль не существу
    ет. 
    
    В этой команде переменная $profile представляет путь к файлу. Параметр Type
     (или InfoType) задает команду, создающую файл. Параметр Force позволяет со
    здать файл в местоположении, определенном путем к профилю, даже если указан
    ные в пути каталоги не существуют (они будут созданы оболочкой PowerShell).
     
    
    После создания нового профиля с помощью этой команды можно настроить оболоч
    ку, задав псевдонимы, функции и скрипты.
    
    Дополнительные сведения см. в разделах "about_Automatic_Variables" и "about
    _Profiles".
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>new-item -type directory -path c:\ps-test\scripts
    
    
    Описание
    -----------
    Эта команда создает новый каталог Scripts в каталоге C:\PS-Test. 
    
    Имя нового каталога (Scripts) включено в значение параметра Path, вместо то
    го чтобы быть указанным в параметре Name. Синтаксис допускает два вида кома
    нды.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113353
    about_Providers 
    Get-Item 
    Set-Item 
    Remove-Item 
    Clear-Item 
    Invoke-Item 
    Rename-Item 
    Move-Item 
    Copy-Item 



more

more [[-paths] <String[]>]



Move-Item

ИМЯ
    Move-Item
    
ОПИСАНИЕ
    Перемещает элемент из одного местоположения в другое.
    
СИНТАКСИС
    Move-Item [-LiteralPath] <string[]> [[-Destination] <string>] [-Credential 
    <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include
     <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonPar
    ameters>]
    
    Move-Item [-Path] <string[]> [[-Destination] <string>] [-Credential <PSCred
    ential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <strin
    g[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters
    >]
    
    
ОПИСАНИЕ
    Командлет Move-Item cmdlet перемещает элемент, включая его свойства, содерж
    имое и дочерние элементы, из одного местоположения в другое. Оба заданных м
    естоположения должны поддерживаться одним и тем же поставщиком. Например, м
    ожно переместить файл или вложенный каталог из одного каталога в другой либ
    о переместить подраздел реестра из одного раздела в другой. При перемещении
     элемента он удаляется в исходном местоположении и создается в новом.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Destination <string>
        Задает путь к местоположению, в которое осуществляется перемещение элем
        ентов. По умолчанию используется текущий каталог. При этом можно исполь
        зовать подстановочные знаки, однако в результате должно быть задано тол
        ько одно местоположение.
        
        Чтобы переименовать перемещаемый элемент, задайте новое имя в параметре
         Destination.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету переместить элемент, заменяющий существующий элеме
        нт, доступный только для чтения. Реализация варьируется от поставщика к
         поставщику. Дополнительные сведения см. в разделе About_Providers. Даж
        е при использовании параметра Force командлет не может переопределить о
        граничения безопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Перемещает только указанные элементы. Значение этого параметра определя
        ет значение параметра Path. Введите элемент пути или шаблон, например "
        *.txt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к текущему местоположению элементов. В отличие от значения 
        параметра Path, значение параметра LiteralPath используется точно в том
         виде, в котором оно введено. Никакие символы не интерпретируются как п
        одстановочные знаки. Если путь включает escape-символы, его нужно заклю
        чить в одиночные кавычки. Одиночные кавычки указывают оболочке Windows 
        PowerShell, что никакие символы не следует интерпретировать как escape-
        символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Передает по конвейеру объект, представляющий элемент. По умолчанию этот
         командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к текущему местоположению элементов. По умолчанию используе
        тся текущий каталог. Подстановочные знаки разрешены.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Move-Item по конвейе
        ру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или объект, представляющий перемещенный элемент.
        При использовании параметра Passthru командлет Move-Item создает объект
        , представляющий перемещенный элемент. В противном случае этот командле
        т не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Move-Item перемещает файлы между дисками, которые поддерживаю
        тся одним поставщиком, однако каталоги могут быть перемещены только в п
        ределах одного диска.
        
        Так как командлет Move-Item перемещает свойства, содержимое и дочерние 
        элементы объекта, то все выполняемые перемещения являются рекурсивными 
        по умолчанию.
        
        Командлет Move-Item также можно вызывать с помощью псевдонимов: "move",
         "mv" и "mi". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлет Move-Item предназначен для работы с данными, предоставляемыми
         любым поставщиком. Чтобы получить список поставщиков, доступных в теку
        щем сеансе, введите команду "Get-PsProvider". Дополнительные сведения с
        м. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>move-item -path C:\test.txt -destination E:\Temp\tst.txt
    
    
    Описание
    -----------
    Эта команда перемещает файл Test.txt с диска C: в каталог E:\Temp и переиме
    новывает его из "test.txt" в "tst.txt".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>move-item -path C:\Temp -destination C:\Logs
    
    
    Описание
    -----------
    Эта команда перемещает каталог C:\Temp и все его содержимое в каталог C:\Lo
    gs. После выполнения данной команды каталог Temp, а также все его вложенные
     каталоги и файлы, будет находиться в каталоге Logs.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>move-item -path .\*.txt -destination C:\Logs
    
    
    Описание
    -----------
    Эта команда перемещает все текстовые файлы (*.txt) из текущего каталога (об
    означенного точкой (.)) в каталог C:\Logs.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-childitem -path . -recurse -include *.txt | move-item -destinatio
    n C:\TextFiles
    
    
    Описание
    -----------
    Эта команда рекурсивно перемещает все текстовые файлы из текущего каталога 
    и вложенных в него каталогов в каталог C:\TextFiles. 
    
    Эта команда с помощью командлета Get-ChildItem извлекает все дочерние элеме
    нты с расширением "*.txt" из текущего каталога (обозначенного точкой (.)) и
     вложенных в него каталогов. В данной команде для обеспечения рекурсивности
     извлечения используется параметр Recurse, а параметр Include позволяет изв
    лечь только TXT-файлы.
    
    Оператор конвейера (|) пересылает результаты данной команды командлету Move
    -Item, который перемещает текстовые файлы в папку TextFiles.
    
    Если имена перемещаемых в каталог "C:\Textfiles" файлов совпадают, командле
    т Move-Item отображает сообщение об ошибке и продолжает работу; при этом в 
    каталог "C:\Textfiles" перемещается только один файл с данным именем. Други
    е файлы остаются в своих исходных каталогах.
    
    Если каталог Textfiles (или любой другой элемент пути назначения) не сущест
    вует, команда завершается с ошибкой. Отсутствующий каталог не будет создан 
    даже в случае использования параметра Force. Командлет Move-Item перемещает
     первый элемент в файл "Textfiles" и отображает сообщение об ошибке, указыв
    ающее, что файл уже существует. 
    
    Кроме того, по умолчанию командлет Get-ChildItem не перемещает скрытые файл
    ы. Для перемещения скрытых файлов в командлете Get-ChildItem необходимо ука
    зать параметр Force.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>move-item hklm:\software\mycompany\* hklm:\software\mynewcompany
    
    
    Описание
    -----------
    Эта команда перемещает разделы и параметры из раздела реестра HKLM\Software
     MyCompany в раздел MyNewCompany. Подстановочный знак (*) означает, что сле
    дует переместить содержимое раздела MyCompany, а не сам раздел. В этой кома
    нде имена дополнительных параметров Path и Destination опущены.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>move-item -literalpath 'Logs[Sept`06]' -destination 'Logs[2006]'
    
    
    Описание
    -----------
    Эта команда перемещает папку Logs[Sept`06] и все ее содержимое в каталог Lo
    gs[2006]. 
    
    Поскольку в имени исходного каталога содержатся квадратные скобки ("[" и "]
    "), вместо параметра Path используется параметр LiteralPath. Чтобы знак отк
    рывающей кавычки (`) интерпретировался как обычный символ, строку пути необ
    ходимо заключать в одиночные кавычки (' '). 
    
    При использовании параметра Destination нет необходимости указывать точный 
    путь, так как переменная Destination также должна заключаться в одинарные к
    авычки, поскольку содержит скобки, которые могут неверно интерпретироваться
    .
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113350
    about_Providers 
    Clear-Item 
    Get-Item 
    Invoke-Item 
    Set-Item 
    New-Item 
    Remove-Item 
    Rename-Item 
    Copy-Item 



Move-ItemProperty

ИМЯ
    Move-ItemProperty
    
ОПИСАНИЕ
    Перемещает свойство из одного местоположения в другое.
    
СИНТАКСИС
    Move-ItemProperty [-LiteralPath] <string[]> [-Destination] <string> [-Name]
     <string[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter 
    ring>] [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-Us
    eTransaction] [<CommonParameters>]
    
    Move-ItemProperty [-Path] <string[]> [-Destination] <string> [-Name] <strin
    g[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] 
    [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransa
    ction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Move-ItemProperty перемещает свойство одного элемента в другой эл
    емент. Например, с его помощью можно переместить запись из одного раздела р
    еестра в другой.  При перемещении свойства элемента оно удаляется в исходно
    м местоположении и создается в новом.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Destination <string>
        Задает путь к целевому местоположению.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету переместить свойства элементов, которые были бы не
        доступны пользователю другими способами. Реализация варьируется от пост
        авщика к поставщику. Дополнительные сведения см. в разделе About_Provid
        ers.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Перемещает только указанные элементы. Значение этого параметра определя
        ет значение параметра Path. Введите элемент пути или шаблон, например "
        *.txt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к текущему местоположению свойства. В отличие от значения п
        араметра Path, значение параметра LiteralPath используется точно в том 
        виде, в котором оно введено. Никакие символы не интерпретируются как по
        дстановочные знаки. Если путь включает escape-символы, его нужно заключ
        ить в одиночные кавычки. Одиночные кавычки указывают оболочке Windows P
        owerShell, что никакие символы не следует интерпретировать как escape-с
        имволы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имя перемещаемого свойства.
        
        Требуется?                    true
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Передает объект, представляющий свойство элемента. По умолчанию этот ко
        мандлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к текущему местоположению свойства. Подстановочные знаки ра
        зрешены.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Move-ItemProperty по
         конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PSCustomObject
        Если задан параметр PassThru, командлет Move-ItemProperty создает объек
        т PSCustomObject, представляющий перемещенное свойство элемента. В прот
        ивном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Имена параметров Path, Destination и Name указывать необязательно. Если
         в команде отсутствуют имена параметров, безымянные значения параметров
         необходимо указывать в следующем порядке: Path, Destination, Name. При
         указании имен параметры могут следовать в любом порядке.
        
        Командлет Move-ItemProperty также можно вызывать с помощью встроенного 
        псевдонима "mp". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлет Move-ItemProperty предназначен для работы с данными, предоста
        вляемыми любым поставщиком. Чтобы получить список поставщиков, доступны
        х в текущем сеансе, введите команду "Get-PSProvider". Дополнительные св
        едения см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>move-itemproperty HKLM:\Software\MyCompany\MyApp -Name `
    Version -Destination HKLM:\Software\MyCompany\NewApp
    
    
    Описание
    -----------
    Эта команда перемещает параметр реестра "Version" и его значение из подразд
    ела MyApp в подраздел NewApp раздела HKLM\Software\MyCompany.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113351
    about_Providers 
    Clear-ItemProperty 
    New-ItemProperty 
    Copy-ItemProperty 
    Rename-ItemProperty 
    Get-ItemProperty 
    Set-ItemProperty 
    Remove-ItemProperty 



New-Alias

ИМЯ
    New-Alias
    
ОПИСАНИЕ
    Создает новый псевдоним.
    
СИНТАКСИС
    New-Alias [-Name] <string> [-Value] <string> [-Description <string>] [-Forc
    e] [-Option {None | ReadOnly | Constant | Private | AllScope}] [-PassThru] 
    [-Scope <string>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-Alias создает новый псевдоним в текущем сеансе Windows PowerS
    hell. Псевдонимы, созданные с помощью командлета New-Alias, не сохраняются 
    после окончания сеанса или закрытия Windows PowerShell. Командлет Export-Al
    ias можно использовать для сохранения сведений о псевдонимах в файле. Сохра
    ненные сведения о псевдонимах можно извлечь с помощью командлета Import-Ali
    as.
    
ПАРАМЕТРЫ
    -Description <string>
        Задает описание псевдонима. Можно ввести любую строку. Если описание со
        держит пробелы, его нужно заключить в кавычки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Если задан, ведет себя как командлет set-alias, когда псевдоним с таким
         именем уже существует.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает новый псевдоним. В псевдониме можно использовать любые буквы или
         цифры, но первым знаком не может быть цифра.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Option <ScopedItemOptions>
        Определяет одно или несколько необязательных свойств псевдонима. Допуст
        имые значения: 
        
        -- None: не определяет параметров (по умолчанию). 
        
        -- ReadOnly: псевдоним нельзя изменить, если только не использовать пар
        аметр Force. 
        
        -- Constant: псевдоним нельзя изменить, даже если использовать параметр
         Force. 
        
        -- Private: псевдоним доступен только в области, определенной параметро
        м Scope. Он невидим за пределами области.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий новый псевдоним. По умолчанию этот ко
        мандлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Scope <string>
        Задает область нового псевдонима. Допустимые значения: "Global", "Local
        ", "Script" или номер относительно текущей области (от 0 до количества 
        областей, где 0 — текущая область, а 1 — ее родительская область). По у
        молчанию используется значение "Local". Дополнительные сведения см. в р
        азделе about_Scopes.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Value <string>
        Задает имя командлета или элемента команды, для которого создается псев
        доним.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.AliasInfo
        Если задан параметр Passthru, командлет New-Alias создает объект System
        .Management.Automation.AliasInfo, представляющий новый псевдоним. В про
        тивном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Для создания нового псевдонима используйте командлет Set-Alias или New-
        Alias. Для изменения псевдонима используйте командлет Set-Alias. Для уд
        аления псевдонима используйте командлет Remove-Item.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>new-alias list get-childitem
    
    
    Описание
    -----------
    Эта команда создает для командлета Get-ChildItem псевдоним "list".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>new-alias -name w -value get-wmiobject -description "quick wmi alias"
     -option ReadOnly
    
    C:\PS> get-alias -name w | format-list *
    
    
    Описание
    -----------
    Эта команда создает для командлета Get-WMIObject псевдоним "w". Она назнача
    ет псевдониму описание "quick wmi alias" и делает псевдоним доступным тольк
    о для чтения. В последней строке командлет Get-Alias возвращает новый псевд
    оним и передает его по конвейеру командлету Format-List для отображения все
    х данных о псевдониме.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113352
    Set-Alias 
    Get-Alias 
    Export-Alias 
    Import-Alias 



New-Event

ИМЯ
    New-Event
    
ОПИСАНИЕ
    Создает новое событие.
    
СИНТАКСИС
    New-Event [-SourceIdentifier] <string> [[-Sender] <psobject>] [[-EventArgum
    ents] <PSObject[]>] [[-MessageData] <psobject>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-Event создает новое пользовательское событие. 
    
    Пользовательские события позволяют уведомлять пользователей об изменениях с
    остояния программы, а также о любых других изменениях, которые может обнару
    жить программа, включая изменения условий работы оборудования или системы, 
    состояния приложений, состояния диска, состояния сети или завершение фоново
    го задания.
    
    Пользовательские события автоматически добавляются в очередь событий в сеан
    се в момент их возникновения; настраивать подписку на эти события не нужно.
     Однако если требуется перенаправить событие в локальный сеанс или задать д
    ействие для реагирования на событие, необходимо подписаться на такое пользо
    вательское событие с помощью командлета Register-EngineEvent. 
    
    При создании подписки на пользовательское событие в сеанс добавляется подпи
    счик на событие. Если отменить подписку на событие с помощью командлета Unr
    egister-Event, подписчик на событие и само пользовательское событие будут у
    далены из сеанса. Если не подписываться на пользовательское событие, то для
     удаления события необходимо изменить условия работы программы или закрыть 
    сеанс Windows PowerShell.
    
ПАРАМЕТРЫ
    -EventArguments <PSObject[]>
        Задает объект, содержащий параметры события.
        
        Требуется?                    false
        Позиция?                    3
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MessageData <psobject>
        Задает дополнительные данные, связанные с событием. Значение этого пара
        метра хранится в свойстве MessageData объекта события.
        
        Требуется?                    false
        Позиция?                    4
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Sender <psobject>
        Задает объект, вызывающий появление события. Объектом по умолчанию явля
        ется обработчик Windows PowerShell.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SourceIdentifier <string>
        Задает имя нового события. Этот параметр является обязательным и он дол
        жен быть уникальным в пределах сеанса.
        
        Значение этого параметра хранится в свойстве SourceIdentifier события.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSEventArgs
        
    
    
ПРИМЕЧАНИЯ
    
    
        Новое пользовательское событие, подписка на событие и очередь событий с
        уществуют только в рамках текущего сеанса. Если завершить текущий сеанс
        , очередь событий будет очищена и подписка на события будет отменена.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>new-event -sourceidentifier Timer -sender windows.timer  -messagedata
     "Test"
    
    
    Описание
    -----------
    Эта команда создает новое событие в очереди событий Windows PowerShell. Для
     отправки события она использует объект Windows.Timer.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>function Enable-ProcessCreationEvent 
    { 
       $query = New-Object System.Management.WqlEventQuery "__InstanceCreationE
    vent", (New-Object TimeSpan 0,0,1), "TargetInstance isa 'Win32_Process'" 
       $processWatcher = New-Object System.Management.ManagementEventWatcher $q
    uery 
       $identifier = "WMI.ProcessCreated" 
    
       Register-ObjectEvent $processWatcher "EventArrived" -SupportEvent $ident
    ifier -Action { 
           [void] (New-Event -sourceID "PowerShell.ProcessCreated" -Sender $arg
    s[0] -EventArguments $args[1].SourceEventArgs.NewEvent.TargetInstance) 
       } 
    }
    
    
    Описание
    -----------
    В этом примере функции командлет New-Event используется для создания событи
    я в ответ на другое событие. Команда использует командлет Register-ObjectEv
    ent для подписки на событие инструментария управления Windows (WMI), возник
    ающее при создании нового процесса. Команда использует параметр Action кома
    ндлета, чтобы вызвать командлет New-Event, создающий новое событие.
    
    Поскольку события, создаваемые командлетом New-Event, автоматически добавля
    ются в очередь событий Windows PowerShell, пользователю не нужно подписыват
    ься на эти события.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135234
    Register-ObjectEvent 
    Register-EngineEvent 
    Register-WmiEvent 
    Unregister-Event 
    Get-Event 
    Remove-Event 
    Wait-Event 



New-EventLog

ИМЯ
    New-EventLog
    
ОПИСАНИЕ
    Создает новый журнал событий и новый источник событий на локальном или удал
    енном компьютере.
    
СИНТАКСИС
    New-EventLog [-LogName] <string> [-Source] <string[]> [[-ComputerName] <str
    ing[]>] [-CategoryResourceFile <string>] [-MessageResourceFile <string>] [-
    ParameterResourceFile <string>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Этот командлет создает новый классический журнал событий на локальном или у
    даленном компьютере. С его помощью можно также зарегистрировать источник со
    бытий, который будет записывать события в новый или существующий журнал.
    
    Командлеты, в имени которых содержится существительное EventLog (командлеты
     журнала событий), работают только с классическими журналами событий. Чтобы
     получать события из журналов, основанных на технологии журнала событий Win
    dows (в Windows Vista и более поздних версиях Windows), используйте командл
    ет Get-WinEvent.
    
ПАРАМЕТРЫ
    -CategoryResourceFile <string>
        Задает путь к файлу, в котором содержатся строки категорий для исходных
         событий.  Этот файл также называется файлом сообщений категорий.
        
        Файл должен находиться на компьютере, на котором создается журнал событ
        ий. Этот параметр не создает и не перемещает файлы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string[]>
        Создает новые журналы событий на указанных компьютерах. По умолчанию ис
        пользуется значение "Локальный компьютер".
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя удаленного компью
        тера. Чтобы указать локальный компьютер, введите имя компьютера, точку 
        (.) или "localhost".
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName командлета Get-EventLog можно использовать, даж
        е если компьютер не настроен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    3
        Значение по умолчанию                .
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LogName <string>
        Задает имя журнала событий. 
        
        Если журнал не существует, командлет New-EventLog создает журнал и испо
        льзует данное значение в свойствах Log и LogDisplayName нового журнала 
        событий. Если журнал существует, командлет New-EventLog регистрирует но
        вый источник для журнала событий.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MessageResourceFile <string>
        Задает путь к файлу, в котором содержатся строки форматирования сообщен
        ий для исходных событий. Этот файл также называется файлом сообщений со
        бытий.
        
        Файл должен находиться на компьютере, на котором создается журнал событ
        ий. Этот параметр не создает и не перемещает файлы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ParameterResourceFile <string>
        Задает путь к файлу, в котором содержатся строки, используемые для подс
        тановки параметров в описаниях событий. Этот файл также называется файл
        ом сообщений параметров.
        
        Файл должен находиться на компьютере, на котором создается журнал событ
        ий. Этот параметр не создает и не перемещает файлы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Source <string[]>
        Задает имена источников журналов событий, например названия приложений,
         записывающих данные в журнал событий. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Diagnostics.EventLogEntry
        
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать командлет New-EventLog в Windows Vista и более поздн
        их версиях Windows, необходимо запускать Windows PowerShell командой "З
        апуск от имени администратора".
        
        Чтобы создать источник событий в Windows Vista, Windows XP Professional
         или Windows Server 2003, необходимо быть членом группы "Администраторы
        " на целевом компьютере. 
        
        При создании нового журнала событий и нового источника событий система 
        регистрирует новый источник для нового журнала, однако журнал создается
         только при записи первого события.
        
        Операционная система сохраняет журналы событий в виде файлов. При созда
        нии нового журнала событий соответствующий файл сохраняется в каталоге 
        "%SystemRoot%\System32\Config" на указанном компьютере. Имя файла состо
        ит из восьми первых символов значения свойства Log; файл имеет расширен
        ие EVT.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>new-eventlog -source TestApp -logname TestLog -MessageResourceFile C:
    \Test\TestApp.dll
    
    
    Описание
    -----------
    Эта команда создает на локальном компьютере журнал событий TestLog и регист
    рирует для него новый источник.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$file = "C:\Program Files\TestApps\NewTestApp.dll"
    
    C:\PS> new-eventlog -computername Server01 -source NewTestApp -logname Appl
    ication -MessageResourceFile $file -CategoryResourceFile $file
    
    
    Описание
    -----------
    Эта команда добавляет новый источник событий, NewTestApp, к журналу событий
     приложений на удаленном компьютере Server01.
    
    Для выполнения команды необходимо наличие файла NewTestApp.dll на компьютер
    е Server01.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135235
    Clear-EventLog 
    Get-EventLog 
    Limit-EventLog 
    New-EventLog 
    Remove-EventLog 
    Show-EventLog 
    Write-EventLog 
    Get-WinEvent 



New-Item

ИМЯ
    New-Item
    
ОПИСАНИЕ
    Создает новый элемент.
    
СИНТАКСИС
    New-Item [-Path] <string[]> [-Credential <PSCredential>] [-Force] [-ItemTyp
    e <string>] [-Value <Object>] [-Confirm] [-WhatIf] [-UseTransaction] [<Comm
    onParameters>]
    
    New-Item -Name <string> [[-Path] <string[]>] [-Credential <PSCredential>] [
    -Force] [-ItemType <string>] [-Value <Object>] [-Confirm] [-WhatIf] [-UseTr
    ansaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-Item создает новый элемент и задает его значение. Типы создав
    аемых элементов зависят от местоположения этих элементов. Например, в файло
    вой системе командлет New-Item создает файлы и папки. В реестре командлет N
    ew-Item создает разделы и записи реестра. 
    
    С помощью командлета New-Item можно также задавать значения создаваемых эле
    ментов. Например, при создании нового файла командлет New-Item можно исполь
    зовать для добавления в файл исходного содержимого.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету создать элемент, заменяющий существующий элемент, 
        доступный только для чтения. Реализация варьируется от поставщика к пос
        тавщику. Дополнительные сведения см. в разделе About_Providers. Даже пр
        и использовании параметра Force командлет не может переопределить огран
        ичения безопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ItemType <string>
        Задает тип нового элемента, определяемый поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя нового элемента. Имя нового элемента можно задать с помощью 
        этого параметра или включить это имя в значение параметра Path.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к местоположению нового элемента. Подстановочные знаки разр
        ешены.
        
        Можно задать имя нового элемента параметром Name или включить это имя в
         параметр Path.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Value <Object>
        Задает значение нового элемента. Также значение можно передать командле
        ту New-Item с помощью конвейера.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Object
        Значение для нового элемента можно передать командлету New-Item по конв
        ейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Object
        Командлет New-Item возвращает созданный им элемент.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет New-Item предназначен для работы с данными, предоставляемыми 
        любым поставщиком. Чтобы получить список поставщиков, доступных в текущ
        ем сеансе, введите команду "Get-PsProvider". Дополнительные сведения см
        . в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>new-item -path . -name testfile1.txt -type "file" -value "This is a t
    ext string."
    
    
    Описание
    -----------
    Эта команда создает в текущем каталоге текстовый файл с именем testfile1.tx
    t. Точка (.) в значении параметра Path обозначает текущий каталог. Текст, у
    казанный в кавычках после параметра Value, добавляется в файл в качестве ег
    о содержимого.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>new-item -path c:\ -name logfiles -type directory
    
    
    Описание
    -----------
    Эта команда создает папку с именем Logfiles на диске C: Параметр Type указы
    вает, что создаваемый элемент является каталогом, а не файлом или другим об
    ъектом файловой системы.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>new-item -path $profile -type file -force
    
    
    Описание
    -----------
    Эта команда создает профиль Windows PowerShell в местоположении, заданном п
    еременной $profile. 
    
    Профили можно использовать для настройки Windows PowerShell. $profile являе
    тся автоматической (встроенной) переменной, в которой хранится путь и имя ф
    айла профиля "CurrentUser/CurrentHost". Несмотря на наличие в Windows Power
    Shell пути и имени соответствующего файла, по умолчанию профиль не существу
    ет. 
    
    В этой команде переменная $profile представляет путь к файлу. Параметр Type
     (или InfoType) задает команду, создающую файл. Параметр Force позволяет со
    здать файл в местоположении, определенном путем к профилю, даже если указан
    ные в пути каталоги не существуют (они будут созданы оболочкой PowerShell).
     
    
    После создания нового профиля с помощью этой команды можно настроить оболоч
    ку, задав псевдонимы, функции и скрипты.
    
    Дополнительные сведения см. в разделах "about_Automatic_Variables" и "about
    _Profiles".
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>new-item -type directory -path c:\ps-test\scripts
    
    
    Описание
    -----------
    Эта команда создает новый каталог Scripts в каталоге C:\PS-Test. 
    
    Имя нового каталога (Scripts) включено в значение параметра Path, вместо то
    го чтобы быть указанным в параметре Name. Синтаксис допускает два вида кома
    нды.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113353
    about_Providers 
    Get-Item 
    Set-Item 
    Remove-Item 
    Clear-Item 
    Invoke-Item 
    Rename-Item 
    Move-Item 
    Copy-Item 



New-ItemProperty

ИМЯ
    New-ItemProperty
    
ОПИСАНИЕ
    Создает новое свойство элемента и задает значение этого свойства. Например,
     командлет New-ItemProperty можно использовать для создания и изменения зна
    чений и данных реестра, которые являются свойствами раздела реестра.
    
СИНТАКСИС
    New-ItemProperty [-LiteralPath] <string[]> [-Name] <string> [-Credential <P
    SCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include 
    string[]>] [-PropertyType <string>] [-Value <Object>] [-Confirm] [-WhatIf] 
    [-UseTransaction] [<CommonParameters>]
    
    New-ItemProperty [-Path] <string[]> [-Name] <string> [-Credential <PSCreden
    tial>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[
    ]>] [-PropertyType <string>] [-Value <Object>] [-Confirm] [-WhatIf] [-UseTr
    ansaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-ItemProperty создает новое свойство указанного элемента и зад
    ает значение этого свойства. Как правило, этот командлет используется для с
    оздания новых значений реестра, поскольку значения реестра являются свойств
    ами раздела реестра.
    
    Этот командлет не добавляет свойства в объект. Чтобы добавить свойство в эк
    земпляр объекта, используйте командлет Add-Member. Чтобы добавить свойство 
    во все объекты определенного типа, отредактируйте файл Types.ps1xml.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. 
        
        Синтаксис фильтра, в том числе использование подстановочных знаков, зав
        исит от поставщика. Фильтры эффективнее других параметров, потому что п
        оставщик применяет их при извлечении объектов (вместо использования Win
        dows PowerShell для фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету создать свойство объекта, которое было бы недоступ
        но пользователю другими способами. Реализация варьируется от поставщика
         к поставщику. Дополнительные сведения см. в разделе About_Providers.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Значение этого параметра определяет значение параметра Path. Введите эл
        емент пути или шаблон, например "*.txt". Подстановочные знаки разрешены
        .
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к свойству элемента. Значение параметра LiteralPath использ
        уется точно в том виде, в котором оно введено. Никакие символы не интер
        претируются как подстановочные знаки. Если путь включает escape-символы
        , его нужно заключить в одиночные кавычки. Одиночные кавычки указывают 
        оболочке Windows PowerShell, что никакие символы не следует интерпретир
        овать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя нового свойства. Если свойство является записью реестра, это
        т параметр задает имя записи.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к элементу. Этот параметр определяет элемент, в который буд
        ет добавлено новое свойство.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PropertyType <string>
        Задает тип добавляемого свойства.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Value <Object>
        Задает значение свойства. Если свойство является записью реестра, этот 
        параметр задает значение записи.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Данные невозможно передать командлету New-ItemProperty по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSCustomObject
        Командлет New-ItemProperty возвращает пользовательский объект, содержащ
        ий новое свойство.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет New-ItemProperty предназначен для работы с данными, предостав
        ляемыми любым поставщиком. Чтобы получить список поставщиков, доступных
         в текущем сеансе, введите команду "Get-PSProvider". Дополнительные све
        дения см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>new-itemproperty -path HKLM:\Software\MyCompany -name NoOfEmployees -
    value 822
    
    C:\PS> get-itemproperty hklm:\software\mycompany
    
    
    PSPath        : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\soft
    ware\mycompany
    PSParentPath  : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\soft
    ware
    PSChildName   : mycompany
    PSDrive       : HKLM
    PSProvider    : Microsoft.PowerShell.Core\Registry
    NoOfLocations : 2
    NoOfEmployees : 822
    
    
    Описание
    -----------
    Эта команда добавляет новую запись реестра, NoOfEmployees, в раздел MyCompa
    ny куста "HKLM:\Software".
    
    В первой команде используется параметр Path для задания пути к разделу реес
    тра MyCompany. Параметр Name используется для задания имени записи, а парам
    етр Value — для задания значения записи.
    
    Вторая команда с помощью командлета Get-ItemProperty отображает новую запис
    ь реестра.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-item -path HKLM:\Software\MyCompany | new-Itemproperty -name NoOf
    Locations -value 3
    
    
    Описание
    -----------
    Эта команда добавляет новую запись реестра в раздел реестра. Для задания ра
    здела используется оператор конвейера (|), который позволяет передать объек
    т, представляющий раздел, командлету New-ItemProperty.
    
    В первой части команды используется командлет Get-Item для получения раздел
    а реестра MyCompany. С помощью оператора конвейера (|) результаты выполнени
    я команды передаются командлету New-ItemProperty, который добавляет новую з
    апись реестра, NoOfLocations, и ее значение, 3, в раздел MyCompany.
    
    Эта команда работает, поскольку функция привязки параметра в Windows PowerS
    hell связывает путь объекта RegistryKey, возвращаемого командлетом Get-Item
    , с параметром LiteralPath командлета New-ItemProperty. Дополнительные свед
    ения см. в разделе about_Pipelines.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113354
    about_Providers 
    Clear-ItemProperty 
    Copy-ItemProperty 
    Move-ItemProperty 
    Rename-ItemProperty 
    Get-ItemProperty 
    Set-ItemProperty 
    Remove-ItemProperty 



New-Module

ИМЯ
    New-Module
    
ОПИСАНИЕ
    Создает новый динамический модуль, который существует только в памяти.
    
СИНТАКСИС
    New-Module [-Name] <string> [-ScriptBlock] <scriptblock> [-ArgumentList <Ob
    ject[]>] [-AsCustomObject] [-Cmdlet <string[]>] [-Function <string[]>] [-Re
    turnResult] [<CommonParameters>]
    
    New-Module [-ScriptBlock] <scriptblock> [-ArgumentList <Object[]>] [-AsCust
    omObject] [-Cmdlet <string[]>] [-Function <string[]>] [-ReturnResult] [<Com
    monParameters>]
    
    
ОПИСАНИЕ
    Командлет New-Module создает динамический модуль из блока скрипта. Элементы
     динамического модуля, например функции и переменные, становятся немедленно
     доступны в рамках сеанса и остаются доступными до завершения сеанса.
    
    Как и для статических модулей, для динамического модуля по умолчанию экспор
    тируются командлеты и функции, но не экспортируются переменные и псевдонимы
    . Однако настройки по умолчанию можно изменить с помощью командлета Export-
    ModuleMember и параметров New-Module.
    
    Динамические модули существуют только в памяти, а не на диске. Как и элемен
    ты всех модулей, элементы динамических модулей выполняются в закрытой облас
    ти модуля, являющейся дочерней областью глобальной области. Командлет Get-M
    odule не может получить динамический модуль, но командлет Get-Command может
     получить экспортируемые элементы.
    
    Чтобы сделать динамический модуль доступным командлету Get-Module, передайт
    е команду New-Module по конвейеру командлету Import-Module или передайте ко
    мандлету Import-Module по конвейеру объект модуля, возвращенный командой Ne
    w-Module. Это действие добавляет динамический модуль в список Get-Module, н
    о не сохраняет модуль на диск и не делает модуль постоянно существующим.
    
ПАРАМЕТРЫ
    -ArgumentList <Object[]>
        Указывает аргументы (значения параметров), которые передаются блоку скр
        ипта.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -AsCustomObject [<SwitchParameter>]
        Возвращает пользовательский объект с элементами, представляющими элемен
        ты модуля. 
        
        При использовании параметра AsCustomObject команда New-Module создает д
        инамический модуль, импортирует элементы модуля в текущий сеанс и возвр
        ащает объект PSCustomObject, а не объект PSModuleInfo. Можно сохранить 
        пользовательский объект в переменной и использовать точку для обращения
         к его элементам.
        
        Если модуль содержит несколько элементов с одинаковым именем, например 
        функцию и переменную с именем "A", из пользовательского объекта доступе
        н только один элемент с каждым из имен.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Cmdlet <string[]>
        Экспортирует только указанные командлеты из модуля в текущий сеанс. Вве
        дите список командлетов, разделенных запятыми. Подстановочные знаки раз
        решены. По умолчанию экспортируются все командлеты из модуля.
        
        В блоке скрипта нельзя определять командлеты, но динамический модуль мо
        жет содержать командлеты, если он импортирует их из двоичного модуля.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Function <string[]>
        Экспортирует только указанные функции из модуля в текущий сеанс. Введит
        е список функций, разделенных запятыми. Подстановочные знаки разрешены.
         По умолчанию экспортируются все функции, определенные в модуле.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Name <string>
        Задает имя нового модуля. Кроме того, можно передать имя модуля командл
        ету New-Module по конвейеру.
        
        Значение по умолчанию представляет собой созданное автоматически имя, к
        оторое начинается со строки "__DynamicModule_" и заканчивается GUID, пр
        едставляющим собой путь к динамическому модулю.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                "__DynamicModule_" + GUID
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -ReturnResult [<SwitchParameter>]
        Выполняет блок скрипта и возвращает результаты блока скрипта вместо воз
        врата объекта модуля.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ScriptBlock <scriptblock>
        Задает содержимое динамического модуля. Чтобы создать блок скрипта, зак
        лючите содержимое в скобки ( { } ). Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Можно передать строку с именем модуля командлету New-Module по конвейер
        у.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSModuleInfo, System.Management.Automation.PSC
    ustomObject или None
        По умолчанию командлет New-Module создает объект PSModuleInfo. Если исп
        ользуется параметр AsCustomObject, командлет создает объект PSCustomObj
        ect. Если используется параметр ReturnResult, он возвращает результат о
        бработки блока скрипта в динамическом модуле.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет New-Module также можно вызывать с помощью псевдонима "nmo". Д
        ополнительные сведения см. в разделе about_Aliases.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>new-module -scriptblock {function Hello {"Hello"}}
    
    Name              : __DynamicModule_2ceb1d0a-990f-45e4-9fe4-89f0f6ead0e5
    Path              : 2ceb1d0a-990f-45e4-9fe4-89f0f6ead0e5
    Description       :
    Guid              : 00000000-0000-0000-0000-000000000000
    Version           : 0.0
    ModuleBase        :
    ModuleType        : Script
    PrivateData       :
    AccessMode        : ReadWrite
    ExportedAliases   : {}
    ExportedCmdlets   : {}
    ExportedFunctions : {[Hello, Hello]}
    ExportedVariables : {}
    NestedModules     : {}
    
    
    Описание
    -----------
    Эта команда создает новый динамический модуль с функцией "Hello". Команда в
    озвращает объект модуля, представляющий новый динамический модуль.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>new-module -scriptblock {function Hello {"Hello"}}
    
    Name              : __DynamicModule_2ceb1d0a-990f-45e4-9fe4-89f0f6ead0e5
    Path              : 2ceb1d0a-990f-45e4-9fe4-89f0f6ead0e5
    Description       :
    Guid              : 00000000-0000-0000-0000-000000000000
    Version           : 0.0
    ModuleBase        :
    ModuleType        : Script
    PrivateData       :
    AccessMode        : ReadWrite
    ExportedAliases   : {}
    ExportedCmdlets   : {}
    ExportedFunctions : {[Hello, Hello]}
    ExportedVariables : {}
    NestedModules     : {}
    
    C:\PS> get-module
    C:\PS>
    
    C:\PS> get-command Hello
    
    CommandType     Name   Definition
    -----------     ----   ----------
    Function        Hello  "Hello"
    
    
    Описание
    -----------
    В этом примере показано, что динамические модули не возвращаются командлето
    м Get-Module, но их экспортируемые элементы возвращаются командлетом Get-Co
    mmand.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>New-Module -scriptblock {$SayHelloHelp="Type 'SayHello', a space, and
     a name."; function SayHello ($name) { "Hello, $name" }; Export-ModuleMembe
    r -function SayHello -Variable SayHelloHelp}
    
    C:\PS> $SayHelloHelp
    Type 'SayHello', a space, and a name.
    
    C:\PS> SayHello Jeffrey
    Hello, Jeffrey
    
    
    Описание
    -----------
    Эта команда использует командлет Export-ModuleMember для экспорта переменно
    й в текущий сеанс. Если команда Export-ModuleMember не используется, экспор
    тируется только функция.
    
    В выходных данных показано, что в сеанс были экспортированы и переменная, и
     функция.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>new-module -scriptblock {function Hello {"Hello"}} -name GreetingMod
    ule | import-module
    
    C:\PS> get-module
    
    
    Name              : GreetingModule
    Path              : d54dfdac-4531-4db2-9dec-0b4b9c57a1e5
    Description       :
    Guid              : 00000000-0000-0000-0000-000000000000
    Version           : 0.0
    ModuleBase        :
    ModuleType        : Script
    PrivateData       :
    AccessMode        : ReadWrite
    ExportedAliases   : {}
    ExportedCmdlets   : {}
    ExportedFunctions : {[Hello, Hello]}
    ExportedVariables : {}
    NestedModules     : {}
    
    
    C:\PS> get-command hello
    
    CommandType     Name                                                       
            Definition
    -----------     ----                                                       
            ----------
    Function        Hello                                                      
            "Hello"
    
    
    Описание
    -----------
    Эта команда демонстрирует, как сделать динамический модуль доступным для ко
    мандлета Get-Module, передав динамический модуль по конвейеру командлету Im
    port-Module.
    
    Первая команда использует оператор конвейера (|) для отправки объекта модул
    я, созданного командлетом New-Module, командлету Import-Module. Команда исп
    ользует параметр Name командлета New-Module для назначения модулю понятного
     имени. Поскольку по умолчанию командлет Import-Module не возвращает никаки
    х объектов, у этой команды нет выходных данных.
    
    Вторая команда получает все модули в рамках сеанса с помощью командлета Get
    -Module. В результатах показано, что командлет Get-Module может получить но
    вый динамический модуль.
    
    Третья команда использует командлет Get-Command для получения экспортируемо
    й динамическим модулем функции Hello.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$m = new-module -scriptblock {function Hello ($name) {"Hello, $name"}
    ; function Goodbye ($name) {"Goodbye, $name"}} -AsCustomObject
    
    C:\PS> $m
    
    C:\PS> $m | get-member
    
       TypeName: System.Management.Automation.PSCustomObject
    
    Name        MemberType   Definition
    ----        ----------   ----------
    Equals      Method       bool Equals(System.Object obj)
    GetHashCode Method       int GetHashCode()
    GetType     Method       type GetType()
    ToString    Method       string ToString()
    Goodbye     ScriptMethod System.Object Goodbye();
    Hello       ScriptMethod System.Object Hello();
    
    PS C:\ps-test> $m.goodbye("Jane")
    Goodbye, Jane
    
    PS C:\ps-test> $m.hello("Manoj")
    Hello, Manoj
    
    PS C:\ps-test> goodbye Jane
    Goodbye, Jane
    
    PS C:\ps-test> hello Manoj
    Hello, Manoj
    
    
    Описание
    -----------
    В этом примере показано, как использовать параметр AsCustomObject командлет
    а New-Module для создания пользовательского объекта с методами-скриптами, о
    тражающими экспортированные функции.
    
    Первая команда использует командлет New-Module для создания динамического м
    одуля с двумя функциями, Hello и Goodbye. Команда использует параметр AsCus
    tomObject для создания пользовательского объекта, а не объекта PSModuleInfo
    , который создается командлетом New-Module по умолчанию. Полученный пользов
    ательский объект сохраняется в переменной $m.
    
    Вторая команда пытается отобразить значение переменной $m. На экране не ото
    бражается ничего.
    
    Третья команда использует оператор конвейера (|) для отправки пользовательс
    кого объекта командлету Get-Member, который отображает свойства и методы по
    льзовательского объекта. В выходных данных показано, что у объекта есть мет
    оды-скрипты, представляющие функции Hello и Goodbye.
    
    Четвертая и пятая команды используют формат метода-скрипта для вызова функц
    ий Hello и Goodbye. 
     
    Шестая и седьмая команды вызывают функции с указанием имени функции и значе
    ния параметра.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>new-module -scriptblock {function SayHello {"Hello, World"}; SayHell
    o} -returnResult
    
    Hello, World
    
    
    Описание
    -----------
    Эта команда использует параметр ReturnResult, чтобы запросить результаты вы
    полнения блока скрипта вместо запроса объекта модуля. 
    
    Блок скрипта в новом модуле определяет функцию SayHello, а затем вызывает е
    е.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=141554
    Get-Module 
    Import-Module 
    Remove-Module 
    Export-ModuleMember 
    about_Modules 



New-ModuleManifest

ИМЯ
    New-ModuleManifest
    
ОПИСАНИЕ
    Создает новый манифест модуля.
    
СИНТАКСИС
    New-ModuleManifest [-Path] <string> -Author <string> -CompanyName <string> 
    -Copyright <string> -Description <string> -FileList <string[]> -FormatsToPr
    ocess <string[]> -ModuleToProcess <string> -NestedModules <string[]> -Requi
    redAssemblies <string[]> -TypesToProcess <string[]> [-AliasesToExport <stri
    ng[]>] [-ClrVersion <Version>] [-CmdletsToExport <string[]>] [-DotNetFramew
    orkVersion <Version>] [-FunctionsToExport <string[]>] [-Guid <Guid>] [-Modu
    leList <Object[]>] [-ModuleVersion <Version>] [-PassThru] [-PowerShellHostN
    ame <string>] [-PowerShellHostVersion <Version>] [-PowerShellVersion <Versi
    on>] [-PrivateData <Object>] [-ProcessorArchitecture {None | MSIL | X86 | I
    A64 | Amd64}] [-RequiredModules <Object[]>] [-ScriptsToProcess <string[]>] 
    [-VariablesToExport <string[]>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-ModuleManifest создает новый файл манифеста модуля (PSD1), за
    полняет его значения и сохраняет файл манифеста по указанному пути. 
    
    Авторы модулей могут использовать этот командлет для создания манифеста для
     своего модуля. Манифест модуля представляет собой файл PSD1, в котором сод
    ержится хэш-таблица. Ключи и значения хэш-таблицы описывают содержимое и ат
    рибуты модуля, определяют требуемые компоненты, а также задают способ обраб
    отки компонентов. Манифесты не являются необходимым элементом модулей. 
    
    Командлет New-ModuleManifest создает манифест, в котором используются все т
    иповые ключи манифеста, поэтому выходные данные по умолчанию можно использо
    вать в качестве шаблона манифеста. Чтобы добавить или изменить значения или
     добавить ключи модуля, не добавляемые в файл командлетом, откройте результ
    ирующий файл в текстовом редакторе.
    
    Для каждого из параметров командлета (за исключением параметров Path и Pass
    Thru) создается ключ модуля манифеста и его значение. Обязательным в манифе
    сте модуля является только ключ ModuleVersion. Однако, некоторые другие пар
    аметры данного командлета являются обязательными. Можно ввести команду "New
    -ModuleManifest" без параметров, и командлет запросит значения других обычн
    о используемых ключей. Чтобы оставить значение пустым, нажмите клавишу ENTE
    R.
    
    Полное описание форматов, области действия и требований к манифесту модуля 
    см. в документе "Написание манифеста модуля" (How to Write a Module Manifes
    t) в библиотеке MSDN по адресу http://go.microsoft.com/fwlink/?LinkId=14361
    3 (на английском языке).
    
ПАРАМЕТРЫ
    -AliasesToExport <string[]>
        Задает псевдонимы, экспортируемые модулем. Подстановочные знаки разреше
        ны.
        
        Этот параметр можно использовать для ограничения псевдонимов, экспортир
        уемых модулем. Он позволяет удалять псевдонимы из списка экспортируемых
         псевдонимов, но не позволяет добавлять псевдонимы в список.
        
        Если этот параметр опущен, командлет New-ModuleManifest создает ключ Al
        iasesToExport со значением * (все), означающим, что все псевдонимы, экс
        портируемые модулем, экспортируются манифестом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                * (все)
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Author <string>
        Задает автора модуля. 
        
        Этот параметр является обязательным для командлета, но ключ Author не я
        вляется обязательным для манифеста. Если этот параметр не задан и его з
        начение не введено при запросе, командлет New-ModuleManifest создает кл
        юч Author и устанавливает в качестве значения этого ключа имя текущего 
        пользователя.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Имя текущего пользователя
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ClrVersion <Version>
        Задает версию среды CLR платформы Microsoft .NET Framework, которая тре
        буется для работы модуля.
        
        Если этот параметр не задан, командлет New-ModuleManifest создаст ключ 
        CLRVersion со значением пустой строки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CmdletsToExport <string[]>
        Задает командлеты, экспортируемые модулем. Подстановочные знаки разреше
        ны.
        
        Этот параметр можно использовать для ограничения командлетов, экспортир
        уемых модулем. Оно позволяет удалять командлеты из списка экспортируемы
        х командлетов, но не позволяет добавлять командлеты в список.
        
        Если этот параметр опущен, командлет New-ModuleManifest создает ключ Cm
        dletsToExport со значением * (все), означающим, что все командлеты, экс
        портируемые модулем, экспортируются манифестом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                * (все)
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -CompanyName <string>
        Указывает компанию или поставщика, создавшего модуль. 
        
        Этот параметр является обязательным для командлета, но ключ CompanyName
         не является обязательным для манифеста. Если этот параметр не задан и 
        его значение не введено при запросе, командлет New-ModuleManifest созда
        ет ключ CompanyName и устанавливает в качестве значения этого ключа стр
        оку "Unknown".
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                "Unknown"
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Copyright <string>
        Задает заявление об авторских правах на модуль. 
        
        Этот параметр является обязательным для командлета, но ключ Copyright н
        е является обязательным для манифеста. Если этот параметр не задан и ег
        о значение не введено при запросе, командлет New-ModuleManifest создает
         ключ Copyright со значением "(c) <год> <имя_пользователя>. All rights 
        reserved.", где <год> — это текущий год, а <имя_пользователя> — это зна
        чение ключа Author (если оно задано) или имя текущего пользователя.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                (c) <имя_пользователя>, <год>. Все
         права защищены.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Description <string>
        Описывает содержимое модуля.
        
        Этот параметр является обязательным для командлета, но ключ Description
         не является обязательным для манифеста. Если этот параметр не задан и 
        его значение не введено при запросе, командлет New-ModuleManifest созда
        ет ключ Description с пустым строковым значением.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -DotNetFrameworkVersion <Version>
        Задает версию платформы Microsoft .NET Framework, которая требуется для
         работы модуля.
        
        Если этот параметр не задан, командлет New-ModuleManifest создаст ключ 
        DotNetFrameWorkVersion со значением пустой строки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FileList <string[]>
        Задает все элементы, включенные в модуль. 
        
        Этот ключ предназначен для выполнения функций полного списка ресурсов м
        одуля. Эти файлы не экспортируются с модулем автоматически.
        
        Этот параметр является обязательным для командлета, но ключ FileList не
         является обязательным для манифеста. Если этот параметр не задан, и ег
        о значение не введено при запросе, командлет New-ModuleManifest создает
         ключ FileList со значением, представляющим собой пустой массив.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FormatsToProcess <string[]>
        Задает файлы форматирования (PS1XML), которые выполняются при импорте м
        одуля. 
        
        При импорте модуля Windows PowerShell выполняет командлет Update-Format
        Data с указанными файлами. Так как область действия файлов форматирован
        ия не ограничена, они влияют на все состояния сеанса в сеансе. 
        
        Этот параметр является обязательным для командлета, но ключ FormatsToPr
        ocess не является обязательным для манифеста. Если этот параметр не зад
        ан, и его значение не введено при запросе, командлет New-ModuleManifest
         создает ключ FormatsToProcess со значением пустого массива.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FunctionsToExport <string[]>
        Задает функции, экспортируемые модулем. Подстановочные знаки разрешены.
        
        Этот параметр можно использовать для ограничения функций, экспортируемы
        х модулем. Он позволяет удалять функции из списка экспортируемых функци
        й, но не позволяет добавлять функции в список.
        
        Если этот параметр опущен, командлет New-ModuleManifest создает ключ Fu
        nctionsToExport со значением * (все), означающим, что все функции, эксп
        ортируемые модулем, экспортируются манифестом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                * (все)
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Guid <Guid>
        Задает уникальный идентификатор модуля. GUID позволяет отличать модули 
        с одинаковыми именами. 
        
        Если не указать этот параметр, командлет New-ModuleManifest создает нов
        ый ключ GUID в манифесте и создает GUID, который будет использоваться в
         качестве значения ключа.
        
        Чтобы создать новый GUID в среде Windows PowerShell, введите команду "[
        guid]::NewGuid()".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                GUID, созданный для модуля
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ModuleList <Object[]>
        Список всех модулей, упакованных с этим модулем.
        
        Введите имена всех модулей в виде строки или введите хэш-таблицу, указа
        в значения ключей ModuleName и GUID. Кроме того, у хэш-таблицы может им
        еться необязательный ключ ModuleVersion. 
        
        Этот ключ предназначен для выполнения функций полного списка ресурсов м
        одуля. Автоматическая обработка этих модулей не производится.
        
        Если не указать этот параметр, командлет New-ModuleManifest создает нов
        ый ключ ModuleList в манифесте со значением пустого массива.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ModuleToProcess <string>
        Задает первичный или "основной" файл модуля. При импорте модуля элемент
        ы, экспортированные из файла основного модуля, импортируются в состояни
        е сеанса вызывающего объекта. Введите имя файла одного модуля скрипта (
        PSM1) или двоичного модуля (DLL). 
        
        Если у модуля есть файл манифеста, и в ключе ModuleToProcess не назначе
        н основной файл, манифест становится основным файлом для модуля, а моду
        ль становится "модулем манифеста" (значение параметра ModuleType равняе
        тся Manifest). 
        
        Чтобы экспортировать элементы из файлов PSM1 или DLL в модуль, у которо
        го есть манифест, имена этих файлов должны быть указаны в значениях клю
        чей ModuleToProcess или NestedModules в манифесте. В противном случае и
        х элементы не экспортируются.
        
        Этот параметр является обязательным для командлета, но ключ ModuleToPro
        cess не является обязательным для манифеста. Если этот параметр не зада
        н, и его значение не введено при запросе, командлет New-ModuleManifest 
        создает ключ ModuleToProcess со значением пустой строки.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ModuleVersion <Version>
        Задает версию модуля. 
        
        Этот параметр не является обязательным для командлета, но ключ ModuleVe
        rsion является обязательным для манифеста. Если этот параметр не задан,
         командлет New-ModuleManifest создаст ключ ModuleVersion со значением, 
        равным "1.0".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                1.0
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NestedModules <string[]>
        Задает модули скрипта (PSM1) и двоичные модули (DLL), которые импортиру
        ются в состояние сеанса модуля. Файлы, указанные в ключе NestedModules,
         выполняются в порядке их перечисления в значении ключа. 
        
        Обычно вложенные модули содержат команды, необходимые основному модулю 
        для внутренней обработки. По умолчанию команды из вложенных модулей экс
        портируются из состояния сеанса модуля в состояние сеанса вызывающего о
        бъекта, но основной модуль может ограничить экспортируемые им команды (
        например, с помощью команды Export-Module). 
        
        Вложенные модули в состоянии сеанса модуля доступны основному модулю, н
        о не возвращаются командой Get-Module в состоянии сеанса вызывающего об
        ъекта.
        
        Скрипты (PS1), перечисленные в ключе NestedModules, выполняются в состо
        янии сеанса модуля, а не в состоянии сеанса вызывающего объекта. Чтобы 
        запустить скрипт в состоянии сеанса вызывающего объекта, укажите имя фа
        йла скрипта в значении ключа ScriptsToProcess манифеста.
        
        Этот параметр является обязательным для командлета, но ключ NestedModul
        es не является обязательным для манифеста. Если этот параметр не задан 
        и его значение не введено при запросе, командлет New-ModuleManifest соз
        дает ключ NestedModules со значением, представляющим собой пустой масси
        в.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Записывает результирующий манифест модуля в консоль в дополнение к созд
        анию файла PSD1. По умолчанию этот командлет не формирует никаких выход
        ных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Задает путь и имя файла нового манифеста модуля. Укажите путь и имя фай
        ла с расширением PSD1, например "$pshome\Modules\MyModule\MyModule.psd1
        ". Это обязательный параметр. 
        
        Если указан путь к существующему файлу, командлет New-ModuleManifest пе
        резапишет имеющийся файл без предупреждения, если только у этого файла 
        нет атрибута "только чтение".
        
        Манифест должен располагаться в каталоге модуля, а имя файла манифеста 
        должно совпадать с именем каталога модуля (но в качестве расширения име
        ни файла манифеста должно использоваться PSD1). 
        
        Примечание. Нельзя использовать переменные, например $pshome или $home,
         при указании значения параметра Path в ответ на запрос. Чтобы использо
        вать переменную, включите параметр Path в команду.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PowerShellHostName <string>
        Задает имя основной программы Windows PowerShell, необходимой для модул
        я. Введите имя основной программы, например "Windows PowerShell ISE Hos
        t" или "ConsoleHost". Подстановочные знаки запрещены.
        
        Чтобы выяснить имя основной программы, введите в программе "$host.name"
        .
        
        Если этот параметр не задан, командлет New-ModuleManifest создаст ключ 
        PowerShellHostName со значением пустой строки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PowerShellHostVersion <Version>
        Указывает минимальную версию основной программы Windows PowerShell, кот
        орая работает с этим модулем. Введите номер версии, например 1.1.
        
        Если этот параметр не задан, командлет New-ModuleManifest создаст ключ 
        PowerShellHostName со значением пустой строки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PowerShellVersion <Version>
        Указывает минимальную версию Windows PowerShell, поддерживающую этот мо
        дуль. Введите 1.0 или 2.0. Требования к версиям больше 2.0 не вступили 
        в силу.
        
        Если этот параметр не задан, командлет New-ModuleManifest создаст ключ 
        PowerShellVersion со значением пустой строки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PrivateData <Object>
        Задает данные, которые передаются модулю при импорте. 
        
        Если этот параметр не задан, командлет New-ModuleManifest создаст ключ 
        PrivateData со значением пустой строки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ProcessorArchitecture <ProcessorArchitecture>
        Задает архитектуру процессора, необходимую для этого модуля. Допустимы 
        значения x86, AMD64, IA64 и None (не известна или не указана).
        
        Если этот параметр не задан, командлет New-ModuleManifest создаст ключ 
        ProcessorArchitecture со значением пустой строки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -RequiredAssemblies <string[]>
        Задает файлы сборки (DLL), необходимые для работы модуля. Windows Power
        Shell загружает заданные сборки перед обновлением типов или форматов, и
        мпортом вложенных модулей или импортом файлов модуля, указанных в значе
        нии ключа ModuleToProcess.
        
        Используйте этот параметр для перечисления всех сборок, необходимых мод
        улю, включая сборки, которые должны быть загружены для обновления любых
         файлов форматирования или файлов типов, указанных в ключах FormatsToPr
        ocess и TypesToProcess, даже если эти сборки также указаны как двоичные
         модули в ключе NestedModules.
        
        Этот параметр является обязательным для командлета, но ключ RequiredAss
        emblies не является обязательным для манифеста. Если этот параметр не з
        адан, и его значение не введено при запросе, командлет New-ModuleManife
        st создает ключ RequiredAssemblies со значением пустого массива.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -RequiredModules <Object[]>
        Задает модули, которые должны быть в глобальном состоянии сеанса. Если 
        необходимые модули не находятся в глобальном состоянии сеанса, попытки 
        импорта этого модуля завершатся с ошибкой.
        
        Введите имена всех модулей в виде строки или введите хэш-таблицу, указа
        в значения ключей ModuleName и GUID. Кроме того, у хэш-таблицы может им
        еться необязательный ключ ModuleVersion. Дополнительные сведения см. в 
        примерах.
        
        Windows PowerShell не импортирует необходимые модули автоматически. Про
        веряется только наличие необходимых модулей. Однако модули могут содерж
        ать скрипты (PS1), импортирующие необходимые модули в глобальное состоя
        ние сеанса.
        
        Если этот параметр не задан, командлет New-ModuleManifest создаст ключ 
        RequiredModules со значением пустого массива.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ScriptsToProcess <string[]>
        Задает файлы скриптов (PS1), которые при импорте модуля выполняются в с
        остоянии сеанса вызывающего объекта. Можно использовать эти скрипты для
         подготовки среды, аналогично тому, как можно было бы использовать скри
        пт входа в систему. 
        
        Чтобы указать скрипты, которые выполняются в состоянии сеанса модуля, и
        спользуйте ключ NestedModules.
        
        Если этот параметр не задан, командлет New-ModuleManifest создаст ключ 
        ScriptsToProcess со значением пустого массива.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -TypesToProcess <string[]>
        Задает файлы типов (PS1XML), которые выполняются при импорте модуля. 
        
        При импорте модуля Windows PowerShell выполняет командлет Update-TypeDa
        ta с указанными файлами. Так как область действия файлов типов не огран
        ичена, они влияют на все состояния сеанса в сеансе. 
        
        Этот параметр является обязательным для командлета, но ключ TypesToProc
        ess не является обязательным для манифеста. Если этот параметр не задан
        , и его значение не введено при запросе, командлет New-ModuleManifest с
        оздает ключ TypesToProcess со значением пустого массива.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -VariablesToExport <string[]>
        Задает переменные, экспортируемые модулем. Подстановочные знаки разреше
        ны.
        
        Этот параметр можно использовать для ограничения переменных, экспортиру
        емых модулем. Оно позволяет удалять переменные из списка экспортируемых
         переменных, но не позволяет добавлять переменные в список.
        
        Если этот параметр опущен, командлет New-ModuleManifest создает ключ Va
        riablesToExport со значением * (все), означающим, что все переменные, э
        кспортируемые модулем, экспортируются манифестом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                * (все)
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.String
        По умолчанию командлет New-ModuleManifest не формирует никаких выходных
         данных. При использовании параметра PassThru командлет создает объект 
        System.String, представляющий манифест модуля.
    
    
ПРИМЕЧАНИЯ
    
    
        Как правило, манифесты модулей не являются необходимым элементом модуле
        й. Тем не менее, манифест модуля необходим для экспорта сборки, установ
        ленной в глобальный кэш сборок. 
        
        Чтобы добавить или изменить файлы в каталоге $pshome\Modules (%Windir%\
        System32\WindowsPowerShell\v1.0\Modules), запустите Windows PowerShell 
        командой "Запуск от имени администратора".
        
        "Сеанс" — это экземпляр среды выполнения Windows PowerShell. У сеанса м
        ожет быть одно или несколько состояний сеанса. По умолчанию сеанс имеет
         только глобальное состояние сеанса, но каждый импортированный модуль и
        меет свое собственное состояние сеанса. Состояния сеанса позволяют выпо
        лнять команды в модуле без влияния на глобальное состояние сеанса.
        
        "Состояние сеанса вызывающего объекта" представляет собой состояние сеа
        нса, в которое импортируется модуль. Обычно оно означает глобальное сос
        тояние сеанса, но если модуль импортирует вложенные модули, "вызывающий
         объект" является модулем и "состояние сеанса вызывающего объекта" — эт
        о состояние сеанса модуля.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>New-ModuleManifest
    
    Path: C:\Users\User01\Documents\WindowsPowerShell\Modules\Test-Module\Test-
    Module.psd1
    NestedModules[0]: BackgroundModule.psm1
    Author: Jinghao Liu
    CompanyName: Fabrikam, Inc.
    Copyright: Copyright © 2009 Liu Jinghao. All rights reserved.
    ModuleToProcess: TestModule.psm1
    Description: Cmdlets to find common errors in scripts.
    TypesToProcess[0]: TestTypes.ps1xml
    FormatsToProcess[0]: TestFormat.ps1xml
    RequiredAssemblies[0]: Test.dll
    FileList[0]: Test-Module.psd1
    FileList[1]: Test-Module.psm1
    FileList[2]: BackgroundModule.psm1
    FileList[3]: TestTypes.ps1xml
    FileList[4]: TestFormat.ps1xml
    FileList[5]: Test.dll
    FileList[6]: TestIcon.ico
    
    
    Описание
    -----------
    Эта команда создает новый манифест модуля. Командлет запрашивает значения н
    еобходимых параметров, включая параметр Path, и создает новый файл манифест
    а в указанном местоположении.
    
    Выходные данные этой команды отображают ответы на запросы. Чтобы использова
    ть значения по умолчанию, нажмите клавишу ENTER.
    
    Формат приглашения командной строки и правила обработки фраз в кавычках и б
    ез кавычек зависят от основной программы, в которой выполняется Windows Pow
    erShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>New-ModuleManifest -PowerShellVersion 1.0 -AliasesToExport JKBC, DRC,
     TAC
    
    
    Описание
    -----------
    Эта команда создает новый манифест модуля. В команду входят параметры, кото
    рые не являются обязательными для командлета (для которых не выводится приг
    лашение). При ответе на приглашение можно указать значения других ключей ма
    нифеста.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>New-ModuleManifest -RequiredModules FileTransfer,@{ModuleName="Backgr
    oundModule";GUID="486569a2-2784-48bf-af15-70ba837a64d0";ModuleVersion="3.5"
    }
    
    
    Описание
    -----------
    В этом примере показано, как использовать форматы строки и хэш-таблицы знач
    ения параметра RequiredModules. В одной команде могут использоваться как ст
    роки, так и хэш-таблицы. 
    
    Эта команда создает манифест модуля для модуля, которому требуется модуль F
    ileTransfer и (воображаемый) модуль с именем "BackgroundModule". 
    
    Команда использует строковый формат для указания имени модуля FileTransfer 
    и формат хэш-таблицы для указания имени, GUID и версии модуля BackgroundMod
    ule.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=141555
    Import-Module 
    Get-Module 
    New-Module 
    Remove-Module 
    Export-ModuleMember 
    Test-ModuleManifest 
    about_Modules 



New-Object

ИМЯ
    New-Object
    
ОПИСАНИЕ
    Создает экземпляр объекта Microsoft .NET Framework или COM object.
    
СИНТАКСИС
    New-Object -ComObject <string> [-Strict] [-Property <hashtable>] [<CommonPa
    rameters>]
    
    New-Object [-TypeName] <string> [[-ArgumentList] <Object[]>] [-Property <ha
    shtable>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-Object создает экземпляр объекта .NET Framework или COM-объек
    та. 
    
    Можно указать или тип класса .NET Framework, или программный идентификатор 
    (ProgID) COM-объекта. По умолчанию вводится полное имя класса .NET Framewor
    k; а командлет возвращает ссылку на экземпляр этого класса. Чтобы создать э
    кземпляр COM-объекта, укажите параметр ComObject и программный идентификато
    р объекта в качестве значения этого параметра.
    
ПАРАМЕТРЫ
    -ArgumentList <Object[]>
        Задает список аргументов, которые передаются конструктору класса .NET F
        ramework. Элементы списка отделяются друг от друга с помощью запятых (,
        ). Псевдоним ArgumentList — Args.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComObject <string>
        Задает программный идентификатор (ProgID) COM-объекта.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Property <hashtable>
        Задает значения свойств и вызывает методы нового объекта. 
        
        Введите хэш-таблицу, ключами которой являются имена свойств или методов
        , а значениями — значения свойств или аргументы методов. Командлет New-
        Object создает объект и задает значения всех свойств и вызывает все мет
        оды в том порядке, в котором они заданы в хэш-таблице.
        
        Если новый объект унаследован от класса PSObject и задается свойство, о
        тсутствующее в объекте, командлет New-Object добавляет указанное свойст
        во к объекту в виде NoteProperty. Если объект не является объектом PSOb
        ject, команда создает непрерывающую ошибку.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Strict [<SwitchParameter>]
        Устанавливает, что если создаваемый COM-объект использует сборку взаимо
        действия, должна возникать ошибка. Это позволяет отличать реальные COM-
        объекты от объектов .NET Framework с оболочками, вызываемыми из COM.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -TypeName <string>
        Задает полное имя класса .NET Framework. Невозможно одновременно указат
        ь параметр TypeName и параметр ComObject.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Object
        Командлет New-Object возвращает создаваемый объект.
    
    
ПРИМЕЧАНИЯ
    
    
        В командлете New-Object реализованы наиболее востребованные возможности
         функции CreateObject языка VBScript. Например, команда Set objShell = 
        CreateObject("Shell.Application") на VBScript в Windows PowerShell може
        т быть записана как $objShell = new-object -comobject "Shell.Applicatio
        n".
        
        Командлет New-Object расширяет функциональность среды сервера скриптов 
        Windows, позволяя легко обращаться к объектам .NET Framework из командн
        ой строки и использовать их в скриптах.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>new-object -typename System.Version -argumentlist "1.2.3.4" 
    
    Major  Minor  Build  Revision
    -----  -----  -----  --------
    1      2      3      4
    
    
    Описание
    -----------
    Эта команда создает объект System.Version, используя в качестве конструктор
    а строку "1.2.3.4".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$ie = new-object -comobject InternetExplorer.Application -property @{
    navigate2="www.microsoft.com"; visible = $true}
    
    
    Описание
    -----------
    Эта команда создает экземпляр COM-объекта, представляющего приложение Inter
    net Explorer. Она использует параметр Property для вызова метода Navigate2 
    и задания значения $true для свойства Visible объекта, чтобы приложение ста
    ло видимым для пользователя.
    
    Эта команда эквивалентна следующей команде:
    
    $ie = new-object -comobject InternetExplorer.Application 
    $ie.navigate2("www.microsoft.com")
    $ie.visible = $true
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$a=new-object -comobject Word.Application -strict -property @{visible
    =$true}
    
    New-Object : The object written to the pipeline is an instance of the type
    "Microsoft.Office.Interop.Word.ApplicationClass" from the component's prima
    ry interop assembly. If this type exposes different members than the IDispa
    tch members, scripts written to work with this object might not work if the
     primary interop assembly is not installed.
    At line:1 char:14
    + $a=New-Object  < -COM Word.Application -Strict; $a.visible=$true
    
    
    Описание
    -----------
    Эта команда демонстрирует, что при выполнении командлета New-Object с парам
    етром Strict возникает непрерывающая ошибка, когда созданный COM-объект обр
    ащается к сборке взаимодействия.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$objshell = new-object -comobject "Shell.Application"
    
    C:\PS> $objshell | get-member
    
    C:\PS> $objshell.ToggleDesktop()
    
    
    Описание
    -----------
    Эта команда с помощью параметра ComObject создает COM-объект с программным 
    идентификатором "Shell.Application". Полученный объект культуры сохраняется
     в переменной $objShell.
    
    Вторая команда по конвейеру передает переменную $objShell командлету Get-Me
    mber, который отображает свойства и методы COM-объекта. 
    
    Третья команда вызывает метод ToggleDesktop объекта, чтобы свернуть открыты
    е окна на рабочем столе.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113355
    Compare-Object 
    Select-Object 
    Sort-Object 
    ForEach-Object 
    Group-Object 
    Measure-Object 
    Tee-Object 
    Where-Object 



New-PSDrive

ИМЯ
    New-PSDrive
    
ОПИСАНИЕ
    Создает диск Windows PowerShell в текущем сеансе.
    
СИНТАКСИС
    New-PSDrive [-Name] <string> [-PSProvider] <string> [-Root] <string> [-Cred
    ential <PSCredential>] [-Description <string>] [-Scope <string>] [-Confirm]
     [-WhatIf] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-PSDrive создает диск Windows PowerShell, который "подключаетс
    я" или связывается с местоположением в хранилище данных, таким как сетевой 
    диск, каталог на локальном компьютере или раздел реестра.
    
    Созданные диски Windows PowerShell можно использовать для доступа к данным 
    в связанном хранилище данных, который осуществляется аналогично доступу к л
    юбому подключенному диску. Можно изменять местоположение на диске (при помо
    щи команд "set-location", "cd" или "chdir") и получать доступ к содержимому
     диска (при помощи команд "get-item", "get-childitem" или "dir").
    
    Однако диски Windows PowerShell доступны только в Windows PowerShell. К ним
     нельзя получить доступ через проводник, WMI, модель COM, инфраструктуру Mi
    crosoft .NET Framework или при помощи средств, таких как Net Use.
    
     Диски Windows PowerShell существуют только в текущем сеансе Windows PowerS
    hell. Чтобы постоянно использовать диск, необходимо экспортировать сеанс, в
     котором добавлен диск, или сохранить команду New-PSDrive в своем профиле W
    indows PowerShell.
    
    Чтобы удалить диск, созданный с помощью командлета New-PSDrive, используйте
     командлет Remove-PSDrive.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01". Или 
        укажите объект PSCredential, например один из объектов, созданных коман
        длетом Get-Credential. При вводе имени пользователя система запросит па
        роль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Description <string>
        Задает краткое описание диска. Введите любую строку.
        
        Чтобы просмотреть описания всех дисков Windows PowerShell в системе, вв
        едите команду "get-psdrive | format name, description". Чтобы просмотре
        ть описание конкретного диска Windows PowerShell, введите команду "(get
        -psdrive <имя_диска>).description".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя нового диска. В качестве имени можно использовать любую допу
        стимую строку символов. Имя не ограничивается буквой диска. Имена диско
        в Windows PowerShell вводятся с учетом регистра.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PSProvider <string>
        Задает поставщика Windows PowerShell, поддерживающего диски данного тип
        а. 
        
        Например, если диск Windows PowerShell связан с общим сетевым ресурсом 
        или каталогом файловой системы, поставщиком Windows PowerShell будет Fi
        leSystem. Если диск Windows PowerShell связан с разделом реестра, испол
        ьзуется поставщик Registry.
        
        Чтобы просмотреть список поставщиков для вашего сеанса Windows PowerShe
        ll, введите команду "get-psprovider".
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Root <string>
        Задает местоположение хранилища данных, которое отображает диск Windows
         PowerShell.
        
        В частности, можно указать общий сетевой ресурс (например, \\Server01\P
        ublic), локальный каталог (например, C:\Program Files) или раздел реест
        ра (например HKLM:\Software\Microsoft).
        
        Требуется?                    true
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Scope <string>
        Задает область для диска. Допустимые значения: "Global", "Local", "Scri
        pt" или номер относительно текущей области (от 0 до количества областей
        , где 0 — текущая область, а 1 — ее родительская область). По умолчанию
         используется значение "Local". Дополнительные сведения см. в разделе a
        bout_Scopes.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSDriveInfo
        
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет New-PSDrive предназначен для работы с данными, предоставляемы
        ми любым поставщиком. Чтобы получить список поставщиков, доступных в те
        кущем сеансе, введите команду "get-psprovider". Дополнительные сведения
         см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>new-psdrive -name P -psprovider FileSystem -root \\Server01\Public
    
    Name       Provider      Root
    ----       --------      ----
    P          FileSystem    \\Server01\Public
    
    
    Описание
    -----------
    Эта команда создает диск Windows PowerShell, функционирующий как подключенн
    ый сетевой диск в Windows. Команда создает диск Windows PowerShellс именем 
    "P:", который подключается к общему сетевому ресурсу "\\Server01\Public". 
    
    Параметр Name используется для задания имени диска, параметр PSProvider — д
    ля задания поставщика Windows PowerShell FileSystem, а параметр Root — для 
    задания общего сетевого ресурса.
    
    После выполнения команды содержимое общего ресурса "\\Server01\Public" появ
    ляется в оглавлении диска "P:". Чтобы просмотреть содержимое, введите коман
    ду "dir p:".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>new-psdrive -name MyDocs -psprovider FileSystem -root "C:\Documents a
    nd Settings\User01\My Documents" -Description "Maps to my My Documents fold
    er."
    
    Name       Provider      Root
    ----       --------      ----
    MyDocs     FileSystem    C:\Documents and Settings\User01\My Documents
    
    
    Описание
    -----------
    Эта команда создает диск Windows PowerShell, предоставляющий быстрый доступ
     к локальному каталогу. Она создает диск с именем "MyDocs:", который подклю
    чается к 
    каталогу "C:\Documents and Settings\User01\My Documents" на локальном компь
    ютере.
    
    Параметр Name используется для задания имени диска, параметр PSProvider — д
    ля задания поставщика Windows PowerShell FileSystem, параметр Root — для за
    дания пути к папке My Documents, а параметр Description — для создания опис
    ания диска.
    
    
    После выполнения команды содержимое папки My Documents появляется в оглавле
    нии диска "MyDocs:". Чтобы просмотреть содержимое, введите команду "dir myd
    ocs:".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>new-psdrive -name MyCompany -psprovider Registry -root HKLM:\Software
    \MyCompany
    
    Name       Provider      Root
    ----       --------      ----
    MyCompany  Registry      HKEY_LOCAL_MACHINE\Software\MyCo...
    
    
    Описание
    -----------
    Эта команда создает диск Windows PowerShell, предоставляющий быстрый доступ
     к часто проверяемому разделу реестра. Она создает диск с именем MyCompany,
     который подключается к разделу реестра "HKLM\Software\MyCompany". 
    
    Параметр Name используется для задания имени диска, параметр PSProvider — д
    ля задания поставщика Windows PowerShell Registry, а параметр Root — для за
    дания раздела реестра.
    
    
    После выполнения команды содержимое раздела MyCompany появляется в оглавлен
    ии диска "MyCompany:". Чтобы просмотреть содержимое, введите команду "dir M
    yCompany:".
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>new-psdrive -name PsDrive -psprovider FileSystem -root \\Server01\Pub
    lic
    
    C:\PS> $drive = new-object -com wscript.network
    C:\PS> $drive.MapNetworkDrive("X:", "\\Server01\Public")
    
    
    C PS:\> get-psdrive public, x
    
    Name       Provider      Root
    ----       --------      ----
    PsDrive    FileSystem    \\Server01\public
    X          FileSystem    X:\
    
    
    C:\PS>get-psdrive psdrive, x | get-member
    
       TypeName: System.Management.Automation.PSDriveInfo
    Name                MemberType Definition
    ----                ---------- ----------
    CompareTo           Method     System.Int32 CompareTo(PSDriveInfo drive), 
    Equals              Method     System.Boolean Equals(Object obj), 
    GetHashCode         Method     System.Int32 GetHashCode()
    ...
    
    
    
    C:\PS> net use
    Status       Local     Remote                    Network
    ---------------------------------------------------------------------------
                 X:        \\server01\public         Microsoft Windows Network
    
    
    C:\PS> get-wmiobject win32_logicaldisk | ft deviceid
    deviceid
    --------
    C:
    D:
    X:
    
    C:\PS> get-wmiobject win32_networkconnection
    LocalName                     RemoteName                    ConnectionState
                   Status
    ---------                     ----------                    ---------------
                   ------
    X:                            \\products\public             Disconnected   
                   Unavailable
    
    
    Описание
    -----------
    Этот пример демонстрирует различие между диском Windows, подключенным к общ
    ему сетевому ресурсу, и диском Windows PowerShell, подключенным к этому же 
    общему сетевому ресурсу.
    
    Первая команда с помощью командлета New-PSDrive создает диск Windows PowerS
    hell с именем "PSDrive:", который подключается к общему сетевому ресурсу "\
    \Server01\Public".
    
    Во втором наборе команд используется командлет New-Object, позволяющий созд
    ать объект Wscript.Network COM и использовать его метод MapNetworkDrive для
     подключения общего сетевого ресурса "\\Server01\Public" к диску "X:" на ло
    кальном компьютере. 
    
    Теперь можно сравнить два диска. При выполнении команды Get-PSDrive диски в
    ыглядят одинаково, хотя имя общего сетевого ресурса отображается только в к
    орне диска PsDrive:.
    
    Передача объектов дисков командлету Get-Member позволяет убедиться, что эти
     объекты имеют один и тот же тип — System.Management.Automation.PSDriveInfo
    .
    
    Однако команды "net use", Get-WmiObject (отображает экземпляры класса Win32
    _LogicalDisk) и Get-WmiObject (отображает экземпляры класса Win32_NetworkCo
    nnection) находят только диск "X:", который был создан с помощью объекта Ws
    cript.Network. Это обусловлено тем, что диски Windows PowerShell распознают
    ся только оболочкой Windows PowerShell.
    
    Если закрыть сеанс Windows PowerShell и затем открыть новый сеанс, диск PSD
    rive: исчезнет, а диск X: останется.
    
    Поэтому при выборе способа подключения сетевых дисков следует учитывать сле
    дующие факторы: причину использования диска, необходимость сохранения диска
     и необходимость сделать диск видимым для других компонентов Windows.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113357
    about_Providers 
    Get-PSDrive 
    Remove-PSDrive 



New-PSSession

ИМЯ
    New-PSSession
    
ОПИСАНИЕ
    Создает постоянное подключение к локальному или удаленному компьютеру.
    
СИНТАКСИС
    New-PSSession [[-ComputerName] <string[]>] [-ApplicationName <string>] [-Au
    thentication {Default | Basic | Negotiate | NegotiateWithImplicitCredential
     | Credssp | Digest | Kerberos}] [-CertificateThumbprint <string>] [-Config
    urationName <string>] [-Credential <PSCredential>] [-Name <string[]>] [-Por
    t <int>] [-SessionOption <PSSessionOption>] [-UseSSL] [-ThrottleLimit <int>
    ] [<CommonParameters>]
    
    New-PSSession [[-Session] <PSSession[]>] [-Name <string[]>] [-ThrottleLimit
     <int>] [<CommonParameters>]
    
    New-PSSession [-ConnectionURI] <Uri[]> [-AllowRedirection] [-Authentication
     {Default | Basic | Negotiate | NegotiateWithImplicitCredential | Credssp |
     Digest | Kerberos}] [-CertificateThumbprint <string>] [-ConfigurationName 
    <string>] [-Credential <PSCredential>] [-Name <string[]>] [-SessionOption 
    PSSessionOption>] [-ThrottleLimit <int>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-PSSession создает сеанс Windows PowerShell (PSSession) на лок
    альном или удаленном компьютере. При создании сеанса PSSession Windows Powe
    rShell создает постоянное подключение к удаленному компьютеру. 
    
    Используйте сеанс PSSession для выполнения нескольких команд, работающих с 
    общими данными, например функцией или значением переменной. Для выполнения 
    команд в сеансе PSSession используйте командлет Invoke-Command. Чтобы испол
    ьзовать сеанс PSSession для интерактивного взаимодействия с удаленным компь
    ютером, используйте командлет Enter-PSSession. Дополнительные сведения см. 
    в разделе about_PSSessions.
    
    Параметр ComputerName командлета Enter-PSSession или командлета Invoke-Comm
    and позволяет выполнять команды на удаленном компьютере без создания сеанса
     PSSession. При использовании параметра ComputerName Windows PowerShell соз
    дает временное подключение, которое используется для интерактивного сеанса 
    или выполнения заданной команды и затем закрывается.
    
ПАРАМЕТРЫ
    -AllowRedirection [<SwitchParameter>]
        Разрешает перенаправление данного соединения на альтернативный универса
        льный код ресурса URI. 
        
        При использовании параметра ConnectionURI удаленный узел может вернуть 
        инструкцию с перенаправлением на другой URI. По умолчанию Windows Power
        Shell не перенаправляет соединения, но можно воспользоваться параметром
         AllowRedirection и разрешить перенаправление соединений.
        
        Кроме того, можно ограничить число операций перенаправления подключения
        , присвоив соответствующее значение свойству MaximumConnectionRedirecti
        onCount привилегированной переменной $PSSessionOption или свойству Maxi
        mumConnectionRedirectionCount значения параметра SessionOption.
        Значение по умолчанию равно 5. Дополнительные сведения см. в описании п
        араметра SessionOption, а также в разделе New-PSSessionOption.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ApplicationName <string>
        Задает сегмент имени приложения в URI подключения. Этот параметр служит
         для указания имени приложения, если в команде не используется параметр
         ConnectionURI.
        
        По умолчанию используется значение привилегированной переменной $PSSess
        ionApplicationName на локальном компьютере. Если эта привилегированная 
        переменная не определена, используется значение по умолчанию "WSMAN". Э
        то значение подходит для большинства случаев. Дополнительные сведения с
        м. в разделе about_Preference_Variables. 
        
        Служба WinRM использует имя приложения для выбора прослушивателя для об
        служивания запроса подключения. Значение этого параметра должно соответ
        ствовать значению свойства URLPrefix прослушивателя на удаленном компью
        тере.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                WSMAN
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Authentication <AuthenticationMechanism>
        Задает механизм, используемый при проверке подлинности учетных данных п
        ользователя. Допустимые значения: "Default", "Basic", "Credssp", "Diges
        t", "Kerberos", "Negotiate" и "NegotiateWithImplicitCredential". По умо
        лчанию используется значение "Default".
        
        Проверка подлинности CredSSP доступна только в Windows Vista, Windows S
        erver 2008 и более поздних версиях Windows.
        
        Дополнительные сведения о значениях этого параметра см. в описании пере
        числения System.Management.Automation.Runspaces.AuthenticationMechanism
         в библиотеке MSDN по адресу http://go.microsoft.com/fwlink/?LinkID=144
        382 (на английском языке).
        
        Внимание Проверка подлинности CredSSP, при которой учетные данные поль
        зователя передаются на удаленный компьютер, предназначена для команд, к
        оторые должны пройти процедуру проверки подлинности на нескольких ресур
        сах, например при доступе к удаленному общему сетевому ресурсу. Такой м
        еханизм повышает угрозы безопасности удаленных операций. Если безопасно
        сть удаленного компьютера нарушена, передаваемые ему учетные данные мог
        ут использоваться для управления сетевым сеансом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Default
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CertificateThumbprint <string>
        Задает цифровой сертификат с открытым ключом (X509) учетной записи поль
        зователя, который располагает разрешением для выполнения этого действия
        . Введите отпечаток сертификата.  
        
        Сертификаты используются при проверке подлинности на основе сертификата
         клиента. Их можно сопоставить только с учетными записями локальных пол
        ьзователей; они не работают с учетными записями доменов. 
        
        Чтобы получить отпечаток сертификата, воспользуйтесь командой Get-Item 
        или Get-ChildItem в Windows PowerShell на диске Cert:.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string[]>
        Создает постоянное подключение (сеанс PSSession) к заданному компьютеру
        . Если введены несколько имен компьютеров, командлет New-PSSession созд
        ает несколько сеансов PSSession, по одному для каждого из компьютеров. 
        По умолчанию используется значение "Локальный компьютер". 
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескол
        ьких удаленных компьютеров. Чтобы указать локальный компьютер, введите 
        имя компьютера, "localhost" или точку (.). Если пользователь и удаленны
        й компьютер находятся в разных доменах, необходимо использовать полное 
        доменное имя. Кроме того, можно передать имя компьютера (в кавычках) ко
        мандлету New-PSSession по конвейеру.
        
        Для использования IP-адреса в значении параметра ComputerName в команду
         необходимо включить параметр Credential. Кроме того, необходимо настро
        ить компьютер на использование транспорта HTTPS или включить IP-адрес у
        даленного компьютера в список TrustedHosts WinRM на локальном компьютер
        е. Инструкции по добавлению имени компьютера в список TrustedHosts см. 
        в статье "Добавление компьютера в список доверенных узлов" в разделе ab
        out_Remote_Troubleshooting.
        
        Примечание. Чтобы включить локальный компьютер в значение параметра Com
        puterName под управлением Windows Vista и более поздних версий Windows,
         необходимо запускать Windows PowerShell командой "Запуск от имени адми
        нистратора".
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -ConfigurationName <string>
        Задает конфигурацию нового сеанса PSSession. 
        
        Введите имя конфигурации или полный универсальный код ресурса (URI) для
         конфигурации сеанса. Если указано только имя конфигурации, перед ним д
        обавляется следующий URI схемы: http://schemas.microsoft.com/powershell
        .
        
        Конфигурация сеанса находится на удаленном компьютере. Если указанная к
        онфигурация сеанса не существует на удаленном компьютере, команда завер
        шается с ошибкой.
        
        По умолчанию используется значение привилегированной переменной $PSSess
        ionConfigurationName на локальном компьютере. Если значение этой привил
        егированной переменной не установлено, используется значение по умолчан
        ию "Microsoft.PowerShell". Дополнительные сведения см. в разделе about_
        Preference_Variables.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -ConnectionURI <Uri[]>
        Задает универсальный идентификатор ресурса (URI), определяющий конечную
         точку соединения. Значение URI должно быть указано полностью. 
        
        Строка имеет следующий формат: 
            <Транспорт>://<Имя_компьютера>:<Порт>/
        
        По умолчанию используется следующее значение:
            http://localhost:80/WSMAN
        
        Допустимые значения сегмента транспорта в URI: HTTP и HTTPS. Если в ком
        анде не указан параметр ConnectionURI, для указания значений URI можно 
        использовать параметры UseSSL, ComputerName, Port и ApplicationName. 
        
        Если конечный компьютер перенаправляет соединение на другой URI, Window
        s PowerShell предотвращает перенаправление, если в команде не задан пар
        аметр AllowRedirection.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь".
        
        Введите имя пользователя, например "User01", "Domain01\User01" или "Use
        r@Domain.com", или введите объект PSCredential, например объект, возвра
        щаемый командлетом Get-Credential. 
        
        При вводе имени пользователя появится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает понятное имя сеанса PSSession. 
        
        Это имя можно использовать для идентификации сеанса PSSession при испол
        ьзовании других командлетов, например Get-PSSession или Enter-PSSession
        . Имя не должно быть уникальным в рамках компьютера или текущего сеанса
        .
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Port <int>
        Задает сетевой порт на удаленном компьютере, используемый для данной ко
        манды. По умолчанию используется значение "Порт 80" (HTTP-порт).
        
        Перед использованием альтернативного порта необходимо настроить прослуш
        иватель WinRM на удаленном компьютере на прослушивание этого порта. Для
         настройки прослушивателя используйте следующие команды:
        
        1. winrm delete winrm/config/listener?Address=*+Transport=HTTP
        2. winrm create winrm/config/listener?Address=*+Transport=HTTP @{Port=&
        quot;<номер-порта>"}
        
        Не используйте параметр Port, если этого можно избежать. Порт, указанны
        й в команде, распространяется на все компьютеры и сеансы, в которых исп
        ользуется эта команда. Параметр альтернативного порта может позволить п
        редотвратить выполнение этой команды на всех компьютерах.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                80
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Session <PSSession[]>
        Использует заданный сеанс PSSession в качестве модели для нового сеанса
         PSSession. Этот параметр создает новые сеансы PSSession с такими же св
        ойствами, как у заданных сеансов PSSession. 
        
        Введите переменную, содержащую объекты PSSession, либо команду, создающ
        ую или получающую объекты PSSession, например New-PSSession или Get-PSS
        ession.
        
        Для результирующих сеансов PSSession устанавливаются те же имена компью
        теров, имена приложений, URI подключений, порты, имена конфигураций, ог
        раничения скорости и значения параметра SSL, что и для исходных, но у р
        езультирующих сеансов другие отображаемые имена, идентификаторы и идент
        ификаторы экземпляров (GUID).
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -SessionOption <PSSessionOption>
        Устанавливает расширенные параметры сеанса. Введите объект SessionOptio
        n, созданный с помощью командлета New-PSSessionOption.
        
        Значения по умолчанию для параметров определяются значением привилегиро
        ванной переменной $PSSessionOption, если оно задано. В противном случае
         в сеансе используются системные значения по умолчанию.
        
        Описание параметров сеанса, включая значения по умолчанию, см. в раздел
        е New-PSSessionOption. Дополнительные сведения о привилегированной пере
        менной $PSSessionOption см. в разделе about_Preference_Variables.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ThrottleLimit <int>
        Задает максимальное количество одновременных соединений, которые могут 
        быть установлены для выполнения данной команды. Если этот параметр не з
        адан или для него введено значение 0 (ноль), используется значение по у
        молчанию 32.
        
        Ограничение скорости относится только к текущей команде, но не к сеансу
         или компьютеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                32
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseSSL [<SwitchParameter>]
        Использует протокол SSL (Secure Sockets Layer) для установки подключени
        я к удаленному компьютеру. По умолчанию SSL не используется.
        
        Протокол WS-Management шифрует все передаваемое по сети содержимое Wind
        ows PowerShell. UseSSL — это дополнительная мера защиты, которая позвол
        яет передавать данные по подключению HTTPS, а не по подключению HTTP.
        
        Если используется этот параметр, но установить SSL-соединение с портом,
         указанным в команде, не удается, команда завершается с ошибкой.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String, System.URI, System.Management.Automation.Runspaces.PSSession
        Можно передать объект ComputerName (строку), ConnectionURI (URI) или Se
        ssion (PSSession) командлету New-PSSession по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.Runspaces.PSSession
        
    
    
ПРИМЕЧАНИЯ
    
    
        Этот командлет использует инфраструктуру удаленного взаимодействия Wind
        ows PowerShell. Чтобы использовать этот командлет, локальный компьютер 
        и все удаленные компьютеры должны быть настроены на удаленное взаимодей
        ствие Windows PowerShell. Дополнительные сведения см. в разделе about_R
        emote_Requirements.
        
        Чтобы создать сеанс PSSession на локальном компьютере под управлением W
        indows Vista и более поздних версий Windows, необходимо запускать Windo
        ws PowerShell командой "Запуск от имени администратора".
        
        По окончании работы с сеансом PSSession используйте командлет Remove-PS
        Session для удаления сеанса PSSession и освобождения занятых им ресурсо
        в.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$s = new-pssession
    
    
    Описание
    -----------
    Эта команда создает новый сеанс PSSession на локальном компьютере и сохраня
    ет объект PSSession в переменной $s.
    
    Теперь этот сеанс PSSession можно использовать для выполнения команд на лок
    альном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$Server01 = new-pssession -ComputerName Server01
    
    
    Описание
    -----------
    Эта команда создает новый сеанс PSSession на компьютере Server01 и сохраняе
    т его в переменной $Server01. 
    
    При создании нескольких сеансов PSSession присваивайте их переменным с поня
    тными именами. Это упростит управление сеансами PSSession в последующих ком
    андах.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$s1, $s2, $s3 = new-session -computername server1,server2,server3
    
    
    Описание
    -----------
    Эта команда создает три новых сеанса PSSession, по одному на каждом из комп
    ьютеров, указанных параметром ComputerName. 
    
    Команда использует оператор присваивания (=) для присвоения новых сеансов P
    SSession массиву переменных $s1, $s2 и $s3. Она присваивается сеанс PSSessi
    on с компьютером Server01 переменной $s1, сеанс PSSession с компьютером Ser
    ver02 — переменной $s2, и сеанс PSSession с компьютером Server03 — переменн
    ой $s3.
    
    При присвоении нескольких объектов массиву переменных Windows PowerShell пр
    исваивает каждый объект соответствующей переменной в массиве. Если количест
    во объектов превосходит количество переменных, все оставшиеся объекты присв
    аиваются последней переменной. Если количество переменных превышает количес
    тво объектов, значения лишних переменные остаются неопределенными (NULL).
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>new-pssession -computername Server01 -port 8081 -useSSL -Configuratio
    nName E12
    
    
    Описание
    -----------
    Эта команда создает новый сеанс PSSession на компьютере Server01, который п
    одключается к порту сервера 8081 и использует протокол SSL. Для нового сеан
    са PSSession используется альтернативная конфигурация сеанса "Е12".
    
    Перед назначением порта необходимо настроить прослушиватель WinRM на удален
    ном компьютере на прослушивание порта 8081. Дополнительные сведения см. в о
    писании параметра Port.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>new-pssession -session $s -credential domain01\user01
    
    
    Описание
    -----------
    Эта команда создает новый сеанс PSSession с такими же свойствами, как у сущ
    ествующего сеанса PSSession. Этот формат команды можно использовать в случа
    е, если существующих сеансов PSSession уже недостаточно и необходимо создат
    ь новый сеанс PSSession для снятия некоторой нагрузки по обработке запросов
    .
    
    Эта команда использует параметр Session командлета New-PSSession для задани
    я сеанса PSSession, сохраненного в переменной $s. Для выполнения команды ис
    пользуются учетные данные пользователя "Domain1\Admin01".
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>$global:s = new-pssession -computername server1.domain44.corpnet.fabr
    ikam.com -credential domain01\admin01
    
    
    Описание
    -----------
    В этом примере показано, как создать сеанс PSSession в глобальной области н
    а компьютере, принадлежащем к другому домену.
    
    По умолчанию сеансы PSSession, созданные с использованием командной строки,
     создаются в локальной области, а сеансы PSSession, созданные с использован
    ием скрипта — в области скрипта. 
    
    Чтобы создать сеанс PSSession в глобальной области, создайте новый сеанс PS
    Session и затем сохраните PSSession в переменной, которая отображается в гл
    обальную область. В этом примере переменная $s отображается в глобальную об
    ласть.
    
    Параметр ComputerName используется в команде для задания удаленного компьют
    ера. Поскольку учетная запись пользователя и компьютер принадлежат к разным
     доменам, с учетными данными пользователя необходимо использовать полное до
    менное имя компьютера.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>$rs = get-content c:\test\servers.txt | new-PSsession -throttleLimit 
    50
    
    
    Описание
    -----------
    Эта команда создает сеанс PSSession на каждом из 200 компьютеров, указанных
     в файле Servers.txt, и сохраняет результирующий сеанс PSSession в переменн
    ой $rs. Для сеансов PSSession указано ограничение скорости, равное 50.
    
    Эту команду можно использовать при хранении имен компьютеров в базе данных,
     электронной таблице, текстовом файле или другом формате, преобразуемом в т
    екстовый.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>$s = new-PSSession -URI http://Server01:91/NewSession -credential dom
    ain01\user01
    
    
    Описание
    -----------
    Эта команда создает сеанс PSSession на компьютере Server01 и сохраняет его 
    в переменной $s. В ней используются параметр URI для указания транспортного
     протокола, удаленного компьютера, порта и альтернативной конфигурации сеан
    са. Кроме того, в ней используется параметр Credential для указания учетной
     записи пользователя, который располагает разрешением для создания сеанса н
    а удаленном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>$s = new-PSSession -computername (import-csv servers.csv) -credential
     domain01\admin01 -throttlelimit 16
    
    C:\PS> invoke-command -session $s -scriptblock {get-process powershell} -As
    Job
    
    
    Описание
    -----------
    Эти команды создают группу сеансов PSSession и запускают фоновое задание в 
    рамках каждого сеанса PSSession. 
    
    Первая команда создает сеанс PSSession на каждом из компьютеров, указанных 
    в файле Servers.csv. Она создает сеансы PSSession с помощью командлета New-
    PSSession. В качестве значения параметра ComputerName используется команда,
     которая импортирует файл Servers.csv и считывает его содержимое с помощью 
    командлета Import-Csv. 
    
    Эта команда использует параметр Credential для создания сеансов PSSession в
     соответствии с разрешением администратора домена и параметр ThrottleLimit 
    для ограничения команды до 16 одновременных подключений. Команда сохраняет 
    сеансы PSSession в переменной $s.
       
    Вторая команда использует параметр AsJob командлета Invoke-Command для запу
    ска фонового задания, которое выполняет команду "Get-Process PowerShell" в 
    каждом из сеансов, сохраненных в переменной $s. 
    
    Дополнительные сведения о фоновых заданиях см. в разделах about_Jobs и abou
    t_Remote_Jobs.
    
    
    
    
    
    -------------------------- ПРИМЕР 10 --------------------------
    
    C:\PS>new-PSSession -ConnectionURI https://management.exchangelabs.com/Mana
    gement
    
    
    Описание
    -----------
    Эта команда создает новый сеанс PSSession, который подключается к компьютер
    у, заданному с помощью URI, а не имени компьютера.
    
    
    
    
    
    -------------------------- ПРИМЕР 11 --------------------------
    
    C:\PS>$so = New-WSManSessionOption -SkipCACheck
    
    PS C:\> new-pssession -ConnectionUri https://management.exchangelabs.com/Ma
    nagement -SessionOption $so -credential server01\admin01
    
    
    Описание
    -----------
    В этом примере демонстрируется создание и использование параметра SessionOp
    tion. 
    
    Первая команда создает параметр сеанса с помощью командлета New-WSManSessio
    nOption. Результирующий объект SessionOption сохраняется в параметре $so.
    
    Вторая команда использует параметр в рамках нового сеанса. Команда создает 
    новый сеанс с помощью командлета New-PSSession. Значением параметра Session
    Option является объект SessionOption, сохраненный в переменной $so.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135237
    about_PSSessions 
    about_Remote 
    Get-PSSession 
    Remove-PSSession 
    Enter-PSSession 
    Exit-PSSession 
    Invoke-Command 



New-PSSessionOption

ИМЯ
    New-PSSessionOption
    
ОПИСАНИЕ
    Создает объект, содержащий дополнительные параметры для PSSession.
    
СИНТАКСИС
    New-PSSessionOption [-ApplicationArguments <PSPrimitiveDictionary>] [-Cance
    lTimeOut <int>] [-Culture <CultureInfo>] [-IdleTimeOut <int>] [-MaximumRece
    ivedDataSizePerCommand <int>] [-MaximumReceivedObjectSize <int>] [-MaximumR
    edirection <int>] [-NoCompression] [-NoEncryption] [-NoMachineProfile] [-Op
    enTimeOut <int>] [-OperationTimeOut <int>] [-ProxyAccessType {None | IEConf
    ig | WinHttpConfig | AutoDetect | NoProxyServer}] [-ProxyAuthentication {De
    fault | Basic | Negotiate | NegotiateWithImplicitCredential | Credssp | Dig
    est | Kerberos}] [-ProxyCredential <PSCredential>] [-SkipCACheck] [-SkipCNC
    heck] [-SkipRevocationCheck] [-UICulture <CultureInfo>] [-UseUTF16] [<Commo
    nParameters>]
    
    
ОПИСАНИЕ
    Командлет New-PSSessionOption создает объект, содержащий дополнительные пар
    аметры для PSSession. Можно использовать этот объект в качестве значения па
    раметра SessionOption в командлетах, создающих PSSession, например New-PSSe
    ssion, Enter-PSSession и Invoke-Command.
    
    При запуске без параметров командлет New-PSSessionOption создает объект, со
    держащий значения по умолчанию для всех параметров. Так как все свойства до
    пускают редактирование, можно использовать получающийся объект как шаблон и
     создать стандартные объекты параметров для предприятия.
    
ПАРАМЕТРЫ
    -ApplicationArguments <PSPrimitiveDictionary>
        Задает хэш-таблицу, без интерпретации отправляемую напрямую в конфигура
        цию сеанса. Эта хэш-таблица доступна конфигурации сеанса в виде свойств
        а класса PSSenderInfo.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CancelTimeOut <int>
        Определяет время ожидания оболочкой Windows PowerShell завершения опера
        ции отмены (CTRL + C), по истечении которого операция прерывается. Введ
        ите значение в миллисекундах. 
        
        Значением по умолчанию является 60000 (одна минута). Значение 0 (ноль) 
        означает отсутствие времени ожидания; время выполнения команды не огран
        ичено.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                60000
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Culture <CultureInfo>
        Задает культуру, используемую для PSSession. Введите имя культуры в фор
        мате <код_языка2>-<код_страны/региона2> (например, "ja-jP"), переменную
        , содержащую объект CultureInfo или команду, получающую объект CultureI
        nfo, например "get-culture".
        
        Значение по умолчанию — $null, и в сеансе PSSession используется культу
        ра, заданная в операционной системе в момент создания сеанса PSSession.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Текущая культура
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -IdleTimeOut <int>
        Определяет, сколько времени сеанс PSSession остается открытым, если уда
        ленный компьютер не получает никаких данных от локального компьютера, в
        ключая контрольный сигнал. По истечению этого интервала сеанс PSSession
         закрывается. 
        
        Введите значение в миллисекундах. По умолчанию используется значение 24
        0000 (4 мин). Минимальное значение равно 60000 (1 мин). 
        
        Если время ожидания при простое задано как на локальном, так и на удале
        нном компьютере, в сеансе PSSession используется меньшее из значений. Н
        а локальном компьютере время ожидания при простое может быть задано либ
        о с помощью этого параметра, либо путем задания времени ожидания при пр
        остое в привилегированной переменной $PSSessionOption. На удаленном ком
        пьютере время ожидания при простое может быть задано в конфигурации WS-
        Management (WSMAN:\localhost\shell\idletimeout).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                240000
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MaximumReceivedDataSizePerCommand <int>
        Задает максимальное количество байтов, которые локальный компьютер може
        т принять с удаленного компьютера в одной команде. Введите значение в б
        айтах. По умолчанию ограничение на размер данных отсутствует.
        
        Этот параметр служит для защиты ресурсов на клиентском компьютере.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Без ограничений
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MaximumReceivedObjectSize <int>
        Задает максимальный размер объекта, который локальный компьютер может п
        ринять с удаленного компьютера. Введите значение в байтах. По умолчанию
         ограничение на размер данных отсутствует.
        
        Этот параметр служит для защиты ресурсов на клиентском компьютере.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Без ограничений
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MaximumRedirection <int>
        Определяет, сколько раз оболочка Windows PowerShell перенаправляет соед
        инение на альтернативный универсальный код ресурса URI до того, как про
        исходит сбой соединения. По умолчанию используется значение 5. Значение
         0 (ноль) запрещает перенаправление.
        
        Этот параметр используется в сеансе PSSession только в том случае, если
         в команде, создавшей сеанс PSSession, использовался параметр AllowRedi
        rection.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                5
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NoCompression [<SwitchParameter>]
        Отключает сжатие пакетов в сеансе PSSession. Сжатие использует больше ц
        иклов работы процессора, но ускоряет передачу.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NoEncryption [<SwitchParameter>]
        Отключает шифрование данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NoMachineProfile [<SwitchParameter>]
        Запрещает загрузку профиля пользователя Windows. В результате сеанс PSS
        ession может быть создан быстрее, но в нем недоступны специфичные для п
        ользователя параметры реестра, такие элементы, как переменные среды, а 
        также сертификаты.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -OpenTimeOut <int>
        Определяет, как долго клиентский компьютер ожидает установления подключ
        ения сеанса. После завершения этого интервала команда установления подк
        лючения завершается сбоем. Введите значение в миллисекундах. 
        
        По умолчанию используется значение 180000 (3 мин). Значение 0 (ноль) оз
        начает отсутствие времени ожидания; время выполнения команды не огранич
        ено.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                180000
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -OperationTimeOut <int>
        Определяет максимальное время выполнения любой операции в сеансе PSSess
        ion. По истечению этого интервала операция завершается сбоем. Введите з
        начение в миллисекундах. 
        
        По умолчанию используется значение 180000 (3 мин). Значение 0 (ноль) оз
        начает отсутствие времени ожидания; время выполнения операции не ограни
        чено.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                180000
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ProxyAccessType <ProxyAccessType>
        Определяет механизм, используемый для разрешения имени узла. Допустимы 
        значения IEConfig, WinHttpConfig, AutoDetect, NoProxyServer и None. По 
        умолчанию используется значение None.
        
        Сведения о значениях этого параметра см. в описании перечисления System
        .Management.Automation.Remoting.ProxyAccessType в библиотеке MSDN по ад
        ресу http://go.microsoft.com/fwlink/?LinkId=144756 (на английском языке
        ).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ProxyAuthentication <AuthenticationMechanism>
        Задает метод проверки подлинности, используемый для разрешения прокси-с
        ервера. Допустимы значения Basic, Digest и Negotiate. По умолчанию испо
        льзуется значение Negotiate.
        
        Сведения о значениях этого параметра см. в описании перечисления System
        .Management.Automation.Runspaces.AuthenticationMechanism в библиотеке M
        SDN по адресу http://go.microsoft.com/fwlink/?LinkID=144382 (на английс
        ком языке).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Negotiate
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ProxyCredential <PSCredential>
        Задает учетные данные, используемые при проверке подлинности прокси-сер
        вера. Введите переменную, содержащую объект PSCredential, или команду, 
        получающую объект PSCredential, например Get-Credential. Если этот пара
        метр не установлен, учетные данные не задаются.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SkipCACheck [<SwitchParameter>]
        Указывает, что при подключении по протоколу HTTPS клиент не проверяет, 
        подписан ли сертификат сервера доверенным центром сертификации (ЦС). 
        
        Этот параметр следует использовать, только если удаленный компьютер явл
        яется доверенным с использованием другого механизма, например если удал
        енный компьютер входит в сеть, которая является физически изолированной
         и безопасной, или если удаленный компьютер указан в качестве доверенно
        го узла в конфигурации WinRM.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SkipCNCheck [<SwitchParameter>]
        Указывает, что общее имя сертификата (CN) сервера не обязано соответств
        овать имени узла сервера. Этот параметр используется только при удаленн
        ых взаимодействиях, выполняемых по протоколу HTTPS. 
        
        Используйте этот параметр только для доверенных компьютеров.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SkipRevocationCheck [<SwitchParameter>]
        Состояние отзыва сертификата сервера не проверяется.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UICulture <CultureInfo>
        Задает культуру пользовательского интерфейса, используемую в сеансе PSS
        ession. 
        
        Введите имя культуры в формате <код_языка2>-<код_страны/региона2> (напр
        имер, "ja-jP"), переменную, содержащую объект CultureInfo или команду, 
        получающую объект CultureInfo, например Get-Culture.
        
        Значение по умолчанию — $null, и в сеансе PSSession используется культу
        ра пользовательского интерфейса, заданная в операционной системе в моме
        нт создания сеанса PSSession.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Текущая культура пользовательского
         интерфейса
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseUTF16 [<SwitchParameter>]
        Кодировать запрос в кодировке UTF16, а не в кодировке UTF8.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False (кодировка UTF8)
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.Remoting.PSSessionOption
        
    
    
ПРИМЕЧАНИЯ
    
    
        Если в команде создания сеанса PSSession не использовался параметр Sess
        ionOption, параметры сеанса определяются значениями свойств привилегиро
        ванной переменной $PSSessionOption, если она задана. Сведения о перемен
        ной $PSSessionOption см. в разделе about_Preference_Variables.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>New-PSSessionOption
    
    
    MaximumConnectionRedirectionCount : 5
    NoCompression                     : False
    NoMachineProfile                  : False
    ProxyAccessType                   : IEConfig
    ProxyAuthentication               : Negotiate
    ProxyCredential                   :
    SkipCACheck                       : False
    SkipCNCheck                       : False
    SkipRevocationCheck               : False
    OperationTimeout                  : 00:03:00
    NoEncryption                      : False
    UseUTF16                          : False
    Culture                           :
    UICulture                         :
    MaximumReceivedDataSizePerCommand :
    MaximumReceivedObjectSize         :
    ApplicationArguments              :
    OpenTimeout                       : 00:03:00
    CancelTimeout                     : 00:01:00
    IdleTimeout                       : 00:04:00
    
    
    Описание
    -----------
    Эта команда создает объект параметров сеанса со значениями по умолчанию для
     всех параметров.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$pso = new-pssessionoption -Culture "fr-fr" -MaximumReceivedObjectSiz
    e 10MB
    
    C:\PS> new-pssession -computerName Server01 -SessionOption $pso
    
    
    Описание
    -----------
    В этом примере демонстрируется использование объекта параметров сеанса для 
    настройки сеанса.
    
    Первая команда создает новый объект параметров сеанса и сохраняет его значе
    ние в переменной $pso.
    
    Вторая команда использует командлет New-PSSession для создания сеанса PSSes
    sion на удаленном компьютере Server01. Эта команда использует объект параме
    тров сеанса в значении переменной $pso в качестве значения параметра Sessio
    nOption команды.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>enter-pssession -computername Server01 -sessionOption (new-pssessiono
    ption -noEncryption -noCompression)
    
    
    Описание
    -----------
    Эта команда создает интерактивный сеанс с компьютером Server01 с использова
    нием командлета Enter-PSSession. Значение параметра SessionOption — это ком
    анда New-PSSessionOption с параметрами-переключателями NoEncryption и NoCom
    pression.
    
    Команда New-PSSessionOption заключена в круглые скобки, чтобы обеспечить ее
     выполнение до команды Enter-PSSession.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$a = new-pssessionoption
    
    
    MaximumConnectionRedirectionCount : 5
    NoCompression                     : False
    NoMachineProfile                  : False
    ProxyAccessType                   : IEConfig
    ProxyAuthentication               : Negotiate
    ProxyCredential                   :
    SkipCACheck                       : False
    SkipCNCheck                       : False
    SkipRevocationCheck               : False
    OperationTimeout                  : 00:03:00
    NoEncryption                      : False
    UseUTF16                          : False
    Culture                           :
    UICulture                         :
    MaximumReceivedDataSizePerCommand :
    MaximumReceivedObjectSize         :
    ApplicationArguments              :
    OpenTimeout                       : 00:03:00
    CancelTimeout                     : 00:01:00
    IdleTimeout                       : 00:04:00
    
    C:\PS> $a.UICulture = (get-UICulture)
    C:\PS> $a.OpenTimeout = (new-timespan -minutes 4)
    C:\PS> $a.MaximumConnectionRedirectionCount = 1
    
    C:\PS> $a
    
    MaximumConnectionRedirectionCount : 1
    NoCompression                     : False
    NoMachineProfile                  : False
    ProxyAccessType                   : IEConfig
    ProxyAuthentication               : Negotiate
    ProxyCredential                   :
    SkipCACheck                       : False
    SkipCNCheck                       : False
    SkipRevocationCheck               : False
    OperationTimeout                  : 00:03:00
    NoEncryption                      : False
    UseUTF16                          : False
    Culture                           :
    UICulture                         : en-US
    MaximumReceivedDataSizePerCommand :
    MaximumReceivedObjectSize         :
    ApplicationArguments              :
    OpenTimeout                       : 00:04:00
    CancelTimeout                     : 00:01:00
    IdleTimeout                       : 00:04:00
    
    
    Описание
    -----------
    В этом примере показано, что объект параметров сеанса можно редактировать. 
    Все свойства доступны для чтения и записи.
    
    Используйте этот метод для создания стандартного объекта сеанса для предпри
    ятия, затем создайте его специализированные варианты для определенных целей
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$PSSessionOption = New-PSSessionOption -OpenTimeOut 120000
    
    
    Описание
    -----------
    Эта команда создает привилегированную переменную $PSSessionOption. 
    
    Если в сеансе существует привилегированная переменная $PSSessionOption, она
     определяет значения по умолчанию для параметров сеансов PSSession, созданн
    ых с помощью командлетов New-PSSession, Enter-PSSession и Invoke-Command.
    
    Чтобы переменная $PSSessionOption была доступна для всех сеансов, добавьте 
    ее в свой сеанс Windows PowerShell и в свой профиль Windows PowerShell.
    
    Сведения о переменной $PSSessionOption см. в разделе about_Preference_Varia
    bles. Дополнительные сведения о профилях см. в разделе about_Profiles.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>$skipCN = new-pssessionoption -SkipCNCheck
    
    C:\PS> new-pssession -computername 171.09.21.207 -UseSSL -credential domain
    01\user01 -sessionOption $skipCN
    
    
    Описание
    -----------
    Этот пример показывает, как использовать объект SessionOption для выполнени
    я всех требований к конфигурации удаленного сеанса.
    
    Первая команда с помощью командлета New-PSSessionOption создает объект пара
    метров сеанса со свойством SkipCNCheck. Команда сохраняет полученный объект
     сеанса в переменной $skipCN.
    
    Вторая команда использует командлет New-PSSession для создания нового сеанс
    а PSSession на удаленном компьютере. Переменная $skipCN используется в знач
    ении параметра SessionOption. 
    
    Так как компьютер определяется по его IP-адресу, значение параметра Compute
    rName не соответствует ни одному из обычных имен в сертификате, используемо
    м для SSL. В результате требуется параметр SkipCNCheck.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=144305
    Enter-PSSession 
    New-PSSession 
    Invoke-Command 



New-Service

ИМЯ
    New-Service
    
ОПИСАНИЕ
    Создает новую службу Windows.
    
СИНТАКСИС
    New-Service [-Name] <string> [-BinaryPathName] <string> [-Credential <PSCre
    dential>] [-DependsOn <string[]>] [-Description <string>] [-DisplayName <st
    ring>] [-StartupType {Automatic | Manual | Disabled}] [-Confirm] [-WhatIf] 
    [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-Service создает в реестре и базе данных служб новую запись сл
    ужбы Windows. Для новой службы требуется задать исполняемый файл, который б
    удет выполняться во время работы службы.
    
    Параметры этого командлета позволяют задать отображаемое имя, описание, тип
     запуска и зависимости службы.
    
ПАРАМЕТРЫ
    -BinaryPathName <string>
        Задает путь к исполняемому файлу службы. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. Введите имя пользователя, например "User01"
         или "Domain01\User01". Или укажите объект PSCredential, например один 
        из объектов, возвращенных командлетом Get-Credential. При вводе имени п
        ользователя система запросит пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -DependsOn <string[]>
        Задает имена других служб, от которых зависит новая служба. При вводе н
        ескольких имен служб необходимо разделять их запятыми.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Description <string>
        Задает описание службы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -DisplayName <string>
        Задает отображаемое имя службы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя службы. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -StartupType <ServiceStartMode>
        Задает тип запуска службы.  По умолчанию используется значение "Automat
        ic".
        
        Допустимые значения:
        
        -- Manual: запуск службы осуществляется только вручную — пользователем 
        (с помощью диспетчера служб) или приложением. 
        
        -- Automatic: запуск службы осуществляется (или уже осуществлен) операц
        ионной системой при ее запуске. Если автоматически запускаемая службы з
        ависит от службы, запускаемой вручную, последняя также запускается авто
        матически при запуске системы. 
        
        -- Disabled: служба отключена и не может быть запущена ни пользователем
        , ни приложением.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Automatic
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.ServiceProcess.ServiceController
        Командлет New-Service возвращает объект, представляющий новую службу.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать этот командлет в Windows Vista и более поздних верси
        ях Windows, необходимо запускать Windows PowerShell командой "Запуск от
         имени администратора".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>new-service -name TestService -binaryPathName "C:\WINDOWS\System32\sv
    chost.exe -k netsvcs"
    
    
    Описание
    -----------
    Эта команда создает новую службу с именем "TestService".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>new-service -name TestService -path "C:\WINDOWS\System32\svchost.exe 
    -k netsvcs" -dependson NetLogon -displayName "Test Service" -StartupType Ma
    nual -Description "This is a test service."
    
    
    Описание
    -----------
    Эта команда создает новую службу с именем "TestService". В ней используются
     параметры командлета New-Service для задания описания, типа запуска и отоб
    ражаемого имени новой службы.
    
    Для задания параметра BinaryPathName в первой команде используется псевдони
    м параметра Path. Кроме того, можно использовать псевдоним "-bpn".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-wmiobject win32_service -filter "name='testservice'"
    
    ExitCode  : 0
    Name      : testservice
    ProcessId : 0
    StartMode : Auto
    State     : Stopped
    Status    : OK
    
    
    Описание
    -----------
    Эта команда с помощью параметра Get-WmiObject получает объект Win32_Service
     новой службы. Этот объект включает информацию о режиме запуска и описание 
    службы.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113359
    Get-Service 
    Start-Service 
    Stop-Service 
    Restart-Service 
    Resume-Service 
    Set-Service 
    Suspend-Service 



New-TimeSpan

ИМЯ
    New-TimeSpan
    
ОПИСАНИЕ
    Создает объект TimeSpan.
    
СИНТАКСИС
    New-TimeSpan [[-Start] <DateTime>] [[-End] <DateTime>] [<CommonParameters>]
    
    New-TimeSpan [-Days <int>] [-Hours <int>] [-Minutes <int>] [-Seconds 
     [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-TimeSpan создает объект TimeSpan, представляющий интервал вре
    мени. Объект TimeSpan позволяет прибавлять и вычитать время из объектов Dat
    eTime.
    
    Без параметров команда New-Timespan возвращает объект TimeSpan, представляю
    щий нулевой промежуток времени.
    
ПАРАМЕТРЫ
    -Days <int>
        Указывает дни в промежутке времени. По умолчанию используется значение 
        0.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                0
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -End <DateTime>
        Указывает конец промежутка времени. По умолчанию задаются текущие дата 
        и время.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                Текущая дата и время
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Hours <int>
        Указывает часы в промежутке времени. Значение по умолчанию — 0.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                0
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Minutes <int>
        Указывает минуты в промежутке времени. По умолчанию используется значен
        ие 0.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                0
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Seconds <int>
        Указывает продолжительность промежутка времени в секундах. По умолчанию
         используется значение 0.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                0
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Start <DateTime>
        Указывает начало промежутка времени. Введите строку, представляющую дат
        у и время, например "3/15/09", или объект DateTime, например объект, во
        звращаемый командой Get-Date.
        
        По умолчанию задаются текущие дата и время.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                Текущая дата и время
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.DateTime
        Объект DateTime, представляющий время начала, можно передать командлету
         New-TimeSpan по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Timespan
        Командлет New-TimeSpan возвращает объект, представляющий промежуток вре
        мени.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$timespan = new-timespan -hour 1 -minute 25
    
    
    Описание
    -----------
    Эта команда создает объект TimeSpan, определяющий промежуток длительностью 
    1 час 25 минут, и сохраняет его в переменной $timespan. Кроме того, она ото
    бражает представление объекта TimeSpan.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>new-timespan -end (get-date -year 2010 -month 1 -day 1)
    
    
    Описание
    -----------
    В этом примере создается новый объект TimeSpan, представляющий промежуток в
    ремени между временем выполнения команды и 1 января 2010 года.
    
    В этой команде не требуется указывать параметр Start, поскольку значением п
    араметра Start по умолчанию являются текущие дата и время.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$90days = new-timespan -days 90
    
    C:\PS> (get-date) + $90days
    
    
    Описание
    -----------
    Эти команды возвращают дату на 90 дней позже текущей даты.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113360
    Set-Date 
    Get-Date 



New-Variable

ИМЯ
    New-Variable
    
ОПИСАНИЕ
    Создает новую переменную.
    
СИНТАКСИС
    New-Variable [-Name] <string> [[-Value] <Object>] [-Description <string>] [
    -Force] [-Option {None | ReadOnly | Constant | Private | AllScope}] [-PassT
    hru] [-Scope <string>] [-Visibility {Public | Private}] [-Confirm] [-WhatIf
    ] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-Variable создает в Windows PowerShell новую переменную. Перем
    енной можно присвоить значение в момент ее создания, либо можно присвоить и
    ли изменить его после создания переменной.
    
    Параметры командлета New-Variable позволяют задавать свойства переменной, н
    апример делать ее доступной только для чтения или константой, задавать обла
    сть переменной и определять, является переменная открытой или закрытой.
    
    Обычно для создания переменной нужно ввести ее имя и значение, например "$v
    ar = 3", но командлет New-Variable позволяет использовать его параметры.
    
ПАРАМЕТРЫ
    -Description <string>
        Задает описание переменной.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет создать новую переменную с именем уже существующей доступной 
        только чтения переменной. 
        
        По умолчанию переменную можно перезаписать, если у нее нет параметра Re
        adOnly или Constant. Дополнительные сведения см. в описании параметра O
        ption.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя новой переменной.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Option <ScopedItemOptions>
        Задает значение свойства Options новой переменной.
        
        Допустимые значения:
        
        -- None: не определяет параметров (по умолчанию используется "None").
        
        -- ReadOnly: значение переменной не может быть изменено, если не исполь
        зовать параметр Force. Для удаления переменной можно использовать коман
        длет Remove-Variable.
        
        -- Constant: переменную нельзя удалить, а ее свойства нельзя изменить. 
        Значение "Constant" доступно только при создании псевдонима. Невозможно
         изменить на "Constant" значение этого параметра для существующей перем
        енной.
        
        -- Private: переменная доступна только в области, определенной параметр
        ом Scope. Она наследуется дочерними областями. (Это значение не связано
         со значением "Private" параметра Visibility.)
        
        -- AllScope: переменная копируется во все создаваемые области.
        
        Чтобы увидеть свойство переменных Options, введите команду "get-variabl
        e| format-table -property name, options -autosize".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий новую переменную. По умолчанию этот к
        омандлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Scope <string>
        Определяет область новой переменной. Допустимые значения: "Global", "Lo
        cal", "Script" или номер относительно текущей области (от 0 до количест
        ва областей, где 0 — текущая область, а 1 — ее родительская область). П
        о умолчанию используется значение "Local". Дополнительные сведения см. 
        в разделе about_Scopes.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Value <Object>
        Задает начальное значение переменной.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Visibility <SessionStateEntryVisibility>
        Определяет видимость переменной за пределами области, в которой она был
        а создана. Этот параметр предназначен для использования в скриптах и ко
        мандах, которые будут предоставляться другим пользователям.
        
        Допустимые значения:
        
        -- Public: переменная видима. ("Public" является значением по умолчанию
        .)
        -- Private: переменная невидима.
        
        Если переменная закрыта (Private), она не появляется в списках переменн
        ых, например в списках, возвращаемых командлетом Get-Variable, или при 
        отображении диска Variable:. Выполнение команд чтения или изменения зна
        чения частной переменной возвращает ошибку. Но пользователи могут выпол
        нять команды, использующие частные переменные, если эти команды были на
        писаны в сеансах, в которых были определены эти переменные.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Public
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Object
        Значение можно передать командлету New-Variable с помощью конвейера.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PSVariable
        Если задан параметр PassThru, командлет New-Variable создает объект Sys
        tem.Management.Automation.PSVariable, представляющий новую переменную. 
        В противном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>new-variable days
    
    
    Описание
    -----------
    Эта команда создает переменную с именем "days". Сразу же после выполнения к
    оманды эта переменная никакого значения не имеет.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>new-variable zipcode -value 98033
    
    
    Описание
    -----------
    Эта команда создает переменную "zipcode" и присваивает ей значение "98033".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>new-variable -name max -value 256 -option readonly
    
    new-variable -name max -value 1024
    
    new-variable -name max -value 1024 -force
    
    C:\PS> new-variable -name max -value 256 -option readonly
    
    C:\PS> new-variable -name max -value 1024
    New-Variable : A variable with name 'max' already exists.
    At line:1 char:13
    + new-variable <  -name max -value 1024
    
    C:\PS> new-variable -name max -value 1024 -force
    
    
    Описание
    -----------
    В этом примере показано, как использовать параметр ReadOnly командлета New-
    Variable для защиты переменной от перезаписи.
    
    Первая команда создает новую переменную Max и присваивает ей значение 256. 
    При этом используется параметр Option со значением ReadOnly.
    
    Вторая команда пытается создать еще одну переменную с таким же именем. Эта 
    команда возвращает ошибку, поскольку первая переменная доступна только для 
    чтения.
    
    В третьей команде используется параметр Force, чтобы обойти защиту от перез
    аписи переменной. В этом случае попытка создать новую переменную с таким же
     именем завершается успешно.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>new-variable -name counter -visibility private
    
    #Effect of private variable in a module.
    
    C:\PS> get-variable c*
    
    Name                           Value
    ----                           -----
    Culture                        en-US
    ConsoleFileName
    ConfirmPreference              High
    CommandLineParameters          {}
    
    C:\PS> $counter
    "Cannot access the variable '$counter' because it is a private variable"
    
    C:\PS> Get-Counter
    Name         Value
    ----         -----
    Counter1     3.1415
    ...
    
    
    Описание
    -----------
    Эта команда демонстрирует поведение частной переменной в модуле. Модуль сод
    ержит командлет Get-Counter, у которого имеется закрытая переменная "Counte
    r". При создании переменной команда использует параметр Visibility со значе
    нием "Private".
    
    В примере вывода показано поведение частной переменной. Пользователь, загру
    зивший модуль, не может видеть или изменять значение переменной Counter, од
    нако команды в модуле могут обращаться к переменной Counter и изменять ее.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113361
    Get-Variable 
    Set-Variable 
    Remove-Variable 
    Clear-Variable 



New-WebServiceProxy

ИМЯ
    New-WebServiceProxy
    
ОПИСАНИЕ
    Создает прокси-объект веб-службы, позволяющий использовать веб-службу и упр
    авлять ей в Windows PowerShell.
    
СИНТАКСИС
    New-WebServiceProxy [-URI] <Uri> [[-Class] <string>] [[-Namespace] <string>
    ] [<CommonParameters>]
    
    New-WebServiceProxy [-URI] <Uri> [[-Class] <string>] [[-Namespace] <string>
    ] [-Credential <PSCredential>] [<CommonParameters>]
    
    New-WebServiceProxy [-URI] <Uri> [[-Class] <string>] [[-Namespace] <string>
    ] [-UseDefaultCredential] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-WebServiceProxy позволяет использовать веб-службу в Windows P
    owerShell. Командлет подключается к веб-службе и создает прокси-объект веб-
    службы в Windows PowerShell. Этот прокси-объект можно использовать для упра
    вления веб-службой.
    
    Веб-служба — это программа на основе XML, используемая для обмена данными п
    о сети, в частности по сети Интернет. Платформа Microsoft .NET Framework пр
    едоставляет прокси-объекты веб-служб, позволяющие представлять веб-службы в
     виде объектов .NET Framework.
    
ПАРАМЕТРЫ
    -Class <string>
        Задает имя прокси-класса, создаваемого командлетом для веб-службы. Знач
        ение этого параметра используется со значением параметра Namespace для 
        формирования полного имени класса. Значение по умолчанию формируется из
         URI.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                Формируется из URI
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". Это альтернатива использованию параметра UseDefaultCred
        ential.
        
        Введите имя пользователя, например "User01" или "Domain01\User01". Или 
        укажите объект PSCredential, например один из объектов, созданных коман
        длетом Get-Credential. При вводе имени пользователя система запросит па
        роль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Namespace <string>
        Задает пространство имен нового класса. 
        
        Значение этого параметра используется со значением параметра Class для 
        формирования полного имени класса. По умолчанию используется значение "
        Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes" пл
        юс тип, сформированный из URI.
        
        Можно задать значение параметра Namespace, чтобы иметь возможность дост
        упа к нескольким веб-службам с одним и тем же именем.
        
        Требуется?                    false
        Позиция?                    3
        Значение по умолчанию                Microsoft.PowerShell.Commands.NewW
        ebserviceProxy.AutogeneratedTypes
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -URI <Uri>
        Задает URI веб-службы. Введите URI или путь и имя файла, в котором соде
        ржится описание службы.
        
        URI должен ссылаться на страницу ASMX или на страницу, возвращающую опи
        сание службы. Чтобы получить описание веб-службы, созданной с помощью A
        SP.NET, добавьте строку "?WSDL" к URL-адресу веб-службы (например, http
        ://www.contoso.com/MyWebService.asmx?WSDL).
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseDefaultCredential [<SwitchParameter>]
        Задает для параметра UseDefaultCredential в результирующем прокси-объек
        те значение True. Это альтернатива использованию параметра Credential.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает входные данные по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Прокси-объект веб-службы
        Пространство имен и класс объекта определяются параметрами команды. По 
        умолчанию генерируется объект по входному URI.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет New-WebServiceProxy использует класс System.Net.WebClient для
         загрузки указанной веб-службы.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$zip = New-WebServiceProxy -uri http://www.webservicex.net/uszip.asmx
    ?WSDL
    
    
    Описание
    -----------
    Эта команда с помощью командлета New-WebServiceProxy создает прокси-объект 
    .NET Framework веб-службы US Zip в Windows PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$URI = "http://www.webservicex.net/uszip.asmx?WSDL" 
    
    C:\PS> $zip = New-WebServiceProxy -uri $URI -namespace WebServiceProxy -cla
    ss ZipClass
    
    
    Описание
    -----------
    Эта команда с помощью командлета New-WebServiceProxy создает прокси-объект 
    .NET .NET Framework веб-службы US Zip.
    
    Первая команда сохраняет URI веб-службы в переменной $URI.
    
    Вторая команда создает прокси-объект веб-службы. Параметр URI используется 
    для задания URI, а параметры Namespace и Class — для задания пространства и
    мен и класса объекта.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$zip | get-member -type method
    
       TypeName: WebServiceProxy.USZip
    
    Name                      MemberType Definition
    ----                      ---------- ----------
    Abort                     Method     System.Void Abort(
    BeginGetInfoByAreaCode    Method     System.IAsyncResul
    BeginGetInfoByCity        Method     System.IAsyncResul
    BeginGetInfoByState       Method     System.IAsyncResul
    BeginGetInfoByZIP         Method     System.IAsyncResul
    CreateObjRef              Method     System.Runtime.Rem
    Discover                  Method     System.Void Discov
    Dispose                   Method     System.Void Dispos
    EndGetInfoByAreaCode      Method     System.Xml.XmlNode
    EndGetInfoByCity          Method     System.Xml.XmlNode
    EndGetInfoByState         Method     System.Xml.XmlNode
    EndGetInfoByZIP           Method     System.Xml.XmlNode
    Equals                    Method     System.Boolean Equ
    GetHashCode               Method     System.Int32 GetHa
    GetInfoByAreaCode         Method     System.Xml.XmlNode
    GetInfoByCity             Method     System.Xml.XmlNode
    GetInfoByState            Method     System.Xml.XmlNode
    GetInfoByZIP              Method     System.Xml.XmlNode
    GetLifetimeService        Method     System.Object GetL
    GetType                   Method     System.Type GetTyp
    InitializeLifetimeService Method     System.Object Init
    ToString                  Method     System.String ToSt
    
    
    Описание
    -----------
    Эта команда с помощью командлета Get-Member отображает методы прокси-объект
    а веб-службы, хранящегося в переменной $zip. Эти методы используются в след
    ующем примере.
    
    Обратите внимание, что значение параметра TypeName прокси-объекта, WebServi
    ceProxy, отражает имена пространства имен и класса, указанные в предыдущем 
    примере.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$zip.getinfobyzip(20500).table
    
    CITY      : Washington
    STATE     : DC
    ZIP       : 20500
    AREA_CODE : 202
    TIME_ZONE : E
    
    
    Описание
    -----------
    В этой команде используется прокси-объект веб-службы, хранящийся в переменн
    ой Zip. Команда использует метод GetInfoByZip прокси-объекта и его свойство
     Table.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135238
    New-Service 



New-WSManInstance

ИМЯ
    New-WSManInstance
    
ОПИСАНИЕ
    Создает новый экземпляр ресурса управления.
    
СИНТАКСИС
    New-WSManInstance [-ApplicationName <string>] [-ComputerName <string>] [-Cr
    edential <PSCredential>] [-Port <int>] [-UseSSL] [-SelectorSet] <hashtable>
     -ResourceURI <Uri> [-AuthenticationMechanism <AuthenticationMechanism>] [-
    SessionOption <hashtable>] [-ValueSet <hashtable>] [<CommonParameters>]
    
    New-WSManInstance [-ConnectionURI <Uri>] [-SelectorSet] <hashtable> -Resour
    ceURI <Uri> [-AuthenticationMechanism <AuthenticationMechanism>] [-SessionO
    ption <hashtable>] [-ValueSet <hashtable>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет New-WSManInstance создает новый экземпляр ресурса управления. Для
     создания нового экземпляра ресурса управления используется URI ресурса и н
    абор значений или входной файл.
    
    Для создания экземпляра ресурса управления командлет использует уровень сое
    динений/транспорта WinRM.
    
ПАРАМЕТРЫ
    -ApplicationName <string>
        Задает имя приложения для подключения. По умолчанию параметр Applicatio
        nName имеет значение "WSMAN". Полный идентификатор удаленной конечной т
        очки имеет следующий формат:
        
              <протокол>://<сервер>:<порт>/
        
        Пример:
        
              http://server01:8080/WSMAN
        
        Службы IIS, которые обрабатывают сеанс, перенаправляют запросы с данной
         конечной точкой указанному приложению. Значение по умолчанию "WSMAN" п
        одходит для большинства случаев. Этот параметр предназначен для использ
        ования, когда большое число компьютеров устанавливают удаленные подключ
        ения к одному компьютеру, на котором работает Windows PowerShell. В это
        м случае для повышения эффективности веб-службы WS-Management размещают
        ся в службах IIS.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                wsman
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -AuthenticationMechanism <AuthenticationMechanism>
        Задает механизм проверки подлинности, используемый на сервере. Возможны
        е значения:
        
        - Basic: при использовании схемы Basic имя пользователя и пароль переда
        ются серверу или прокси-серверу открытым текстом.
        - Default: использовать метод проверки подлинности, реализованный прото
        колом WS-Management. Это значение используется по умолчанию.
        - Digest: при использовании схемы Digest проверка подлинности проводитс
        я по принципу "запрос-ответ". В качестве запроса поступает строка данны
        х, указанная сервером.
        - Kerberos: выполняется взаимная проверка подлинности компьютера и серв
        ера с использованием сертификатов Kerberos.
        - Negotiate: при использовании схемы Negotiate между компьютером и серв
        ером или прокси происходит обмен данными по принципу "запрос-ответ", в 
        ходе которого определяется схема, используемая для проверки подлинности
        . Например, это значение параметра разрешает согласование одного из дву
        х методов проверки подлинности: Kerberos или NTLM.
        - CredSSP: использовать проверку подлинности CredSSP (Credential Securi
        ty Service Provider), при которой пользователю разрешается делегировать
         учетные данные. Этот вариант предназначен для команд, которые запускаю
        тся на одном удаленном компьютере, но собирают данные с других удаленны
        х компьютеров или выполняют на них дополнительные команды. 
        
        Внимание При проверке подлинности CredSSP учетные данные пользователя 
        делегируются с локального компьютера на удаленный компьютер. Такой подх
        од повышает угрозы безопасности удаленных операций. Если безопасность у
        даленного компьютера нарушена, при передаче на него учетных данных эти 
        данные могут быть использованы для управления сетевым сеансом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string>
        Задает компьютер, к которому требуется применить операцию управления. З
        начение может быть полным доменным именем, именем NetBIOS или IP-адресо
        м. Чтобы задать локальный компьютер, введите имя компьютера, "localhost
        " или точку (.). Локальный компьютер используется по умолчанию. Если по
        льзователь и удаленный компьютер находятся в разных доменах, необходимо
         использовать полное доменное имя. Значение этого параметра можно перед
        ать командлету по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                localhost
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ConnectionURI <Uri>
        Задает конечную точку соединения. Строка имеет следующий формат: 
        
             <протокол>://<сервер>:<порт>/
        
        Следующая строка представляет собой правильно отформатированное значени
        е для этого параметра: 
        
             http://Server01:8080/WSMAN
        
        Значение URI должно быть указано полностью.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". Введите имя пользователя, например "User01", "Domain01\
        User01" или "User@Domain.com". Или укажите объект PSCredential, наприме
        р возвращенный командлетом Get-Credential. При вводе имени пользователя
         появится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -File <File>
        Задает путь к файлу, который используется для создания ресурса управлен
        ия. Ресурс управления указывается с помощью параметров ResourceURI и Se
        lectorSet. Например, в следующей команде используется параметр File:
        
        invoke-wsmanaction -action stopservice -resourceuri wmicimv2/Win32_Serv
        ice -SelectorSet @{Name="spooler"} -File c:\input.xml -authentication d
        efault
        
        Эта команда вызывает метод StopService [дескриптор] службы очереди печа
        ти, используя входные данные из файла. В файле (Input.xml) содержатся с
        ледующие данные: 
        
        <p:StopService_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1
        /wmi/root/cimv2/Win32_Service"/>
        
        Требуется?                    
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -OptionSet <hashtable>
        Передает службе набор параметров для изменения или уточнения запроса. П
        ередаваемые параметры похожи на параметры, используемые в оболочках ком
        андной строки: они зависят от конкретной службы. Можно задать произволь
        ное количество параметров. 
        
        В следующем примере показано синтаксическое выражение, позволяющее пере
        дать значения 1, 2 и 3 параметрам a, b и c соответственно:
        
              -OptionSet @{a=1;b=2;c=3}
        
        Требуется?                    
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Port <int>
        Задает порт, используемый клиентом для подключения к службе WinRM. Если
         в качестве транспорта выбран HTTP, по умолчанию используется порт 80. 
        Если в качестве транспорта выбран HTTPS, по умолчанию используется порт
         443. При использовании в качестве транспорта HTTPS значение параметра 
        ComputerName должно соответствовать общему имени сертификата сервера. О
        днако, если в качестве элемента параметра SessionOption указан параметр
         SkipCNCheck, общее имя сертификата сервера не обязательно должно соотв
        етствовать имени узла сервера. Параметр SkipCNCheck следует использоват
        ь только в случае доверенных компьютеров.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ResourceURI <Uri>
        Содержит универсальный идентификатор ресурса (URI) экземпляра или класс
        а ресурса. URI используется для определения конкретного типа ресурса, н
        апример диска или процесса, на компьютере. 
        
        URI состоит из префикса и пути к ресурсу. Пример: 
        
             http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Log
        icalDisk
             http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSenso
        r
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SelectorSet <hashtable>
        Задает набор пар значений, которые используются для выбора конкретных э
        кземпляров ресурса управления. Параметр SelectorSet используется в случ
        ае существования нескольких экземпляров ресурса. Значение параметра Sel
        ectorSet представляет собой хэш-таблицу. 
        
        В следующем примере показано, как задать значение для этого параметра: 
        
            -SelectorSet @{Name="WinRM";ID="yyy"}
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -SessionOption <hashtable>
        Определяет расширенные параметры сеанса WS-Management. Введите объект S
        essionOption, созданный с помощью командлета New-WSManSessionOption. До
        полнительные сведения о доступных параметрах см. в разделе New-WSManSes
        sionOption.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseSSL [<SwitchParameter>]
        Указывает, что для установки подключения к удаленному компьютеру должен
         использоваться протокол SSL (Secure Sockets Layer). По умолчанию SSL н
        е используется. 
        
        Протокол WS-Management шифрует все передаваемое по сети содержимое Wind
        ows PowerShell. Параметр UseSSL позволяет указать, что необходимо испол
        ьзовать дополнительную меру защиты: протокол HTTPS вместо HTTP. Если ук
        азан этот параметр, однако используемый для подключения порт не поддерж
        ивает SSL, команда завершается с ошибкой.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ValueSet <hashtable>
        Задает хэш-таблицу, которая позволяет изменить ресурс управления. Ресур
        с управления указывается с помощью параметров ResourceURI и SelectorSet
        . Значение параметра ValueSet должно быть хэш-таблицей.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает никаких входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Set-WmiInstance (один из командлетов инструментария управлени
        я Windows [WMI]) аналогичен данному командлету. Для создания или обновл
        ения экземпляров WMI командлет Set-WmiInstance использует уровень соеди
        нений/транспорта DCOM.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>New-WSManInstance winrm/config/Listener -SelectorSet @{Transport=HTTP
    S} -ValueSet @{Hostname="HOST";CertificateThumbprint="XXXXXXXXXX"}
    
    
    Описание
    -----------
    Эта команда создает экземпляр HTTPS-прослушивателя WS-Management на всех IP
    -адресах.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkId=141448
    Connect-WSMan 
    Disable-WSManCredSSP 
    Disconnect-WSMan 
    Enable-WSManCredSSP 
    Get-WSManCredSSP 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManSessionOption 
    Remove-WSManInstance 
    Set-WSManInstance 
    Set-WSManQuickConfig 
    Test-WSMan 



New-WSManSessionOption

ИМЯ
    New-WSManSessionOption
    
ОПИСАНИЕ
    Создает хэш-таблицу параметров сеанса WS-Management для использования в кач
    естве входных параметров следующих командлетов WS-Management:
    Get-WSManInstance
    Set-WSManInstance
    Invoke-WSManAction
    Connect-WSMan
    
СИНТАКСИС
    New-WSManSessionOption [-NoCompression <switch>] [-NoProxy <switch>] [-Prox
    yAuthentication <string>] [-ProxyPassword <string>] [-ProxyUserName <string
    >] [-SkipCACheck <switch>] [-SkipCNCheck <switch>] [-SkipRevocation <switch
    >] [-SPNPort <int>] [-Timeout <int>] [-UnEncrypted <switch>] [-UseIEProxyco
    nfig <switch>] [-UseProxyAutoDetection <switch>] [-UseWinHTTPProxyConfig <s
    witch>] [-UTF16 <switch>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Создает хэш-таблицу параметров сеанса WSMan, которую можно передавать коман
    длетам WSMan:
    Get-WSManInstance
    Set-WSManInstance
    Invoke-WSManAction
    Connect-WSMan
    
ПАРАМЕТРЫ
    -NoCompression <switch>
        Отключить сжатие пакетов в сеансе. По умолчанию сжатие включено, и паке
        ты, передаваемые между клиентов и сервером, сжимаются. Сжатие потребляе
        т больше циклов процессора, но ускоряет передачу.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NoProxy <switch>
        Не использовать прокси-сервер. Все имена узлов будут разрешаться локаль
        но.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ProxyAuthentication <string>
        Задает метод проверки подлинности, используемый на прокси-сервере. Возм
        ожные значения:
        
        - Basic: при использовании схемы Basic имя пользователя и пароль переда
        ются серверу или прокси-серверу открытым текстом.
        - Digest: при использовании схемы Digest проверка подлинности проводитс
        я по принципу "запрос-ответ". В качестве запроса поступает строка данны
        х, указанная сервером.
        - Negotiate (по умолчанию): при использовании схемы Negotiate между ком
        пьютером и сервером или прокси-сервером происходит обмен данными по при
        нципу "запрос-ответ", в ходе которого определяется схема, используемая 
        для проверки подлинности. Примеры — протокол Kerberos и NTLM.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Negotiate
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ProxyPassword <string>
        Задает пароль для проверки подлинности на прокси-сервере.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ProxyUserName <string>
        Задает имя пользователя для проверки подлинности на прокси-сервере.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SkipCACheck <switch>
        Указывает, что при подключении по протоколу HTTPS клиент не проверяет, 
        подписан ли сертификат сервера доверенным центром сертификации (ЦС). Эт
        от параметр следует использовать, только если удаленный компьютер являе
        тся доверенным по другим причинам, например, если удаленный компьютер в
        ходит в сеть, которая является физически изолированной и безопасной, ил
        и если удаленный компьютер указан в качестве доверенного узла в конфигу
        рации WS-Management.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SkipCNCheck <switch>
        Указывает, что общее имя сертификата (CN) сервера не обязано соответств
        овать имени узла сервера. (Используется только при удаленных взаимодейс
        твиях по протоколу HTTPS.) Этот параметр следует использовать только на
         доверенных компьютерах.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SkipRevocation <switch>
        Не проверять состояние отзыва сертификата сервера.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SPNPort <int>
        Задает номер порта для добавления к имени участника-службы (SPN) удален
        ного сервера в подключении.  Имя участника-службы используется при прим
        енении механизма проверки подлинности Kerberos или Negotiate.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Timeout <int>
        Задает время ожидания для операции WS-Management в миллисекундах.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UnEncrypted <switch>
        Не использовать шифрование при удаленных операциях по протоколу HTTP. 
        
        Примечание. По умолчанию передача данных в незашифрованном виде запреще
        на; необходимо разрешить ее в локальной конфигурации.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseIEProxyconfig <switch>
        Использовать конфигурацию прокси-сервера Internet Explorer для текущего
         пользователя.  Этот вариант используется по умолчанию.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseProxyAutoDetection <switch>
        Определять прокси-сервер автоматически.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseWinHTTPProxyConfig <switch>
        Использовать конфигурацию прокси-сервера для WinHTTP.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UTF16 <switch>
        Кодировать запрос в кодировке UTF16, а не в кодировке UTF8. По умолчани
        ю используется кодировка UTF8.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    
        
    
    
ВЫХОДНЫЕ ДАННЫЕ
    SessionOption
        
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkId=141449
    Connect-WSMan 
    Disable-WSManCredSSP 
    Disconnect-WSMan 
    Enable-WSManCredSSP 
    Get-WSManCredSSP 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManInstance 
    Remove-WSManInstance 
    Set-WSManInstance 
    Set-WSManQuickConfig 
    Test-WSMan 



Out-Default

ИМЯ
    Out-Default
    
ОПИСАНИЕ
    Отправляет выходные данные в модуль форматирования по умолчанию и в командл
    ет вывода по умолчанию.
    
СИНТАКСИС
    Out-Default [-InputObject <psobject>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Out-Default отправляет данные в модуль форматирования по умолчани
    ю и в командлет вывода по умолчанию. Данный командлет не влияет на форматир
    ование или выходные данные команд Windows PowerShell. Это заполнитель, позв
    оляющий написать собственную функцию Out-Default или командлет.
    
ПАРАМЕТРЫ
    -InputObject <psobject>
        
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    
        
    
    
ВЫХОДНЫЕ ДАННЫЕ
    
        
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113362



Out-File

ИМЯ
    Out-File
    
ОПИСАНИЕ
    Отправляет вывод в файл.
    
СИНТАКСИС
    Out-File [-FilePath] <string> [[-Encoding] <string>] [-Append] [-Force] [-I
    nputObject <psobject>] [-NoClobber] [-Width <int>] [-Confirm] [-WhatIf] [<C
    ommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Out-File отправляет вывод в файл. Командлет Out-File можно исполь
    зовать вместо оператора перенаправления (>), если нужно указать дополнитель
    ные данные с помощью параметров этого командлета.
    
ПАРАМЕТРЫ
    -Append [<SwitchParameter>]
        Записывает выходные данные в конец существующего файла, а не замещает е
        го содержимое.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Encoding <string>
        Задает тип кодировки, используемой в файле. Допустимые значения: "Unico
        de", "UTF7", "UTF8", "UTF32", "ASCII", "BigEndianUnicode", "Default" и 
        "OEM". По умолчанию используется кодировка "Unicode".
        
        Значение "Default" соответствует кодировке текущей кодовой страницы ANS
        I. 
        
        "OEM" соответствует идентификатору кодовой страницы текущего производит
        еля оригинального оборудования для операционной системы.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FilePath <string>
        Задает путь к выходному файлу.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету перезаписать существующий файл, доступный только д
        ля чтения. Даже при использовании параметра Force командлет не может пе
        реопределить ограничения безопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Указывает объекты, которые будут записаны в файл. Введите переменную, с
        одержащую объекты, либо получающую их команду или выражение.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -NoClobber [<SwitchParameter>]
        Не будет перезаписывать существующий файл (то есть заменять его содержи
        мое). По умолчанию, если файл существует по указанному пути, командлет 
        Out-File перезаписывает файл без предупреждения. Если одновременно испо
        льзуются параметры Append и NoClobber, выходные данные записываются в к
        онец существующего файла.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Width <int>
        Указывает число знаков в каждой выходной строке. Все остальные знаки ус
        екаются, а не переносятся на следующую строку. Если данный параметр опу
        щен, ширина определяется характеристиками основного приложения. Значени
        е по умолчанию для консоли Windows PowerShell равно 80 (знаков).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету Out-File по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет Out-File не формирует никакого вывода.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлеты Out не форматируют объекты, а только обрабатывают их и отпра
        вляют в указанное назначение для отображения. Если передать неформатиро
        ванный объект в командлет Out, он перед обработкой отправит его в форма
        тирующий командлет.
        
        Командлеты Out не содержат параметров для указания имен или путей. Для 
        передачи данных командлетам, содержащие слово Out (командлеты Out), исп
        ользуйте оператор конвейера (|), чтобы передать выходные данные команды
         Windows PowerShell командлету. Также можно хранить данные в переменной
         и использовать параметр InputObject для передачи данных в командлет. Д
        ополнительные сведения см. в примерах.
        
        Командлет Out-File отправляет данные, но не создает никаких объектов вы
        вода. Если передать по конвейеру вывод командлета Out-File командлету G
        et-Member, командлет Get-Member сообщит, что никакие объекты не указаны
        .
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-process | out-file -filepath C:\Test1\process.txt
    
    
    Описание
    -----------
    Эта команда отправляет список процессов, выполняемых на компьютере, в файл 
    Process.txt. Если этот файл не существует, командлет Out-File создаст его. 
    Имя параметра FilePath указывать необязательно, поэтому данную команду можн
    о переписать как "get-process | outfile C:\Test1\process.txt".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-process | out-file C:\Test1\process.txt -noclobber
    
    Out-File : File C:\Test1\process.txt already exists and NoClobber was speci
    fied.
    At line:1 char:23
    + get-process | out-file  < process.txt -noclobber
    
    
    Описание
    -----------
    Эта команда также отправляет список процессов в файл Process.txt, но в ней 
    используется параметр NoClobber, который предотвращает перезапись существую
    щего файла. При выполнении такой команды с параметром NoClobber для существ
    ующего файла будет выведено сообщение об ошибке.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$a = get-process
    
    C:\PS> out-file -filepath C:\Test1\process.txt -inputobject $a -encoding AS
    CII -width 50
    
    
    Описание
    -----------
    Эти команды отправляют список процессов, выполняемых на компьютере, в файл 
    Process.txt. Текст имеет кодировку ASCII, чтобы его могли обрабатывать прог
    раммы поиска, такие как Findstr и Grep. По умолчанию командлет Out-File исп
    ользует формат Unicode.
    
    Первая команда получает список процессов и сохраняет его в переменной $a. В
    торая команда с помощью командлета Out-File отправляет список процессов в ф
    айл Process.txt. 
    
    Параметр InputObject указывает, что ввод хранится в переменной $a. Параметр
     Encoding используется для преобразования вывода в формат ASCII. Параметр W
    idth ограничивает длину каждой строки в файле 50 знаками. Так как строки вы
    вода после 50 знаков усекаются, самый правый столбец таблицы процессов не в
    ыводится.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>set-location hklm:\software
    
    c:\PS>get-acl mycompany\mykey | out-file -filepath c:\ps\acl.txt
    
    c:\PS>get-acl mycompany\mykey | out-file -filepath filesystem::acl.txt
    
    
    Описание
    -----------
    Эти команды показывают, как использовать командлет Out-File в контексте, от
    личном от диска FileSystem. 
    
    Первая команда делает текущим расположением раздел реестра HKLM:\Software.
    
    Вторая и третья команды делают то же самое. Они с помощью командлета Get-Ac
    l получают дескриптор безопасности подраздела реестра HKLM\Software\MyCompa
    ny\MyKey. Оператор конвейера передает результат командлету Out-File, которы
    й отправляет его в файл Acl.txt.
    
    Командлет Out-File не поддерживается поставщиком реестра Windows PowerShell
    , поэтому в качестве значения параметра FilePath нужно указать или имя диск
    а файловой системы (такое как "c:"), или имя поставщика с двумя двоеточиями
     "FileSystem::". Вторая и третья команды демонстрируют применение этих спос
    обов.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113363
    Out-String 
    Out-Null 
    Out-Host 
    Out-Printer 
    Out-Default 
    Tee-Object 



Out-GridView

ИМЯ
    Out-GridView
    
ОПИСАНИЕ
    Отправляет результаты в интерактивную таблицу в отдельном окне.
    
СИНТАКСИС
    Out-GridView [-InputObject <psobject>] [-Title <string>] [<CommonParameters
    >]
    
    
ОПИСАНИЕ
    Командлет Out-GridView пересылает результаты выполнения команды в окно табл
    ицы, в котором они отображаются в виде интерактивной таблицы.  Для использо
    вания этого компонента требуется Microsoft .NET Framework 3.5 с пакетом обн
    овления 1 (SP1). 
    
    Для работы с данными можно использовать следующие функции таблицы.
    
    -- Скрытие, показ и изменение порядка столбцов. Чтобы скрыть, показать или 
    изменить порядок столбцов, щелкните заголовок столбца правой кнопкой мыши и
     выберите команду "Выбор столбцов".
    
    -- Сортировка. Чтобы отсортировать данные, щелкните заголовок столбца. Щелк
    ните еще раз, чтобы перейти от сортировки по возрастанию к сортировке по уб
    ыванию.
    
    -- Быстрый фильтр. Поле "Фильтр" в верхней части окна позволяет выполнять п
    оиск по тексту таблицы. Можно искать текст в конкретном столбце, искать по 
    символам или по нескольким словам. 
    
    -- Фильтрация по критериям. Для создания правил фильтрации данных используй
    те раскрывающееся меню добавления критериев. Эта функция бывает очень полез
    ной при работе с крупными наборами данных, например с журналами событий.
    
    -- Копирование и вставка. Чтобы скопировать строки с данными из таблицы Out
    -GridView, используйте сочетание клавиш CTRL+C (копирование). Затем эти дан
    ные можно вставить в программу для работы с текстом или электронными таблиц
    ами.
    
    Чтобы получить инструкции по использованию этих функций, введите команду "g
    et-help out-gridview -full" и ознакомьтесь с подразделом "Использование фун
    кций окна таблицы" в разделе ПРИМЕЧАНИЯ.
    
ПАРАМЕТРЫ
    -InputObject <psobject>
        Принимает входные значения для командлета Out-GridView.  
        
        При использовании параметра InputObject для отправки коллекции из более
         чем одного объекта в командлет Out-GridView командлет Out-GridView обр
        абатывает коллекцию как один объект коллекции и отображает одну строку,
         представляющую эту коллекцию.  Чтобы отобразить каждый из объектов в к
        оллекции, необходимо передавать объекты командлету Out-GridView с помощ
        ью оператора конвейера (|).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Title <string>
        Задает текст, который отображается в строке заголовка окна Out-GridView
        . 
        
        По умолчанию в строке заголовка отображается команда, вызвавшая командл
        ет Out-GridView.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Текущая команда
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Командлету Out-GridView можно передать любой объект.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет Out-GridView не возвращает никаких объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        ПРИМЕЧАНИЯ К OUT-GRIDVIEW
        ----------------------
        
        Microsoft .NET Framework 3.5 с пакетом обновления 1 (SP1) можно загрузи
        ть из Центра загрузки Майкрософт.
        
        Поскольку этому командлету требуется пользовательский интерфейс, он не 
        работает в ОС Windows Server, установленной в варианте Server Core.
        
        Нельзя открывать окно таблицы на удаленном компьютере с помощью удаленн
        ой команды. 
        
        Результаты выполнения команд, передаваемые командлету, не могут быть пр
        едварительно отформатированы, например с помощью командлетов Format-Tab
        le и Format-Wide. Чтобы выбрать свойства, используйте командлет Select-
        Object. 
        
        Десериализованный вывод удаленных команд не может быть правильно отформ
        атирован в окне таблицы.
        
        
        СОЧЕТАНИЯ КЛАВИШ ДЛЯ OUT-GRIDVIEW
        -----------------------------------
        
        Использование следующих сочетаний клавиш позволяет ускорить выполнение 
        многих задач.
        
        Клавиши:     Действие:
        -------------     -----------------------------------------------------
        -----------
        TAB               Перемещение курсора из поля фильтра к меню добавления
         критериев таблицы и обратно. 
        СТРЕЛКА ВВЕРХ          Перемещение на одну строку вверх. Можно перемеща
        ться до заголовков столбцов. 
        СТРЕЛКА ВНИЗ          Перемещение на одну строку вниз. 
        СТРЕЛКА ВЛЕВО        В строке заголовков столбцов перемещение на один с
        толбец влево. 
        СТРЕЛКА ВПРАВО        В строке заголовков столбцов перемещение на один 
        столбец вправо. 
        КЛАВИША КОНТЕКСТНОГО МЕНЮ  В строке заголовков столбцов отображение пар
        аметра "Выбор столбцов".
        ВВОД или ПРОБЕЛ В строке заголовков столбцов сортировка данных в столбц
        ах (переключение A-Z, Z-A). 
        
        
        ИСПОЛЬЗОВАНИЕ ФУНКЦИЙ ОКНА ТАБЛИЦЫ
        ----------------------------------------
        В следующих разделах описано, как использовать функции окна, отображаем
        ого командлетом Out-GridView.
        
        Скрытие, показ и изменение порядка столбцов
        --------------------------------------
        Скрытие и показ столбца.
        
        1. Щелкните заголовок любого столбца правой кнопкой мыши и выберите ком
        анду "Выбор столбцов".  
        
        2. В диалоговом окне "Выбор столбцов" с помощью клавиш со стрелками пер
        емещайте столбцы между полями "Выбранные столбцы" и "Доступные столбцы"
        . В окне таблицы будут отображаться только столбцы из поля "Выбранные с
        толбцы". 
        
        
        Изменение порядка столбцов.
        
        -- Перетащите столбец в нужное место.
        
        - или -
        
        1. Щелкните заголовок любого столбца правой кнопкой мыши и выберите ком
        анду "Выбор столбцов". 
        
        2. В диалоговом окне "Выбор столбцов" с помощью кнопок "Вверх" и "Вниз"
         измените порядок столбцов. В окне таблицы столбцы в верхней части спис
        ка отображаются левее столбцов в нижней части списка.
        
        
        Сортировка данных в таблице
        ----------------------
        -- Чтобы отсортировать данные, щелкните заголовок столбца. 
        -- Чтобы изменить порядок сортировки, еще раз щелкните заголовок столбц
        а. При каждом щелчке одного и того же заголовка порядок сортировки меня
        ется с возрастающего на убывающий и наоборот. Текущий порядок обозначае
        тся треугольником в заголовке столбца.
        
        
        Выбор данных в таблице
        ------------------------ 
        -- Чтобы выбрать строку, щелкните строку или воспользуйтесь стрелками в
        верх и вниз для перехода к нужной строке. 
        -- Чтобы выбрать все строки (кроме строки заголовков), нажмите сочетани
        е клавиш CTRL+A.
        -- Чтобы выбрать последовательные строки, нажмите и удерживайте клавишу
         SHIFT, щелкая соответствующие строки или выбирая их с помощью клавиш с
        о стрелками. 
        -- Чтобы выбрать непоследовательные строки, нажмите клавишу CTRL и щелк
        ните строки для выбора.
        Выбирать столбцы невозможно. Кроме того, невозможно выбрать всю строку 
        заголовков столбцов.
        
        
        Копирование столбцов
        ----------------------
        -- Чтобы скопировать из таблицы одну или несколько строк, выберите эти 
        строки и нажмите сочетание клавиш CTRL+C.
        Затем эти данные можно вставить в программу для работы с текстом или эл
        ектронными таблицами. Невозможно копировать столбцы или части строк. Кр
        оме того, невозможно скопировать всю строку заголовков столбцов.
        
        
        Поиск по таблице (быстрый фильтр)
        ---------------------------------
        Для поиска данных в таблице используйте поле "Фильтр". При вводе текста
         в это поле будут отображаться только элементы, содержащие вводимый тек
        ст. 
        
        -- Поиск текста. Чтобы найти в таблице фрагмент текста, введите этот те
        кст в поле "Фильтр". 
        
        -- Поиск по нескольким словам. Чтобы выполнить в таблице поиск по неско
        льким словам, введите эти слова, разделив их запятыми. В таблице Out-Gr
        idView будут показаны строки, содержащие все эти слова (логическое И).
        
        -- Поиск точных фраз. Для поиска фраз, включающих пробелы или специальн
        ые знаки, заключите эти фразы в кавычки. В таблице Out-GridView будут п
        оказаны строки, включающие точные совпадения для искомой фразы.
        
        -- Поиск по столбцам. Для поиска текста в одном или нескольких столбцах
         используйте следующий формат: 
        
         <столбец>:<текст> [<столбец>:
        
            Например, чтобы найти слово "Net" в столбце DisplayName, в поле "Фи
        льтр" введите:
        
         displayname:net
        
            Чтобы найти строки, содержащие слово "Net" в столбцах DisplayName и
         Name, введите в поле "Фильтр": 
        
         displayname:net  name:net
        
        -- Отключение поиска. Чтобы снова вывести полную таблицу, нажмите кнопк
        у с красным знаком X в правом верхнем углу поля "Фильтр" или удалите те
        кст из поля "Фильтр".
        
        
        Фильтрация таблицы с помощью критериев
        --------------------------------
        Для определения элементов, которые должны отображаться в таблице, можно
         использовать правила или "критерии". Элементы отображаются только в то
        м случае, если они удовлетворяют всем заданным критериям. Доступные кри
        терии определяются свойствами объектов, отображаемых в окне таблицы и т
        ипами .NET Framework этих свойств. 
        
        Все критерии имеют следующий формат:
        <столбец> <оператор> <значение>
        
        Критерии для различных свойство объединяются с помощью оператора AND. К
        ритерии для одного свойства объединяются с помощью оператора OR. Изменя
        ть эти логические связи невозможно.
        
        Критерии влияют только на выводимый результат. Он не удаляет элементы и
        з таблицы.
        
        Добавление критериев
        ---------------------------
        1. Чтобы отобразить кнопку меню "Добавить критерии", щелкните стрелку "
        Развернуть" в верхнем правом углу окна. 
        2. Нажмите кнопку меню "Добавить критерии".
        3. Щелкните, чтобы выбрать столбцы (свойства). Можно выбрать одно или н
        есколько свойств.
        4. После выбора свойств нажмите кнопку "Добавить".
        5. Чтобы отменить выбор, нажмите кнопку "Отмена".
        6. Чтобы добавить дополнительные критерии, снова нажмите кнопку добавле
        ния критериев.
        
        Изменение критерия
        --------------------
        -- Чтобы изменить оператор, щелкните синее значение оператора, а затем 
        выберите в
           раскрывающемся списке другой оператор.
        -- Чтобы ввести или изменить значение, введите значение в поле значения
        . Если введено недопустимое значение, появляется круглый значок X. Чтоб
        ы удалить его, измените значение.
        -- Чтобы создать инструкцию OR, добавьте критерий с тем же свойством.
        
        Удаление критериев
        -------------------------
        -- Чтобы удалить выбранные критерии, щелкните красный значок X рядом с 
        каждым из критериев.
        -- Чтобы удалить все критерии, нажмите кнопку "Очистить все".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-process | out-gridview
    
    
    Описание
    -----------
    Эта команда получает выполняемые на локальном компьютере процессы и отправл
    яет их в окно таблицы.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$p = get-process
    
    C:\PS> $p | out-gridview
    
    
    Описание
    -----------
    Эта команда также получает выполняемые на локальном компьютере процессы и о
    тправляет их в окно таблицы.
    
    Первая команда использует команду Get-Process для получения процессов компь
    ютера и сохраняет объекты процессов в переменной $p. 
    
    Вторая команда передает переменную $p в командлет Out-GridView с помощью оп
    ератора конвейера (|).
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-process | select-object -property name, workingset, peakworkingse
    t | sort-object -property workingset -desc | out-gridview
    
    
    Описание
    -----------
    Эта команда выводит в окно таблицы форматированную таблицу.
    
    Она с помощью командлета Get-Process получает выполняющиеся на компьютере п
    роцессы. 
    
    Затем с помощью оператора конвейера (|) она передает командлету Select-Obje
    ct объекты процессов. Команда использует параметр Property командлета Selec
    t-Object, чтобы выбрать для отображения в таблице свойства Name, WorkingSet
     и PeakWorkingSet. 
    
    С помощью другого оператора конвейера отфильтрованные объекты передаются ко
    мандлету Sort-Object, который сортирует их по убыванию значения свойства Wo
    rkingSet.
    
    Последняя часть команды с помощью оператора конвейера (|) передает отформат
    ированную таблицу командлету Out-GridView.
    
    Теперь для поиска, сортировки и фильтрации данных можно использовать функци
    и таблицы.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>($a = get-childitem -path $pshome -recurse) | out-gridview
    
    
    Описание
    -----------
    Эта команда сохраняет результаты в переменной и передает ее командлету Out-
    GridView. 
    
    Команда использует командлет Get-ChildItem для получения файлов из каталога
     установки Windows PowerShell и его подкаталогов. Путь к каталогу установки
     сохраняется в автоматической переменной $pshome. 
    
    Команда использует оператор присваивания (=), чтобы сохранить результаты в 
    переменной $a, и оператор конвейера (|), чтобы передать этот результат кома
    ндлету Out-GridView.
    Скобки определяют порядок выполнения операций в команде. В результате вывод
     команды Get-ChildItem сохраняется в переменной $a до передачи командлету O
    ut-GridView.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-process -computername Server01| ogv -title "Processes - Server01"
    
    
    Описание
    -----------
    Эта команда отображает в окне таблицы выполняемые на компьютере Server01 пр
    оцессы.  
    
    Команда использует "ogv", встроенный псевдоним командлета Out-GridView, кот
    орый задает заголовок окна с помощью параметра Title.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>invoke-command -ComputerName S1, S2, S3 -scriptblock {get-culture} | 
    out-gridview
    
    
    Описание
    -----------
    Этот пример показывает правильный формат отправки данных, собранных с удале
    нных компьютеров, командлету Out-GridView.
    
    Команда использует командлет Invoke-Command для выполнения команды Get-Cult
    ure на трех удаленных компьютерах. С помощью оператора конвейера (|) она пе
    редает возвращенные данные командлету Out-GridView.
    
    Обратите внимание, что блок скрипта, содержащий выполняемые удаленно команд
    ы, не включает команду Out-GridView. В противном случае команда выдавала бы
     ошибку при попытке открыть окна таблицы на всех удаленных компьютерах.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113364



Out-Host

ИМЯ
    Out-Host
    
ОПИСАНИЕ
    Отправляет вывод в командную строку.
    
СИНТАКСИС
    Out-Host [-InputObject <psobject>] [-Paging] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Out-Host отправляет вывод основному приложению Windows PowerShell
     для отображения. Основное приложение отображает вывод в командной строке. 
    Так как командлет Out-Host используется по умолчанию, его можно не указыват
    ь, если только не нужно с помощью его параметров изменить способ отображени
    я данных.
    
ПАРАМЕТРЫ
    -InputObject <psobject>
        Задает объекты, которые будут выведены на консоль. Введите переменную, 
        содержащую объекты, либо команду или выражение для получения объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Paging [<SwitchParameter>]
        Отображает по одной странице вывода и ждет ввода пользователя для отобр
        ажения следующих страниц, как и традиционная команда "more". По умолчан
        ию все выходные данные отображаются на одной странице. Размер страницы 
        определяется характеристиками основного приложения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету Out-Host по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет Out-Host не формирует никаких выходных данных. Однако основна
        я программа может отображать полученные с помощью командлета Out-Host о
        бъекты.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Out-Host также можно вызывать с помощью встроенного псевдоним
        а "oh". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлеты, содержащие команду Out (командлеты Out) не форматируют объе
        кты, а только обрабатывают их и отправляют в указанное назначение для о
        тображения. Если передать неформатированный объект в командлет Out, он 
        перед обработкой отправит его в форматирующий командлет.
        
        Командлеты Out не содержат параметров для указания имен или путей. Для 
        передачи данных командлету Out используйте оператор конвейера (|), чтоб
        ы передать выходные данные команды Windows PowerShell командлету. Также
         можно хранить данные в переменной и использовать параметр InputObject 
        для передачи данных в командлет. Дополнительные сведения см. в примерах
        .
        
        Командлет Out-Host отправляет данные, но не создает никаких объектов вы
        вода. Если передать по конвейеру вывод командлета Out-Host командлету G
        et-Member, командлет Get-Member сообщит, что не указано ни одного объек
        та.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-process | out-host -paging
    
    
    Описание
    -----------
    Эта команда отображает сведения о выполняемых в системе процессах по одной 
    странице. Для получения объектов, представляющих процессы в системе, исполь
    зуется команда Get-Process. Оператор конвейера (|) отправляет результаты ко
    мандлету Out-Host, который выводит их на консоль. Параметр Paging указывает
    , что данные нужно выводить по одной странице.
    
    Такой же формат используется при выполнении встроенной в Windows PowerShell
     функции Help. Эта функция получает данные, возвращенные командлетом Get-He
    lp, после чего с помощью параметра Paging командлета Out-Host выводит их по
     одной странице, используя следующий формат команды: get-help $args[0] | ou
    t-host -paging).
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$a = get-history
    
    C:\PS>out-host -InputObject $a
    
    
    Описание
    -----------
    Эти команды выводят журнал сеанса в командной строке. Первая команда получа
    ет с помощью командлета Get-History журнал сеанса и сохраняет его в перемен
    ной $a. Вторая команда отображает содержимое переменной $a с помощью команд
    лета Out-Host, указывая на нее Out-Host с помощью параметра InputObject.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113365
    Out-Printer 
    Out-Null 
    Out-File 
    Out-String 
    Out-Default 
    Write-Host 



Out-Null

ИМЯ
    Out-Null
    
ОПИСАНИЕ
    Удаляет вывод вместо того, чтобы отправить его на консоль.
    
СИНТАКСИС
    Out-Null [-InputObject <psobject>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Out-Null отправляет вывод устройству NULL, по сути удаляя данные.
    
ПАРАМЕТРЫ
    -InputObject <psobject>
        Указывает удаленный объект. Введите переменную, содержащую объекты, либ
        о команду или выражение для получения объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету Out-Null по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет Out-Null не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлеты, содержащие команду Out (командлеты Out) не содержат парамет
        ров для указания имен или путей. Для передачи данных командлету Out исп
        ользуйте оператор конвейера (|), чтобы передать выходные данные команды
         Windows PowerShell командлету. Также можно хранить данные в переменной
         и использовать параметр InputObject для передачи данных в командлет. Д
        ополнительные сведения см. в примерах.
        
        Командлет Out-Null не возвращает никаких объектов вывода. Если передать
         по конвейеру вывод командлета Out-Null командлету Get-Member, командле
        т Get-Member сообщит, что не указано ни одного объекта.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-childitem | out-null
    
    
    Описание
    -----------
    Эта команда возвращает элементы, хранящиеся в локальном каталоге, но потом 
    удаляет их, вместо того чтобы передать по конвейеру или вывести в командной
     строке. Это позволяет избавиться от ненужного вывода.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113366
    Out-Printer 
    Out-Host 
    Out-File 
    Out-String 
    Out-Default 



Out-Printer

ИМЯ
    Out-Printer
    
ОПИСАНИЕ
    Отправляет вывод на принтер.
    
СИНТАКСИС
    Out-Printer [[-Name] <string>] [-InputObject <psobject>] [<CommonParameters
    >]
    
    
ОПИСАНИЕ
    Командлет Out-Printer отправляет вывод на принтер по умолчанию или на альте
    рнативный принтер, если он указан.
    
ПАРАМЕТРЫ
    -InputObject <psobject>
        Указывает объекты, которые будут выведены на принтер. Введите переменну
        ю, содержащую объекты, либо команду или выражение для получения объекто
        в.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Указывает альтернативный принтер. Имя параметра ("Name") указывать необ
        язательно.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету Out-Printer по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет Out-Printer не возвращает никаких объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Out-Printer также можно вызывать с помощью встроенного псевдо
        нима "lp". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлеты, содержащие команду Out (командлеты Out) не форматируют объе
        кты, а только обрабатывают их и отправляют в указанное назначение для о
        тображения. Если передать неформатированный объект в командлет Out, он 
        перед обработкой отправит его в форматирующий командлет.
        
        Командлеты Out не содержат параметров для указания имен или путей. Для 
        передачи данных командлету Out используйте оператор конвейера (|), чтоб
        ы передать выходные данные команды Windows PowerShell командлету. Также
         можно хранить данные в переменной и использовать параметр InputObject 
        для передачи данных в командлет. Дополнительные сведения см. в примерах
        .
        
        Командлет Out-Printer отправляет данные, но не создает никаких объектов
         вывода. Если передать по конвейеру вывод командлета Out-Printer команд
        лету Get-Member, командлет Get-Member сообщит, что не указано ни одного
         объекта.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-content $pshome\about_signing.help.txt | Out-Printer
    
    
    Описание
    -----------
    Эта команда отправляет содержимое файла справки about_Signing на принтер по
     умолчанию. Этот пример показывает, как распечатать файл, даже если командл
    ет Out-Printer не имеет параметра Path.
    
    Для получения содержимого файла справки в этой команде используется командл
    ет Get-Content. Путь к файлу включает встроенную переменную $pshome, в кото
    рой хранится установочный каталог Windows PowerShell. Оператор конвейера (|
    ) передает результаты командлету Out-Printer, который отправляет их на прин
    тер по умолчанию.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>"Hello, World" | out-printer -name "\\Server01\Prt-6B Color"
    
    
    Описание
    -----------
    Эта команда печатает фразу "Hello, World" на принтере "Prt-6B Color", устан
    овленном в системе Server01. Параметр Name в этой команде используется для 
    указания альтернативного принтера. Имя этого параметра указывать необязател
    ьно.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$h = get-help -full get-wmiobject
    
    C:\PS> out-printer -inputobject $h
    
    
    Описание
    -----------
    Эти команды печатают полную версию справки по командлету Get-WmiObject. Пер
    вая команда получает с помощью командлета Get-Help полную версию справки по
     командлету Get-WmiObject и сохраняет ее в переменной $h. Вторая команда от
    правляет полученные сведения принтеру по умолчанию. Для передачи значения п
    еременной $h командлету Out-Printer используется параметр InputObject.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113367
    Out-Host 
    Out-Null 
    Out-String 
    Out-File 
    Out-Default 



Out-String

ИМЯ
    Out-String
    
ОПИСАНИЕ
    Отправляет объекты основному приложению в виде последовательности строк.
    
СИНТАКСИС
    Out-String [-InputObject <psobject>] [-Stream] [-Width <int>] [<CommonParam
    eters>]
    
    
ОПИСАНИЕ
    Командлет Out-String преобразует объекты, которыми управляет Windows PowerS
    hell, в массив строк. По умолчанию командлет Out-String накапливает строки 
    и возвращает их как одну строку, однако с помощью параметра stream можно за
    дать вывод Out-String по одной строке за раз. Этот командлет позволяет упра
    влять строковым выводом и проводить в нем поиск, как и при работе с традици
    онными оболочками, если использование объектов менее удобно.
    
ПАРАМЕТРЫ
    -InputObject <psobject>
        Указывает объекты, которые будут записаны в строку. Введите переменную,
         содержащую объекты, либо команду или выражение для получения объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Stream [<SwitchParameter>]
        Передает строки для каждого объекта отдельно. По умолчанию строки для к
        аждого объекта накапливаются и отправляются в виде одной строки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Width <int>
        Указывает число знаков в каждой выходной строке. Все остальные знаки ус
        екаются, а не переносятся на следующую строку. Если данный параметр опу
        щен, ширина определяется характеристиками основного приложения. Значени
        е по умолчанию для основного приложения PowerShell.exe равно 80 (знаков
        ).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Объекты можно передать командлету Out-String по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String
        Командлет Out-String возвращает строку, которую создает из объекта ввод
        а.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлеты, содержащие команду Out (командлеты Out) не форматируют объе
        кты, а только обрабатывают их и отправляют в указанное назначение для о
        тображения. Если передать неформатированный объект в командлет Out, он 
        перед обработкой отправит его в форматирующий командлет.
        
        Командлеты Out не содержат параметров для указания имен или путей. Для 
        передачи данных командлету Out используйте оператор конвейера (|), чтоб
        ы передать выходные данные команды Windows PowerShell командлету. Также
         можно хранить данные в переменной и использовать параметр InputObject 
        для передачи данных в командлет. Дополнительные сведения см. в примерах
        .
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-content C:\test1\testfile2.txt | out-string
    
    
    Описание
    -----------
    Эта команда отправляет содержимое файла Testfile2.txt на консоль в виде одн
    ой строки. Для получения содержимого файла в этой команде используется кома
    ндлет Get-Content. Оператор конвейера (|) передает содержимое файла командл
    ету Out-String, который отправляет его на консоль в виде строки.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$c = get-culture | select-object *
    
    C:\PS> out-string -inputobject $c -width 100
    
    
    Описание
    -----------
    Эти команды получают региональные параметры, заданные для текущего пользова
    теля, и преобразуют полученные данные в строки. Первая команда получает рег
    иональные параметры с помощью командлета Get-Culture. Оператор конвейера (|
    ) отправляет результат командлету Select-Object, который выбирает все свойс
    тва (*) объекта региональных параметров, возвращенного командлетом Get-Cult
    ure. Затем результаты сохраняются в переменной $c.
    
    Вторая команда с помощью командлета Out-String преобразует объект CultureIn
    fo в последовательность строк (по одной для каждого свойства). Для передачи
     значения переменной $c командлету Out-String используется параметр InputOb
    ject. Параметр width имеет значение 100 знаков на строку, что предотвращает
     обрезку строк.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-alias | out-string -stream | select-string "Get-Command"
    
    
    Описание
    -----------
    Эта команда отображает псевдонимы, включающие фразу "Get-Command". Командле
    т Get-Alias используется ею для получения набора объектов AliasInfo (каждый
     представляет один псевдоним, определенный в оболочке). Этот пример демонст
    рирует различие между работой с объектами и работой со строками.
    
    Оператор конвейера (|) отправляет вывод командлета Get-Alias командлету Out
    -String, который преобразует объекты в набор строк. Параметр Stream указыва
    ет, что вывод должен быть отправлен как отдельные строки, а не как одна объ
    единенная строка. Еде один оператор конвейера отправляет строки командлету 
    Select-String, который выбирает строки, содержащие слова "Get-Command". 
    
    Если опустить параметр Stream, эта команда отобразит все псевдонимы, потому
     что командлет Select-String найдет слова "Get-Command" в единственной стро
    ке, возвращенной командлетом Out-String, а механизм форматирования отобрази
    т эту строку в виде таблицы.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113368
    Out-File 
    Out-Null 
    Out-Host 
    Out-Printer 
    Out-Default 



Pop-Location

ИМЯ
    Pop-Location
    
ОПИСАНИЕ
    Меняет текущее местоположение на местоположение, указанное в последней запи
    си стека. Запись с местоположением может быть извлечена как из стека, задан
    ного по умолчанию, так и из стека, созданного с помощью командлета Push-Loc
    ation.
    
СИНТАКСИС
    Pop-Location [-PassThru] [-StackName <string>] [-UseTransaction] [<CommonPa
    rameters>]
    
    
ОПИСАНИЕ
    Командлет Pop-Location изменяет текущее местоположение на местоположение, у
    казанное в последней записи стека, сделанной с помощью командлета Push-Loca
    tion. Запись с местоположением может быть извлечена как из стека, заданного
     по умолчанию, так и из стека, созданного с помощью команды Push-Location.
    
ПАРАМЕТРЫ
    -PassThru [<SwitchParameter>]
        Передает по конвейеру объект, представляющий местоположение. По умолчан
        ию этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -StackName <string>
        Задает альтернативный стек. Командлет Pop-Location извлекает последнее 
        добавленное местоположение из этого стека. Этот стек затем становится т
        екущим.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Данные невозможно передать командлету Pop-Location по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PathInfo
        Если задан параметр PassThru, командлет Pop-Location создает объект Sys
        tem.Management.Automation.PathInfo, представляющий местоположение. В пр
        отивном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Pop-Location также можно вызывать с помощью встроенного псевд
        онима "popd". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлет Pop-Location предназначен для работы с данными, предоставляем
        ыми любым поставщиком. Чтобы получить список поставщиков, доступных в т
        екущем сеансе, введите команду "Get-PSProvider". Дополнительные сведени
        я см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>pop-location
    
    
    Описание
    -----------
    Эта команда меняет текущее местоположение на местоположение, указанное в по
    следней записи текущего стека.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>pop-location -stackname Stack2
    
    
    Описание
    -----------
    Эта команда меняет текущее местоположение на местоположение, указанное в по
    следней записи стека Stack2.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>pushd HKLM:\Software\Microsoft\PowerShell
    
    pushd Cert:\LocalMachine\TrustedPublisher
    
    popd
    
    popd
    
    PS C:\> push-location HKLM:\Software\Microsoft\PowerShell
    
    PS HKLM:\Software\Microsoft\PowerShell> push-location Cert:\LocalMachine\Tr
    ustedPublisher
    
    PS cert:\LocalMachine\TrustedPublisher> popd
    
    PS HKLM:\Software\Microsoft\PowerShell> popd
    
    PS C:\ps-test>
    
    
    Описание
    -----------
    В этих командах командлеты Push-Location и Pop-Location используются для пе
    ремещения между местоположениями, поддерживаемыми разными поставщиками Wind
    ows PowerShell. В указанных командах командлеты Push-Location и Pop-Locatio
    n вызываются с помощью своих псевдонимов "pushd" и "popd", соответственно.
    
    Первая команда помещает текущее местоположение файловой системы в стек и пе
    реходит на диск HKLM, поддерживаемый поставщиком реестра Windows PowerShell
    . Вторая команда помещает текущее местоположение реестра в стек и переходит
     к местоположению, поддерживаемому поставщиком сертификатов Windows PowerSh
    ell. 
    
    Две последние команды извлекают целевые местоположения из стека. Первая ком
    анда "popd" возвращает к диску Registry, а вторая — к диску файловой систем
    ы.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113369
    about_Providers 
    Push-Location 
    Set-Location 
    Get-Location 



prompt

prompt 



Push-Location

ИМЯ
    Push-Location
    
ОПИСАНИЕ
    Добавляет текущее местоположение в начало списка местоположений ("стек").
    
СИНТАКСИС
    Push-Location [[-LiteralPath] <string>] [-PassThru] [-StackName <string>] [
    -UseTransaction] [<CommonParameters>]
    
    Push-Location [[-Path] <string>] [-PassThru] [-StackName <string>] [-UseTra
    nsaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Push-Location добавляет текущее местоположение в начало списка ме
    стоположений, называемого "стеком". Текущее местоположение можно добавить в
     стек по умолчанию или в стек, созданный пользователем. При указании пути к
    омандлет Push-Location записывает текущее местоположение в стек, а затем пе
    реходит из текущего местоположения в местоположение, указанное в пути. В ст
    ек можно поместить только текущее местоположение.
    
ПАРАМЕТРЫ
    -LiteralPath <string>
        Задает путь к новому местоположению. В отличие от параметра Path, значе
        ние параметра LiteralPath используется в том виде, в котором оно введен
        о. Никакие символы не интерпретируются как подстановочные знаки. Если п
        уть включает escape-символы, его нужно заключить в одиночные кавычки. О
        диночные кавычки указывают оболочке Windows PowerShell, что никакие сим
        волы не следует интерпретировать как escape-символы.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Передает по конвейеру объект, представляющий местоположение. По умолчан
        ию этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Заменяет текущее местоположение другим местоположением, определенным да
        нным путем, после добавления текущего местоположения в стек. Введите пу
        ть к любому местоположению, поставщик которого поддерживает данный кома
        ндлет. Подстановочные знаки разрешены. Имя параметра ("Path") указывать
         необязательно.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -StackName <string>
        Задает имя стека. Текущее местоположение записывается в этот стек, и эт
        от стек становится текущим. Если стек не существует, он создается.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь (но не литеральный путь), можно передать команд
        лету Push-Location по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PathInfo
        Если задан параметр PassThru, командлет Push-Location создает объект Sy
        stem.Management.Automation.PathInfo, представляющий местоположение. В п
        ротивном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Push-Location также можно вызывать с помощью встроенного псев
        донима "pushd". Дополнительные сведения см. в разделе About_Aliases.
        
        Стек — это структура данных с методом доступа к элементам LIFO (Last-In
         First-Out, "последним пришел — первым вышел"). Стек можно представить 
        в виде вертикального списка, в котором доступным является только самый 
        верхний элемент. Добавление элемента ("push") возможно только в вершину
         стека, извлечение элемента ("pop") — также только из вершины стека. Чт
        обы получить доступ к элементам, находящимся ниже вершины стека, сначал
        а необходимо извлечь все элементы, расположенные над ними.
        
        Командлет Push-Location предназначен для работы с данными, предоставляе
        мыми любым поставщиком. Чтобы получить список поставщиков, доступных в 
        текущем сеансе, введите команду "Get-PSProvider". Дополнительные сведен
        ия см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>push-location C:\Windows
    
    
    Описание
    -----------
    Эта команда помещает текущее местоположение в стек по умолчанию, а затем из
    меняет текущее местоположение на C:\Windows.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>push-location HKLM:\Software\Policies -stackname RegFunction
    
    
    Описание
    -----------
    Эта команда помещает текущее местоположение в стек RegFunction, а затем изм
    еняет текущее местоположение на HKLM:\Software\Policies. В данной команде п
    оказано, что командлет Push-Location можно использовать вместе с поставщико
    м реестра Windows PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>push-location
    
    
    Описание
    -----------
    Эта команда помещает текущее местоположение в стек по умолчанию.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>push-location ~ -stackname Stack2
    
    
    Описание
    -----------
    Эта команда помещает текущее местоположение в новый стек Stack2, а затем из
    меняет текущее местоположение на домашний каталог (%USERPROFILE%), обознача
    емый в команде знаком тильды (~) или переменной $home. Указанный стек Stack
    2 становится текущим.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113370
    about_Providers 
    Pop-Location 
    Set-Location 
    Get-Location 



Read-Host

ИМЯ
    Read-Host
    
ОПИСАНИЕ
    Считывает из консоли строку ввода.
    
СИНТАКСИС
    Read-Host [[-Prompt] <Object>] [-AsSecureString] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Read-Host считывает из консоли строку ввода. Эту команду можно ис
    пользовать для запроса данных у пользователя. Поскольку вводимые данные мож
    но сохранить в виде защищенной строки, с помощью этой команды можно запраши
    вать у пользователей конфиденциальные данные, например пароли, а также общи
    е данные.
    
ПАРАМЕТРЫ
    -AsSecureString [<SwitchParameter>]
        Отображает звездочки (*) вместо вводимых пользователем знаков. 
        
        При использовании этого параметра выводом командлета Read-Host является
         объект SecureString (System.Security.SecureString).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Prompt <Object>
        Задает текст сообщения для пользователя. Введите строку. Строку, содерж
        ащую пробелы, необходимо заключать в кавычки. Например, "Введите целое 
        число:  ".
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String или System.Security.SecureString
        В случае использования параметра AsSecureString командлет Read-Host воз
        вращает объект SecureString. В противном случае будет возвращена обычна
        я строка.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$age = read-host "Please enter your age:"
    
    
    Описание
    -----------
    Эта команда выводит запрос "Please enter your age:" (Введите свой возраст:)
    . После ввода значения и нажатия клавиши ВВОД введенное значение сохраняетс
    я в переменной $age.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$pwd_secure_string = read-host "Enter a Password:" -assecurestring
    
    
    Описание
    -----------
    Эта команда выводит запрос "Enter a Password:" (Введите пароль:). При вводе
     значения вместо вводимых символов появляются звездочки (*). При нажатии кл
    авиши ВВОД введенное значение будет сохранено в переменной $pwd_secure_stri
    ng как объект SecureString.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113371
    Get-Host 
    Out-Host 
    Write-Host 
    ConvertFrom-SecureString 



Receive-Job

ИМЯ
    Receive-Job
    
ОПИСАНИЕ
    Получает результаты фоновых заданий Windows PowerShell в текущем сеансе.
    
СИНТАКСИС
    Receive-Job [-Job] <Job[]> [[-ComputerName] <string[]>] [-Keep] [-NoRecurse
    ] [<CommonParameters>]
    
    Receive-Job [[-InstanceId] <Guid[]>] [-Keep] [-NoRecurse] [<CommonParameter
    s>]
    
    Receive-Job [-Job] <Job[]> [[-Location] <string[]>] [-Keep] [-NoRecurse] [
    CommonParameters>]
    
    Receive-Job [[-Name] <string[]>] [-Keep] [-NoRecurse] [<CommonParameters>]
    
    Receive-Job [-Job] <Job[]> [[-Session] <PSSession[]>] [-Keep] [-NoRecurse] 
    [<CommonParameters>]
    
    Receive-Job [-Id] <Int32[]> [-Keep] [-NoRecurse] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Receive-Job получает результаты фоновых заданий Windows Powershel
    l. Используйте командлет Receive-Job для получения результатов заданий, зап
    ущенных с использованием командлета Start-Job или параметра AsJob любого ко
    мандлета. Результаты можно получить для всех задания или для выбранных зада
    ний по имени, идентификатору, идентификатору экземпляра, имени компьютера, 
    местоположению, сеансу, либо передав объект задания в командлет.
    
    При запуске фонового задания Windows PowerShell задание запускается, но его
     результаты не отображаются мгновенно. Вместо этого команда возвращает объе
    кт, представляющий фоновое задание. Объект задания содержит полезные сведен
    ия о задании, но не содержит результатов выполнения. Этот метод позволяет п
    родолжать работать в рамках сеанса, пока задание выполняется. Дополнительны
    е сведения о фоновых заданиях Windows PowerShell см. в разделе about_Jobs.
    
    Чтобы получить результаты выполнения команды, используйте командлет Receive
    -Job. Командлет Receive-Job получает результаты, которые были созданы к мом
    енту подачи команды Receive-Job. Если результаты пока не получены в полном 
    объеме, можно выполнить дополнительные команды Receive-Job, чтобы получить 
    оставшиеся результаты. 
    
    По умолчанию результаты работы заданий удаляются из системы сразу после их 
    получения, но можно использовать параметр Keep для сохранения результатов и
     возможности повторного их получения. Чтобы удалить результаты задания, пол
    учите их еще раз (без параметра Keep), закройте сеанс или воспользуйтесь ко
    мандлетом Remove-Job, чтобы удалить задание из сеанса.
    
ПАРАМЕТРЫ
    -ComputerName <string[]>
        Получает результаты заданий, которые выполнялись на заданных компьютера
        х. Введите имена компьютеров. По умолчанию используется значение "Все з
        адания в пределах текущего сеанса".
        
        Этот параметр позволяет выбирать из результатов заданий, сохраненных на
         локальном компьютере. В нем не содержатся данные удаленных компьютеров
        . Чтобы получить результаты выполнения задания, сохраненные на удаленны
        х компьютерах, используйте командлет Invoke-Command для удаленного выпо
        лнения команды Receive-Job.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Id <Int32[]>
        Получает результаты заданий с указанными идентификаторами. По умолчанию
         используется значение "Все задания в пределах текущего сеанса".
        
        ID — это целое значение, которое однозначно определяет задание в предел
        ах текущего сеанса. Это значение проще запомнить и ввести, чем идентифи
        катор экземпляра, но оно уникально только в рамках текущего сеанса. Мож
        но ввести один или несколько идентификаторов (разделенных запятыми). Чт
        обы найти значение идентификатора задания, введите "Get-Job" без параме
        тров.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -InstanceId <Guid[]>
        Получает результаты заданий с указанными идентификаторами экземпляров. 
        По умолчанию используется значение "Все задания в пределах текущего сеа
        нса".
        
        Идентификатор экземпляра — это GUID, который однозначно определяет зада
        ние на компьютере. Чтобы определить идентификатор экземпляра задания, и
        спользуйте командлет Get-Job.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Job <Job[]>
        Задает задание, для которого получаются результаты. Этот параметр необх
        одим в команде Receive-Job. Введите переменную, содержащую задание, либ
        о введите команду, получающую задание. Объект задания можно также перед
        ать командлету Receive-Job по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Keep [<SwitchParameter>]
        Сохраняет результаты задания в системе даже после их получения. По умол
        чанию результаты задания удаляются после того, как они получены. 
        
        Чтобы удалить результаты, воспользуйтесь командлетом Receive-Job, чтобы
         снова получить их без параметра Keep, а затем закройте сеанс, или восп
        ользуйтесь командлетом Remove-Job, чтобы удалить задание из сеанса.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Location <string[]>
        Получает только результаты заданий с указанным местоположением. По умол
        чанию используется значение "Все задания в пределах текущего сеанса".
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Получает результаты заданий с указанным понятным именем. По умолчанию и
        спользуется значение "Все задания в пределах текущего сеанса".
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -NoRecurse [<SwitchParameter>]
        Получает только результаты указанного задания. По умолчанию функция Rec
        eive-Job также получает результаты всех дочерних заданий указанного зад
        ания.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Session <PSSession[]>
        Получает результаты заданий, которые выполнялись в рамках заданного сеа
        нса Windows PowerShell (PSSession). Введите переменную, содержащую объе
        кт PSSession, или команду, получающую объект PSSession, например Get-PS
        Session. По умолчанию используется значение "Все задания в пределах тек
        ущего сеанса".
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.Job
        Кроме того, можно передать объекты заданий командлету Receive-Job по ко
        нвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    PSObject
        Командлет Receive-Job возвращает результаты выполнения команд в задании
        .
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$job = start-job -scriptblock {get-process}
    
    C:\PS> receive-job -job $job
    
    
    Описание
    -----------
    Эти команды используют параметр Job для получения результатов конкретного з
    адания. Первая команда запускает задание, выполняющее команду "Get-Process"
    , с помощью командлета Start-Job. Команда использует оператор присваивания 
    (=) для сохранения результирующего объекта задания в переменной $job.
    
    Вторая команда использует командлет Receive-Job для получения результатов з
    адания. Для указания задания используется параметр Job.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$job = start-job -scriptblock {get-process}
    
    C:\PS> $job | receive-job
    
    
    Описание
    -----------
    Этот пример очень напоминает пример 2, отличие заключается в использовании 
    оператора конвейера (|) для отправки объекта задания командлету Receive-Job
    . В результате операции команде не обязательно использовать параметра Job д
    ля указания задания.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$j = invoke-command -computername Server01, Server02, Server03 -scrip
    tblock {get-service} -AsJob
    
    C:\PS> $j.childjobs
    
    Id   Name     State      HasMoreData   Location       Command
    --   ----     -----      -----------   --------       -------
    2    Job2     Completed  True          Server01       get-service
    3    Job3     Completed  True          Server02       get-service
    4    Job4     Completed  True          Server03       get-service
    
    C:\PS> receive-job -name Job3  -keep
    
    Status  Name        DisplayName                        PSComputerName
    ------  ----------- -----------                        --------------
    Running AeLookupSvc Application Experience             Server02
    Stopped ALG         Application Layer Gateway Service  Server02
    Running Appinfo     Application Information            Server02
    Running AppMgmt     Application Management             Server02
    
    
    Описание
    -----------
    Эти команды используют параметр Name командлета команды Receive-Job для пол
    учения результатов одного из нескольких фоновых заданий, выполняющихся на у
    даленных компьютерах. 
    
    Первая команда с помощью командлета Invoke-Command запускает на трех удален
    ных компьютерах фоновое задание, выполняющее команду Get-Service. Параметр 
    AsJob используется для выполнения команды в качестве фонового задания. Полу
    ченный объект задания сохраняется в переменной $j.
    
    При использовании параметра AsJob командлета Invoke-Command для запуска зад
    ания объект задания создается на локальном компьютере, даже если само задан
    ие выполняется на удаленных компьютерах. Поэтому для управления заданием мо
    жно использовать локальные команды.
    
    Также при использовании AsJob Windows PowerShell возвращает один объект зад
    ания, содержащий дочернее задание для каждого из запущенных заданий. В этом
     случае объект задания содержит три дочерних задания, по одному для каждого
     из заданий на каждом из удаленных компьютеров.
    
    Вторая команда использует обращение через точку для отображения значения св
    ойства ChildJobs объекта задания, сохраненного в переменной $j. Выходные да
    нные показывают, что команда создала три дочерних задания, по одному задани
    ю на каждом из удаленных компьютеров.
     
    Третья команда использует командлет Receive-Job для получения результатов д
    очернего задания Job3, которое выполняется на компьютере Server02. Параметр
     Name используется в ней для указания имени дочернего задания, а параметр K
    eep — для сохранения результатов задания даже после их получения.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$s = new-pssession -computername Server01, Server02, Server03
    
    C:\PS> $j = invoke-command -session $s -scriptblock {start-job -scriptblock
     {get-eventlog -logname system}}
    
    C:\PS> $j
    
    Id   Name     State      HasMoreData   Location   Command
    --   ----     -----      -----------   --------   -------
    1    Job1     Completed  True          Localhost  get-eventlog system
    2    Job2     Completed  True          Localhost  get-eventlog system
    3    Job3     Completed  True          Localhost  get-eventlog system
    
    C:\PS> $results = invoke-command -session $s -scriptblock {param($j) receiv
    e-job -job $j} -ArgumentList $j
    
    
    Описание
    -----------
    В этом примере показано, как получать результаты удаленных заданий, выполня
    емых на трех удаленных компьютерах.
    
    Первая команда использует командлет New-PSSession для создания трех сеансов
     PSSession, по одному на каждом из удаленных серверов, указанных в команде.
     Она сохраняет сеансы PSSession в переменной $s.
    
    Вторая команда использует командлет Invoke-Command для выполнения команды S
    tart-Job в каждом из сеансов PSSession, заданных в переменной $s. Задание в
    ыполняет команду Get-Eventlog, которая получает события из журнала системны
    х событий. Результаты сохраняются в переменной $j.
    
    Поскольку команда использует командлет Invoke-Command для выполнения команд
    ы Start-Job, на трех компьютерах запускаются три независимых задания. Таким
     образом, команда возвращает три объекта задания, представляющие три задани
    я, которые выполняются на трех разных компьютерах.
    
    Третья команда выводит три объекта задания, сохраненные в переменной $j.  
    
    Четвертая команда использует командлет Invoke-Command для выполнения команд
    ы Receive-Job в каждом из сеансов PSSession, заданных в переменной $s, и со
    хранения результатов в переменной $results.
    
    Поскольку переменная $j является локальной, блок скрипта использует ключево
    е слово "param" для объявления переменных в команде и параметр ArgumentList
     для задания значения переменной $j.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113372
    about_Jobs 
    about_Job_Details 
    about_Remote_Jobs 
    Start-Job 
    Get-Job 
    Wait-Job 
    Stop-Job 
    Remove-Job 
    Invoke-Command 



Register-EngineEvent

ИМЯ
    Register-EngineEvent
    
ОПИСАНИЕ
    Создает подписку на события, создаваемые обработчиком Windows PowerShell и 
    командлетом New-Event.
    
СИНТАКСИС
    Register-EngineEvent [-SourceIdentifier] <string> [[-Action] <scriptblock>]
     [-Forward] [-MessageData <psobject>] [-SupportEvent] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Register-EngineEvent создает подписку на события, создаваемые обр
    аботчиком Windows PowerShell и командлетом New-Event. Для задания события и
    спользуйте параметр SourceIdentifier.
    
    Этот командлет позволяет подписаться на "существующие" события обработчика,
     а также на события, создаваемые командлетом New-Event. Эти события автомат
    ически добавляются в очередь событий сеанса без оформления подписки. Однако
     создание подписки позволяет перенаправлять события, задавать действия для 
    реагирования на них, а также отменять подписку. 
    
    При возникновении события, для которого создана подписка, это событие добав
    ляется в очередь событий сеанса. Чтобы получить события из очереди событий,
     используйте командлет Get-Event. 
    
    При создании подписки на событие в сеанс добавляется подписчик на это событ
    ие. Чтобы получить подписчики на события в сеансе, используйте командлет Ge
    t-EventSubscriber. Чтобы отменить подписку, воспользуйтесь командлетом Unre
    gister-Event, удаляющим подписчик на событие из сеанса.
    
ПАРАМЕТРЫ
    -Action <scriptblock>
        Задает команды для обработки событий. Когда происходит событие, вместо 
        передачи события в очередь событий выполняются эти команды. Чтобы созда
        ть блок скрипта, заключите команды в фигурные скобки ( { } ). 
        
        Значение параметра Action может включать автоматические переменные $Eve
        nt, $EventSubscriber, $Sender, $SourceEventArgs и $SourceArgs, предоста
        вляющие информацию о событии в блок скрипта Action. Дополнительные свед
        ения см. в разделе about_Automatic_Variables.
        
        Если задано действие, командлет Register-EngineEvent возвращает объект 
        задания события, представляющего это действие. Командлеты Job позволяют
         управлять заданием события.
        
        Требуется?                    false
        Позиция?                    102
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Forward [<SwitchParameter>]
        Отправляет события по данной подписке сеансу на локальном компьютере. Э
        тот параметр используется при регистрации для получения событий на удал
        енном компьютере или в удаленном сеансе.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MessageData <psobject>
        Задает дополнительные данные, связанные с событием. Значение этого пара
        метра хранится в свойстве MessageData объекта события.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SourceIdentifier <string>
        Задает идентификатор источника события, для которого создается подписка
        . Идентификатор источника должен быть уникальным в пределах текущего се
        анса. Это обязательный параметр.
        
        Значение этого параметра присваивается свойству SourceIdentifier объект
        а подписчика и объектов событий, связанных с данной подпиской.
        
        Требуется?                    true
        Позиция?                    101
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SupportEvent [<SwitchParameter>]
        Скрывает подписку на события. Этот параметр используется, если текущая 
        подписка является частью более сложного механизма регистрации событий и
         не должна обнаруживаться независимым образом.
        
        Чтобы просмотреть или отменить подписку, созданную с использованием пар
        аметра SupportEvent, воспользуйтесь параметром Force командлетов Get-Ev
        entSubscriber и Unregister-Event.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Данные невозможно передать командлету Register-EngineEvent по конвейеру
        .
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PSEventJob
        При использовании параметра Action командлет Register-EngineEvent возвр
        ащает объект System.Management.Automation.PSEventJob. В противном случа
        е командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        События, подписки на события и очередь событий существуют только в рамк
        ах текущего сеанса. Если завершить текущий сеанс, очередь событий будет
         очищена и подписка на события будет отменена.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$s = new-pssession -computername Server01, Server02
    
    C:\PS> invoke-command -session $s { Register-EngineEvent -sourceIdentifier 
    ([System.Management.Automation.PsEngineEvent]::Exiting) -forward }
    
    
    Описание
    -----------
    Эта команда создает подписку на событие обработчика Windows PowerShell на д
    вух удаленных компьютерах. 
    
    Первая команда создает сеанс PSSession на каждом из удаленных компьютеров.
    
    Вторая команда использует командлет Invoke-Command для выполнения команды R
    egister-EngineEvent в рамках удаленного сеанса. 
    
    Для определения события команда Register-EngineEvent использует параметр So
    urceIdentifier. А для перенаправления событий из удаленного сеанса в локаль
    ный сеанс используется параметр Forward.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$j = register-engineEvent -sourceIdentifier PowerShell.ProcessCreated
     -action { $processName | add-content processLog.txt } 
    
    C:\PS> get-event
    
    C:\PS> $results = $j | receive-job
    
    C:\PS> unregister-event PowerShell.ProcessCreated
    
    
    Описание
    -----------
    Эта команда показывает, как использовать командлеты Job для управления объе
    ктом задания события, возвращаемым командлетом Register-EngineEvent при зад
    ании параметра Action.
    
    Управление заданием события осуществляется так же, как и любым другим задан
    ием Windows PowerShell. Дополнительные сведения см. в разделе about_jobs. В
     этом примере для получения результатов задания используется командлет Rece
    ive-Job.
    
    Чтобы удалить задание из сеанса, используйте командлет Remove-Job. Чтобы от
    менить подписку на событие, используйте командлет Unregister-Event. Чтобы у
    далить события из очереди событий, используйте командлет Remove-Event.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135243
    Register-ObjectEvent 
    Register-WmiEvent 
    Unregister-Event 
    Get-Event 
    New-Event 
    Remove-Event 
    Wait-Event 
    Get-Job 
    Receive-Job 
    Remove-Job 
    Wait-Job 



Register-ObjectEvent

ИМЯ
    Register-ObjectEvent
    
ОПИСАНИЕ
    Создает подписку на события, создаваемые объектами Microsoft .NET Framework
    .
    
СИНТАКСИС
    Register-ObjectEvent [-InputObject] <psobject> [-EventName] <string> [[-Sou
    rceIdentifier] <string>] [[-Action] <scriptblock>] [-Forward] [-MessageData
     <psobject>] [-SupportEvent] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Register-ObjectEvent создает подписку на события, создаваемые объ
    ектами .NET Framework на локальном или удаленном компьютере. 
    
    При возникновении события, для которого создана подписка, это событие добав
    ляется в очередь событий сеанса. Чтобы получить события из очереди событий,
     используйте командлет Get-Event. 
    
    С помощью параметров командлета Register-ObjectEvent можно задавать значени
    я свойств событий, которые позволяют идентифицировать события в очереди. Кр
    оме того, можно использовать параметр Action, чтобы определить действия, вы
    полняемые после возникновения события, для которого создана подписка, или п
    араметр Forward для перенаправления удаленных событий в очередь событий в л
    окальном сеансе.
    
    При создании подписки на событие в сеанс добавляется подписчик на это событ
    ие. Чтобы получить подписчики на события в сеансе, используйте командлет Ge
    t-EventSubscriber. Чтобы отменить подписку, воспользуйтесь командлетом Unre
    gister-Event, удаляющим подписчик на событие из сеанса.
    
ПАРАМЕТРЫ
    -Action <scriptblock>
        Задает команды для обработки событий. Когда происходит событие, вместо 
        передачи события в очередь событий выполняются эти команды. Чтобы созда
        ть блок скрипта, заключите команды в фигурные скобки ( { } ). 
        
        Значение параметра Action может включать автоматические переменные $Eve
        nt, $EventSubscriber, $Sender, $SourceEventArgs и $SourceArgs, предоста
        вляющие информацию о событии в блок скрипта Action. Дополнительные свед
        ения см. в разделе about_Automatic_Variables.
        
        Если задано действие, командлет Register-ObjectEvent возвращает объект 
        задания события, представляющего это действие. Командлеты Job позволяют
         управлять заданием события.
        
        Требуется?                    false
        Позиция?                    102
        Значение по умолчанию                Нет.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -EventName <string>
        Задает событие, для которого создается подписка. Введите имя события. Э
        то обязательный параметр.
        
        Значение этого параметра не равно имени, выбранному при создании подпис
        ки на событие. Это имя события, предоставляемое объектом .NET Framework
        . Например, у класса ManagementEventWatcher имеются события "EventArriv
        ed" и "Stopped." Чтобы получить имя события, используйте командлет Get-
        Member.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Forward [<SwitchParameter>]
        Отправляет события по данной подписке удаленному сеансу. Этот параметр 
        используется при регистрации для получения событий на удаленном компьют
        ере или в удаленном сеансе.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объект .NET Framework, который создает события. Укажите переменн
        ую, содержащую объект, либо введите команду или выражение, получающие е
        го. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MessageData <psobject>
        Задает любые дополнительные данные, которые следует связать с этой подп
        иской на события. Значение этого параметра присваивается свойству Messa
        geData для всех событий, связанных с данной подпиской.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SourceIdentifier <string>
        Задает имя, выбранное для подписки. Выбираемое имя должно быть уникальн
        ым в пределах текущего сеанса. По умолчанию используется значение GUID,
         назначенное Windows PowerShell.
        
        Значение этого параметра присваивается свойству SourceIdentifier объект
        а подписчика и объектов событий, связанных с данной подпиской.
        
        Требуется?                    false
        Позиция?                    101
        Значение по умолчанию                GUID
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SupportEvent [<SwitchParameter>]
        Скрывает подписку на события. Этот параметр используется, если текущая 
        подписка является частью более сложного механизма регистрации событий и
         не должна обнаруживаться независимым образом.
        
        Чтобы просмотреть или отменить подписку, созданную с использованием пар
        аметра SupportEvent, воспользуйтесь параметром Force командлетов Get-Ev
        entSubscriber и Unregister-Event.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Объекты невозможно передать командлету Register-ObjectEvent по конвейер
        у.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        События, подписки на события и очередь событий существуют только в рамк
        ах текущего сеанса. Если завершить текущий сеанс, очередь событий будет
         очищена и подписка на события будет отменена.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$query = New-Object System.Management.WqlEventQuery "__InstanceCreati
    onEvent", (New-Object TimeSpan 0,0,1), "TargetInstance isa 'Win32_Process'"
     
    
    C:\PS> $processWatcher = New-Object System.Management.ManagementEventWatche
    r $query 
    
    C:\PS> register-objectEvent -inputObject $processWatcher -eventName "EventA
    rrived"
    
    
    Описание
    -----------
    В этом примере создается подписка на события, создаваемые при запуске новог
    о процесса. 
    
    Для получения событий EventArrived команда использует объект ManagementEven
    tWatcher. Объект запроса указывает, что события являются событиями создания
     экземпляров класса Win32_Process.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$query = New-Object System.Management.WqlEventQuery "__InstanceCreati
    onEvent", (New-Object TimeSpan 0,0,1), "TargetInstance isa 'Win32_Process'"
     
    
    C:\PS> $processWatcher = New-Object System.Management.ManagementEventWatche
    r $query 
    
    C:\PS> $action = { New-Event "PowerShell.ProcessCreated" -Sender $sender -E
    ventArguments $SourceEventArgs.NewEvent.TargetInstance } 
    
    C:\PS> register-objectEvent -inputObject $processWatcher -eventName "EventA
    rrived" -action $action
    
    Id    Name            State      HasMoreData     Location             Comma
    nd
    --    ----            -----      -----------     --------             -----
    --
    2     422cfe5a-65e... Running    True                                 New-E
    vent "PowerShe...
    
    
    Описание
    -----------
    В этом примере показано, как задать действие для реагирования на событие. П
    ри задании действия создаваемые события не добавляются в очередь событий. В
    место этого действие отвечает на событие. 
    
    В этом примере при возникновении события создания экземпляра, свидетельству
    ющего о запуске нового процесса, создается событие ProcessCreated.
    
    Действие использует автоматические переменные $Sender и $SourceEventArgs, з
    аполняемые только для действий событий. 
    
    Команда Register-ObjectEvent возвращает объект задания, представляющий дейс
    твие, запускающее фоновое задание. Для управления фоновыми заданиями можно 
    использовать командлеты Job, например Get-Job и Receive-Job. 
    
    Дополнительные сведения см. в разделе about_Jobs.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$s = new-pssession -computername Server01, Server02
    
    C:\PS> invoke-command -session $s -filepath ProcessCreationEvent.ps1
    
    C:\PS> invoke-command -session $s { get-event }
    
    # ProcessCreationEvent.ps1
    
    function Enable-ProcessCreationEvent 
    { 
       $query = New-Object System.Management.WqlEventQuery "__InstanceCreationE
    vent", ` 
           (New-Object TimeSpan 0,0,1), ` 
           "TargetInstance isa 'Win32_Process'" 
       $processWatcher = New-Object System.Management.ManagementEventWatcher $q
    uery 
    
       $identifier = "WMI.ProcessCreated" 
       Register-ObjectEvent -input $processWatcher -eventName "EventArrived" `
          -sourceIdentifier $identifier -messageData "Test" -forward 
       } 
    } 
    
    EnableProcessCreationEvent
    
    
    Описание
    -----------
    В этом примере показано, как подписаться на события объекта на удаленных ко
    мпьютерах.
    
    Первая команда создает сеансы PSSession на двух удаленных компьютерах и сох
    раняет эти сеансы в переменной $s.
    
    Вторая команда с помощью параметра FilePath командлета Invoke-Command выпол
    няет скрипт ProcessCreationEvent.ps1 в каждом из сеансов PSSessions в перем
    енной $s. 
    
    Скрипт включает команду Register-ObjectEvent, которая создает подписку на с
    обытия создания экземпляров объекта Win32_Process через объект ManagementEv
    entWatcher и событие EventArrived.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$timer  = New-Object Timers.Timer
    
    C:\PS> $timer.Interval = 500
    
    C:\PS> $job = Register-ObjectEvent -inputObject $timer -eventName Elapsed -
    sourceIdentifier Timer.Random -Action {$random = Get-Random -Min 0 -Max 100
    }
    
    C:\PS> $job.gettype().fullname
    System.Management.Automation.PSEventJob
    
    C:\PS> $job | format-list -property *
    
    State         : Running
    Module        : __DynamicModule_6b5cbe82-d634-41d1-ae5e-ad7fe8d57fe0
    StatusMessage :
    HasMoreData   : True
    Location      :
    Command       : $random = Get-Random -Min 0 -Max 100
    JobStateInfo  : Running
    Finished      : System.Threading.ManualResetEvent
    InstanceId    : 88944290-133d-4b44-8752-f901bd8012e2
    Id            : 1
    Name          : Timer.Random
    ChildJobs     : {}
    ...
    
    C:\PS> $timer.Enabled = $true
    
    C:\PS> & $job.module {$random}
    60
    
    C:\PS> & $job.module {$random}
    47
    
    
    Описание
    -----------
    В этом примере показано использование динамического модуля в объекте PSEven
    tJob, который создается при включении свойства Action в регистрацию события
    .
    
    Первая команда с помощью командлета New-Object создает объект таймера. Втор
    ая команда устанавливает интервал времени таймера равным 500 (миллисекундам
    ).
    
    Третья команда регистрирует событие Elapsed объекта таймера с помощью коман
    длета Register-ObjectEvent. Она содержит действие, обрабатывающее событие. 
    Когда интервал времени таймера истекает, появляется событие, и выполняются 
    команды, содержащиеся в действии. В этом случае командлет Get-Random создае
    т случайное число от 0 до 100 и сохраняет его в переменной $random.
    
    При использовании параметра Action в команде Register-ObjectEvent эта коман
    да возвращает объект PSEventJob, представляющий действие. Команда сохраняет
     объект задания в переменной $job.
    
    Объект PSEventJob, возвращаемый командлетом Register-ObjectEvent, содержитс
    я также в свойстве Action подписчика на событие. Дополнительные сведения см
    . в разделе Get-EventSubscriber.
    
    Четвертая команда показывает, что переменная $job содержит объект PSEventJo
    b. Пятая команда использует командлет Format-List для отображения всех свой
    ств объекта PSEventJob в списке. 
    
    Объект PSEventJob включает свойство Module, содержащее динамический модуль 
    скрипта, который реализует действие.
    
    Шестая команда включает таймер.
    
    В остальных командах используется оператор вызова (&) для вызова команды в 
    модуле и отображения значения переменной $random. Оператор вызова можно исп
    ользовать для вызова любой команды в модуле, включая команды, которые не эк
    спортируются. В этом случае команды показывают случайное число, создаваемое
     при появлении события Elapsed.
    
    Дополнительные сведения о модулях см. в разделе about_Modules.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135244
    Register-EngineEvent 
    Register-WmiEvent 
    Unregister-Event 
    Get-Event 
    New-Event 
    Remove-Event 
    Wait-Event 



Register-PSSessionConfiguration

ИМЯ
    Register-PSSessionConfiguration
    
ОПИСАНИЕ
    Создает и регистрирует новую конфигурацию сеанса.
    
СИНТАКСИС
    Register-PSSessionConfiguration [-AssemblyName] <string> [-ConfigurationTyp
    eName] <string> [-ApplicationBase <string>] [-Name] <string> [-Force] [-Max
    imumReceivedDataSizePerCommandMB <double>] [-MaximumReceivedObjectSizeMB <d
    ouble>] [-NoServiceRestart] [-ProcessorArchitecture <string>] [-SecurityDes
    criptorSDDL <string>] [-ShowSecurityDescriptorUI] [-StartupScript <string>]
     [-ThreadApartmentState {STA | MTA | Unknown}] [-ThreadOptions {Default | U
    seNewThread | ReuseThread | UseCurrentThread}] [-Confirm] [-WhatIf] [<Commo
    nParameters>]
    
    
ОПИСАНИЕ
    Командлет Register-PSSessionConfiguration. создает и регистрирует новую кон
    фигурацию сеанса на локальном компьютере. Этот расширенный командлет предна
    значен для использования системными администраторами и позволяет управлять 
    конфигурациями сеансов для пользователей.
    
    В каждом удаленном сеансе Windows PowerShell используется конфигурация сеан
    са. Создавая сеанс подключения к компьютеру, пользователи могут выбрать кон
    фигурацию или использовать конфигурации по умолчанию, регистрируемые при вк
    лючении удаленного взаимодействия Windows PowerShell. Пользователи также мо
    гут задавать привилегированную переменную $PSSessionConfigurationName, кото
    рая указывает конфигурацию по умолчанию для сеансов, создаваемых в текущем 
    сеансе. 
    
    Конфигурация сеанса используется для настройки среды для сеанса. Конфигурац
    ию можно определить с помощью сборки, реализующей новый класс конфигурации,
     или скрипта, выполняемого в сеансе. Конфигурация может определять, какие к
    оманды доступны в сеансе, а также включать параметры для защиты компьютера,
     например параметры, ограничивающие объем данных, принимаемых сеансом удале
    нно в одном объекте или команде.  Также можно задать дескриптор безопасност
    и, определяющий разрешения, необходимые для использования конфигурации.
    
ПАРАМЕТРЫ
    -ApplicationBase <string>
        Задает путь к файлу сборки (*.dll), указанному в значении параметра Ass
        emblyName. Этот параметр следует использовать в случае, если значение п
        араметра AssemblyName не включает путь. По умолчанию используется текущ
        ий каталог.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Текущий каталог
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -AssemblyName <string>
        Задает имя файла сборки (*.dll), в котором определен тип конфигурации. 
        Задать путь к DLL-файлу можно в этом параметре или в значении параметра
         ApplicationBase.
        
        При задании параметра ConfigurationTypeName этот параметр является обяз
        ательным.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ConfigurationTypeName <string>
        Задает полное имя типа Microsoft .NET Framework, используемого для этой
         конфигурации. Задаваемый тип должен реализовывать класс System.Managem
        ent.Automation.Remoting.PSSessionConfiguration.
        
        Для задания файла сборки (DLL), реализующего тип конфигурации, использу
        йте параметры AssemblyName и AssemblyBase.
        
        Создание типа позволяет управлять большим количеством аспектов конфигур
        ации сеанса, например предоставлять или скрывать определенные параметры
         командлетов или задавать ограничения на объем данных или размер объект
        ов, которые не смогут переопределять пользователи. 
        
        Если опустить этот параметр, для конфигурации сеанса используется класс
         DefaultRemotePowerShellConfiguration.
        
        Требуется?                    true
        Позиция?                    3
        Значение по умолчанию                System.Management.Automation.Remot
        ing.PSSessionConfiguration
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Подавляет все запросы пользователю и перезапускает службу WinRM без зап
        роса подтверждения. Перезапуск службы обеспечивает вступление изменений
         конфигурации в силу.
        
        Чтобы предотвратить перезапуск и подавить запрос на перезапуск, использ
        уйте параметр NoServiceRestart.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MaximumReceivedDataSizePerCommandMB <double>
        Ограничивает объем данных, которые могут быть переданы данному компьюте
        ру в любой отдельно взятой удаленной команде. Укажите объем данных в ме
        габайтах (МБ). По умолчанию используется значение "50 МБ".
        
        Если ограничение на объем данных определено в типе конфигурации, заданн
        ом параметром ConfigurationTypeName, используется ограничение из типа к
        онфигурации, а значение этого параметра игнорируется.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                50
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MaximumReceivedObjectSizeMB <double>
        Ограничивает объем данных, которые могут быть переданы данному компьюте
        ру в любом отдельно взятом объекте. Укажите объем данных в мегабайтах (
        МБ). По умолчанию используется значение "10 МБ".
        
        Если ограничение на размер объекта определено в типе конфигурации, зада
        нном параметром ConfigurationTypeName, используется ограничение из типа
         конфигурации, а значение этого параметра игнорируется.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                10
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя конфигурации сеанса. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NoServiceRestart [<SwitchParameter>]
        Не перезапускает службу WinRM и подавляет запрос на перезапуск службы.
        
        По умолчанию при вводе команды Register-PSSessionConfiguration предлага
        ется перезапустить службу WinRM, чтобы новая конфигурация сеанса вступи
        ла в силу.  Пока служба WinRM не будет перезапущена, новая конфигурация
         сеанса не действует.
        
        Чтобы перезапустить службу WinRM без запроса подтверждения, используйте
         параметр Force. Чтобы перезапустить службу WinRM вручную, используйте 
        командлет Restart-Service.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ProcessorArchitecture <string>
        Задает архитектуру процессора для конфигурации. Это значение определяет
        , 32- или 64-разрядная версия хост-процесса Windows PowerShell запускае
        тся при использовании данной конфигурации. Допустимые значения: "x86", 
        "AMD64" и "IA64".
        
        Значение по умолчанию определяется архитектурой процессора компьютера, 
        на котором размещена конфигурация сеанса.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Архитектура процессора компьютера.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SecurityDescriptorSDDL <string>
        Задает строку в формате языка определения дескрипторов безопасности (SD
        DL) для конфигурации. 
        
        Эта строка определяет разрешения, необходимые для использования новой к
        онфигурации сеанса. Для использования конфигурации в сеансе пользовател
        и должны иметь как минимум разрешение на запуск конфигурации ("Выполнен
        ие (Invoke)").
        
        В случае сложного дескриптора безопасности вместо этого параметра можно
         использовать параметр ShowSecurityDescriptorUI. Использовать оба парам
        етра в одной команде нельзя.
        
        Если опустить этот параметр, для данной конфигурации будет использовать
        ся корневой элемент SDDL для службы WinRM. Для просмотра или изменения 
        корневого элемента SDDL используйте поставщик WS-Management. Например: 
        "get-item wsman:\localhost\service\rootSDDL". Чтобы получить дополнител
        ьные сведения о поставщике WS-Management, введите команду "get-help wsm
        an".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Значение корневого элемента SDDL
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ShowSecurityDescriptorUI [<SwitchParameter>]
        Выводит лист свойств, помогающий создать строку SDDL для конфигурации с
        еанса. Лист свойств отображается после ввода команды Register-PSSession
        Configuration и перезапуска службы WinRM.
        
        При задании разрешений для конфигурации сеанса помните, что для использ
        ования конфигурации в сеансе пользователи должны иметь как минимум разр
        ешение на запуск конфигурации ("Выполнение (Invoke)").
        
        Параметр SecurityDescriptorSDDL и этот параметр нельзя использовать в о
        дной команде.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -StartupScript <string>
        Задает полный путь к скрипту Windows PowerShell. Заданный скрипт выполн
        яется в новом сеансе, для которого используется данная конфигурация сеа
        нса. 
        
        Скрипт можно использовать для дальнейшей настройки сеанса. Если скрипт 
        выдает ошибку (даже непрерывающую), сеанс не создается, и команда New-P
        SSession пользователя завершается неудачей.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ThreadApartmentState <ApartmentState>
        Определяет состояние подразделения потоков в сеансе. Допустимые значени
        я: "STA", "MTA" и "Unknown". По умолчанию используется значение "Unknow
        n".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Unknown
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ThreadOptions <PSThreadOptions>
        Определяет способ создания и использования потоков при выполнении коман
        д в сеансе. Допустимые значения: "Default", "ReuseThread", "UseCurrentT
        hread" и "UseNewThread". По умолчанию используется значение "UseCurrent
        Thread".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                UseCurrentThread
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.WSMan.Management.WSManConfigContainerElement
        
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать этот командлет в Windows Vista, Windows Server 2008 
        и более поздних версиях Windows, необходимо запускать Windows PowerShel
        l командой "Запуск от имени администратора".
        
        Этот командлет формирует XML-код, представляющий собой конфигурацию под
        ключаемого модуля WS-Management, и отправляет этот XML-код службе WS-Ma
        nagement, которая регистрирует подключаемый модуль на локальном компьют
        ере ("new-item wsman:\localhost\plugin").
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>register-pssessionConfiguration -name NewShell -applicationBase c:\My
    Shells\ -assemblyName MyShell.dll -configurationTypeName MyClass
    
    
    Описание
    -----------
    Эта команда регистрирует новую конфигурацию сеанса NewShell. Параметры Appl
    icationName и ApplicationBase используются для указания местоположения файл
    а MyShell.dll, который задает командлеты и поставщики в конфигурации сеанса
    . Кроме того, используется параметр ConfigurationTypeName для указания ново
    го класса, используемого для дальнейшей настройки сеанса.
    
    Для использования этой конфигурации пользователи должны будут ввести команд
    у "new-pssession -configurationname newshell".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>register-pssessionConfiguration -name MaintenanceShell -startupScript
     c:\ps-test\Maintenance.ps1
    
    
    Описание
    -----------
    Эта команда регистрирует на локальном компьютере конфигурацию MaintenanceSh
    ell. Параметр StartupScript используется для указания скрипта Maintenance.p
    s1.
    
    Когда пользователь вводит команду New-PSSession и выбирает конфигурацию Mai
    ntenanceShell, в новом сеансе выполняется скрипт Maintenance.ps1. Этот скри
    пт может настраивать сеанс, в том числе импортировать модули, добавлять осн
    астки Windows PowerShell и задавать политику выполнения для сеанса. Если ск
    рипт выдаст какую-либо ошибку, в том числе непрерывающую, команда New-PSSes
    sion завершится неудачей.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$sddl = "O:NSG:BAD:P(A;;GA;;;BA)S:P(AU;FA;GA;;;WD)(AU;FA;SA;GWGX;;WD)
    "
    
    C:\PS> register-pssessionconfiguration -name AdminShell -securityDescriptor
    SDDL $sddl -maximumReceivedObjectSizeMB 20 -startupScript c:\scripts\AdminS
    hell.ps1
    
    
    Описание
    -----------
    Этот пример регистрирует конфигурацию сеанса AdminShell. 
    
    Первая команда сохраняет пользовательскую строку SDDL в переменной $sddl. 
    
    Вторая команда регистрирует новую оболочку. В команде используется параметр
     SecurityDescritorSDDL для задания строки SDDL из переменной $sddl и параме
    тр MaximumReceivedObjectSizeMB для увеличения ограничения на размер объекта
    . Кроме того, используется параметр StartupScript для указания скрипта, исп
    ользуемого для настройки параметра.
    
    В качестве альтернативы параметру SecurityDescriptorSDDL можно использовать
     параметр ShowSecurityDescriptorUI для вывода листа свойств, с помощью кото
    рого можно будет задать разрешения для конфигурации сеанса. При нажатии кно
    пки "ОК" в листе свойств формируется строка SDDL для конфигурации сеанса.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$s = register-pssessionConfiguration -name MaintenanceShell -startupS
    cript c:\ps-test\Maintenance.ps1
    
    C:\PS> $s
    
       WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin
    
    Name                      Type                 Keys
    ----                      ----                 ----
    MaintenanceShell          Container            {Name=MaintenanceShell}
    
    
    C:\PS> $s.getType().fullname
    TypeName: Microsoft.WSMan.Management.WSManConfigContainerElement
    
    
    C:\PS> $s | format-list -property *
    
    PSPath            : Microsoft.WSMan.Management\WSMan::localhost\Plugin\Main
    tenanceShell
    PSParentPath      : Microsoft.WSMan.Management\WSMan::localhost\Plugin
    PSChildName       : MaintenanceShell
    PSDrive           : WSMan
    PSProvider        : Microsoft.WSMan.Management\WSMan
    PSIsContainer     : True
    Keys              : {Name=MaintenanceShell}
    Name              : MaintenanceShell
    TypeNameOfElement : Container
    
    
    C:\PS> dir wsman:\localhost\plugin
    
    Name                      Type                 Keys
    ----                      ----                 ----
    MaintenanceShell          Container            {Name=MaintenanceShell}
    microsoft.powershell      Container            {Name=microsoft.powershell}
    microsoft.powershell32    Container            {Name=microsoft.powershell32
    }
    
    
    Описание
    -----------
    Этот пример показывает, что команда Register-PSSessionConfiguration возвращ
    ает элемент WSManConfigContainerElement. Также в нем показано, как найти эл
    ементы-контейнеры на диске WSMan:.
    
    Первая команда регистрирует конфигурацию сеанса MaintenanceShell с помощью 
    командлета Register-PSSessionConfiguration. Она сохраняет объект, возвращен
    ный командлетом, в переменной $s.
    
    Вторая команда отображает содержимое переменной $s. 
    
    Третья команда с помощью метода GetType и его свойства FullName отображает 
    имя типа объекта, возвращенного командлетом Register-PSSessionConfiguration
    .
    
    Четвертая команда с помощью командлета Format-List отображает все свойства 
    объекта, возвращенного командлетом Register-PSSessionConfiguration, в виде 
    списка. Из свойства PSPath видно, что объект хранится в каталоге на диске W
    SMan:.
    
    Пятая команда с помощью командлета Get-ChildItem отображает элементы в папк
    е WSMan:\LocalHost\PlugIn. В этой папке находится новая конфигурация Mainte
    nanceShell и две конфигурации по умолчанию, входящие в комплект Windows Pow
    erShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>register-pssessionconfiguration -name WithProfile -startupScript add-
    profile.ps1
    
    # Add-Profile.ps1
    
    . c:\users\admin01\documents\windowspowershell\profile.ps1
    
    
    Описание
    -----------
    Эта команда создает и регистрирует конфигурацию сеанса WithProfile на локал
    ьном компьютере. В ней используется параметр StartupScript, который дает Wi
    ndows PowerShell указание выполнять указанный скрипт в любом сеансе, для ко
    торого используется данная конфигурация.
    
    Также отображается содержимое указанного скрипта (Add-Profile.ps1). Скрипт 
    содержит единственную команду, в которой используется запись с точками для 
    запуска профиля CurrentUserAllHosts пользователя в текущей области сеанса.
    
    Дополнительные сведения о профилях см. в разделе about_Profiles. Дополнител
    ьные сведения о записи с точками см. в разделе about_Scopes.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=144306
    about_Session_Configurations 
    Disable-PSSessionConfiguration 
    Enable-PSSessionConfiguration 
    Get-PSSessionConfiguration 
    Set-PSSessionConfiguration 
    Unregister-PSSessionConfiguration 
    WS-Management Provider 



Register-WmiEvent

ИМЯ
    Register-WmiEvent
    
ОПИСАНИЕ
    Подписывает на событие инструментария управления Windows (WMI).
    
СИНТАКСИС
    Register-WmiEvent [-Class] <string> [[-SourceIdentifier] <string>] [[-Actio
    n] <scriptblock>] [-ComputerName <string>] [-Credential <PSCredential>] [-F
    orward] [-MessageData <psobject>] [-Namespace <string>] [-SupportEvent] [-T
    imeout <Int64>] [<CommonParameters>]
    
    Register-WmiEvent [-Query] <string> [[-SourceIdentifier] <string>] [[-Actio
    n] <scriptblock>] [-ComputerName <string>] [-Credential <PSCredential>] [-F
    orward] [-MessageData <psobject>] [-Namespace <string>] [-SupportEvent] [-T
    imeout <Int64>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Register-WmiEvent создает подписку на события WMI на локальном ил
    и удаленном компьютере. 
    
    При возникновении события WMI, для которого создана подписка, это событие д
    обавляется в очередь событий локального сеанса, даже если оно произошло на 
    удаленном компьютере. Чтобы получить события из очереди событий, используйт
    е командлет Get-Event. 
    
    С помощью параметров командлета Register-WmiEvent можно создавать подписки 
    на события на удаленных компьютерах и задавать значения свойств событий, ко
    торые позволяют идентифицировать события в очереди. Также можно использоват
    ь параметр Action для задания действий, выполняемых при возникновении событ
    ия, для которого создана подписка.
    
    При создании подписки на событие в сеанс добавляется подписчик на это событ
    ие. Чтобы получить подписчики на события в сеансе, используйте командлет Ge
    t-EventSubscriber. Чтобы отменить подписку, воспользуйтесь командлетом Unre
    gister-Event, удаляющим подписчик на событие из сеанса.
    
ПАРАМЕТРЫ
    -Action <scriptblock>
        Задает команды для обработки событий. Когда происходит событие, вместо 
        передачи события в очередь событий выполняются команды, заданные параме
        тром Action. Чтобы создать блок скрипта, заключите команды в фигурные с
        кобки ( { } ). 
        
        Значение параметра Action может включать автоматические переменные $Eve
        nt, $EventSubscriber, $Sender, $SourceEventArgs и $SourceArgs, предоста
        вляющие информацию о событии в блок скрипта Action. Дополнительные свед
        ения см. в разделе about_Automatic_Variables.
        
        Если задано действие, командлет Register-WmiEvent возвращает объект зад
        ания события, представляющего это действие. Для управления заданием соб
        ытия можно использовать командлеты, имеющие в составе существительное "
        Job" (командлеты Job).
        
        Требуется?                    false
        Позиция?                    102
        Значение по умолчанию                Событие добавляется в очередь собы
        тий.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Class <string>
        Задает событие, для которого создается подписка. Укажите класс WMI, кот
        орый создает события. В каждой команде необходимо указывать параметр Cl
        ass или Query.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string>
        Задает удаленный компьютер. По умолчанию используется значение "Локальн
        ый компьютер". Введите имя NetBIOS, IP-адрес или полное доменное имя.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Локальный компьютер
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. Введите имя пользователя, например "User01"
         или "Domain01\User01". Или укажите объект PSCredential, например один 
        из объектов, возвращенных командлетом Get-Credential. При вводе имени п
        ользователя система запросит пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Учетные данные текущего пользовате
        ля
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Forward [<SwitchParameter>]
        Отправляет события по данной подписке сеансу на локальном компьютере. Э
        тот параметр используется при регистрации для получения событий на удал
        енном компьютере или в удаленном сеансе.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MessageData <psobject>
        Задает любые дополнительные данные, которые следует связать с этой подп
        иской на события. Значение этого параметра присваивается свойству Messa
        geData для всех событий, связанных с данной подпиской.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет. Значение свойства MessageData
         — NULL.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Namespace <string>
        Задает пространство имен класса WMI.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Query <string>
        Задает запрос на языке запросов WMI (WQL), определяющий класс событий W
        MI. Пример запроса: "select * from __InstanceDeletionEvent".
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SourceIdentifier <string>
        Задает имя, выбранное для подписки. Выбираемое имя должно быть уникальн
        ым в пределах текущего сеанса. По умолчанию используется значение GUID,
         назначенное Windows PowerShell.
        
        Значение этого параметра присваивается свойству SourceIdentifier объект
        а подписчика и объектов событий, связанных с данной подпиской.
        
        Требуется?                    false
        Позиция?                    101
        Значение по умолчанию                GUID
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SupportEvent [<SwitchParameter>]
        Скрывает подписку на события. Этот параметр используется, если текущая 
        подписка является частью более сложного механизма регистрации событий и
         не должна обнаруживаться независимым образом.
        
        Чтобы просмотреть или отменить подписку, созданную с использованием пар
        аметра SupportEvent, воспользуйтесь параметром Force командлетов Get-Ev
        entSubscriber и Unregister-Event.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Timeout <Int64>
        Определяет время ожидания оболочкой Windows PowerShell завершения выпол
        няемой команды. 
        
        По умолчанию используется значение 0 (ноль), указывающее, что время ожи
        дания не задано; в этом случае Windows PowerShell ожидает завершения ко
        манды бесконечно долго.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                0
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Объекты невозможно передать командлету Register-WmiEvent по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать этот командлет в Windows Vista и более поздних верси
        ях Windows, необходимо запускать Windows PowerShell командой "Запуск от
         имени администратора".
        
        События, подписки на события и очередь событий существуют только в рамк
        ах текущего сеанса. Если завершить текущий сеанс, очередь событий будет
         очищена и подписка на события будет отменена.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>register-wmiEvent -class 'Win32_ProcessStartTrace' -sourceIdentifier 
    "ProcessStarted"
    
    
    Описание
    -----------
    Эта команда создает подписку на события, создаваемые классом Win32_ProcessS
    tartTrace. Этот класс создает событие при каждом запуске процесса.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>register-wmiEvent -query "select * from __instancecreationevent withi
    n 5 where targetinstance isa 'win32_process'" -sourceIdentifier "WMIProcess
    " -messageData "Test 01" -timeout 500
    
    
    Описание
    -----------
    В этой команде используется запрос для подписки на события создания экземпл
    яров класса Win32_process.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$action = { get-history | where { $_.commandline -like "*start-proces
    s*" } | export-cliXml "commandHistory.clixml" }
    
    C:\PS> register-wmiEvent -class 'Win32_ProcessStartTrace' -sourceIdentifier
     "ProcessStarted" -action $action
    
    Id    Name            State      HasMoreData   Location  Command
    --    ----            -----      -----------   --------  -------
    1     ProcessStarted  NotStarted False                   get-history | wher
    e {...
    
    
    Описание
    -----------
    В этом примере показано, как использовать действие для реагирования на собы
    тие. В этом случае при запуске процесса все команды Start-Process текущего 
    сеанса записываются в XML-файл. 
    
    При использовании параметра Action командлет Register-WmiEvent возвращает ф
    оновое задание, представляющее действие события. Для управления заданиями с
    обытий можно использовать командлеты Job, например Get-Job и Receive-Job.
    
    Дополнительные сведения см. в разделе about_Jobs.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>register-wmiEvent -class 'Win32_ProcessStartTrace' -sourceIdentifier 
    "Start" -computername Server01 
    
    C:\PS> get-event -sourceIdentifier "Start"
    
    
    Описание
    -----------
    В этом примере показано, как выполнить регистрацию на получение сведений о 
    событиях, происходящих на удаленном компьютере Server01. 
    
    WMI передает события на локальный компьютер и сохраняет их в очереди событи
    й в текущем сеансе. Чтобы извлечь события, выполните локальную команду Get-
    Event.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135245
    Register-ObjectEvent 
    Register-EngineEvent 
    Unregister-Event 
    Get-Event 
    New-Event 
    Remove-Event 
    Wait-Event 



Registry

ИМЯ ПОСТАВЩИКА
    Registry
    
ДИСКИ
    HKLM:, HKCU:
    
ОПИСАНИЕ
    Предоставляет доступ к разделам и значениям системного реестра в Windows Po
    werShell.
    
ОПИСАНИЕ
    Поставщик Windows PowerShell Registry позволяет извлекать, добавлять, измен
    ять, очищать и удалять разделы и значения реестра в Windows PowerShell. 
    
    Разделы реестра представлены как экземпляры класса Microsoft.Win32.Registry
    Key. Значения реестра представлены экземплярами класса PSCustomObject.
    
    Поставщик Registry позволяет получить доступ к иерархическому пространству 
    имен, состоящему из разделов и подразделов. Значения и данные реестра не яв
    ляются компонентами этой иерархии. Вместо этого они являются свойствами каж
    дого из разделов.
    
    
    Поставщик Registry поддерживает все командлеты, содержащие слово Item (кома
    ндлеты Item), такие как Get-Item, Copy-Item и Rename-Item. Для работы с раз
    делами и подразделами реестра используются командлеты группы Item. Поставщи
    к Registry также поддерживает командлеты, содержащие слово ItemProperty (ко
    мандлеты ItemProperty). Для работы со значениями и данными реестра использу
    ются командлеты группы ItemProperty. Использовать командлеты, содержащие сл
    ово Content (командлеты Content), при работе с поставщиком Registry нельзя.
    
    Каждый раздел реестра защищен дескриптором безопасности. Для просмотра деск
    риптора безопасности раздела можно использовать командлет Get-Acl.
    
ВОЗМОЖНОСТИ
    ShouldProcess
    
ЗАДАЧИ
    ЗАДАЧА: Просмотр реестра
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда задает в качестве текущего положения раздел реестра HKEY_LO
        CAL_MACHINE\Software.
        
        set-location hklm:\software
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда отображает текущее положение.
        
        get-location
        
        
        
        
        
    ЗАДАЧА: Управление разделами реестра
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда отображает сведения о каждом непосредственном подразделе ра
        здела реестра HKEY_LOCAL_MACHINE\Software.
        
        get-childitem -path hklm:\software
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда создает новый подраздел TestNew в подразделе HKCU:\Environm
        ent.
        
        new-item -path hkcu:\Environment\TestNew
        
        
        
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда удаляет подраздел TestNew в разделе HKEY_CURRENT_USER\Envir
        onment.
        
        remove-item -path hkcu:\Environment\TestNew
        
        
        
        -------------------------- ПРИМЕР 4 --------------------------
        
        Эта команда копирует раздел TestNew в подраздел TestCopy.
        
        copy-item -path  hkcu:\Environment\TestNew  hkcu:\Environment\TestNew\T
        estCopy
        
        
        
        -------------------------- ПРИМЕР 5 --------------------------
        
        Эта команда отображает сведения обо всех подразделах раздела реестра HK
        EY_LOCAL_MACHINE\Software.
        
        get-childitem -path hklm:\Software -recurse
        
        
        
        -------------------------- ПРИМЕР 6 --------------------------
        
        Эта команда перемещает раздел реестра HKEY_CURRENT_USER\Environment\tes
        tnewcopy и его свойства, а также подразделы и их свойства, в раздел HKE
        Y_CURRENT_USER\Environment\testnew.
        
        move-item -path hkcu:\environment\testnewcopy `
        -destination hkcu:\environment\testnew
        
        
        
        -------------------------- ПРИМЕР 7 --------------------------
        
        Эта команда изменяет имя раздела реестра HKEY_CURRENT_USER\Environment\
        testnew на HKEY_CURRENT_USER\Environment\test.
        
        rename-item -path hkcu:\environment\testnew\ -newname test
        
        
        
        -------------------------- ПРИМЕР 8 --------------------------
        
        Эта команда отображает дескриптор безопасности указанного элемента реес
        тра.
        
        get-acl -path hkcu:\environment\testnew | format-list -property *
        
        
        
        
        
    ЗАДАЧА: Управление записями реестра
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда отображает имя и данные значения каждой записи реестра в ра
        зделе реестра HKEY_CURRENT_USER\Environment.
        
        get-itemproperty -path hkcu:\Environment
        
        
        Запись реестра "По умолчанию" возвращается только в том случае, если он
        а содержит значение.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда отображает имя и данные значения записи реестра Temp в разд
        еле реестра HKEY_CURRENT_USER\Environment.
        
        get-itemproperty -path hkcu:\Environment -name Temp
        
        
        
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда создает запись реестра "pstest" в разделе HKEY_CURRENT_USER
         и присваивает ей значение "pstestvalue".
        
        new-itemproperty -path hkcu:\environment -name "pstest" -value "pstestv
        alue"
        
        
        
        -------------------------- ПРИМЕР 4 --------------------------
        
        Эта команда присваивает записи реестра "pstest" в разделе HKEY_CURRENT_
        USER\Environment значение "updatedvalue".
        
        set-itemproperty -path hkcu:\environment -name pstest 
        -value "updatedvalue"
        
        
        
        -------------------------- ПРИМЕР 5 --------------------------
        
        Эта команда изменяет имя записи реестра "pstest" в разделе HKEY_CURRENT
        _USER\Environment на "pstestnew".
        
        rename-itemproperty -path hkcu:\environment -name pstest `
        -newname pstestnew
        
        
        
        -------------------------- ПРИМЕР 6 --------------------------
        
        Эта команда копирует запись реестра "pstestnew" из раздела HKEY_CURRENT
        _USER\Environment в раздел HKEY_CURRENT_USER\Environment\testnewcopy.
        
        copy-itemproperty -path hkcu:\environment ` 
        -destination hkcu:\environment\testnewcopy -name pstestnew
        
        
        
        -------------------------- ПРИМЕР 7 --------------------------
        
        Эта команда перемещает запись реестра "pstestnew" из раздела HKEY_CURRE
        NT_USER\Environment\testnewcopy в раздел HKEY_CURRENT_USER\Environment\
        testnew.
        
        move-itemproperty -path hkcu:\environment\testnewcopy ' 
        -destination hkcu:\environment\testnew -name pstestnew
        
        
        
        -------------------------- ПРИМЕР 8 --------------------------
        
        Эта команда очищает значение записи реестра "pstestnew" в разделе HKEY_
        CURRENT_USER\Environment\testnew.
        
        clear-itemproperty -path hkcu:\environment\testnew -name pstestnew
        
        
        Для очистки значения записи реестра по умолчанию в подразделе можно исп
        ользовать командлет Clear-Item. Например, следующая команда очищает зна
        чение записи по умолчанию в разделе реестра HKEY_CURRENT_USER\Environme
        nt\testnew.
        
        clear-item -path hkcu:\environment\testnew
        -------------------------- ПРИМЕР 9 --------------------------
        
        Эта команда удаляет запись реестра "pstestnew" из раздела реестра HKEY_
        CURRENT_USER\Environment\testnew.
        
        remove-itemproperty -path hkcu:\environment\testnew `
        -name pstestnew
        
        
        
        -------------------------- ПРИМЕР 10 --------------------------
        
        Эта команда изменяет значение записи реестра по умолчанию в разделе HKE
        Y_CURRENT_USER\Environment\testnew на "значение по умолчанию".
        
        set-itemproperty -path hkcu:\environment\testnew `
        -name "(default)" -value "default value"
        
        
        Обновить значение по умолчанию в разделе реестра можно также при помощи
         командлета Set-Item. Например, следующая команда обновляет значение по
         умолчанию раздела реестра testnew.
        
        set-item -path hkcu:\environment\testnew -value "другое значение по умо
        лчанию"
        
        
    
    
ДИНАМИЧЕСКИЕ ПАРАМЕТРЫ
    -Type <Microsoft.Win32.RegistryValueKind>
        Задает типы данных, используемые для хранения значений реестра, либо оп
        ределяет тип данных значения в реестре.
        
            String
                Определяет строку, заканчивающуюся символом NULL. Эквивалентно 
                типу REG_SZ.
                
            ExpandString
                Определяет строку, заканчивающуюся символом NULL и содержащую н
                еразвернутые ссылки на переменные среды, которые развертываются
                 при извлечении значения. Эквивалентно типу REG_EXPAND_SZ.
                
            Binary
                Определяет двоичные данные в любой форме. Эквивалентно типу REG
                _BINARY.
                
            DWord
                Определяет 32-разрядное двоичное число. Эквивалентно типу REG_D
                WORD.
                
            MultiString
                Определяет массив строк, заканчивающихся символом NULL. Массив 
                заканчивается двумя символами NULL. Эквивалентно типу REG_MULTI
                _SZ.
                
            QWord
                Определяет 64-разрядное двоичное число. Эквивалентно типу REG_Q
                WORD.
                
            Unknown
                Указывает неподдерживаемый тип данных реестра, например REG_RES
                OURCE_LIST.
                
        
        Поддерживаемые командлеты: Set-Item
        
    
ПРИМЕЧАНИЯ
    
ССЫЛКИ ПО ТЕМЕ
    about_Providers 



Remove-Computer

ИМЯ
    Remove-Computer
    
ОПИСАНИЕ
    Удаление локального компьютера из домена или рабочей группы.
    
СИНТАКСИС
    Remove-Computer [[-Credential] <PSCredential>] [-Force] [-PassThru] [-Confi
    rm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Remove-Computer удаляет локальный компьютер из его текущей рабоче
    й группы или домена. 
    
    При удалении компьютера из домена командлет Remove-Computer также отключает
     учетную запись домена для этого компьютера.
    
    Если компьютер находится в домене, необходимо указать учетные данные, даже 
    если они являются учетными данными текущего пользователя, и перезагрузить к
    омпьютер для вступления изменений в силу. 
    
    Для получения результатов выполнения команды используются параметры Verbose
     и PassThru.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь".
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Чтобы удалить компьютер из домена, необходимо использовать параметр Cre
        dential даже в случае использования учетных данных текущего пользовател
        я.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                Учетные данные текущего пользовате
        ля
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает результаты выполнения команды. В противном случае этот коман
        длет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.ComputerChangeInfo
        Если задан параметр PassThru, командлет Remove-Computer возвращает объе
        кт ComputerChangeInfo. В противном случае этот командлет не формирует н
        икаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>remove-computer
    
    
    Описание
    -----------
    Эта команда удаляет компьютер из рабочей группы.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>remove-computer -credential domain01\admin01 -passthru -verbose; rest
    art-computer
    
    
    Описание
    -----------
    Эти команды удаляют локальный компьютер из домена, к которому он присоедине
    н.
    
    Первая команда удаляет компьютер из домена. Параметр Credential используетс
    я в команде для предоставления учетных данных администратора домена. Параме
    тр PassThru и общий параметр Verbose используются для отображения информаци
    и об успешном или неудачном выполнении команды.
    
    Вторая команда использует командлет Restart-Computer для перезапуска компью
    тера, что необходимо для завершения операции удаления.
    
    Точка с запятой (;) разделяет две команды.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135246
    Add-Computer 
    Checkpoint-Computer 
    Remove-Computer 
    Restart-Computer 
    Restore-Computer 
    Stop-Computer 
    Test-Connection 



Remove-Event

ИМЯ
    Remove-Event
    
ОПИСАНИЕ
    Удаляет события из очереди событий.
    
СИНТАКСИС
    Remove-Event [-EventIdentifier] <int> [-Confirm] [-WhatIf] [<CommonParamete
    rs>]
    
    Remove-Event [-SourceIdentifier] <string> [-Confirm] [-WhatIf] [<CommonPara
    meters>]
    
    
ОПИСАНИЕ
    Командлет Remove-Event удаляет события из очереди событий в текущем сеансе.
     
    
    Этот командлет удаляет только те события, которые в данный момент находятся
     в очереди. Чтобы отменить регистрацию или подписку на событие, используйте
     командлет Unregister-Event.
    
ПАРАМЕТРЫ
    -EventIdentifier <int>
        Удаляет только событие с заданным идентификатором события. В каждой ком
        анде необходимо указывать параметр EventIdentifier или SourceIdentifier
        .
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -SourceIdentifier <string>
        Удаляет только события с указанным идентификатором источника. Подстанов
        очные знаки запрещены. В каждой команде необходимо указывать параметр E
        ventIdentifier или SourceIdentifier.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSEventArgs
        События из командлета Get-Event можно передавать командлету Remove-Even
        t по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        События, подписки на события и очередь событий существуют только в рамк
        ах текущего сеанса. Если завершить текущий сеанс, очередь событий будет
         очищена и подписка на события будет отменена.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>remove-event -sourceIdentifier "ProcessStarted"
    
    
    Описание
    -----------
    Эта команда удаляет из очереди события с идентификатором источника "Process
     Started".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>remove-event -eventIdentifier 30
    
    
    Описание
    -----------
    Эта команда удаляет из очереди событие с идентификатором, равным 30.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-event | remove-event
    
    
    Описание
    -----------
    Эта команда удаляет из очереди событий все события.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135247
    Register-ObjectEvent 
    Register-EngineEvent 
    Register-WmiEvent 
    Unregister-Event 
    Get-Event 
    New-Event 
    Remove-Event 
    Wait-Event 



Remove-EventLog

ИМЯ
    Remove-EventLog
    
ОПИСАНИЕ
    Удаляет журнал событий или отменяет регистрацию источника событий.
    
СИНТАКСИС
    Remove-EventLog [-LogName] <string[]> [[-ComputerName] <string[]>] [-Confir
    m] [-WhatIf] [<CommonParameters>]
    
    Remove-EventLog [[-ComputerName] <string[]>] [-Source <string[]>] [-Confirm
    ] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Remove-EventLog удаляет файл журнала событий с локального или уда
    ленного компьютера и отменяет регистрацию всех источников событий для журна
    ла. Кроме того, этот командлет можно использовать для отмены регистрации ис
    точников событий без удаления каких-либо журналов событий.
    
    Командлеты, в имени которых содержится существительное EventLog (командлеты
     EventLog) работают только с классическими журналами событий. Чтобы получат
    ь события из журналов, основанных на технологии журнала событий Windows (в 
    Windows Vista и более поздних версиях Windows), используйте командлет Get-W
    inEvent.
    
ПАРАМЕТРЫ
    -ComputerName <string[]>
        Задает удаленный компьютер. По умолчанию используется значение "Локальн
        ый компьютер".
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя удаленного компью
        тера. Чтобы указать локальный компьютер, введите имя компьютера, точку 
        (.) или "localhost".
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName командлета Remove-EventLog можно использовать, 
        даже если компьютер не настроен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LogName <string[]>
        Задает журналы событий. Введите имена (значение свойства Log; а не свой
        ства LogDisplayName) одного или нескольких журналов событий, разделенны
        е запятыми.  Подстановочные знаки запрещены. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Source <string[]>
        Отменяет регистрацию указанных источников событий. Введите имена источн
        иков (не имена исполняемых файлов), разделяя их запятыми.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать командлет Remove-EventLog в Windows Vista и более по
        здних версиях Windows, необходимо запускать Windows PowerShell командой
         "Запуск от имени администратора".
        
        Если удалить журнал событий, а затем повторно создать его, регистрация 
        источников событий, которые использовались с прежним журналом, будет не
        возможна. Приложения, которые использовали источники событий для внесен
        ия записей в исходный журнал, не будут записывать данные в новый журнал
        .
        
        После отмены регистрации источника событий для конкретного журнала этом
        у источнику может быть запрещена запись данных в другие журналы.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>remove-eventlog -logname MyLog
    
    
    Описание
    -----------
    Эта команда удаляет журнал событий MyLog с локального компьютера и отменяет
     регистрацию источников событий для этого журнала.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>remove-eventlog -logname MyLog, TestLog -computername Server01, Serve
    r02, localhost
    
    
    Описание
    -----------
    Эта команда удаляет журналы событий MyLog и TestLog с локального компьютера
     ("localhost") и удаленных компьютеров Server01 и Server02. Команда также о
    тменяет регистрацию источников событий для этих журналов.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>remove-eventlog -source MyApp
    
    
    Описание
    -----------
    Эта команда удаляет источник событий MyApp из журналов на локальном компьют
    ере. После выполнения команды программа MyApp не сможет записывать данные в
     какие-либо журналы событий.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-eventlog -list
    
      Max(K) Retain OverflowAction        Entries Log
      ------ ------ --------------        ------- ---
      15,168      0 OverwriteAsNeeded      22,923 Application
      15,168      0 OverwriteAsNeeded          53 DFS Replication
         512      7 OverwriteOlder              0 Directory Service
      15,168      7 OverwriteOlder              0 Hardware Events
         512      7 OverwriteOlder              0 Internet Explorer
      20,480      0 OverwriteAsNeeded           0 Key Management Service
      30,016      0 OverwriteAsNeeded      50,060 Security
      15,168      0 OverwriteAsNeeded      27,592 System
      15,360      0 OverwriteAsNeeded      18,355 Windows PowerShell
      15,168      7 OverwriteAsNeeded          12 ZapLog
    
    C:\PS> remove-eventlog -logname ZapLog
    
    C:\PS> get-eventlog -list
    
      Max(K) Retain OverflowAction        Entries Log
      ------ ------ --------------        ------- ---
      15,168      0 OverwriteAsNeeded      22,923 Application
      15,168      0 OverwriteAsNeeded          53 DFS Replication
         512      7 OverwriteOlder              0 Directory Service
      15,168      7 OverwriteOlder              0 Hardware Events
         512      7 OverwriteOlder              0 Internet Explorer
      20,480      0 OverwriteAsNeeded           0 Key Management Service
      30,016      0 OverwriteAsNeeded      50,060 Security
      15,168      0 OverwriteAsNeeded      27,592 System
      15,360      0 OverwriteAsNeeded      18,355 Windows PowerShell
    
    
    Описание
    -----------
    Эти команды демонстрируют, как вывести список журналов событий на компьютер
    е и проверить, что команда Remove-EventLog выполнена успешно.
    
    Первая команда выводит список всех журналов событий на локальном компьютере
    .
    
    Вторая команда удаляет журнал событий ZapLog.
    
    Третья команда повторно выводит список журналов событий. Журнал событий Zap
    Log больше не отображается в списке.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-wmiobject win32_nteventlogfile -filter "logfilename='TestLog'" | 
    foreach {$_.sources}
    
    MyApp
    TestApp
    
    C:\PS> remove-eventlog -source MyApp
    
    C:\PS> get-wmiobject win32_nteventlogfile -filter "logfilename='TestLog'} |
     foreach {$_.sources}
    TestApp
    
    
    Описание
    -----------
    Эти команды с помощью командлета Get-WmiObject выводят список источников со
    бытий на локальном компьютере. Эти команды можно использовать для проверки 
    успешного выполнения команды или удаления источника событий.
    
    Первая команда получает источники событий журнала TestLog на локальном комп
    ьютере. Одним из источников является MyApp.
    
    Во второй команде используется параметр Source командлета Remove-EventLog, 
    позволяющий удалить источник событий MyApp.
    
    Третья команда идентична первой. Она позволяет убедиться, что источник собы
    тий MyApp удален.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135248
    Clear-EventLog 
    Get-EventLog 
    Limit-EventLog 
    New-EventLog 
    Remove-EventLog 
    Show-EventLog 
    Write-EventLog 
    Get-WinEvent 



Remove-Item

ИМЯ
    Remove-Item
    
ОПИСАНИЕ
    Удаляет заданные элементы.
    
СИНТАКСИС
    Remove-Item [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Exclud
    e <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-Recurse] 
    [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]
    
    Remove-Item [-Path] <string[]> [-Credential <PSCredential>] [-Exclude <stri
    ng[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-Recurse] [-Confi
    rm] [-WhatIf] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Remove-Item удаляет один и более элементов. Данный командлет подд
    ерживается многими поставщиками, поэтому он может удалять элементы различны
    х типов, включая файлы, каталоги, разделы реестра, переменные, псевдонимы и
     функции.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету удалить элементы, которые не могут быть изменены д
        ругим образом, например скрытые файлы, файлы только для чтения, псевдон
        имы или переменные только для чтения. Командлет не может удалять псевдо
        нимы или переменные, являющиеся константами.  Реализация варьируется от
         поставщика к поставщику. Дополнительные сведения см. в разделе About_P
        roviders. Даже при использовании параметра Force командлет не может пер
        еопределить ограничения безопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Удаляет только указанные элементы. Значение этого параметра определяет 
        значение параметра Path. Введите элемент пути или шаблон, например "*.t
        xt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к удаляемым элементам. В отличие от значения параметра Path
        , значение параметра LiteralPath используется точно в том виде, в котор
        ом оно введено. Никакие символы не интерпретируются как подстановочные 
        знаки. Если путь включает escape-символы, его нужно заключить в одиночн
        ые кавычки. Одиночные кавычки указывают оболочке Windows PowerShell, чт
        о никакие символы не следует интерпретировать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к удаляемым элементам. Подстановочные знаки разрешены. Имя 
        параметра ("-Path") указывать необязательно.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Recurse [<SwitchParameter>]
        Удаляет элементы из указанных местоположений и из всех дочерних элемент
        ов этих местоположений.
        
        Параметр Recurse работает в данном командлете некорректно.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь (но не литеральный путь), можно передать команд
        лету Remove-Item по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        К командлету Remove-Item также можно обращаться с помощью одного из вст
        роенных псевдонимов "del", "erase", "rmdir", "rd", "ri" или "rm". Допол
        нительные сведения см. в разделе About_Aliases.
        
        Командлет Remove-Item предназначен для работы с данными, предоставляемы
        ми любым поставщиком. Чтобы получить список поставщиков, доступных в те
        кущем сеансе, введите команду "Get-PsProvider". Дополнительные сведения
         см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>remove-item C:\Test\*.*
    
    
    Описание
    -----------
    Эта команда удаляет все файлы из папки C:\Test, имена которых содержат точк
    у (.). Так как в данной команде указана точка, то она не может использовать
    ся для удаления каталогов и файлов без расширения.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>remove-item * -include *.doc -exclude *1*
    
    
    Описание
    -----------
    Эти команды удаляют из текущей папки все файлы с расширением .doc, имена ко
    торых не содержат "1". Подстановочный знак (*) используется для обозначения
     всего содержимого текущей папки. Для указания файлов, которые необходимо у
    далить, используются параметры Include и Exclude.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>remove-item -path C:\Test\hidden-RO-file.txt -force
    
    
    Описание
    -----------
    Эта команда удаляет файл, имеющий атрибуты "скрытый" и "только для чтения".
     Для задания файла используется параметр Path. Для предоставления прав на у
    даление указанного файла используется параметр Force. Файлы с атрибутами "т
    олько для чтения" или "скрытый" нельзя удалить без указания параметра Force
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-childitem * -include *.csv -recurse | remove-item
    
    
    Описание
    -----------
    Эта команда рекурсивно удаляет все CSV-файлы в текущем каталоге, включая вс
    е вложенные.
    
    Так как параметр Recurse не может использоваться в данном командлете, в ком
    анде используется командлет Get-Childitem, который извлекает необходимые фа
    йлы, и оператор конвейера, передающий их командлету Remove-Item.
    
    В команде Get-ChildItem параметр Path имеет значение *, что обозначает соде
    ржимое текущей папки. В данной команде для рекурсивного извлечения данных и
    спользуется параметр Recurse, а параметр Include указывает обработку только
     CSV-файлов. 
    
    При указании типа файлов в пути, например "-path *.csv", командлет интерпре
    тирует объект поиска как файл без потомков, и происходит ошибка, связанная 
    с параметром Recurse.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>remove-item hklm:\software\mycompany\OldApp -recurse
    
    
    Описание
    -----------
    Эта команда удаляет раздел реестра OldApp, включая все его вложенные раздел
    ы и параметры. Для удаления раздела используется командлет Remove-Item. Пут
    ь указывается, а необязательное имя параметра (Path) опускается. 
    
    При использовании параметра Recurse происходит рекурсивное удаление всего с
    одержимого раздела OldApp. Если в разделе содержатся подразделы и параметр 
    Recurse не указан, отображается запрос на подтверждение удаления содержимог
    о раздела.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113373
    about_Providers 
    Clear-Item 
    Copy-Item 
    Get-Item 
    Invoke-Item 
    Move-Item 
    New-Item 
    Remove-ItemProperty 
    Rename-Item 
    Set-Item 
    



Remove-ItemProperty

ИМЯ
    Remove-ItemProperty
    
ОПИСАНИЕ
    Удаляет свойство элемента и его значение.
    
СИНТАКСИС
    Remove-ItemProperty [-LiteralPath] <string[]> [-Name] <string[]> [-Credenti
    al <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Incl
    ude <string[]>] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]
    
    Remove-ItemProperty [-Path] <string[]> [-Name] <string[]> [-Credential <PSC
    redential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <st
    ring[]>] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Remove-ItemProperty удаляет свойство элемента и его значение. Его
     можно использовать для удаления параметров реестра и их значений.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету удалить свойство объекта, которое было бы недоступ
        но пользователю другими способами. Реализация варьируется от поставщика
         к поставщику. Дополнительные сведения см. в разделе About_Providers.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Удаляет только указанные элементы. Значение этого параметра определяет 
        значение параметра Path. Введите элемент пути или шаблон, например "*.t
        xt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к свойству элемента. Значение параметра LiteralPath использ
        уется точно в том виде, в котором оно введено. Никакие символы не интер
        претируются как подстановочные знаки. Если путь включает escape-символы
        , его нужно заключить в одиночные кавычки. Одиночные кавычки указывают 
        оболочке Windows PowerShell, что никакие символы не следует интерпретир
        овать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена извлекаемых свойств.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к элементу, свойства которого удаляются. Подстановочные зна
        ки разрешены.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь (но не литеральный путь), можно передать команд
        лету Remove-ItemProperty по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Remove-ItemProperty также можно вызывать с помощью встроенног
        о псевдонима "rp". Чтобы получить дополнительные сведения, см. раздел a
        bout_Alias.
        
        При работе с поставщиком реестра Windows PowerShell параметры реестра с
        читаются свойствами разделов и вложенных разделов реестра. Для работы с
         этими параметрами можно использовать командлеты ItemProperty.
        
        Командлет Remove-ItemProperty предназначен для работы с данными, предос
        тавляемыми любым поставщиком. Чтобы получить список поставщиков, доступ
        ных в текущем сеансе, введите команду "Get-PSProvider". Дополнительные 
        сведения см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>remove-itemproperty -path HKLM:\Software\SmpApplication -name SmpProp
    erty
    
    
    Описание
    -----------
    Эта команда удаляет значение реестра SmpProperty и его данные из подраздела
     SmpApplication раздела "HKEY_LOCAL_MACHINE\Software". 
    
    Так как команда запускается с диска файловой системы (C:\PS>), она включает
     полный путь к подразделу SmpApplication, включая диск HKLM: и раздел Softw
    are.
    
    Для задания удаляемого параметра реестра используется параметр Name.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-location HKCU:\Software\MyCompany\MyApp
    
    PS HKCU:\Software\MyCompany\MyApp> remove-itemproperty -path . -Name Option
    s -confirm
    
    
    Описание
    -----------
    Данные команды удаляют параметр реестра Options и его значение из вложенног
    о раздела MyApp раздела HKEY_CURRENT_USER\Software\MyCompany.
    
    Первая команда с помощью командлета Set-Location изменяет текущее местополо
    жение на раздел Software\MyCompany\MyApp на диске HKEY_CURRENT_USER (HKCU:)
    .
    
    Вторая команда использует командлет Remove-Item для удаления параметра реес
    тра Options и его значения из вложенного раздела MyApp. Так как параметр Pa
    th является обязательным, то в команде используется точка (.) для задания т
    екущего местоположения. Для задания удаляемого параметра реестра использует
    ся параметр Name. Для подтверждения на удаление параметра используется пара
    метр Confirm.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-item -path HKLM:\Software\MyCompany | remove-itemproperty -name N
    oOfEmployees
    
    
    Описание
    -----------
    Эта команда удаляет значение реестра NoOfEmployees и его данные из раздела 
    "HKLM\Software\MyCompany". 
    
    С помощью командлета Get-Item эта команда получает элемент, представляющий 
    раздел реестра. Объект передается командлету Remove-ItemProperty с помощью 
    оператора конвейера (|). Для задания имени значения реестра используется па
    раметр Name командлета Remove-ItemProperty.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113374
    about_Providers 
    Clear-ItemProperty 
    Copy-ItemProperty 
    Get-ItemProperty 
    Move-ItemProperty 
    New-ItemProperty 
    Remove-Item 
    Rename-ItemProperty 
    Set-ItemProperty 
    



Remove-Job

ИМЯ
    Remove-Job
    
ОПИСАНИЕ
    Удаляет фоновое задание Windows PowerShell.
    
СИНТАКСИС
    Remove-Job [-Id] <Int32[]> [-Force] [-Confirm] [-WhatIf] [<CommonParameters
    >]
    
    Remove-Job [-Command <string[]>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Remove-Job [[-InstanceId] <Guid[]>] [-Force] [-Confirm] [-WhatIf] [<CommonP
    arameters>]
    
    Remove-Job [-Job] <Job[]> [-Force] [-Confirm] [-WhatIf] [<CommonParameters>
    ]
    
    Remove-Job [[-Name] <string[]>] [-Force] [-Confirm] [-WhatIf] [<CommonParam
    eters>]
    
    Remove-Job [-State {NotStarted | Running | Completed | Failed | Stopped | B
    locked}] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Remove-Job удаляет фоновые задания Windows PowerShell, которые бы
    ли запущены с использованием командлета Start-Job или параметра AsJob любог
    о командлета.
    
    Этот командлет можно использовать для удаления всех или выбранных заданий п
    о имени, идентификатору, идентификатору экземпляра, команде или состоянию, 
    либо передав объект задания командлету Remove-Job. Если команда Remove-Job 
    вводится без параметров или значений параметров, она не оказывает никакого 
    действия.
    
    Перед удалением выполняемого задания остановите его с помощью командлета St
    op-Job. Попытка удалить выполняемое задание приведет к завершению команды с
     ошибкой. Для удаления выполняемого задания используется параметр Force ком
    анды Remove-Job.
    
    Если не удалить фоновое задание, оно останется в глобальном кэше заданий до
     тех пор, пока не будет закрыт сеанс, в рамках которого было создано задани
    е.
    
ПАРАМЕТРЫ
    -Command <string[]>
        Удаляет задания, в команды которых входят заданные слова.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Удаляет задание, даже если его состояние имеет значение "Running". Без 
        указания параметра Force команда Remove-Job не удалит выполняемое задан
        ие.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Id <Int32[]>
        Удаляет фоновые задания с указанными идентификаторами.  
        
        ID — это целое значение, которое однозначно определяет задание в предел
        ах текущего сеанса. Это значение проще запомнить и ввести, чем идентифи
        катор экземпляра, но оно уникально только в рамках текущего сеанса. Мож
        но ввести один или несколько идентификаторов (разделенных запятыми). Чт
        обы найти значение идентификатора задания, введите "Get-Job" без параме
        тров.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -InstanceId <Guid[]>
        Удаляет задания с указанными идентификаторами экземпляров. 
        
        Идентификатор экземпляра — это GUID, который однозначно определяет зада
        ние на компьютере. Чтобы определить идентификатор экземпляра задания, и
        спользуйте командлет Get-Job или выведите сведения об объекте задания.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Job <Job[]>
        Указывает задания, которые требуется удалить. Укажите переменную, содер
        жащую задания, либо введите команду, получающую их. Для передачи задани
        й командлету Remove-Job можно также использовать оператор конвейера.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Удаляет только задания с указанными понятными именами. Подстановочные з
        наки разрешены.
        
        Поскольку понятное имя может быть не уникальным даже в рамках сеанса, п
        ри удалении заданий по имени следует использовать параметры WhatIf и Co
        nfirm.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -State <JobState>
        Удаляет только задания с указанным состоянием. Допустимые значения: "No
        tStarted", "Running", "Completed", "Stopped", "Failed" и "Blocked". Для
         удаления заданий с состоянием "Running" используйте параметр Force.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.Job
        Объект задания можно передать командлету Remove-Job по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$batch = get-job -name BatchJob
    
    C:\PS> $batch | remove-job
    
    
    Описание
    -----------
    Эти команды удаляют фоновое задание BatchJob из текущего сеанса. Первая ком
    анда использует командлет Get-Job для получения объекта, представляющего за
    дание, а затем сохраняет задание в переменной $batch. Вторая команда переда
    ет задание в командлет Remove-Job с помощью оператора конвейера (|).
    
    Эта команда эквивалентна использованию параметра Job командлета Remove-Job,
     например "remove-job -job $batch".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-job | remove-job
    
    
    Описание
    -----------
    Эта команда удаляет все задания в текущем сеансе.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>remove-job -state NotStarted
    
    
    Описание
    -----------
    Эта команда удаляет в текущем сеансе все задания, которые еще не были запущ
    ены.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>remove-job -name *batch -force
    
    
    Описание
    -----------
    Эта команда удаляет в текущем сеансе все задания, понятные имена которых за
    канчиваются на "batch", в том числе выполняемые задания. 
    
    Параметр Name командлета Remove-Job используется для указания шаблона имени
     задания, а параметр Force — для обеспечения удаления всех заданий, включая
     задания, которые могут выполняться в данный момент.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$j = invoke-command -computername Server01 -scriptblock {get-process}
     -asJob
    
    C:\PS> $j | remove-job
    
    
    Описание
    -----------
    В этом примере показано, как использовать командлет Remove-Job для удаления
     задания, запущенного на удаленном компьютере с использованием параметра As
    Job командлета Invoke-Command.
    
    Первая команда использует командлет Invoke-Command для запуска задания на к
    омпьютере Server01. Параметр AsJob используется для запуска команды в виде 
    фонового задания. Полученный объект задания сохраняется в переменной $j.
    
    Поскольку в команде используется параметр AsJob, объект задания создается н
    а локальном компьютере, даже если само задание выполняется на удаленном ком
    пьютере. Поэтому для управления заданием можно использовать локальные коман
    ды.
    
    Вторая команда удаляет задание с помощью командлета Remove-Job. Для передач
    и задания, сохраненного в переменной $j, в командлет Remove-Job используетс
    я оператор конвейера (|). Обратите внимание, что это локальная команда. Для
     удаления задания, запущенного на удаленном компьютере с использованием пар
    аметра AsJob, удаленная команда не требуется.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>$s = new-pssession -computername Server01
    
    C:\PS> invoke-command -session $s -scriptblock {start-job -scriptblock {get
    -process} -name MyJob}
    
    C:\PS> invoke-command -session $s -scriptblock {remove-job -name MyJob}
    
    
    Описание
    -----------
    В этом примере показано, как удалить задание, запущенное с использованием к
    омандлета Invoke-Command для выполнения команды Start-Job. В этом случае об
    ъект задания создается на удаленном компьютере, а для управления заданием и
    спользуются удаленные команды.
    
    Первая команда создает сеанс PSSession (постоянное подключение) для компьют
    ера Server01 с использованием командлета New-PSSession. Постоянное подключе
    ние необходимо для удаленного выполнения команды Start-Job. Команда сохраня
    ет сеанс PSSession в переменной $s.
    
    Вторая команда использует командлет Invoke-Command для выполнения команды S
    tart-Job в сеансе PSSession, указанном в переменной $s. Задание запускает к
    оманду Get-Process. Параметр Name командлета Start-Job используется для зад
    ания понятного имени нового задания.
    
    Третья команда использует командлет Invoke-Command для выполнения команды R
    emove-Job в сеансе PSSession, указанном в переменной $s. Команда использует
     параметр Name командлета Remove-Job для указания удаляемого задания.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>$j = start-job -script {get-process powershell}
    
    C:\PS> $j | format-list -property *
    
    C:\PS> remove-job -instanceID dce2ee73-f8c9-483e-bdd7-a549d8687eed
    
    C:\PS> $j = start-job -script {get-process powershell}
    
    C:\PS> $j | format-list -property *
    
    HasMoreData   : False
    StatusMessage :
    Location      : localhost
    Command       : get-process powershell
    JobStateInfo  : Failed
    Finished      : System.Threading.ManualResetEvent
    InstanceId    : dce2ee73-f8c9-483e-bdd7-a549d8687eed
    Id            : 1
    Name          : Job1
    ChildJobs     : {Job2}
    Output        : {}
    Error         : {}
    Progress      : {}
    Verbose       : {}
    Debug         : {}
    Warning       : {}
    StateChanged  :
    
    C:\PS> remove-job -instanceID dce2ee73-f8c9-483e-bdd7-a549d8687eed
    
    
    Описание
    -----------
    В этом примере показано, как удалить задание, используя его идентификатор э
    кземпляра. 
    
    Первая команда использует командлет Start-Job для запуска фонового задания.
     Полученный объект задания сохраняется в переменной $j.
    
    Вторая команда передает объект задания, указанный в переменной $j, в команд
    у Format-List с помощью оператора конвейера (|). Команда Format-List исполь
    зует параметр Property со значением * (все) для отображения всех свойств об
    ъекта задания в списке.
    
    Для объекта задания отображаются значения свойств ID и InstanceID, а также 
    других свойств объекта. 
    
    Третья команда использует команду Remove-Job для удаления задания в текущем
     сеансе. Чтобы создать команду, можно скопировать значение InstanceID из от
    ображения объекта и вставить его. 
    
    Чтобы скопировать значение в консоли Windows PowerShell, выделите его мышью
     и нажмите клавишу ВВОД. Чтобы вставить значение, щелкните правой кнопкой м
    ыши.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113377
    about_Jobs 
    about_Job_Details 
    about_Remote_Jobs 
    Start-Job 
    Get-Job 
    Receive-Job 
    Wait-Job 
    Stop-Job 
    Invoke-Command 



Remove-Module

ИМЯ
    Remove-Module
    
ОПИСАНИЕ
    Удаляет модули из текущего сеанса.
    
СИНТАКСИС
    Remove-Module [-ModuleInfo] <PSModuleInfo[]> [-Force] [-Confirm] [-WhatIf] 
    [<CommonParameters>]
    
    Remove-Module [-Name] <string[]> [-Force] [-Confirm] [-WhatIf] [<CommonPara
    meters>]
    
    
ОПИСАНИЕ
    Командлет Remove-Module удаляет члены модуля из текущего сеанса. 
    
    Если модуль содержит сборку (DLL), все члены, реализованные в сборке, удаля
    ются, но сборка не выгружается.
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Удаляет модули, даже если свойство AccessMode имеет значение ReadOnly.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ModuleInfo <PSModuleInfo[]>
        Задает объекты модулей, которые требуется удалить. Введите переменную, 
        содержащую объект модуля (PSModuleInfo), либо команду, получающую объек
        т модуля, например Get-Module. Кроме того, можно передать объекты модул
        ей в Remove-Module с помощью конвейера.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Определяет имена удаляемых модулей.  Подстановочные знаки разрешены. Кр
        оме того, можно передать строки имени в Remove-Module с помощью конвейе
        ра.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  true
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String, System.Management.Automation.PSModuleInfo
        Имена модулей (строки) и объекты модулей можно передать в Remove-Module
         по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет Remove-Module не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Remove-Module также можно вызывать с помощью псевдонима "rmo"
        . Дополнительные сведения см. в разделе about_Aliases.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>remove-module -name BitsTransfer
    
    
    Описание
    -----------
    Эта команда удаляет модуль BitsTransfer из текущего сеанса.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-module | remove-module
    
    
    Описание
    -----------
    Эта команда удаляет все модули из текущего сеанса.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>"FileTransfer", "PSDiagnostics" | remove-module -verbose
    
    VERBOSE: Performing operation "Remove-Module" on Target "filetransfer (Path
    : 'C:\Windows\system32\WindowsPowerShell\v1.0\Modules\f
    iletransfer\filetransfer.psd1')".
    VERBOSE: Performing operation "Remove-Module" on Target "Microsoft.Backgrou
    ndIntelligentTransfer.Management (Path: 'C:\Windows\
    assembly\GAC_MSIL\Microsoft.BackgroundIntelligentTransfer.Management\1.0.0.
    0__31bf3856ad364e35\Microsoft.BackgroundIntelligentTransfe
    r.Management.dll')".
    VERBOSE: Performing operation "Remove-Module" on Target "psdiagnostics (Pat
    h: 'C:\Windows\system32\WindowsPowerShell\v1.0\Modules\
    psdiagnostics\psdiagnostics.psd1')".
    VERBOSE: Removing imported function 'Start-Trace'.
    VERBOSE: Removing imported function 'Stop-Trace'.
    VERBOSE: Removing imported function 'Enable-WSManTrace'.
    VERBOSE: Removing imported function 'Disable-WSManTrace'.
    VERBOSE: Removing imported function 'Enable-PSWSManCombinedTrace'.
    VERBOSE: Removing imported function 'Disable-PSWSManCombinedTrace'.
    VERBOSE: Removing imported function 'Set-LogProperties'.
    VERBOSE: Removing imported function 'Get-LogProperties'.
    VERBOSE: Removing imported function 'Enable-PSTrace'.
    VERBOSE: Removing imported function 'Disable-PSTrace'.
    VERBOSE: Performing operation "Remove-Module" on Target "PSDiagnostics (Pat
    h: 'C:\Windows\system32\WindowsPowerShell\v1.0\Modules\
    psdiagnostics\PSDiagnostics.psm1')".
    
    
    Описание
    -----------
    Эта команда удаляет модули FileTransfer и PSDiagnostics из текущего сеанса.
    
    Команда передает имена модулей в командлет Remove-Module с помощью оператор
    а конвейера (|). Общий параметр Verbose используется для получения подробно
    й информации об удаляемых членах.
    
    Подробные сообщения описывают удаляемые элементы. Эти сообщения различаются
    , поскольку модуль BitsTransfer включает сборку, реализующие его командлеты
    , и вложенный модуль с собственной сборкой. Модуль PSDiagnostics включает ф
    айл скрипта модуля (PSM1), который экспортирует функции.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$a = get-module BitsTransfer
    
    C:\PS> remove-module -moduleInfo $a
    
    
    Описание
    -----------
    Эта команда удаляет модуль BitsTransfer с использованием параметра ModuleIn
    fo.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=141556
    Get-Module 
    Import-Module 
    about_modules 



Remove-PSBreakpoint

ИМЯ
    Remove-PSBreakpoint
    
ОПИСАНИЕ
    Удаляет из текущей консоли точки останова.
    
СИНТАКСИС
    Remove-PSBreakpoint [-Id] <Int32[]> [-Confirm] [-WhatIf] [<CommonParameters
    >]
    
    Remove-PSBreakpoint [-Breakpoint] <Breakpoint[]> [-Confirm] [-WhatIf] [<Com
    monParameters>]
    
    
ОПИСАНИЕ
    Командлет Remove-PSBreakpoint удаляет точку останова. Введите объект или ид
    ентификатор точки останова.
    
    При удалении точки останова объект точки останова становится недоступным и 
    перестает функционировать. Если объект точки останова был сохранен в переме
    нной, ссылка сохранится, но точка останова не будет работать.
    
    Remove-PSBreakpoint — это один из нескольких командлетов, предназначенных д
    ля отладки скриптов Windows PowerShell. Дополнительные сведения об отладчик
    е Windows PowerShell см. в разделе about_Debuggers.
    
ПАРАМЕТРЫ
    -Breakpoint <Breakpoint[]>
        Задает точки останова для удаления. Введите переменную, содержащую объе
        кты точек останова, либо команду, получающую объекты точек останова, на
        пример Get-PSBreakpoint. Кроме того, можно передать объекты точек остан
        ова командлету Remove-PSBreakpoint по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Id <Int32[]>
        Удаляет точки останова с заданными идентификаторами.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.Breakpoint
        Кроме того, можно передать объекты точек останова командлету Remove-PSB
        reakpoint по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-breakpoint | remove-breakpoint
    
    
    Описание
    -----------
    Эта команда удаляет все точки останова в текущей консоли.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$b = set-psbreakpoint -script sample.ps1 -variable Name
    
    C:\PS> $b | remove-psbreakpoint
    
    
    Описание
    -----------
    Эта команда удаляет точку останова.
    
    Первая команда использует командлет Set-PSBreakpoint, чтобы создать точку о
    станова на переменной Name в скрипте Sample.ps1. После этого она сохраняет 
    в переменной $b объект точки останова.
    
    Вторая команда использует командлет Remove-PSBreakpoint, чтобы удалить эту 
    новую точку останова. С помощью оператора конвейера (|) она передает объект
     точки останова в переменной $b командлету Remove-PSBreakpoint.
    
    В результате выполнения этой команды при запуске скрипта он будет выполнен 
    до конца без остановки. Кроме того, командлет Get-PSBreakpoint не будет воз
    вращать эту точку останова.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>remove-psbreakpoint -id 2
    
    
    Описание
    -----------
    Эта команда удаляет точку останова с идентификатором 2.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>function del-psb { get-psbreakpoint | remove-psbreakpoint }
    
    
    Описание
    -----------
    Эта простая функция удаляет все точки останова в текущей консоли. С помощью
     командлета Get-PSBreakpoint она получает точки останова. Затем с помощью о
    ператора конвейера (|) она передает точки останова командлету Remove-PSBrea
    kpoint, который удаляет их. 
    
    В результате вместо более длинной команды пользователь вводит "del-psb".
    
    Чтобы сохранить эту функцию, ее следует добавить в профиль Windows PowerShe
    ll.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113375
    about_Debuggers 
    Set-PSBreakpoint 
    Get-PSBreakpoint 
    Enable-PSBreakpoint 
    Disable-PSBreakpoint 
    Get-PSCallStack 



Remove-PSDrive

ИМЯ
    Remove-PSDrive
    
ОПИСАНИЕ
    Удаляет диск Windows PowerShell из заданного местоположения.
    
СИНТАКСИС
    Remove-PSDrive [-LiteralName] <string[]> [-Force] [-PSProvider <string[]>] 
    [-Scope <string>] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters
    >]
    
    Remove-PSDrive [-Name] <string[]> [-Force] [-PSProvider <string[]>] [-Scope
     <string>] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Remove-PSDrive удаляет диски Windows PowerShell, созданные с помо
    щью командлета New-PSDrive. 
    
    Командлет Remove-PSDrive не может удалить диски Windows или подключенные се
    тевые диски, созданные с помощью других методов, и не может удалить текущий
     рабочий диск.
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Позволяет командлету удалить текущий диск Windows PowerShell.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralName <string[]>
        Задает имя диска Windows PowerShell. 
        
        Значение параметра LiteralName используется точно в том виде, в котором
         оно введено. Никакие символы не интерпретируются как подстановочные зн
        аки. Если имя включает escape-символы, его нужно заключить в одиночные 
        кавычки ('). Одиночные кавычки указывают оболочке Windows PowerShell, ч
        то никакие символы не следует интерпретировать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена удаляемых дисков Windows PowerShell. Не следует вводить дв
        оеточие (:) после имени диска.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PSProvider <string[]>
        Удаляет все диски Windows PowerShell, связанные с указанным поставщиком
         Windows PowerShell.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Scope <string>
        Принимает индекс, указывающий область, из которой удаляется диск.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSDriveInfo
        Объект диска можно передать командлету Remove-PSDrive по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Remove-PSDrive предназначен для работы с данными, предоставля
        емыми любым поставщиком. Чтобы получить список поставщиков, доступных в
         текущем сеансе, введите команду "get-psprovider". Дополнительные сведе
        ния см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>remove-psdrive -name smp
    
    
    Описание
    -----------
    Эта команда удаляет диск Windows PowerShell с именем "smp".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113376
    about_Providers 
    Get-PSDrive 
    New-PSDrive 



Remove-PSSession

ИМЯ
    Remove-PSSession
    
ОПИСАНИЕ
    Закрывает один или несколько сеансов Windows PowerShell (PSSession).
    
СИНТАКСИС
    Remove-PSSession [[-ComputerName] <string[]>] [-Confirm] [-WhatIf] [<Common
    Parameters>]
    
    Remove-PSSession [-Id] <Int32[]> [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Remove-PSSession [-InstanceId <Guid[]>] [-Confirm] [-WhatIf] [<CommonParame
    ters>]
    
    Remove-PSSession [-Name <string[]>] [-Confirm] [-WhatIf] [<CommonParameters
    >]
    
    Remove-PSSession [-Session] <PSSession[]> [-Confirm] [-WhatIf] [<CommonPara
    meters>]
    
    
ОПИСАНИЕ
    Командлет Remove-PSSession закрывает сеансы Windows PowerShell (PSSession) 
    в текущем сеансе. Он останавливает все команды, выполняющиеся в сеансах PSS
    ession, закрывает сеанс PSSession и освобождает ресурсы, используемые таким
     сеансом. Если сеанс PSSession подключен к удаленному компьютеру, командлет
     Remove-PSSession также закрывает подключение между локальным и удаленным к
    омпьютерами.
    
    Чтобы удалить сеанс PSSession, введите имя сеанса, имя компьютера, идентифи
    катор или идентификатор экземпляра сеанса (параметр Name, ComputerName, ID 
    или InstanceID соответственно), 
    
    Если сеанс PSSession сохранен в переменной, объект сеанса остается в переме
    нной, но состояние сеанса изменяется на "Closed".
    
ПАРАМЕТРЫ
    -ComputerName <string[]>
        Закрывает сеансы PSSession, связанные с указанными компьютерами. Подста
        новочные знаки разрешены. 
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескол
        ьких удаленных компьютеров. Чтобы указать локальный компьютер, введите 
        имя компьютера, "localhost" или точку (.).
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -Id <Int32[]>
        Закрывает сеансы PSSession с указанными идентификаторами. Введите один 
        или несколько идентификаторов (разделенных запятыми) или используйте оп
        ератор диапазона (..), чтобы задать диапазон идентификаторов.
        
        Идентификатор — это целое значение, которое однозначно определяет сеанс
         PSSession в пределах текущего сеанса. Это значение проще запомнить и в
        вести, чем InstanceId, но оно уникально только в рамках текущего сеанса
        .  Чтобы определить идентификатор сеанса PSSession, используйте команду
         Get-PSSession без параметров.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -InstanceId <Guid[]>
        Закрывает сеансы PSSession с указанными идентификаторами экземпляров.
        
        Идентификатор экземпляра — это GUID, который однозначно определяет сеан
        с PSSession в пределах текущего сеанса. Идентификатор InstanceID являет
        ся уникальным даже при выполнении нескольких сеансов на одном компьютер
        е.
        
        Идентификатор экземпляра InstanceID хранится в свойстве InstanceID объе
        кта, представляющего сеанс PSSession. Чтобы определить идентификаторы э
        кземпляров InstanceID сеансов PSSession в текущем сеансе, введите коман
        ду "get-pssession | format-table Name, ComputerName, InstanceId".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Закрывает сеансы PSSession с указанными понятными именами. Подстановочн
        ые знаки разрешены.
        
        Поскольку понятное имя сеанса PSSession может быть не уникальным, при и
        спользовании параметра Name следует рассмотреть возможность использован
        ия параметра WhatIf или Confirm в команде Remove-PSSession.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -Session <PSSession[]>
        Указывает объекты сеансов PSSession, которые требуется закрыть.  Введит
        е переменную, содержащую объекты PSSession, либо команду, создающую или
         получающую объекты PSSession, например New-PSSession или Get-PSSession
        . Кроме того, можно передать один или несколько объектов сеансов в Remo
        ve-PSSession по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.Runspaces.PSSession
        Можно передать объект сеанса командлету Remove-PSSession по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет Remove-PSSession не возвращает никаких объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        Параметр ID является обязательным. Нельзя вводить команду remove-pssess
        ion без параметров. Чтобы удалить все сеансы PSSession в текущем сеансе
        , введите команду "get-pssession | remove-pssession".
        
        В сеансе PSSession используется постоянное подключение к удаленному ком
        пьютеру. Сеанс PSSession следует создать для выполнения последовательно
        сти команд, работающих с общими данными. Дополнительные сведения см. в 
        разделе about_PSSessions.
        
        Сеансы PSSession относятся к текущему сеансу. При закрытии сеанса созда
        нные в нем сеансы PSSession принудительно закрываются.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>remove-pssession -id 1, 2
    
    
    Описание
    -----------
    Эта команда удаляет сеансы PSSession с идентификаторами "1" и "2".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-pssession | remove-pssession 
    
    C:\PS> remove-pssession -session (get-pssession)
    
    C:\PS> $s = get-pssession 
    C:\PS> remove-pssession -session $s".
    
    
    Описание
    -----------
    Эти команды удаляют все сеансы PSSession в текущем сеансе. Несмотря на то ч
    то три команды имеют различный формат, они выполняют одни и те же действия.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$r = get-pssession -computername Serv*
    
    $r | remove-pssession
    
    
    Описание
    -----------
    Эти команды закрывают сеансы PSSession, связанные с компьютерами, имена кот
    орых начинаются на "Serv".
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-pssession | where {$_.port -eq 90} | remove-pssession
    
    
    Описание
    -----------
    Эта команда закрывает сеансы PSSession, подключенные к порту 90. С помощью 
    этого формата команды можно задать сеансы PSSession, используя свойства, от
    личные от ComputerName, Name, InstanceID и ID.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-pssession | ft computername, instanceID  -auto
    
    ComputerName InstanceId
    ------------ ----------------
    Server01     875d231b-2788-4f36-9f67-2e50d63bb82a
    localhost    c065ffa0-02c4-406e-84a3-dacb0d677868
    Server02     4699cdbc-61d5-4e0d-b916-84f82ebede1f
    Server03     4e5a3245-4c63-43e4-88d0-a7798bfc2414
    TX-TEST-01   fc4e9dfa-f246-452d-9fa3-1adbdd64ae85
    
    C:\PS> remove-pssession -InstanceID fc4e9dfa-f246-452d-9fa3-1adbdd64ae85
    
    
    Описание
    -----------
    Эти команды закрывают сеанс PSSession, используя его идентификатор экземпля
    ра (RemoteRunspaceID). 
    
    Первая команда получает сведения о сеансах PSSession в текущем сеансе с исп
    ользованием командлета Get-PSsession. С помощью оператора конвейера (|) сеа
    нсы PSSession передаются командлету Format-Table (псевдоним: ft), который ф
    орматирует их свойства ComputerName и InstanceID в виде таблицы. Параметр A
    utoSize ("auto") сжимает столбцы при отображении.
    
    В отображаемых результатах можно найти сеанс PSSession, который требуется з
    акрыть, а затем скопировать и вставить его свойство InstanceID во вторую ко
    манду. 
    
    Вторая команда использует командлет Remove-PSSession для удаления сеанса PS
    Session с указанным идентификатором экземпляра.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>function EndPSS { get-pssession | remove-pssession }
    
    
    Описание
    -----------
    Эта функция удаляет все сеансы PSSession в текущем сеансе. После добавления
     этой функции в профиль Windows PowerShell для удаления всех сеансов достат
    очно будет ввести "endpss".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135250
    about_PSSessions 
    about_Remote 
    New-PSSession 
    Get-PSSession 
    Enter-PSSession 
    Exit-PSSession 
    Invoke-Command 



Remove-PSSnapin

ИМЯ
    Remove-PSSnapin
    
ОПИСАНИЕ
    Удаляет оснастки Windows PowerShell из текущего сеанса.
    
СИНТАКСИС
    Remove-PSSnapin [-Name] <string[]> [-PassThru] [-Confirm] [-WhatIf] [<Commo
    nParameters>]
    
    
ОПИСАНИЕ
    Командлет Remove-PSSnapin удаляет оснастку Windows PowerShell из текущего с
    еанса. Он используется для удаления оснасток, которые были добавлены в обол
    очку Windows PowerShell, но его нельзя использовать для удаления оснасток, 
    установленных вместе с Windows PowerShell. 
    
    После удаления оснастки из текущего сеанса она остается загруженной, однако
     командлеты и поставщики оснастки будут недоступны в данном сеансе.
    
ПАРАМЕТРЫ
    -Name <string[]>
        Задает имена оснасток Windows PowerShell, которые требуется удалить из 
        текущего сеанса. Имя параметра ("Name") указывать необязательно. В знач
        ении разрешается использовать подстановочные знаки (*).
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий оснастку. По умолчанию этот командлет
         не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSSnapInInfo
        Можно передать объект оснастки командлету Remove-PSSnapin по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PSSnapInInfo
        По умолчанию командлет Remove-PsSnapin не формирует никаких выходных да
        нных. При использовании параметра PassThru командлет создает объект Sys
        tem.Management.Automation.PSSnapInInfo, представляющий оснастку.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Remove-PSSnapin также можно вызывать с помощью встроенного пс
        евдонима "rsnp". Дополнительные сведения см. в разделе about_Aliases.
        
        Командлет Remove-PSSnapin не проверяет версию Windows PowerShell перед 
        удалением оснастки из сеанса. Если оснастка не может быть удалена, отоб
        ражается предупреждение, и команда завершается с ошибкой.
        
        Командлет Remove-PSSnapin влияет только на текущий сеанс. Если в профил
        ь Windows PowerShell добавлена команда Add-PSSnapin, для удаления оснас
        тки из будущих сеансов эту команду следует удалить. Инструкции см. в ра
        зделе about_Profiles.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>remove-pssnapin -name Microsoft.Exchange
    
    
    Описание
    -----------
    Эта команда удаляет из текущего сеанса оснастку Microsoft.Exchange. После в
    ыполнения команды командлеты и поставщики, поддерживаемые этой оснасткой, б
    удут недоступны в этом сеансе.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-PSSnapIn smp* | remove-PSSnapIn
    
    
    Описание
    -----------
    Эта команда удаляет из текущего сеанса оснастки Windows PowerShell, имена к
    оторых начинаются с "smp".
    
    С помощью командлета Get-PSSnapin команда получает объекты, представляющие 
    оснастки. Оператор конвейера (|) передает результаты командлету Remove-PSSn
    apin, который удаляет их из сеанса. Поддерживаемые оснасткой поставщики и к
    омандлеты более не доступны в сеансе.
    
    При передаче объектов командлету Remove-PSSnapin по конвейеру имена объекто
    в связываются с параметром Name, который принимает по конвейеру объекты, со
    держащие свойство Name.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>remove-pssnapin -name *event*
    
    
    Описание
    -----------
    Эта команда удаляет все оснастки Windows PowerShell, в именах которых содер
    жится слово "event". В этой команде используется имя параметра "Name", одна
    ко имя параметра можно опустить, поскольку оно является необязательным.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113378
    Add-PSSnapin 
    Get-PSSnapin 
    about_Profiles 



Remove-Variable

ИМЯ
    Remove-Variable
    
ОПИСАНИЕ
    Удаляет переменную и ее значение.
    
СИНТАКСИС
    Remove-Variable [-Name] <string[]> [-Exclude <string[]>] [-Force] [-Include
     <string[]>] [-Scope <string>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Remove-Variable удаляет переменную вместе с ее значением из облас
    ти, в которой она определена, например из текущей консоли. Этот командлет н
    ельзя использовать для удаления переменных, определенных как константы, и с
    истемных переменных.
    
ПАРАМЕТРЫ
    -Exclude <string[]>
        Исключает указанные элементы. Значение данного параметра определяет зна
        чение параметра Name. Введите часть имени или шаблон, например "s*". По
        дстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету удалить переменную, даже если файл доступен только
         для чтения. Даже при использовании параметра Force командлет не может 
        удалить константу.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Удаляет только указанные элементы. Значение данного параметра определяе
        т значение параметра Name. Введите часть имени или шаблон, например "s*
        ". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Указывает имя удаляемой переменной. Имя параметра ("Name") указывать не
        обязательно.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Scope <string>
        Задает область действия псевдонима. Допустимые значения: "Global", "Loc
        al", "Script" или номер относительно текущей области (от 0 до количеств
        а областей, где 0 — текущая область, а 1 — ее родительская область). По
         умолчанию используется значение "Local". Дополнительные сведения см. в
         разделе about_Scopes.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSVariable
        Кроме того, можно передать объект переменной командлету Remove-Variable
         по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Изменения действуют только в пределах текущей области, например сеанса.
         Чтобы удалить переменную из всех сеансов, следует добавить в профиль W
        indows PowerShell команду Remove-Variable.
        
        Командлет Remove-Variable также можно вызывать с помощью встроенного пс
        евдонима "rv". Дополнительные сведения см. в разделе About_Aliases.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>remove-variable Smp
    
    
    Описание
    -----------
    Эта команда удаляет переменную $Smp.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113380
    Set-Variable 
    Get-Variable 
    Clear-Variable 
    New-Variable 
    about_Profiles 



Remove-WmiObject

ИМЯ
    Remove-WmiObject
    
ОПИСАНИЕ
    Удаляет экземпляр существующего класса инструментария управления Windows (W
    MI).
    
СИНТАКСИС
    Remove-WmiObject [-Class] <string> [-Authentication {Default | None | Conne
    ct | Call | Packet | PacketIntegrity | PacketPrivacy | Unchanged}] [-Author
    ity <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-Ena
    bleAllPrivileges] [-Impersonation {Default | Anonymous | Identify | Imperso
    nate | Delegate}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-Throt
    tleLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Remove-WmiObject [-Authentication {Default | None | Connect | Call | Packet
     | PacketIntegrity | PacketPrivacy | Unchanged}] [-Authority <string>] [-Co
    mputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] 
    [-Impersonation {Default | Anonymous | Identify | Impersonate | Delegate}] 
    [-Locale <string>] [-Namespace <string>] [-AsJob] [-ThrottleLimit <int>] [-
    Confirm] [-WhatIf] [<CommonParameters>]
    
    Remove-WmiObject -InputObject <ManagementObject> [-AsJob] [-ThrottleLimit 
    int>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Remove-WmiObject -Path <string> [-Authentication {Default | None | Connect 
    | Call | Packet | PacketIntegrity | PacketPrivacy | Unchanged}] [-Authority
     <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-Enable
    AllPrivileges] [-Impersonation {Default | Anonymous | Identify | Impersonat
    e | Delegate}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-Throttle
    Limit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Remove-WmiObject [-Authentication {Default | None | Connect | Call | Packet
     | PacketIntegrity | PacketPrivacy | Unchanged}] [-Authority <string>] [-Co
    mputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] 
    [-Impersonation {Default | Anonymous | Identify | Impersonate | Delegate}] 
    [-Locale <string>] [-Namespace <string>] [-AsJob] [-ThrottleLimit <int>] [-
    Confirm] [-WhatIf] [<CommonParameters>]
    
    Remove-WmiObject [-Authentication {Default | None | Connect | Call | Packet
     | PacketIntegrity | PacketPrivacy | Unchanged}] [-Authority <string>] [-Co
    mputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] 
    [-Impersonation {Default | Anonymous | Identify | Impersonate | Delegate}] 
    [-Locale <string>] [-Namespace <string>] [-AsJob] [-ThrottleLimit <int>] [-
    Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Remove-WmiObject удаляет экземпляр существующего класса WMI.
    
ПАРАМЕТРЫ
    -AsJob [<SwitchParameter>]
        Запускает команду в качестве фонового задания.  Этот параметр служит дл
        я запуска команд, выполнение которых занимает длительное время.
        Запускает команду в качестве фонового задания. Этот параметр служит для
         запуска команд, выполнение которых занимает длительное время.
        
        При использовании параметра AsJob команда возвращает объект, представля
        ющий фоновое задание, а затем отображает командную строку. Пока задание
         выполняется можно продолжать работу в сеансе. Если командлет Remove-Wm
        iObject используется для работы с удаленным компьютером, задание создае
        тся на локальном компьютере, и результаты с удаленных компьютеров автом
        атически возвращаются на локальный компьютер. Для управления заданием и
        спользуйте командлеты, в именах которых содержится существительное Job 
        (командлеты Job). Чтобы получить результаты задания, используйте команд
        лет Receive-Job.
        
        Примечание. Чтобы использовать этот параметр для удаленных компьютеров,
         для локального и удаленного компьютеров должно быть настроено удаленно
        е взаимодействие. Кроме того, при работе с компьютером под управлением 
        Windows Vista и более поздних версий Windows необходимо запускать Windo
        ws PowerShell командой "Запуск от имени администратора". Дополнительные
         сведения см. в разделе about_Remote_Requirements.
        
        Дополнительные сведения о фоновых заданиях в Windows PowerShell см. в р
        азделах about_Jobs и about_Remote_Jobs.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authentication <AuthenticationLevel>
        Задает уровень проверки подлинности, используемый для WMI-соединения. Д
        опустимые значения:
        
        -1: Unchanged
        0: Default
        1: None (проверка подлинности не используется).
        2: Connect (проверка подлинности выполняется только при установке клиен
        том подключения к приложению).
        3: Call (проверка подлинности выполняется только в начале каждого вызов
        а при получении запроса приложением).
        4: Packet (проверка подлинности выполняется при обработке всех данных, 
        полученных от клиента).
        5: PacketIntegrity (для всех данных, передаваемых между клиентом и прил
        ожением, проводится проверка подлинности и проверка целостности).
        6: PacketPrivacy (используются свойства других уровней проверки подлинн
        ости, все данные шифруются).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authority <string>
        Задает центр, который используется для проверки подлинности WMI-соедине
        ния. Можно указать стандартную проверку подлинности NTLM или Kerberos. 
        Чтобы использовать NTLM, задайте для параметра Authority значение "ntlm
        domain:<имя_домена>", где <имя_домена> — допустимое имя домена NTLM. Чт
        обы использовать Kerberos, укажите "kerberos:<имя_домена>\<имя_сервера>
        ". При подключении к локальному компьютеру нельзя использовать параметр
         Authority.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Class <string>
        Задает имя удаляемого класса WMI.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string[]>
        Задает компьютер, к которому требуется применить операцию управления. З
        начение может быть полным доменным именем, именем NetBIOS или IP-адресо
        м. Используйте имя локального компьютера, "localhost" или точку (.) что
        бы указать "Локальный компьютер". Локальный компьютер используется по у
        молчанию. Если пользователь и удаленный компьютер находятся в разных до
        менах, необходимо использовать полное доменное имя. Можно передать знач
        ение этому параметру по конвейеру.
         
        Этот параметр не использует функцию удаленного взаимодействия Windows P
        owerShell, которая использует протокол WS-Management. Параметр Computer
        Name командлета Get-WmiObject можно использовать, даже если компьютер н
        е настроен на выполнение удаленных команд по протоколу WS-Management.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". Введите имя пользователя, например "User01", "Domain01\
        User01" или "User@Contoso.com". Или укажите объект PSCredential, наприм
        ер объект, возвращенный командлетом Get-Credential. При вводе имени пол
        ьзователя появится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -EnableAllPrivileges [<SwitchParameter>]
        Включает все привилегии текущего пользователя перед вызовом WMI из кома
        нды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Impersonation <ImpersonationLevel>
        Задает используемый уровень олицетворения. Допустимые значения: 
        
        0: Default (считывает значение уровня представления по умолчанию из лок
        ального реестра, обычно это значение равняется "3: Impersonate").
        1: Anonymous (скрывает учетные данные вызывающего).
        2: Identify (позволяет объектам запрашивать учетные данные вызывающего)
        .
        3: Impersonate (позволяет объектам использовать учетные данные вызывающ
        его).
        4: Delegate (позволяет объектам разрешать другим объектам использовать 
        учетные данные вызывающего).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <ManagementObject>
        Задает объект ManagementObject, используемый в качестве входных данных.
         При использовании этого параметра все остальные параметры игнорируются
        .
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Locale <string>
        Задает предпочтительную локаль для объектов WMI. Значение параметра Loc
        ale задается как массив в формате MS_<LCID> в желаемом порядке.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Namespace <string>
        При использовании с параметром Class данный параметр задает пространств
        о имен хранилища WMI, в котором находится указанный класс WMI.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Задает путь к классу WMI или экземпляру класса WMI, который требуется у
        далить.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ThrottleLimit <int>
        Дает возможность пользователю указать пороговое значение количества опе
        раций WMI, которые могут выполняться одновременно. Этот параметр исполь
        зуется вместе с параметром AsJob. Ограничение скорости относится только
         к текущей команде, но не к сеансу или компьютеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.ManagementObject
        Объект управления можно передать командлету Remove-WmiObject по конвейе
        ру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    None или System.Management.Automation.RemotingJob
        Если задан параметр AsJob, этот командлет возвращает объект задания. В 
        противном случае командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>notepad   
    C:\PS> $np = get-wmiobject -query "select * from win32_process where name='
    notepad.exe'"
    C:\PS> $np | remove-wmiobject
    
    
    Описание
    -----------
    Эта команда закрывает все экземпляры программы Notepad.exe.
    
    Первая команда запускает экземпляр Блокнота (Notepad). 
    
    Во второй команде используется командлет Get-WmiObject для извлечения экзем
    пляров Win32_Process, соответствующих программе Notepad.exe, затем они сохр
    аняются в переменной $np. 
    
    Третья команда передает объект в переменной $np командлету Remove-WmiObject
    , который удаляет все экземпляры программы Notepad.exe.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$a = Get-WMIObject -query "Select * From Win32_Directory Where Name =
    'C:\\Test'"
    C:\PS> $a | Remove-WMIObject
    
    
    Описание
    -----------
    Эта команда удаляет каталог C:\Test.
    
    Первая команда с помощью командлета Get-WMIObject запрашивает каталог C:\Te
    st и сохраняет его в переменной $a.
    
    Вторая команда передает по конвейеру переменную $a командлету Remove-WMIObj
    ect, который удаляет каталог.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113381
    Get-WmiObject 
    Invoke-WmiMethod 
    Set-WmiInstance 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManInstance 
    Remove-WSManInstance 



Remove-WSManInstance

ИМЯ
    Remove-WSManInstance
    
ОПИСАНИЕ
    Удаляет экземпляр ресурса управления.
    
СИНТАКСИС
    Remove-WSManInstance [-ApplicationName <string>] [-ComputerName <string>] [
    -Port <int>] [-UseSSL] [[-SelectorSet] <hashtable>] [-AuthenticationMechani
    sm <AuthenticationMechanism>] [-Credential <PSCredential>] [-OptionSet <has
    htable>] [-ResourceURI <Uri>] [-SessionOption <hashtable>] [<CommonParamete
    rs>]
    
    Remove-WSManInstance [-ConnectionURI <Uri>] [[-SelectorSet] <hashtable>] [-
    AuthenticationMechanism <AuthenticationMechanism>] [-Credential <PSCredenti
    al>] [-OptionSet <hashtable>] [-ResourceURI <Uri>] [-SessionOption <hashtab
    le>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Remove-WSManInstance удаляет экземпляр ресурса управления, заданн
    ый параметрами ResourceURI и SelectorSet.
    
    Для удаления экземпляра ресурса управления командлет использует уровень сое
    динений/транспорта WinRM.
    
ПАРАМЕТРЫ
    -ApplicationName <string>
        Задает имя приложения для подключения. По умолчанию параметр Applicatio
        nName имеет значение "WSMAN". Полный идентификатор удаленной конечной т
        очки имеет следующий формат:
        
              <протокол>://<сервер>:<порт>/
        
        Пример:
        
              http://server01:8080/WSMAN
        
        Службы IIS, которые обрабатывают сеанс, перенаправляют запросы с данной
         конечной точкой указанному приложению. Значение по умолчанию "WSMAN" п
        одходит для большинства случаев. Этот параметр предназначен для использ
        ования, когда большое число компьютеров устанавливают удаленные подключ
        ения к одному компьютеру, на котором работает Windows PowerShell. В это
        м случае для повышения эффективности веб-службы WS-Management размещают
        ся в службах IIS.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                wsman
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -AuthenticationMechanism <AuthenticationMechanism>
        Задает механизм проверки подлинности, используемый на сервере. Возможны
        е значения:
        
        - Basic: при использовании схемы Basic имя пользователя и пароль переда
        ются серверу или прокси-серверу открытым текстом.
        - Default: использовать метод проверки подлинности, реализованный прото
        колом WS-Management. Это значение используется по умолчанию.
        - Digest: при использовании схемы Digest проверка подлинности проводитс
        я по принципу "запрос-ответ". В качестве запроса поступает строка данны
        х, указанная сервером.
        - Kerberos: выполняется взаимная проверка подлинности компьютера и серв
        ера с использованием сертификатов Kerberos.
        - Negotiate: при использовании схемы Negotiate между компьютером и серв
        ером или прокси происходит обмен данными по принципу "запрос-ответ", в 
        ходе которого определяется схема, используемая для проверки подлинности
        . Например, это значение параметра разрешает согласование одного из дву
        х методов проверки подлинности: Kerberos или NTLM.
        - CredSSP: использовать проверку подлинности CredSSP (Credential Securi
        ty Service Provider), при которой пользователю разрешается делегировать
         учетные данные. Этот вариант предназначен для команд, которые запускаю
        тся на одном удаленном компьютере, но собирают данные с других удаленны
        х компьютеров или выполняют на них дополнительные команды. 
        
        Внимание При проверке подлинности CredSSP учетные данные пользователя 
        делегируются с локального компьютера на удаленный компьютер. Такой подх
        од повышает угрозы безопасности удаленных операций. Если безопасность у
        даленного компьютера нарушена, при передаче на него учетных данных эти 
        данные могут быть использованы для управления сетевым сеансом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string>
        Задает компьютер, к которому требуется применить операцию управления. З
        начение может быть полным доменным именем, именем NetBIOS или IP-адресо
        м. Чтобы задать локальный компьютер, введите имя компьютера, "localhost
        " или точку (.). Локальный компьютер используется по умолчанию. Если по
        льзователь и удаленный компьютер находятся в разных доменах, необходимо
         использовать полное доменное имя. Значение этого параметра можно перед
        ать командлету по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                localhost
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ConnectionURI <Uri>
        Задает конечную точку соединения. Строка имеет следующий формат: 
        
             <протокол>://<сервер>:<порт>/
        
        Следующая строка представляет собой правильно отформатированное значени
        е для этого параметра: 
        
             http://Server01:8080/WSMAN
        
        Значение URI должно быть указано полностью.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". Введите имя пользователя, например "User01", "Domain01\
        User01" или "User@Domain.com". Или укажите объект PSCredential, наприме
        р возвращенный командлетом Get-Credential. При вводе имени пользователя
         появится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -OptionSet <hashtable>
        Передает службе набор параметров для изменения или уточнения запроса. П
        ередаваемые параметры похожи на параметры, используемые в оболочках ком
        андной строки: они зависят от конкретной службы. Можно задать произволь
        ное количество параметров. 
        
        В следующем примере показано синтаксическое выражение, позволяющее пере
        дать значения 1, 2 и 3 параметрам a, b и c соответственно:
        
              -OptionSet @{a=1;b=2;c=3}
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Port <int>
        Задает порт, используемый клиентом для подключения к службе WinRM. Если
         в качестве транспорта выбран HTTP, по умолчанию используется порт 80. 
        Если в качестве транспорта выбран HTTPS, по умолчанию используется порт
         443. При использовании в качестве транспорта HTTPS значение параметра 
        ComputerName должно соответствовать общему имени сертификата сервера. О
        днако, если в качестве элемента параметра SessionOption указан параметр
         SkipCNCheck, общее имя сертификата сервера не обязательно должно соотв
        етствовать имени узла сервера. Параметр SkipCNCheck следует использоват
        ь только в случае доверенных компьютеров.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ResourceURI <Uri>
        Содержит универсальный идентификатор ресурса (URI) экземпляра или класс
        а ресурса. URI используется для определения конкретного типа ресурса, н
        апример диска или процесса, на компьютере. 
        
        URI состоит из префикса и пути к ресурсу. Пример: 
        
             http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Log
        icalDisk
             http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSenso
        r
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SelectorSet <hashtable>
        Задает набор пар значений, которые используются для выбора конкретных э
        кземпляров ресурса управления. Параметр SelectorSet используется в случ
        ае существования нескольких экземпляров ресурса. Значение параметра Sel
        ectorSet представляет собой хэш-таблицу. 
        
        В следующем примере показано, как задать значение для этого параметра: 
        
            -SelectorSet @{Name="WinRM";ID="yyy"}
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -SessionOption <hashtable>
        Определяет расширенные параметры сеанса WS-Management. Введите объект S
        essionOption, созданный с помощью командлета New-WSManSessionOption. До
        полнительные сведения о доступных параметрах см. в разделе New-WSManSes
        sionOption.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseSSL [<SwitchParameter>]
        Указывает, что для установки подключения к удаленному компьютеру должен
         использоваться протокол SSL (Secure Sockets Layer). По умолчанию SSL н
        е используется. 
        
        Протокол WS-Management шифрует все передаваемое по сети содержимое Wind
        ows PowerShell. Параметр UseSSL позволяет указать, что необходимо испол
        ьзовать дополнительную меру защиты: протокол HTTPS вместо HTTP. Если ук
        азан этот параметр, однако используемый для подключения порт не поддерж
        ивает SSL, команда завершается с ошибкой.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает никаких входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Remove-WmiObject (один из командлетов инструментария управлен
        ия Windows [WMI]) аналогичен данному командлету. Для создания или обнов
        ления экземпляров WMI командлет Remove-WmiObject использует уровень сое
        динений/транспорта DCOM.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Remove-WSManInstance winrm/config/Listener -SelectorSet Address=test.
    fabrikam.com;Transport=http
    
    
    Описание
    -----------
    Удаляет HTTP-прослушиватель WS-Management на компьютере.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkId=141453
    Connect-WSMan 
    Disable-WSManCredSSP 
    Disconnect-WSMan 
    Enable-WSManCredSSP 
    Get-WSManCredSSP 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManInstance 
    New-WSManSessionOption 
    Set-WSManInstance 
    Set-WSManQuickConfig 
    Test-WSMan 
    Remove-WmiObject 



Rename-Item

ИМЯ
    Rename-Item
    
ОПИСАНИЕ
    Переименовывает элемент в пространстве имен поставщика Windows PowerShell.
    
СИНТАКСИС
    Rename-Item [-Path] <string> [-NewName] <string> [-Credential <PSCredential
    >] [-Force] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonPara
    meters>]
    
    
ОПИСАНИЕ
    Командлет Rename-Item изменяет имя указанного элемента. При использовании д
    анного командлета содержимое элемента не изменяется.
    
    Нельзя использовать командлет Rename-Item для перемещения элемента, наприме
    р, посредством задания пути вместе с новым именем. Чтобы переместить и пере
    именовать элемент, воспользуйтесь командлетом Move-Item.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету переименовать элементы, которые не могут быть изме
        нены другим образом, например скрытые файлы, файлы только для чтения, п
        севдонимы или переменные только для чтения. Командлет не может изменять
         псевдонимы или переменные, являющиеся константами. Реализация варьируе
        тся от поставщика к поставщику. Дополнительные сведения см. в разделе A
        bout_Providers. Даже при использовании параметра Force командлет не мож
        ет переопределить ограничения безопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NewName <string>
        Задает новое имя элемента. Введите только имя, а не путь и имя. Если вв
        ести путь, отличный от указанного в параметре Path, командлет Rename-It
        em выдает ошибку. Чтобы переименовать и переместить элемент, воспользуй
        тесь командлетом Move-Item.
        
        В значении параметра NewName нельзя использовать подстановочные знаки. 
        Чтобы задать имена для нескольких файлов, используйте оператор Replace 
        в регулярном выражении. Чтобы получить дополнительные сведения об опера
        торе Replace, введите команду "get-help about_comparison_operators". По
        рядок использования см. в примерах.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Передает по конвейеру объект, представляющий элемент. По умолчанию этот
         командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Задает путь к переименовываемому элементу.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Rename-Item по конве
        йеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или объект, представляющий переименованный элемент.
        При использовании параметра Passthru командлет Rename-Item создает объе
        кт, представляющий переименованный элемент. В противном случае этот ком
        андлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Rename-Item предназначен для работы с данными, предоставляемы
        ми любым поставщиком. Чтобы получить список поставщиков, доступных в те
        кущем сеансе, введите команду "Get-PsProvider". Дополнительные сведения
         см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>rename-item -path c:\logfiles\daily_file.txt -newname monday_file.txt
    
    
    Описание
    -----------
    Эта команда переименовывает файл daily_file.txt в monday_file.txt.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>rename-item -path project.txt -newname d:\archive\old-project.txt
    
    Rename-Item : Cannot rename because the target specified represents a path 
    or device name.
    At line:1 char:12
    + rename-item <  -path project.txt -newname d:\archive\old-project.txt
        + CategoryInfo          : InvalidArgument: (:) [Rename-Item], PSArgumen
    tException
        + FullyQualifiedErrorId : Argument,Microsoft.PowerShell.Commands.Rename
    ItemCommand
    
    
    C:\PS> move-item -path project.txt -destination d:\archive\old-project.txt
    # Command succeeds
    
    
    Описание
    -----------
    В этом примере показано, что командлет Rename-Item не позволяет одновременн
    о переименовать и переместить элемент. В качестве значения параметра NewNam
    e можно задать путь только в случае, если этот путь совпадает со значением 
    параметра Path. Во всех остальных случаях разрешается использовать только н
    овое имя.
    
    Первая команда с помощью командлета Rename-Item изменяет имя файла project.
    txt, расположенного в текущем каталоге, присваивая ему новое имя old-projec
    t.txt, после чего предпринимается попытка перемещения файла в каталог "D:\A
    rchive". В результате формируется сообщение об ошибке.
    
    Вторая команда представляет правильный способ перемещения и переименования 
    файла с помощью командлета Move-Item. Командлет Move-Item позволяет задать 
    в значении параметра Destination как новый путь, так и новое имя.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>rename-item HKLM:\Software\MyCompany\Advertising -NewName Marketing
    
    
    Описание
    -----------
    Эта команда с помощью командлета Rename-Item переименовывает раздел реестра
     Advertising в Marketing. После выполнения команды имя раздела изменяется, 
    а записи реестра в этом разделе не изменяются.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-childItem *.txt | rename-item -newname { $_.name -replace '\.txt'
    ,'.log' }
    
    
    Описание
    -----------
    В этом примере показано, как использовать оператор Replace для переименован
    ия нескольких файлов, даже несмотря на то что в значении параметра NewName 
    нельзя использовать подстановочные знаки.
    
    Эта команда переименовывает все файлы с расширением ".txt" в текущем катало
    ге в файлы с расширением ".log". 
    
    С помощью командлета Get-ChildItem эта команда получает все файлы из текуще
    го каталога, имеющие расширение ".txt". Затем с помощью оператора конвейера
     (|) результирующие файлы передаются командлету Rename-Item. 
    
    В командлете Rename-Item значение параметра NewName является блоком скрипта
    , который выполняется до передачи значения параметру NewName.
    
    В блоке скрипта автоматическая переменная $_ представляет каждый объект фай
    ла, передаваемый команде по конвейеру. Команда использует обращение через т
    очку (.), чтобы получить значение свойства Name каждого объекта файла. Опер
    атор Replace заменяет расширение ".txt" каждого файла расширением ".log".
    
    Поскольку оператор Replace работает с регулярными выражениями, точка в нача
    ле строки "txt" интерпретируется как любой символ. Чтобы точка интерпретиро
    валась исключительно как точка (.), используется escape-символ — обратная к
    осая черта (\). Обратная косая черта не требуется в записи ".log", потому ч
    то это срока, а не регулярное выражение.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113382
    about_Providers 
    Clear-Item 
    Invoke-Item 
    Move-Item 
    Rename-ItemProperty 
    Set-Item 
    New-Item 
    Remove-Item 
    Get-Item 
    Copy-Item 



Rename-ItemProperty

ИМЯ
    Rename-ItemProperty
    
ОПИСАНИЕ
    Переименовывает свойство элемента.
    
СИНТАКСИС
    Rename-ItemProperty [-LiteralPath] <string> [-Name] <string> [-NewName] <st
    ring> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>]
     [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTrans
    action] [<CommonParameters>]
    
    Rename-ItemProperty [-Path] <string> [-Name] <string> [-NewName] <string> [
    -Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Forc
    e] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction]
     [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Rename-ItemProperty изменяет имя указанного свойства элемента. Пр
    и этом значение свойства не изменяется. Например, командлет Rename-ItemProp
    erty можно использовать для изменения имени записи реестра.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету переименовать свойство объекта, которое было бы не
        доступно пользователю другими способами. Реализация варьируется от пост
        авщика к поставщику. Дополнительные сведения см. в разделе About_Provid
        ers.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Определяет только элементы, которые будут обработаны командлетом, и иск
        лючает все остальные.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string>
        Задает путь к свойству элемента. Значение параметра LiteralPath использ
        уется точно в том виде, в котором оно введено. Никакие символы не интер
        претируются как подстановочные знаки. Если путь включает escape-символы
        , его нужно заключить в одиночные кавычки. Одиночные кавычки указывают 
        оболочке Windows PowerShell, что никакие символы не следует интерпретир
        овать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает текущее имя переименовываемого свойства.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -NewName <string>
        Задает новое имя свойства.
        
        Требуется?                    true
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий свойство элемента. По умолчанию этот 
        командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Задает путь к переименовываемому элементу.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь (но не литеральный путь), можно передать команд
        лету Rename-ItemProperty по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PSCustomObject
        Если задан параметр PassThru, командлет Rename-ItemProperty создает объ
        ект PSCustomObject, представляющий переименованное свойство элемента. В
         противном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Remove-ItemProperty предназначен для работы с данными, предос
        тавляемыми любым поставщиком. Чтобы получить список поставщиков, доступ
        ных в текущем сеансе, введите команду "Get-PSProvider". Дополнительные 
        сведения см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>rename-itemproperty -path HKLM:\Software\SmpApplication -name config 
    -newname oldconfig
    
    
    Описание
    -----------
    Эта команда переименовывает запись реестра в разделе HKEY_LOCAL_MACHINE\Sof
    tware\SmpApplication с именем "config" в "oldconfig".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113383
    about_Providers 
    Rename-Item 
    Clear-ItemProperty 
    Copy-ItemProperty 
    Get-ItemProperty 
    Move-ItemProperty 
    New-ItemProperty 
    Remove-ItemProperty 
    Set-ItemProperty 



Reset-ComputerMachinePassword

ИМЯ
    Reset-ComputerMachinePassword
    
ОПИСАНИЕ
    Сбрасывает пароль учетной записи компьютера.
    
СИНТАКСИС
    Reset-ComputerMachinePassword [-Server <string>] [-Confirm] [-WhatIf] [<Com
    monParameters>]
    
    
ОПИСАНИЕ
    Командлет Reset-ComputerMachinePassword изменяет пароль учетной записи, исп
    ользуемой компьютерами для прохождения проверки подлинности на контроллерах
     домена. Этот командлет можно использовать для сброса пароля локального ком
    пьютера.
    
ПАРАМЕТРЫ
    -Server <string>
        Задает имя контроллера домена, используемого при задании пароля учетной
         записи компьютера. 
        
        Это необязательный параметр. Если этот параметр не указан, команда выпо
        лняется текущим контроллером домена.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Reset-ComputerMachinePassword
    
    
    Описание
    -----------
    Эта команда сбрасывает пароль локального компьютера. Команда выполняется с 
    использованием учетных данных текущего пользователя.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>Reset-ComputerMachinePassword -server DC01
    
    
    Описание
    -----------
    Эта команда сбрасывает пароль локального компьютера с помощью контроллера д
    омена DC01.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>invoke-command -computername Server01 -scriptblock {reset-computermac
    hinepassword}
    
    
    Описание
    -----------
    Эта команда с помощью командлета Invoke-Command запускает команду Reset-Com
    puterMachinePassword на удаленном компьютере Server01.
    
    Дополнительные сведения о выполнении удаленных команд в Windows PowerShell 
    см. в разделе about_remote_requirements, а также в разделе, посвященном ком
    андлету Invoke-Command.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135252



Resolve-Path

ИМЯ
    Resolve-Path
    
ОПИСАНИЕ
    Разрешает значения подстановочных знаков в пути и отображает содержимое, на
    ходящееся по заданному пути.
    
СИНТАКСИС
    Resolve-Path [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Relat
    ive] [-UseTransaction] [<CommonParameters>]
    
    Resolve-Path [-Path] <string[]> [-Credential <PSCredential>] [-Relative] [-
    UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Resolve-Path интерпретирует подстановочные знаки в пути и отображ
    ает элементы и контейнеры, которые находятся в указанном местоположении, на
    пример файлы и папки или разделы и подразделы реестра.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01". Или 
        укажите объект PSCredential, например один из объектов, созданных коман
        длетом Get-Credential. При вводе имени пользователя система запросит па
        роль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь, который требуется разрешить. Значение параметра LiteralPat
        h используется точно в том виде, в котором оно введено. Никакие символы
         не интерпретируются как подстановочные знаки. Если путь включает escap
        e-символы, его нужно заключить в одиночные кавычки. Одиночные кавычки у
        казывают оболочке Windows PowerShell, что никакие символы не следует ин
        терпретировать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь Windows PowerShell, который требуется разрешить. Это обязат
        ельный параметр. Можно также передать строку пути командлету Resolve-Pa
        th по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Relative [<SwitchParameter>]
        Возвращает относительный путь.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Resolve-Path по конв
        ейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String
        Командлет Resolve-Path возвращает строку с разрешенным путем.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлеты, в именах которых содержится существительное Path (командлет
        ы Path), оперируют именами путей и возвращают эти имена в сокращенном ф
        ормате, который поддерживается всеми поставщиками Windows PowerShell. О
        ни предназначены для использования в программах и скриптах, в которых т
        ребуется отображать имя пути или его часть в конкретном формате. Исполь
        зуйте их аналогично другим командам для работы с путями, таким как Dirn
        ame, Normpath, Realpath и Join.
        
        Командлеты Path можно использовать с несколькими поставщиками, включая 
        FileSystem, Registry и Certificate.
        
        Командлет Resolve-Path предназначен для работы с данными, предоставляем
        ыми любым поставщиком. Чтобы получить список поставщиков, доступных в т
        екущем сеансе, введите команду "Get-PSProvider". Дополнительные сведени
        я см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>resolve-path ~ 
    
    C:\Users\User01
    
    
    Описание
    -----------
    Эта команда разрешает путь, представленный символом "~", который обозначает
     путь к корневому каталогу.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>resolve-path windows
    
    C:\Windows
    
    
    Описание
    -----------
    При запуске из корневого каталога диска C: эта команда возвращает путь к ка
    талогу Windows на диске C:.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>"C:\windows\*" | resolve-path
    
    
    Описание
    -----------
    Эта команда возвращает все вложенные каталоги каталога C:\Windows. Эта кома
    нда передает строку пути командлету Resolve-Path с помощью оператора конвей
    ера (|).
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>resolve-path \\Server01\public
    
    
    Описание
    -----------
    Эта команда разрешает UNC-путь и возвращает ресурсы совместного использован
    ия этого пути.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>resolve-path c:\prog* -relative
    
    ..\Program Files
    ..\Program Files (x86)
    ..\programs.txt
    
    
    Описание
    -----------
    Эта команда возвращает относительные пути для каталогов в корне диска C:.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>resolve-path -literalPath test[xml]
    
    
    Описание
    -----------
    Эта команда разрешает путь ко вложенному каталогу Test[xml] текущего катало
    га. В ней используется параметр LiteralPath для указания, что скобки не явл
    яются символами регулярного выражения.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113384
    about_Providers 
    Test-Path 
    Split-Path 
    Convert-Path 
    Join-Path 



Restart-Computer

ИМЯ
    Restart-Computer
    
ОПИСАНИЕ
    Перезапускает ("перезагружает") операционную систему локального и удаленных
     компьютеров.
    
СИНТАКСИС
    Restart-Computer [[-ComputerName] <string[]>] [[-Credential] <PSCredential>
    ] [-AsJob] [-Authentication {Default | None | Connect | Call | Packet | Pac
    ketIntegrity | PacketPrivacy | Unchanged}] [-Force] [-Impersonation {Defaul
    t | Anonymous | Identify | Impersonate | Delegate}] [-ThrottleLimit <int>] 
    [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Restart-Computer перезапускает операционную систему локального и 
    удаленных компьютеров. 
    
    С помощью параметров командлета Restart-Computer можно выполнять операции п
    ерезагрузки в качестве фонового задания, задавать уровни проверки подлиннос
    ти, использовать другие учетные данные, ограничивать количество одновременн
    о выполняемых операций, а также принудительно перезагружать компьютер.
    
    Этому командлету не требуется удаленное взаимодействие Windows PowerShell, 
    за исключением случаев с использованием параметра AsJob.
    
ПАРАМЕТРЫ
    -AsJob [<SwitchParameter>]
        Запускает команду в качестве фонового задания.
        
        Примечание. Чтобы использовать этот параметр, локальный и удаленный ком
        пьютер должны быть настроены на удаленное взаимодействие, и запуск Wind
        ows PowerShell под управлением Windows Vista и более поздних версий Win
        dows должен выполняться командой "Запуск от имени администратора". Допо
        лнительные сведения см. в разделе about_Remote_Requirements.
        
        При использовании параметра AsJob команда немедленно возвращает объект,
         представляющий фоновое задание. Можно продолжить работу в рамках данно
        го сеанса, пока задание завершается. Задание создается на локальном ком
        пьютере, и результаты с удаленных компьютеров автоматически возвращаютс
        я на локальный компьютер. Чтобы управлять заданием, используйте командл
        еты Job. Чтобы получить результаты задания, используйте командлет Recei
        ve-Job.
        
        Дополнительные сведения о фоновых заданиях в Windows PowerShell см. в р
        азделах about_Jobs и about_Remote_Jobs.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authentication <AuthenticationLevel>
        Задает уровень проверки подлинности, используемый для WMI-соединения. (
        Командлет Restart-Computer использует WMI.) По умолчанию используется з
        начение "Packet".
        
        Допустимые значения:
        
        Unchanged:       уровень проверки подлинности такой же, как и у предыду
        щей команды.
        Default:         проверка подлинности Windows.
        None:            проверка подлинности COM не используется.
        Connect:         проверка подлинности COM уровня соединения.
        Call:            проверка подлинности COM уровня вызова.
        Packet:          проверка подлинности COM уровня пакета.
        PacketIntegrity: проверка подлинности COM уровня целостности пакета.
        PacketPrivacy:   проверка подлинности COM уровня конфиденциальности пак
        ета.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                4
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string[]>
        Задает один или несколько удаленных компьютеров. По умолчанию используе
        тся значение "Локальный компьютер".
        
        Введите имя NETBIOS, IP-адрес или полное доменное имя удаленного компью
        тера. Чтобы указать локальный компьютер, введите имя компьютера, точку 
        (.) или "localhost".
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName можно использовать, даже если компьютер не наст
        роен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                .
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь".
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, возвращаемый командлетом 
        Get-Credential.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                Текущий пользователь
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Принудительно инициирует немедленную перезагрузку компьютеров.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Impersonation <ImpersonationLevel>
        Задает уровень олицетворения при вызове WMI. (Командлет Restart-Compute
        r использует WMI.) По умолчанию используется значение "Impersonate".
        
        Допустимые значения:
        
        Default:      олицетворение по умолчанию.
        Anonymous:    скрывает идентификатор вызывающего.
        Identify:     позволяет объектам запрашивать учетные данные вызывающего
        .
        Impersonate:  позволяет объектам использовать учетные данные вызывающег
        о.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Impersonate
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ThrottleLimit <int>
        Задает максимальное количество одновременных соединений, которые могут 
        быть установлены для выполнения данной команды. Если этот параметр не з
        адан или для него введено значение 0, используется значение по умолчани
        ю 32.
        
        Ограничение скорости относится только к текущей команде, но не к сеансу
         или компьютеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                32
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    None или System.Management.Automation.RemotingJob
        Если задан параметр AsJob, командлет возвращает объект задания. В проти
        вном случае командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        В этом командлете используется метод Win32Shutdown класса WMI WIN32_Ope
        ratingSystem.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>restart-computer
    
    
    Описание
    -----------
    Эта команда перезагружает локальный компьютер.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>restart-computer -computername Server01, Server02, localhost
    
    
    Описание
    -----------
    Эта команда перезагружает два удаленных компьютера: Server01 и Server02, а 
    также локальный компьютер, указанный как "localhost".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$j = restart-computer -computername Server01, Server02 -asjob 
    
    C:\PS> $results = $j | receive-job
    
    C:\PS> $results
    
    
    Описание
    -----------
    В приведенных командах команда Restart-Computer выполняется в качестве фоно
    вого задания на двух удаленных компьютерах, после чего выводятся результаты
    .
    
    В первой команде используется параметр AsJob для выполнения команды в качес
    тве фонового задания. Полученный объект задания сохраняется в переменной $j
    .
    
    Во второй команде объект задания, сохраненный в переменной $j, с помощью оп
    ератора конвейера передается командлету Receive-Job, который получает резул
    ьтаты выполнения задания. Результаты сохраняются в переменной $results. 
    
    Третья команда отображает результаты, сохраненные в переменной $results.
    
    Поскольку при использовании параметра AsJob задание создается на локальном 
    компьютере и результаты автоматически возвращаются на локальный компьютер, 
    команду Receive-Job можно выполнять как локальную команду.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>restart-computer -comp Server01 -impersonation anonymous -authenticat
    ion PacketIntegrity
    
    
    Описание
    -----------
    Эта команда перезагружает удаленный компьютер Server01. В команде использую
    тся настроенные параметры олицетворения и проверки подлинности.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$s = get-content domain01.txt
    
    C:\PS> $c = get-credential domain01\admin01
    
    C:\PS> restart-computer -computername $s -force -throttlelimit 10 -credenti
    al $c
    
    
    Описание
    -----------
    Эти команды принудительно инициируют немедленную перезагрузку всех компьюте
    ров в домене Domain01. 
    
    Первая команда получает список компьютеров в домене и сохраняет его в перем
    енной $s.
    
    Вторая команда получает учетные данные администратора домена и сохраняет их
     в переменной $c.
    
    Третья команда перезагружает компьютеры. Параметр ComputerName используется
     для передачи списка компьютеров в переменной $s, параметр Force — для прин
    удительной немедленной перезагрузки, а параметр Credential — для передачи у
    четных данных, сохраненных в переменной $c. Кроме того, с помощью параметра
     ThrottleLimit количество устанавливаемых командой одновременных соединений
     ограничивается десятью.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135253
    Add-Computer 
    Checkpoint-Computer 
    Remove-Computer 
    Restore-Computer 
    Stop-Computer 
    Test-Connection 



Restart-Service

ИМЯ
    Restart-Service
    
ОПИСАНИЕ
    Останавливает, а затем запускает заново одну или несколько служб.
    
СИНТАКСИС
    Restart-Service [-Name] <string[]> [-Exclude <string[]>] [-Force] [-Include
     <string[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Restart-Service -DisplayName <string[]> [-Exclude <string[]>] [-Force] [-In
    clude <string[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Restart-Service [-InputObject <ServiceController[]>] [-Exclude <string[]>] 
    [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonPar
    ameters>]
    
    
ОПИСАНИЕ
    Командлет Restart-Service передает сообщение об остановке каждой указанной 
    службы программе Windows Service Controller. Если служба уже была остановле
    на ранее, то она перезапускается без сообщения об ошибке. Службы можно зада
    вать с помощью их служебных имен или отображаемых имен. Также можно использ
    овать параметр InputObject и передавать объекты, представляющие перезапуска
    емые службы.
    
ПАРАМЕТРЫ
    -DisplayName <string[]>
        Задает отображаемые имена перезапускаемых служб. Подстановочные знаки р
        азрешены.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные службы. Значение данного параметра определяет значе
        ние параметра Name. Введите часть имени или шаблон, например "s*". Подс
        тановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Переопределяет ограничения, препятствующие выполнению команды, не ставя
         под угрозу безопасность. Например, параметр Force остановит и перезапу
        стит службу, у которой есть зависимые службы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Перезапускает только указанные службы. Значение данного параметра опред
        еляет значение параметра Name. Введите часть имени или шаблон, например
         "s*". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <ServiceController[]>
        Задает объекты ServiceController, представляющие перезапускаемые службы
        . Введите переменную, содержащую объекты, либо команду или выражение дл
        я получения объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена перезапускаемых служб.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий службу. По умолчанию этот командлет н
        е формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.ServiceProcess.ServiceController, System.String
        Можно передать объект службы или строку, содержащую имя службы, по конв
        ейеру командлету Restart-Service.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.ServiceProcess.ServiceController
        Если задан параметр PassThru, командлет Restart-Service создает объект 
        System.ServiceProcess.ServiceController, представляющий перезапущенную 
        службу. В противном случае этот командлет не формирует никаких выходных
         данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Restart-Service может использоваться для управления службами,
         только если у текущего пользователя есть на это разрешение. Некорректн
        ая работа команды может быть обусловлена отсутствием требуемых разрешен
        ий.
        
        Чтобы извлечь имена служб и отображаемые имена служб на текущем компьют
        ере, введите команду "get-service". Имена служб содержатся в столбце "N
        ame", а отображаемые имена — в столбце "DisplayName".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>restart-service wmi
    
    
    Описание
    -----------
    Эта команда перезапускает службу инструментария управления Windows (WMI) на
     локальном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>restart-service -displayname net* -exclude "net logon"
    
    
    Описание
    -----------
    Эта команда перезапускает все службы, отображаемые имена которых начинаются
     с "Net", за исключением службы "Net Logon".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-service net* | where-object {$_.Status -eq "Stopped"} | restart-s
    ervice
    
    
    Описание
    -----------
    Эта команда запускает все остановленные сетевые службы компьютера.
    
    Для извлечения всех объектов, представляющих службы компьютера с именами, н
    ачинающимися с "net", используется командлет Get-Service. (Необязательное и
    мя параметра Name опускается.) Оператор конвейера (|) пересылает объекты сл
    ужб командлету Where-Object, который выбирает только службы с состоянием "S
    topped" (остановлена). Следующий оператор конвейера пересылает выбранные сл
    ужбы командлету Restart-Service. На практике, чтобы узнать о последствиях в
    ыполнения команды до ее использования, используется параметр WhatIf.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113385
    Start-Service 
    Stop-Service 
    Suspend-Service 
    Resume-Service 
    New-Service 
    Get-Service 
    Set-Service 



Restore-Computer

ИМЯ
    Restore-Computer
    
ОПИСАНИЕ
    Запускает восстановление системы на локальном компьютере.
    
СИНТАКСИС
    Restore-Computer [-RestorePoint] <int> [-Confirm] [-WhatIf] [<CommonParamet
    ers>]
    
    
ОПИСАНИЕ
    Командлет Restore-Computer восстанавливает локальный компьютер до указанной
     точки восстановления системы.
    
    Команда Restore-Computer перезапускает компьютер. Восстановление выполняетс
    я в ходе операции перезагрузки.
    
ПАРАМЕТРЫ
    -RestorePoint <int>
        Задает порядковый номер точки восстановления.  Чтобы определить порядко
        вый номер, используйте команду Get-ComputerRestorePoint. Это обязательн
        ый параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать командлет Restore-Computer в Windows Vista и более п
        оздних версиях Windows, необходимо запускать Windows PowerShell командо
        й "Запуск от имени администратора".
        
        Этот командлет использует класс SystemRestore инструментария управления
         Windows (WMI).
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>restore-computer -RestorePoint 253
    
    
    Описание
    -----------
    Эта команда восстанавливает локальный компьютер до точки восстановления с п
    орядковым номером 253.
    
    Поскольку параметр RestorePoint является позиционным, имя параметра можно о
    пустить.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>restore-computer 255 -confirm
    
    Confirm
    Are you sure you want to perform this action?
    Performing operation "Restore-Computer" .
    [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (defa
    ult is "Y"):
    
    
    Описание
    -----------
    та команда восстанавливает локальный компьютер до точки восстановления с по
    рядковым номером 255. Для запроса подтверждения перед фактическим выполнени
    ем операции используется параметр Confirm.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>Get-ComputerRestorePoint
    
    C:\PS> Restore-Computer -RestorePoint 255
    
    C:\PS> Get-ComputerRestorePoint -LastStatus
    
    
    Описание
    -----------
    Приведенные команды выполняют восстановление системы и затем проверяют резу
    льтат восстановления.
    
    Первая команда с помощью командлета Get-ComputerRestorePoint получает точки
     восстановления на локальном компьютере.
    
    Вторая команда с помощью командлета Restore-Computer восстанавливает компью
    тер до точки восстановления с порядковым номером 255.
    
    Третья команда с помощью параметра LastStatus командлета Get-ComputerRestor
    ePoint проверяет состояние операции восстановления. Поскольку команда Resto
    re-Computer принудительно перезапускает компьютер, эта команда вводится пос
    ле перезапуска.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135254
    Get-ComputerRestorePoint 
    Enable-ComputerRestore 
    Disable-ComputerRestore 
    Restart-Computer 



Resume-Service

ИМЯ
    Resume-Service
    
ОПИСАНИЕ
    Возобновляет работу приостановленных служб.
    
СИНТАКСИС
    Resume-Service [-Name] <string[]> [-Exclude <string[]>] [-Include <string[]
    >] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Resume-Service -DisplayName <string[]> [-Exclude <string[]>] [-Include <str
    ing[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Resume-Service [-InputObject <ServiceController[]>] [-Exclude <string[]>] [
    -Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Resume-Service отсылает сообщение о возобновлении работы диспетче
    ру служб Windows для каждой указанной службы. Если служба была приостановле
    на, ее работа будет возобновлена. Если служба запущена, сообщение игнорируе
    тся. Службы можно задавать с помощью их имен или отображаемых имен. Кроме т
    ого, можно с помощью параметра InputObject передавать объекты, представляющ
    ие возобновляемые службы.
    
ПАРАМЕТРЫ
    -DisplayName <string[]>
        Задает отображаемые имена возобновляемых служб. Подстановочные знаки ра
        зрешены.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные службы. Значение данного параметра определяет значе
        ние параметра Name. Введите часть имени или шаблон, например "s*". Подс
        тановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Возобновляет работу только указанных служб. Значение данного параметра 
        определяет значение параметра Name. Введите часть имени или шаблон, нап
        ример "s*". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <ServiceController[]>
        Задает объекты ServiceController, представляющие возобновляемые службы.
         Введите переменную, содержащую объекты, либо команду или выражение для
         получения объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена возобновляемых служб.
        
        Имя параметра указывать необязательно. Можно использовать "-Name" или е
        го псевдоним ("-ServiceName") либо опустить имя параметра.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий службу. По умолчанию этот командлет н
        е формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.ServiceProcess.ServiceController или System.String.
        Можно передать объект службы или строку, содержащую имя службы, по конв
        ейеру командлету Resume-Service.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.ServiceProcess.ServiceController
        Если задан параметр PassThru, командлет Resume-Service создает объект S
        ystem.ServiceProcess.ServiceController, представляющий восстановленную 
        службу. В противном случае этот командлет не формирует никаких выходных
         данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Состояние приостановленных служб имеет значение "Paused". При возобновл
        ении их работы состояние имеет значение "Running".
        
        Командлет Resume-Service может использоваться для управления службами, 
        только если у текущего пользователя есть на это разрешение. Некорректна
        я работа команды может быть обусловлена отсутствием требуемых разрешени
        й.
        
        Чтобы извлечь имена служб и отображаемые имена служб на текущем компьют
        ере, введите команду "get-service". Имена служб содержатся в столбце Na
        me, а отображаемые имена — в столбце DisplayName.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>resume-service sens
    
    
    Описание
    -----------
    Эта команда возобновляет работу службы System Event Notification (имя служб
    ы в команде — "sens") на локальном компьютере. В команде используется парам
    етр Name для задания имени службы, при этом имя параметра опускается, так к
    ак оно является необязательным.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-service | where-object {$_.Status -eq "Paused"} | resume-service
    
    
    Описание
    -----------
    Эта команда возобновляет работу всех приостановленных служб компьютера. Пер
    вая команда извлекает все службы на компьютере. Оператор конвейера (|) пере
    дает результаты командлету Where-Object, который выбирает из них те, у кото
    рых свойство Status имеет значение "Paused" (приостановлена). Следующий опе
    ратор конвейера передает результаты командлету Resume-Service, который возо
    бновляет работу приостановленных служб.
    
    На практике, чтобы узнать о последствиях выполнения команды без ее использо
    вания, используется параметр WhatIf.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113386
    Get-Service 
    Start-Service 
    Stop-Service 
    Restart-Service 
    Suspend-Service 
    Set-Service 
    New-Service 



Select-Object

ИМЯ
    Select-Object
    
ОПИСАНИЕ
    Выбирает указанные свойства объекта или набора объектов. Также он может выб
    ирать уникальные объекты из массива объектов или выбирать указанное число о
    бъектов с начала или с конца массива объектов.
    
СИНТАКСИС
    Select-Object [[-Property] <Object[]>] [-ExcludeProperty <string[]>] [-Expa
    ndProperty <string>] [-First <int>] [-InputObject <psobject>] [-Last 
     [-Skip <int>] [-Unique] [<CommonParameters>]
    
    Select-Object [-Index <Int32[]>] [-InputObject <psobject>] [-Unique] [<Comm
    onParameters>]
    
    
ОПИСАНИЕ
    Командлет Select-Object получает только указанные свойства объекта или набо
    ра объектов. Также он может выбирать уникальные объекты из массива объектов
     или выбирать указанное число объектов с начала или с конца массива объекто
    в.
     
    При использовании командлета Select-Object для выбора указанных свойств он 
    копирует значения этих свойств из объектов ввода и создает новые объекты, к
    оторые содержат указанные свойства со скопированными значениями. 
    
    Для указания свойств, которые требуется выбрать, используйте параметр Prope
    rty. Либо используйте параметры First, Last, Unique, Skip и Index, чтобы вы
    брать конкретные объекты из массива объектов ввода. Для более тонкой фильтр
    ации объектов используйте командлет Where-Object.
    
ПАРАМЕТРЫ
    -ExcludeProperty <string[]>
        Исключает указанные свойства из выбора. Подстановочные знаки разрешены.
         Этот параметр действует только, если команда включает параметр Propert
        y.
        
        Значением параметра свойства может быть вычисляемое свойство, то есть х
        эш-таблица, задающая имя и вычисляющая значение для отображения свойств
        а. Допустимые ключи:
        
         -- Name (или Label) <строка>
         -- Expression <строка> или <блок скрипта>
        
        Дополнительные сведения см. в примерах.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -ExpandProperty <string>
        Задает выбираемое свойство и указывает, что необходимо попытаться разве
        рнуть это свойство.  В имени свойства разрешается использовать подстано
        вочные знаки.
        
        Например, если заданное свойство является массивом, необходимо включить
         в вывод каждое значение массива. Если свойство содержит объект, в выво
        де отображаются все свойства этого объекта.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -First <int>
        Указывает количество объектов, считая с начала массива объектов ввода, 
        которые нужно выбрать.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Index <Int32[]>
        Выбирает объекты из массива на основании значений их индексов. Введите 
        индексы, разделенные запятыми.
        
        Индексы в массиве начинаются с 0, где 0 обозначает первое значение, а (
        n-1) — последнее значение.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объекты для отправки командлету по конвейеру. Этот параметр позв
        оляет отправлять объекты командлету Select-Object по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Last <int>
        Указывает количество объектов, считая с конца массива объектов ввода, к
        оторые нужно выбрать.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Property <Object[]>
        Указывает, какие свойства нужно выбрать. Подстановочные знаки разрешены
        .
        
        Значение параметра Property может быть новым вычисляемым свойством. Что
        бы создать вычисляемое свойство, используйте хэш-таблицу. Допустимые кл
        ючи:
        -- Name (или Label) <строка>
        -- Expression <строка> или <блок скрипта>
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Skip <int>
        Пропускает (не выбирает) указанное число элементов. По умолчанию значен
        ие параметра Skip отсчитывается от начала массива или списка объектов, 
        однако если для команды задан параметр Last, отсчет ведется от конца сп
        иска или массива. 
        
        В отличие от параметра Index, значения которого отсчитываются от 0, зна
        чения параметра Skip отсчитываются от 1.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Unique [<SwitchParameter>]
        Указывает, что если несколько объектов ввода имеют одинаковые свойства 
        и их значения, то будет выбран только один из объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект можно передать командлету Select-Object по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Select-Object также можно вызывать с помощью встроенного псев
        донима "select". Дополнительные сведения см. в разделе About_Aliases.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-process | select-object ProcessName,Id,WS
    
    
    Описание
    -----------
    Эта команда отображает список процессов. При этом отображаются только имеющ
    иеся у процессов свойства name, ID и Working Set (WS).
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-process | select-object processname -expandproperty modules |
    format-list
    
    ProcessName       : 00THotkey
    Size              : 256
    Company           : TOSHIBA Corporation
    FileVersion       : 1, 0, 0, 27
    ProductVersion    : 6, 2, 0, 0
    Description       : THotkey
    Product           : TOSHIBA THotkey
    ModuleName        : 00THotkey.exe
    FileName          : C:\WINDOWS\system32\00THotkey.exe
    BaseAddress       : 4194304
    
    
    Описание
    -----------
    Эта команда отображает сведения о модулях, используемых выполняемыми на ком
    пьютере процессами. Для вывода сведений, содержащихся в свойстве modules, и
    спользуется параметр ExpandProperty.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-process | sort-object -property WS | select-object -Last 5
    
    Handles  NPM(K)    PM(K)      WS(K) VS(M)   CPU(s)     Id ProcessName
    -------  ------    -----      ----- -----   ------     -- -----------
       2866     320    33432      45764   203   222.41   1292 svchost
        577      17    23676      50516   265    50.58   4388 WINWORD
        826      11    75448      76712   188    19.77   3780 Ps
       1367      14    73152      88736   216    61.69    676 Ps
       1612      44    66080      92780   380   900.59   6132 INFOPATH
    
    
    Описание
    -----------
    Эта команда отображает сведения о пяти процессах, использующих наибольший о
    бъем памяти. Командлет Sort-Object используется для сортировки процессов по
     объему используемой памяти (Working Set), а командлет Select-Object — для 
    выбора пяти последних элементов итогового массива объектов.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-process | select-object -property ProcessName,@{Name="Start Day";
     Expression = {$_.StartTime.DayOfWeek}}
    
    ProcessName  StartDay
    ----         --------
    alg          Wednesday
    ati2evxx     Wednesday
    ati2evxx     Thursday
    ...
    
    
    Описание
    -----------
    Эта команда отображает имена выполняемых на компьютере процессов и названия
     дней, когда они были запущены. 
    
    Значения параметра Property — ProcessName и вычисляемое свойство "Start Day
    ". Свойство "Start Day" добавляется с помощью хэш-таблицы с ключами Label и
     Expression.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>"a","b","c","a","a","a" | select-object -unique
    
    a
    b
    c
    
    
    Описание
    -----------
    Эта команда выводит уникальные знаки из массива знаков.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>$a = get-eventlog -log "Windows PowerShell" 
    
    C:\PS> $a | select-object -index 0, ($a.count - 1)
    
    
    Описание
    -----------
    Эти команды получают первое (самое позднее) и последнее (самое раннее) собы
    тия из журнала событий Windows PowerShell. 
    
    С помощью командлета Get-EventLog первая команда получает все события журна
    ла Windows PowerShell. Она сохраняет события в переменной $a.
    
    Вторая команда с помощью оператора конвейера (|) передает события в перемен
    ной $a в командлет Select-Object. Команда Select-Object использует параметр
     Index, чтобы выбрать элементы по их индексам. Индекс первого события равен
     0. Индекс последнего события равен числу элементов в переменной $a минус 1
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>new-pssession -computername (get-content servers.txt | select-object 
    -skip 1)
    
    
    Описание
    -----------
    Эта команда создает сеанс PSSession на каждом из компьютеров, указанных в ф
    айле Servers.txt, кроме первого компьютера.
    
    Эта команда использует командлет Select-Object, чтобы выбрать в списке все 
    компьютеры, кроме первого. Полученный список компьютеров передается командл
    ету New-PSSession в качестве значения параметра ComputerName.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113387
    Where-Object 
    Group-Object 
    Sort-Object 



Select-String

ИМЯ
    Select-String
    
ОПИСАНИЕ
    Находит текст в строках и файлах.
    
СИНТАКСИС
    Select-String [-Path] <string[]> [-Pattern] <string[]> [-AllMatches] [-Case
    Sensitive] [-Context <Int32[]>] [-Encoding <string>] [-Exclude <string[]>] 
    [-Include <string[]>] [-List] [-NotMatch] [-Quiet] [-SimpleMatch] [<CommonP
    arameters>]
    
    Select-String -InputObject <psobject> [-Pattern] <string[]> [-AllMatches] [
    -CaseSensitive] [-Context <Int32[]>] [-Encoding <string>] [-Exclude <string
    []>] [-Include <string[]>] [-List] [-NotMatch] [-Quiet] [-SimpleMatch] [<Co
    mmonParameters>]
    
    
ОПИСАНИЕ
    Командлет Select-String осуществляет поиск текста и текстовых шаблонов во в
    ходных строках и файлах. Его можно использовать, как команду Grep в UNIX и 
    Findstr в Windows.
    
    Работа командлета Select-String основана на текстовых строках. По умолчанию
     Select-String находит первое совпадение в каждой строке и отображает для к
    аждого совпадения имя файла, номер строки и полный текст найденной строки. 
    
    Однако можно сделать так, чтобы командлет искал несколько совпадений в стро
    ке, выводил текст до и после совпадения или выводил только логическое значе
    ние (true или false), указывающее, было ли найдено совпадение.
    
    Командлет Select-String использует поиск по регулярным выражениям, но он та
    кже позволяет находить простые совпадения, выполняя поиск введенного фрагме
    нта текста. 
    
    Командлет Select-String может выводить все найденные совпадения или останав
    ливаться после первого совпадения для каждого входного файла. Кроме того, о
    н может выводить весь текст, который не соответствует заданному шаблону. 
    
    Можно также установить для командлета Select-String конкретную кодировку, н
    апример при поиске по файлам в кодировке Юникод.
    
ПАРАМЕТРЫ
    -AllMatches [<SwitchParameter>]
        Выполняет поиск более одного совпадения в каждой из текстовых строк. Бе
        з этого параметра командлет Select-String находит только первое совпаде
        ние в каждой из текстовых строк. 
        
        Найдя в текстовой строке несколько совпадений, Select-String все равно 
        возвращает для нее только один объект MatchInfo, однако свойство Matche
        s для этой строки содержит все совпадения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CaseSensitive [<SwitchParameter>]
        Сопоставление учитывает регистр. По умолчанию сопоставление выполняется
         без учета регистра.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Context <Int32[]>
        Записывает заданное число строк до и после строки с совпадением. Это по
        зволяет видеть совпадение в контексте.
        
        Если в качестве значения этого параметра указать одно число, оно будет 
        определять число отображаемых строк до и после совпадения. Если в качес
        тве значения этого параметра указать два числа, первое из них будет опр
        еделять число отображаемых строк до совпадения, а второе — после совпад
        ения.
        
        По умолчанию строки с совпадением помечаются правой угловой скобкой (ко
        д ASCII 62) в первом отображаемом столбце. Непомеченные строки формирую
        т контекст.
        
        Этот параметр не изменяет числа объектов, создаваемых командлетом Selec
        t-String. Select-String создает один объект MatchInfo (Microsoft.PowerS
        hell.Commands.MatchInfo) для каждого совпадения. Контекст сохраняется в
         массиве строк в свойстве Context объекта.
        
        При передаче результата выполнения команды Select-String другой команде
         Select-String по конвейеру принимающая команда ищет текст только в стр
        оке с совпадением (значении свойства Line объекта MatchInfo), но не в т
        ексте строк контекста. В результате параметр Context не учитывается при
        нимающей командой Select-String.
        
        Если контекст включает совпадение, то объект MatchInfo для каждого совп
        адения включает все строки контекста, общие строки выводятся на экран т
        олько один раз.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Encoding <string>
        Задает предположительную кодировку файла, по которому должен осуществля
        ться поиск с помощью командлета Select-String. По умолчанию используетс
        я значение UTF8.
        
        Допустимые значения: "UTF7", "UTF8", "UTF32", "ASCII", "Unicode", "BigE
        ndianUnicode", "Default" и "OEM". Значение Default соответствует кодиро
        вке текущей системной кодовой страницы ANSI. OEM соответствует идентифи
        катору кодовой страницы текущего изготовителя оборудования для операцио
        нной системы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Включает только указанные элементы. Значение этого параметра определяет
         значение параметра Path. Введите элемент пути или шаблон, например "*.
        txt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает текст для поиска. Укажите переменную, содержащую текст, либо вве
        дите команду или выражение, получающие его.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -List [<SwitchParameter>]
        Возвращает только первое совпадение для каждого из входных файлов. По у
        молчанию командлет Select-String возвращает объект MatchInfo для каждог
        о найденного совпадения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NotMatch [<SwitchParameter>]
        Находит текст, который не соответствует заданному шаблону.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к файлам для поиска. Подстановочные знаки разрешены. Местоп
        оложением по умолчанию является локальный каталог.
        
        Укажите файлы в каталоге, например "log1.txt", "*.doc" или "*.*". Если 
        указать только каталог, команда завершится сбоем.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Pattern <string[]>
        Задает текста для поиска. Введите строку или регулярное выражение. Если
         введена строка, используйте параметр SimpleMatch.
        
        Дополнительные сведения о регулярных выражениях см. about_Regular_Expre
        ssions.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Quiet [<SwitchParameter>]
        Возвращает логическое значение (true или false) вместо объекта MatchInf
        o. Значение будет равно "true", если найдено соответствие шаблону, в пр
        отивном случае — "false".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SimpleMatch [<SwitchParameter>]
        Вместо сопоставления по регулярному выражению будет использоваться прос
        тое сопоставление. При простом сопоставлении командлет Select-String ищ
        ет во входных данных текст, указанный в параметре Pattern. Он не интерп
        ретирует значение параметра Pattern в качестве регулярного выражения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Любой объект, содержащий метод ToString, можно передать командлету Sele
        ct-String по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.MatchInfo or System.Boolean
        По умолчанию вывод состоит из объектов MatchInfo — по одному на каждое 
        совпадение. При использовании параметра Quiet возвращается логическое з
        начение, указывающее, найден ли шаблон.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Select-String похож на команду Grep в UNIX и FindStr в Window
        s.
        
        Для использования командлета Select-String в качестве значения параметр
        а Pattern необходимо ввести текст, который требуется найти.
        
        
        Для задания текста для поиска выполните следующее.
        
        -- Введите текст в виде заключенной в кавычки строки и передайте его ко
        мандлету Select-String по конвейеру.
        -- Сохраните текстовую строку в переменной и укажите эту переменную в к
        ачестве значения параметра InputObject.
        -- Если текст хранится в файлах, укажите путь к этим файлам с помощью п
        араметра Path. 
        
        
        По умолчанию командлет Select-String интерпретирует значение параметра 
        Pattern в качестве регулярного выражения. (Дополнительные сведения см. 
        about_Regular_Expressions.) Однако с помощью параметра SimpleMatch можн
        о отключить сопоставление с использованием регулярных выражений. Параме
        тр SimpleMatch ищет во входных данных экземпляры значения параметра Pat
        tern.
        
        По умолчанию выводом командлета Select-String является объект MatchInfo
        , который включает подробные сведения о совпадениях. Сведения, которые 
        содержатся в этом объекте, бывают полезными при поиске текста в файлах,
         поскольку у объекта MatchInfo имеются такие свойства, как Filename и L
        ine. Если входные данные не являются файлом, эти параметры имеют значен
        ие InputStream.
        
        Если выводить сведения, содержащиеся в объекте MatchInfo, не требуется,
         можно использовать параметр Quiet, возвращающий значение типа Boolean 
        (true или false), которое вместо объекта MatchInfo показывает, было ли 
        найдено совпадение. 
        
        При сопоставлении фраз командлет Select-String использует текущую, зада
        нную для системы. Чтобы определить текущие региональные параметры, испо
        льзуйте командлет Get-Culture.
        
        Чтобы просмотреть все свойства объекта MatchInfo, введите команду:
        
        select-string -path test.txt -pattern "test" | get-member | format-list
         -property *
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>"Hello","HELLO" | select-string -pattern "HELLO" -casesensitive
    
    
    Описание
    -----------
    Эта команда выполняет поиск с учетом регистра в тексте, переданном в команд
    у Select-String по конвейеру. 
    
    В результате Select-String находит только строку "HELLO", поскольку "Hello"
     не является совпадением.
    
    Поскольку каждый из заключенных в кавычки фрагментов считается отдельной ст
    рокой, без параметра -CaseSensitive командлет Select-String распознал бы в 
    качестве совпадений оба фрагмента.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>select-string -path *.xml -pattern "the the"
    
    
    Описание
    -----------
    Эта команда ищет во всех XML-файлах в текущем каталоге строки, включающие с
    лова "the the", и отображает их.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>select-string -path $pshome\en-US\*.txt -pattern "@"
    
    
    Описание
    -----------
    Эта команда ищет в файлах концептуальной справки Windows PowerShell (about_
    *.txt) сведения об использовании символа (@). 
    
    Для указания пути в этой команде используется значение автоматической перем
    енной $pshome, в которой хранится путь к каталогу установки Windows PowerSh
    ell. В данном примере команда осуществляет поиск по каталогу en-US, в котор
    ом содержатся файлы справки Windows PowerShell на английском (США) языке.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>function search-help
    {
        $pshelp = "$pshome\es\about_*.txt", "$pshome\en-US\*dll-help.xml"
        select-string -path $pshelp -pattern $args[0]
    }
    
    
    Описание
    -----------
    Эта простая функция использует командлет Select-String для поиска заданной 
    строки в файлах справки Windows PowerShell. В данном примере функция осущес
    твляет поиск по каталогу en-US, в котором содержатся файлы справки на англи
    йском (США) языке.
    
    Чтобы найти с помощью этой функции строку, например "psdrive", введите "sea
    rch-help psdrive".
    
    Чтобы использовать эту функцию в произвольной консоли Windows PowerShell, з
    амените путь на расположение файлов справки Windows PowerShell в конкретной
     системе, а затем скопируйте функцию в профиль Windows PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$events = get-eventlog -logname application -newest 100
    
    C:\PS> $events | select-string -inputobject {$_.message} -pattern "failed"
    
    
    Описание
    -----------
    В этом примере осуществляется поиск строки "failed" в 100 последних события
    х журнала "Приложение" средства "Просмотр событий".
    
    Первая команда с помощью командлета Get-EventLog получает 100 последних зап
    исей из журнала событий "Приложение". После этого она сохраняет события в п
    еременной $events. 
    
    Вторая команда с помощью оператора конвейера (|) передает объекты из переме
    нной $events в командлет Select-String. Для представления входных данных в 
    переменной $events она использует параметр InputObject. Значение параметра 
    InputObject равно значению свойства Message каждого передаваемого по конвей
    еру объекта. Текущий объект представляется символом $_.
    
    Когда событие поступает в конвейер, командлет Select-String ищет строку "fa
    iled" в свойстве Message этого события и отображает строки, содержащие совп
    адение.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-childitem c:\windows\system32\* -include *.txt -recurse |
    select-string -pattern "Microsoft" -casesensitive
    
    
    Описание
    -----------
    Эта команда ищет во всех TXT-файлах, хранящихся в подкаталогах каталога C:\
    Windows\System32, строку "Microsoft". Параметр CaseSensitive указывает, что
     буква "M" в слове "Microsoft" должна быть прописной, а остальные буквы — с
    трочными, чтобы командлет Select-String обнаружил совпадение.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>select-string -path process.txt -pattern idle, svchost -notmatch
    
    
    Описание
    -----------
    Эта команда находит в файле Process.txt строки, не содержащие слов "idle" и
     "svchost".
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>$f = select-string -path audit.log -pattern "logon failed" -context 2
    , 3
    
    C:\PS> $f.count
    
    C:\PS> ($f)[0].context | format-list
    
    
    Описание
    -----------
    Первая команда ищет в файле Audit.Log фразу "logon failed". Она использует 
    параметр Context, чтобы вывести 2 строки до совпадения и 3 строки после нег
    о. 
    
    Вторая команда использует свойство Count массивов объектов для отображения 
    количества найденных совпадений (в данном случае оно равно 2). 
    
    Третья команда отображает строки, хранящиеся в свойстве Context объекта Mat
    chInfo. Для указания первого совпадения (0 в массиве с отсчетом от нуля) ис
    пользуются квадратные скобки, а для отображения значения свойства Context в
     виде списка — командлет Format-List.
    
    Вывод состоит из двух объектов MatchInfo — по одному на каждое совпадение. 
    Строки контекста сохраняются в свойстве Context объекта MatchInfo.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>$a = get-childitem $pshome\en-us\about*.help.txt | select-string -pat
    tern transcript
    
    
    C:\PS> $b = get-childitem $pshome\en-us\about*.help.txt | select-string -pa
    ttern transcript -allmatches
    
    C:\PS> $a
    C:\Windows\system32\WindowsPowerShell\v1.0\en-us\about_Pssnapins.help.txt:3
    9:       Start-Transcript and Stop-Transcript.
    
    C:\PS> $b
    C:\Windows\system32\WindowsPowerShell\v1.0\en-us\about_Pssnapins.help.txt:3
    9:       Start-Transcript and Stop-Transcript.
    
    
    C:\PS>> $a.matches
    Groups   : {Transcript}
    Success  : True
    Captures : {Transcript}
    Index    : 13
    Length   : 10
    Value    : Transcript
    
    
    C:\PS> $b.matches
    Groups   : {Transcript}
    Success  : True
    Captures : {Transcript}
    Index    : 13
    Length   : 10
    Value    : Transcript
    
    Groups   : {Transcript}
    Success  : True
    Captures : {Transcript}
    Index    : 33
    Length   : 10
    Value    : Transcript
    
    
    Описание
    -----------
    В этом примере показано действие параметра AllMatches командлета Select-Str
    ing. Параметр AllMatches позволяет находить все совпадения в строке, а не п
    о одному совпадению.
    
    Первая команда в этом примере ищет вхождения слова "transcript" в файлах ко
    нцептуальной справки Windows PowerShell (справка "about"). Вторая команда и
    дентична первой за исключением того, что в ней используется параметр AllMat
    ches.
    
    Вывод первой команды сохраняется в переменной $a. Вывод второй команды сохр
    аняется в переменной $b. 
    
    При выводе значений переменных по умолчанию они отображаются одинаково, как
     показано в примере вывода.
    
    Однако пятая и шестая команда отображают значение свойства Matches каждого 
    из объектов. Свойство Matches для первой команды содержит только одно совпа
    дение (т. е. один объект System.Text.RegularExpressions.Match), в то время 
    как свойство Matches второй команды содержит объекты для обоих совпадений в
     строке.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113388
    about_Comparison_Operators 
    about_Regular_Expressions 



Select-XML

ИМЯ
    Select-XML
    
ОПИСАНИЕ
    Находит текст в XML-строке или документе.
    
СИНТАКСИС
    Select-XML -Content <string[]> [-Xpath] <string> [-Namespace <hashtable>] [
    <CommonParameters>]
    
    Select-XML [-Path] <string[]> [-Xpath] <string> [-Namespace <hashtable>] [
    CommonParameters>]
    
    Select-XML [-Xml] <XmlNode[]> [-Xpath] <string> [-Namespace <hashtable>] [
    CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Select-XML позволяет использовать запросы XPath для поиска текста
     в XML-строках и документах. Введите запрос XPath и с помощью параметров Co
    ntent, Path или Xml укажите источник данных XML для поиска.
    
ПАРАМЕТРЫ
    -Content <string[]>
        Задает строку, которая содержит XML-код для поиска.  Кроме того, можно 
        передать строки командлету Select-XML по конвейеру.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Namespace <hashtable>
        Задает хэш-таблицу пространств имен, используемых в XML. Используйте фо
        рмат @{<имя пространства имен> = <значение пространства имен>}.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь и имена XML-файлов для поиска.  Подстановочные знаки разреш
        ены.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -Xml <XmlNode[]>
        Задает один или более узлов XML. В каждой команде необходимо указывать 
        параметр Path или XML.
        
        XML-документ обрабатывается как коллекция узлов XML. При передаче XML-д
        окумента командлету Select-XML по конвейеру поиск в каждом из узлов док
        умента ведется отдельно по мере того, как соответствующий узел проходит
         по конвейеру.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Xpath <string>
        Задает поисковый запрос XPath. В языке запросов учитывается регистр. Эт
        о обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String или System.Xml.XmlNode
        Путь или узел XML можно передать командлету Select-XML по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Xml.XmlElement или System.Xml.XmlText
        
    
    
ПРИМЕЧАНИЯ
    
    
        XPath — это стандартный язык, предназначенный для определения частей XM
        L-документа. Дополнительные сведения о языке XPath см. в разделе "Фильт
        ры выбора" раздела "Выбор событий" библиотеки MSDN (Microsoft Developer
         Network) по адресу http://go.microsoft.com/fwlink/?LinkId=143608. См. 
        также раздел "Справочник по XPath" в библиотеке MSDN по адресу http://g
        o.microsoft.com/fwlink/?LinkId=143609.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$path = "$env:windir\System32\WindowsPowerShell\v1.0\Types.ps1xml"
    
    C:\PS> select-xml -path $path -xpath "/Types/Type/Members/AliasProperty"
    
    
    Описание
    -----------
    В этом примере показан поиск дочерних элементов узла AliasProperty в файле 
    Types.ps1xml.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>select-xml -path test*.xml, help.xml -xpath "/Tests/Test[1]/Name"
    
    
    Описание
    -----------
    Для поиска по нескольким XML-файлам в этой команде используется командлет S
    elect-XML.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>[xml]$Types = get-content "$env:windir\System32\WindowsPowerShell\v1.
    0\Types.ps1xml"
    
    C:\PS> select-xml -xml $Types -xpath "//MethodName"
    
    
    Описание
    -----------
    В этом примере показано, как передать XML-документ командлету Search-Path п
    о конвейеру.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$namespace = @{command="http://schemas.microsoft.com/maml/dev/command
    /2004/10"; maml="http://schemas.microsoft.com/maml/2004/10"; dev="http://sc
    hemas.microsoft.com/maml/dev/2004/10"}
    
    C:\PS> $path = "$env:windir\System32\WindowsPowerShell\V1.0\en-us\*dll-Help
    .xml"
    
    C:\PS> select-xml -path $path -namespace $namespace -xpath "//command:name"
    
    Text                      Node      Path                                   
       
    ----                      ----      ----                                   
       
    Add-Computer              name      C:\Windows\System32\WindowsPowerShell\V
    ...
    Add-Content               name      C:\Windows\System32\WindowsPowerShell\V
    ...
    Checkpoint-Computer       name      C:\Windows\System32\WindowsPowerShell\V
    ...
    Clear-Content             name      C:\Windows\System32\WindowsPowerShell\V
    ...
    Clear-EventLog            name      C:\Windows\System32\WindowsPowerShell\V
    ...
    ...
    
    
    Описание
    -----------
    В этом примере показано, как использовать командлет Select-XML для поиска п
    о XML-файлам справки по командлетам Windows PowerShell. 
    
    Первая команда создает хэш-таблицу, представляющую пространство имен XML, и
     сохраняет ее в переменной $namespace.
    
    Вторая команда сохраняет путь к файлам справки в переменной $path.
    
    Третья команда использует Select-Xml для обнаружения в коде XML имен команд
    летов путем поиска в файлах тегов Command:Name.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>select-xml -content $xml -xpath "//edition"
    
    C:\PS> $xml = @"
    <?xml version="1.0" encoding="utf-8"?>
     <Book>
       <projects>
         <project name="Book1" date="2009-01-20">
           <editions>
              <edition language="English">En.Book1.com</edition>
              <edition language="German">Ge.Book1.Com</edition>
              <edition language="French">Fr.Book1.com</edition>
              <edition language="Polish">Pl.Book1.com</edition>
           </editions>
         </project>
       </projects>
     </Book>
    "@
    
    C:\PS> select-xml -content $xml -xpath "//edition"
    
    Text            Node          Path                                      
    ----            ----          ----                                      
    En.Book1.com    edition       InputStream                               
    Ge.Book1.Com    edition       InputStream                               
    Fr.Book1.com    edition       InputStream                               
    Pl.Book1.com    edition       InputStream
    
    
    C:\PS> $xml | select-xml -xpath "//edition"      
    
    Text            Node          Path                                      
    ----            ----          ----                                      
    En.Book1.com    edition       InputStream                               
    Ge.Book1.Com    edition       InputStream                               
    Fr.Book1.com    edition       InputStream                               
    Pl.Book1.com    edition       InputStream
    
    
    Описание
    -----------
    В этом примере параметр Content командлета Select-XML используется для поис
    ка автономной строки в коде XML.
    
    Первая команда сохраняет автономную строку в переменной $xml.
    
    Вторая команда использует параметр Content, чтобы задать код XML в переменн
    ой $xml. 
    
    Третья команда эквивалентна второй. С помощью оператора конвейера (|) она п
    ередает код XML в переменной $xml командлету Select-XML. 
    
    Чтобы получить дополнительные сведения об автономный строках, введите коман
    ду about_Quoting_Rules.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135255
    ConvertTo-XML 



Send-MailMessage

ИМЯ
    Send-MailMessage
    
ОПИСАНИЕ
    Отправляет сообщение электронной почты.
    
СИНТАКСИС
    Send-MailMessage [-To] <string[]> [-Subject] <string> -From <string> [[-Bod
    y] <string>] [[-SmtpServer] <string>] [-Attachments <string[]>] [-Bcc 
    ng[]>] [-BodyAsHtml] [-Cc <string[]>] [-Credential <PSCredential>] [-Delive
    ryNotificationOption {None | OnSuccess | OnFailure | Delay | Never}] [-Enco
    ding <Encoding>] [-Priority {Normal | Low | High}] [-UseSsl] [<CommonParame
    ters>]
    
    
ОПИСАНИЕ
    Командлет Send-MailMessage отправляет из Windows PowerShell сообщение элект
    ронной почты.
    
ПАРАМЕТРЫ
    -Attachments <string[]>
        Задает путь и имена файлов, отправляемых с сообщением электронной почты
         в качестве вложения. Можно использовать этот параметр или передать пут
        и и имена файлов командлету Send-MailMessage по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Bcc <string[]>
        Задает адреса электронной почты, которые получают копию сообщения, но н
        е указываются в списке получателей. Введите имена (необязательно) и адр
        ес электронной почты, например "Имя <someone@example.com>".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Body <string>
        Задает текст (содержимое) сообщения электронной почты.
        
        Требуется?                    false
        Позиция?                    3
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -BodyAsHtml [<SwitchParameter>]
        Указывает, что значение параметра Body содержит код HTML.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Cc <string[]>
        Задает адреса электронной почты, по которым отправляется копия сообщени
        я. Введите имена (необязательно) и адрес электронной почты, например "И
        мя <someone@example.com>".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь".
        
        Введите имя пользователя, например "User01" или "Domain01\User01". Или 
        укажите объект PSCredential, например один из объектов, возвращенных ко
        мандлетом Get-Credential.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Текущий пользователь
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -DeliveryNotificationOption <DeliveryNotificationOptions>
        Задает параметры уведомления о доставке для сообщения электронной почты
        . Можно задать несколько значений. По умолчанию используется значение "
        None".  У этого параметра имеется псевдоним "dno".
        
        Уведомления о доставке отправляются в сообщениях электронной почты по а
        дресу, заданному в значении параметра To.
        
        Допустимые значения:
        
         -- None: уведомление отсутствует.  
         -- OnSuccess: уведомить в случае успешной доставки.  
         -- OnFailure: уведомить в случае неудачной доставки.  
         -- Delay: уведомить в случае задержки доставки.  
         -- Never: не уведомлять никогда.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Encoding <Encoding>
        Задает кодировку текста и темы письма. Допустимые значения: ASCII, UTF8
        , UTF7, UTF32, Unicode, BigEndianUnicode, Default и OEM. По умолчанию и
        спользуется значение ASCII.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                ASCII
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -From <string>
        Задает адрес, с которого отправляется сообщение. Введите имя (необязате
        льно) и адрес электронной почты, например "Имя <someone@example.com>". 
        Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Priority <MailPriority>
        Задает важность сообщения электронной почты. Допустимые значения: Norma
        l, High и Low. По умолчанию используется значение Normal.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Normal.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SmtpServer <string>
        Задает имя SMTP-сервера, через который отправляется сообщение электронн
        ой почты. 
        
        Значением по умолчанию является привилегированная переменная $PSEmailSe
        rver. Если привилегированная переменная не задана, а этот параметр опущ
        ен, выполнение команды завершается сбоем.
        
        Требуется?                    false
        Позиция?                    4
        Значение по умолчанию                $PSEmailServer
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Subject <string>
        Задает тему сообщения электронной почты. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -To <string[]>
        Задает адрес, по которому отправляется сообщение. Введите имена (необяз
        ательно) и адрес электронной почты, например "Имя <someone@example.com>
        ". Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseSsl [<SwitchParameter>]
        Использует протокол SSL (Secure Sockets Layer) для установки подключени
        я к удаленному компьютеру для отправки почты. По умолчанию SSL не испол
        ьзуется.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Путь и имена файлов вложений можно передать командлету Send-MailMessage
         по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>send-mailmessage -to "User01 <user01@example.com>" -from "User02 <use
    r02@example.com>" -subject "Test mail"
    
    
    Описание
    -----------
    Эта команда отправляет сообщение электронной почты от пользователя User01 п
    ользователю User02. 
    
    У сообщения имеется тема, которая является обязательной, но нет текста, кот
    орый задавать необязательно. Кроме того, поскольку параметр SmtpServer не з
    адан, командлет Send-MailMessage использует в качестве SMTP-сервера значени
    е привилегированной переменной $PSEmailServer.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>send-mailmessage -from "User01 <user01@example.com>" -to "User02 <use
    r02@example.com>", "User03 <user03@example.com>" -subject "Sending the Atta
    chment" -body "Forgot to send the attachment. Sending now." -Attachment "da
    ta.csv" -priority High -dno onSuccess, onFailure -smtpServer smtp.fabrikam.
    com
    
    
    Описание
    -----------
    Эта команда отправляет сообщение электронной почты с вложением от пользоват
    еля User01 двум другим пользователям. 
    
    Она устанавливает уровень важности "High" и запрашивает уведомление по элек
    тронной почте в случае доставки сообщений или сбоя доставки.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>send-mailmessage -to "User01 <user01@example.com>" -from "ITGroup <it
    dept@example.com>" -cc "User02 <user02@example.com>" -bcc ITMgr <itmgr@exam
    ple.com> -subject "Don't forget today's meeting" -credential domain01\admi
    n01 -useSSL
    
    
    Описание
    -----------
    Эта команда отправляет сообщение электронной почты от пользователя User01 в
     список рассылки ITGroup с копией (CC) пользователю User02 и скрытой копией
     (BCC) ИТ-менеджеру (ITMgr).
    
    Команда использует учетные данные администратора домена и параметр UseSSL.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135256



Set-Acl

ИМЯ
    Set-Acl
    
ОПИСАНИЕ
    Изменяет дескриптор безопасности указанного ресурса, например файла или раз
    дела реестра.
    
СИНТАКСИС
    Set-Acl [-Path] <string[]> [-AclObject] <ObjectSecurity> [-Exclude <string[
    ]>] [-Filter <string>] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatI
    f] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-Acl изменяет дескриптор безопасности указанного ресурса, тако
    го как файл или раздел реестра, в соответствии со значением предоставленног
    о дескриптором безопасности.
    Чтобы использовать командлет Set-Acl, воспользуйтесь параметром Path для оп
    ределения ресурса, дескриптор безопасности которого нужно изменить, и испол
    ьзуйте параметр AclObject, чтобы предоставить дескриптор безопасности со зн
    ачениями, которые нужно применить. Командлет Set-Acl использует значение па
    раметра как образец и изменяет значения в дескрипторе безопасности ресурса 
    в соответствии со значениями в параметре AclObject.
    
ПАРАМЕТРЫ
    -AclObject <ObjectSecurity>
        Задает список управления доступом с заданными значениями свойств. Коман
        длет Set-Acl изменяет список управления доступом ресурса, заданного пар
        аметром Path, в соответствии со значениями в указанном объекте безопасн
        ости.
        Вывод командлета Get-Acl можно сохранить в переменной, а затем использо
        вать параметр AclObject, чтобы передать переменную, или ввести команду 
        Get-Acl.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Изменяет только указанные элементы. Значение этого параметра определяет
         значение параметра Path. Введите элемент пути или шаблон, например "*.
        txt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий дескриптор безопасности.  По умолчани
        ю этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Определяет ресурс, дескриптор безопасности которого требуется изменить.
         Введите путь к ресурсу, например путь к файлу или разделу реестра. Под
        становочные знаки разрешены.
        
        Если объект безопасности передается командлету Set-Acl (с помощью парам
        етра AclObject или путем передачи объекта из Get-Acl и Set-Acl) и парам
        етр Path пропущен (имя и значение), то командлет Set-Acl использует пут
        ь, включенный в объект безопасности.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Security.AccessControl.ObjectSecurity
        Дескриптор безопасности можно передать командлету Set-Acl по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Отсутствует или объект безопасности
        По умолчанию командлет Set-Acl не формирует никаких выходных данных. Од
        нако если использовать параметр "-Passthru", он создает объект безопасн
        ости. Тип объекта безопасности зависит от типа ресурса.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Set-Acl поддерживается поставщиками файловой системы и реестр
        а Windows PowerShell. Поэтому ее можно использовать для изменения дескр
        ипторов безопасности файлов, каталогов и разделов реестра.
        При указании нескольких значений параметра разделяйте их запятыми. Напр
        имер: "<имя-параметра> <значение1>, <значение2>".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$DogACL = get-acl c:\dog.txt
    
    C:\PS>set-acl -path C:\cat.txt -AclObject $DogACL
    
    
    Описание
    -----------
    Эти команды копируют значения из дескриптора безопасности файла Dog.txt в д
    ескриптор безопасности файла Cat.txt. После завершения работы команд дескри
    пторы безопасности файлов Dog.txt и Cat.txt идентичны.
    
    В первой команде используется командлет Get-Acl, чтобы получить дескриптор 
    безопасности файла Dog.txt. Оператор назначения (=) сохраняет дескриптор бе
    зопасности в качестве значения переменной $DogACL. 
    Вторая команда использует Set-Acl, чтобы изменить значения списка ACL файла
     Cat.txt на значения из переменной $DogACL.
    Значение параметра Path представляет собой путь к файлу Cat.txt. Значение п
    араметра AclObject — образец списка ACL, в данном случае список ACL файла D
    og.txt, как он был сохранен в переменной $DogACL.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-acl c:\dog.txt | set-acl -path C:\cat.txt
    
    
    Описание
    -----------
    Эта команда почти такая же, как команда в предыдущем примере, за исключение
    м того, что в ней используется оператор конвейера для передачи дескриптора 
    безопасности, извлеченного в команде Get-Acl, в команду Set-Acl.
    В первой команде используется командлет Get-Acl, чтобы получить дескриптор 
    безопасности файла Dog.txt. Оператор конвейера (|) передает объект, который
     представляет дескриптор безопасности файла Dog.txt, в команду Set-Acl.
    Во второй команде используется командлет Set-Acl, чтобы применить дескрипто
    р безопасности файла Dog.txt к файлу Cat.txt. После завершения работы коман
    ды списки ACL файлов Dog.txt и Cat.txt идентичны.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$newACL = get-acl file0.txt
    
    C:\PS>get-childitem c:\temp -recurse -include *.txt -force | set-acl -aclob
    ject $newacl
    
    
    Описание
    -----------
    Эти команды применяют дескрипторы безопасности в файле File0.txt ко всем те
    кстовым файлам в каталоге "C:\Temp" и во всех его вложенных каталогах.
    
    Первая команда получает дескриптор безопасности файла File0.txt в текущем к
    аталоге и использует оператор назначения (=), чтобы сохранить его в перемен
    ной $newACL.
    
    Первая команда в конвейере использует командлет Get-ChildItem, чтобы получи
    ть все текстовые файлы в каталоге "C:\Temp". Параметр Recurse расширяет дей
    ствие команды на все вложенные каталоги "C:\temp". Параметр Include огранич
    ивает набор извлеченных файлов файлами с расширением ".txt". Параметр Force
     позволяет извлечь скрытые файлы, которые в противном случае были бы пропущ
    ены. (Нельзя указать "c:\temp\*.txt", так как параметр Recurse применяется 
    к каталогам, а не файлам.)
    
    Оператор конвейера (|) передает объекты, представляющие извлеченные файлы, 
    в команду Set-Acl, которая применяет дескриптор безопасности в параметре Ac
    lObject ко всем файлам в конвейере.
    На практике лучше использовать параметр Whatif со всеми командами Set-Acl, 
    которые могут влиять больше, чем на один ресурс. В этом случае второй коман
    дой в конвейере будет "set-acl -aclobject $newacl -whatif". Эта команда пер
    ечисляет файлы, на которые воздействует команда. После просмотра результато
    в можно вновь запустить команду без параметра Whatif.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113389
    Get-Acl 



Set-Alias

ИМЯ
    Set-Alias
    
ОПИСАНИЕ
    Создает или изменяет псевдоним (альтернативное имя) командлета или другого 
    элемента команды в текущем сеансе Windows PowerShell.
    
СИНТАКСИС
    Set-Alias [-Name] <string> [-Value] <string> [-Description <string>] [-Forc
    e] [-Option {None | ReadOnly | Constant | Private | AllScope}] [-PassThru] 
    [-Scope <string>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-Alias создает или изменяет псевдоним (альтернативное имя) ком
    андлета или элемента команды, такого как функция, скрипт, файл или другой и
    сполняемый элемент. Командлет Set-Alias можно также использовать для назнач
    ения текущего псевдонима новой команде и для изменения любых свойств псевдо
    нима, например его описания. Если не добавить псевдоним в профиль Windows P
    owerShell, то изменения псевдонима будут утрачены при окончании сеанса или 
    закрытии Windows PowerShell.
    
ПАРАМЕТРЫ
    -Description <string>
        Задает описание псевдонима. Можно ввести любую строку. Если описание со
        держит пробелы, его нужно заключить в кавычки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету задавать псевдоним, доступный только для чтения. Д
        ля создания доступных только для чтения псевдонимов, следует использова
        ть параметр Option. Параметр Force не позволяет задать постоянный псевд
        оним.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает новый псевдоним. В псевдониме можно использовать любые буквы или
         цифры, но первым знаком не может быть цифра.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Option <ScopedItemOptions>
        Определяет значение свойства Options псевдонима.
        
        Допустимые значения:
        
        -- None: не определяет параметров (по умолчанию).
        
        -- ReadOnly: свойства псевдонима изменить нельзя, если только не исполь
        зовать параметр Force. Для удаления псевдонима воспользуйтесь командлет
        ом Remove-Item.
        
        -- Constant: псевдоним нельзя удалить, а его свойства нельзя изменить. 
        Значение "Constant" доступно только при создании псевдонима. Нельзя при
        своить значение "Constant" параметру существующего псевдонима.
        
        -- Private: псевдоним доступен только в области, определенной параметро
        м Scope. Он невидим за пределами области.
        
        -- AllScope: псевдоним копируется во все создаваемые области.
        
        Чтобы увидеть свойство псевдонимов Options, введите команду "get-alias|
         format-table -property Name, Definition, Options -autosize".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий псевдоним. По умолчанию этот командле
        т не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Scope <string>
        Задает область действия псевдонима. Допустимые значения: "Global", "Loc
        al", "Script" или номер относительно текущей области (от 0 до количеств
        а областей, где 0 — текущая область, а 1 — ее родительская область). По
         умолчанию используется значение "Local". Дополнительные сведения см. в
         разделе about_Scopes.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Value <string>
        Задает имя командлета или элемента команды, для которого создается псев
        доним.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.AliasInfo
        Если задан параметр PassThru, командлет Set-Alias создает объект System
        .Management.Automation.AliasInfo, представляющий псевдоним. В противном
         случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Псевдоним — это альтернативное имя командлета или элемента команды. Для
         выполнения командлета можно использовать как его полное имя, так и люб
        ой его псевдоним. Дополнительные сведения см. в разделе About_Aliases. 
        
        Для создания нового псевдонима используйте командлет Set-Alias или New-
        Alias. Для удаления псевдонима используйте командлет Remove-Item.
        
        Командлет может иметь несколько псевдонимов, но один псевдоним может бы
        ть связан только с одним командлетом. Если с помощью командлета set-ali
        as псевдоним назначается другому командлету, то он больше не связан с п
        режним командлетом.
        
        Псевдоним можно создать для командлета, но не для команды с параметрами
         и значениями. Например, можно создать псевдоним для командлета Set-Loc
        ation, но для команды "Set-Location C:\Windows\System32" этого сделать 
        нельзя. Чтобы назначить псевдоним команде, создайте функцию, включающую
         эту команду, и определите псевдоним для этой функции.
        
        Чтобы сохранить псевдонимы, действительные в ходе текущего сеанса, и ис
        пользовать их в другом сеансе, добавьте в профиль Windows PowerShell ко
        манду set-alias. По умолчанию профили не существуют. Чтобы создать проф
        иль в месте, на которое указывает путь, хранящийся в переменной $profil
        e, введите команду "new-item -type file -force $profile". Чтобы вывести
         значение переменной $profile, введите "$profile".
        
        Кроме того, сохранить псевдонимы текущего сеанса можно, скопировав их в
         файл с помощью командлета Export-Alias, а затем добавив их в список пс
        евдонимов нового сеанса с помощью командлета Import-Alias.
        
        Командлет Set-Alias также можно вызывать с помощью встроенного псевдони
        ма "sal". Дополнительные сведения см. в разделе About_Aliases.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>set-alias -name list -value get-childitem
    
    
    Описание
    -----------
    Эта команда создает для командлета Get-ChildItem псевдоним "list". После со
    здания этого псевдонима его можно использовать в командной строке и скрипта
    х вместо имени командлета Get-ChildItem.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-alias list get-location
    
    
    Описание
    -----------
    Эта команда связывает псевдоним "list" с командлетом Get-Location. Если псе
    вдоним "list" связан с другим командлетом, эта команда меняет привязку и де
    лает его псевдонимом только командлета Get-Location.
    
    Эта команда имеет тот же формат, что и команда в предыдущем примере, но в н
    ей опущены необязательные имена параметров -Name и -Value. Опуская имена па
    раметров, следует указывать их значения в заданном в команде порядке. В дан
    ном случае значение параметра -Name ("list") должно быть указано первым, а 
    значение параметра -Value ("get-location") вторым.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>set-alias scrub remove-item -option readonly -passthru | format-list
    
    
    Описание
    -----------
    Эта команда связывает псевдоним "scrub" с командлетом Remove-Item. Чтобы эт
    от псевдоним нельзя было удалить или назначить другому командлету, в данной
     команде используется параметр -option со значением "ReadOnly".
    
    Параметр PassThru указывает оболочке Windows PowerShell, что необходимо по 
    конвейеру передать объект, представляющий новый псевдоним, командлету Forma
    t-List. Если бы параметр PassThru не был указан, этот командлет не возврати
    л бы никаких данных, которые можно было бы отобразить в виде списка или как
    -либо иначе.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>Set-Alias np c:\windows\notepad.exe
    
    
    Описание
    -----------
    Эта команда связывает псевдоним "np" с исполняемым файлом "Блокнота". После
     выполнения этой команды для запуска "Блокнота" достаточно будет ввести в к
    омандной строке Windows PowerShell команду "np".
    
    Этот пример показывает, что псевдонимы можно создавать не только для команд
    летов, но и для исполняемых файлов и других элементов.
    
    Эту команду можно сделать более универсальной, представив каталог C\Windows
     с помощью переменной среды "Windir" (${env:windir}). Тогда команда примет 
    вид "set-alias np ${env:windir}\notepad.exe".
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>function CD32 {set-location c:\windows\system32}
    
    C:\PS>set-alias go cd32
    
    
    Описание
    -----------
    Эти команды показывают, как назначить псевдоним команде с параметрами или д
    аже нескольким командам, объединенным в конвейер.
    
    Псевдоним можно создать для командлета, но не для команды, включающей коман
    длет и его параметры. Однако, поместив команду в функцию или скрипт, можно 
    создать один или несколько псевдонимов для имени этой функции или скрипта.
    
    В данном примере пользователю нужно создать псевдоним для команды "set-loca
    tion c:\windows\system32", где "set-location" — командлет, а "C:\Windows\Sy
    stem32" — значение параметра Path. 
    
    Для этого в первой команде создается функция "CD32", содержащая команду Set
    -Location.
    
    Вторая команда создает псевдоним "go" для функции CD32. После этого для вып
    олнения команды Set-Location можно вводить как "CD32", так и "go".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113390
    Get-Alias 
    New-Alias 
    Export-Alias 
    Import-Alias 



Set-AuthenticodeSignature

ИМЯ
    Set-AuthenticodeSignature
    
ОПИСАНИЕ
    Добавляет подпись Authenticode, чтобы подписать скрипт Windows PowerShell и
    ли другой файл.
    
СИНТАКСИС
    Set-AuthenticodeSignature [-FilePath] <string[]> [-Certificate] <X509Certif
    icate2> [-Force] [-HashAlgorithm <string>] [-IncludeChain <string>] [-Times
    tampServer <string>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-AuthenticodeSignature добавляет подпись Authenticode в любой 
    файл, совместимый с протоколом SIP (Subject Interface Package).  
    
    В файле скрипта Windows PowerShell подпись имеет вид блока текста, который 
    указывает конец инструкций, выполняемых в скрипте. Если при запуске командл
    ета в файле уже есть подпись, то эта подпись удаляется.
    
ПАРАМЕТРЫ
    -Certificate <X509Certificate2>
        Задает сертификат, который будет использоваться для подписания скрипта 
        или файла. Введите переменную, в которой хранится объект, представляющи
        й сертификат, или выражение, которое получает сертификат.
        
        Чтобы найти сертификат, воспользуйтесь командлетом Get-PfxCertificate и
        ли Get-ChildItem на диске сертификата (Cert:). Если сертификат недейств
        ителен или не имеет заверителя подписи кода, то команда завершается сбо
        ем.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FilePath <string[]>
        Указывает путь к подписываемому файлу.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету добавлять подпись в файл, доступный только для чте
        ния. Даже при использовании параметра Force командлет не может переопре
        делить ограничения безопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -HashAlgorithm <string>
        Задает алгоритм хэширования, который использует Windows для расчета циф
        ровой подписи для файла. По умолчанию он задан как SHA1, что является а
        лгоритмом хэширования в Windows по умолчанию.
        Файлы, подписанные с использованием другого алгоритма хэширования, могу
        т не распознаваться в других системах.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                SHA1
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -IncludeChain <string>
        Определяет, какие сертификаты в цепочке доверия сертификатов включаются
         в цифровую подпись. "NotRoot" — значение по умолчанию.
        
        Допустимые значения:
        
        Signer: включает в себя только сертификат подписавшего.
        NotRoot: включает в себя все сертификаты в цепочке сертификатов, за иск
        лючением корневого центра.
        All: включает в себя все сертификаты в цепочке сертификатов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -TimestampServer <string>
        Использует заданный сервер отметок времени, чтобы добавить к подписи от
        метку времени. Введите URL-адрес сервера отметок времени в виде строки.
         
        Отметка времени представляет собой значение точного времени, когда серт
        ификат был добавлен в файл. Отметка времени защищает скрипт от сбоев в 
        случае истечения срока действия сертификата, поскольку пользователи и п
        рограммы могут проверить, что сертификат действовал в момент подписания
        .
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь к файлу, можно передать командлету Set-Authenti
        codeSignature по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.Signature
        
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$cert=Get-ChildItem -Path cert:\CurrentUser\my -CodeSigningCert
    
    C:\PS>Set-AuthenticodeSignature -FilePath PsTestInternet2.ps1 -certificate 
    $cert
    
    
    Описание
    -----------
    Эти команды извлекают сертификат подписи кода из поставщика сертификата Win
    dows PowerShell и используют его, чтобы подписать скрипт Windows PowerShell
    .
    
    Первая команда использует командлет Get-ChildItem и поставщик сертификата W
    indows PowerShell, чтобы получить сертификаты во вложенном каталоге "Cert:\
    CurrentUser\My" хранилища сертификатов. (Cert: это диск, предоставленный по
    ставщиком сертификата.) Параметр CodeSigningCert, который поддерживается то
    лько поставщиком сертификата, обеспечивает извлечение сертификатов только с
     заверителем подписи кода. Команда сохраняет результат в переменной $cert.
    Вторая команда подписывает скрипт PSTestInternet2.ps1 с помощью командлета 
    Set-AuthenticodeSignature. Параметр FilePath указывает имя скрипта, а парам
    етр Certificate указывает, что сертификат хранится в переменной $cert.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$cert = Get-PfxCertificate C:\Test\Mysign.pfx 
    
    C:\PS>Set-AuthenticodeSignature -Filepath ServerProps.ps1 -Cert $cert
    
    
    Описание
    -----------
    Эти команды используют командлет Get-PfxCertificate для поиска сертификата 
    подписи кода. Затем они используют его для подписи скрипта Windows PowerShe
    ll. 
    Первая команда использует командлет Get-PfxCertificate, чтобы найти сертифи
    кат "C:\Test\MySign.pfx" и сохранить его в переменной $cert.
    Во второй команде командлет Set-AuthenticodeSignature используется для подп
    иси скрипта. Параметр FilePath подписи Set-AuthenticodeSignature указывает 
    путь к файлу подписываемого скрипта, а параметр Cert передает переменную $c
    ert, в которой содержится сертификат, в Set-AuthenticodeSignature.
    Если файл сертификата защищен паролем, то оболочка Windows PowerShell проси
    т ввести пароль.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>Set-AuthenticodeSignature -filepath c:\scripts\Remodel.ps1 -certifica
    te $cert -IncludeChain All -TimeStampServer "http://timestamp.fabrikam.com/
    scripts/timstamper.dll"
    
    
    Описание
    -----------
    Эта команда добавляет цифровую подпись, которая включает корневой центр в ц
    епочке доверия, и подписывается сторонним сервером штампов времени. 
    Команда использует параметр FilePath, чтобы указать подписываемый скрипт, и
     параметр Certificate, чтобы указать сертификат, сохраненный в переменной $
    cert. Она использует параметр IncludeChain, чтобы включить все подписи в це
    почке доверия (включая корневой центр сертификации). Кроме того, она исполь
    зует параметр TimeStampServer, чтобы добавить к подписи отметку времени. Эт
    о защищает скрипт от сбоя в случае истечения срока действия сертификата.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113391
    about_Signing 
    about_Execution_Policies 
    Get-AuthenticodeSignature 
    Get-PfxCertificate 
    Get-ExecutionPolicy 
    Set-ExecutionPolicy 



Set-Content

ИМЯ
    Set-Content
    
ОПИСАНИЕ
    Записывает новое содержимое в элемент или заменяет им старое.
    
СИНТАКСИС
    Set-Content [-LiteralPath] <string[]> [-Value] <Object[]> [-Credential <PSC
    redential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <st
    ring[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParamet
    ers>]
    
    Set-Content [-Path] <string[]> [-Value] <Object[]> [-Credential <PSCredenti
    al>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>
    ] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-Content предназначен для обработки строк, он записывает новое
     содержимое в указанный элемент (например, файл) или заменяет старое содерж
    имое элемента. В отличие от командлета Add-Content, который добавляет содер
    жимое в конец файла, командлет Set-Content заменяет существующие в файле да
    нные новыми. Новое содержимое можно ввести в команде или передать командлет
    у Set-Content по конвейеру.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету задать содержимое файла, даже если файл доступен т
        олько для чтения. Реализация варьируется от поставщика к поставщику. До
        полнительные сведения см. в разделе About_Providers. Даже при использов
        ании параметра Force командлет не может переопределить ограничения безо
        пасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Изменяет только указанные элементы. Значение этого параметра определяет
         значение параметра Path. Введите элемент пути или шаблон, например "*.
        txt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к элементу, получающему содержимое. В отличие от значения п
        араметра Path, значение параметра LiteralPath используется точно в том 
        виде, в котором оно введено. Никакие символы не интерпретируются как по
        дстановочные знаки. Если путь включает escape-символы, его нужно заключ
        ить в одиночные кавычки. Одиночные кавычки указывают оболочке Windows P
        owerShell, что никакие символы не следует интерпретировать как escape-с
        имволы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий содержимое. По умолчанию этот командл
        ет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к элементу, получающему содержимое. Подстановочные знаки ра
        зрешены.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Value <Object[]>
        Задает новое содержимое элемента.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Object
        Объект, содержащий новое значение для элемента, можно передать командле
        ту Set-Content по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.String
        При использовании параметра Passthru командлет Set-Content создает объе
        кт System.String, представляющий содержимое. В противном случае этот ко
        мандлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Set-Content также можно вызывать с помощью встроенного псевдо
        нима "sc". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлет Set-Content предназначен для обработки строк. Если командлету
         Set-Content передаются по конвейеру нестроковые объекты, они преобразу
        ются перед записью в строковой тип. Для записи объектов в файлы использ
        уется командлет Out-File.
        
        Командлет Set-Content предназначен для работы с данными, предоставляемы
        ми любым поставщиком. Чтобы получить список поставщиков, доступных в те
        кущем сеансе, введите команду "Get-PsProvider". Дополнительные сведения
         см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>set-content -path C:\Test1\test*.txt -value "Hello, World"
    
    
    Описание
    -----------
    Эта команда удаляет содержимое всех файлов из папки Test1, имена которых на
    чинаются с "test" и которые содержат строку "Hello, World". Этот пример пок
    азывает, как задать содержимое в тексте команды.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-date | set-content C:\Test1\date.csv
    
    
    Описание
    -----------
    Эта команда создает файл из строк переменной длины с разделителями-запятыми
     (CSV), в котором содержатся только текущие время и дата. Для извлечения те
    кущего системного времени и даты используется командлет Get-Date. Оператор 
    конвейера передает результат командлету Set-Content, который создает файл и
     записывает в него содержимое.
    
    Если папка Test1 не существует, команда завершается ошибкой. Если не сущест
    вует файл, команда его создает.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>(get-content Notice.txt) | foreach-object {$_ -replace "Warning", "Ca
    ution"} | set-content Notice.txt
    
    
    Описание
    -----------
    Эта команда заменяет в файле Notice.txt все вхождения слова "Warning" на "C
    aution". 
    
    Для получения содержимого файла Notice.txt в этой команде используется кома
    ндлет Get-Content. Результаты с помощью оператора конвейера передаются кома
    ндлету ForEach-Object, который применяет выражение к каждой строке содержим
    ого, полученного с помощью Get-Content. В указанном выражении для обращения
     к текущему элементу используется знак "$_", а заменяемый текст задается с 
    помощью параметра Replace. 
    
    Следующий оператор конвейера передает измененное содержимое командлету Set-
    Content, который заменяет указанный текст файла Notice.txt новым содержимым
    .
    
    Скобки, в которые заключен командлет Get-Content, обеспечивают, что операци
    я Set не будет начата до завершения операции Get. Без них команда завершитс
    я с ошибкой, так как две указанных функции будут пытаться одновременно полу
    чить доступ к одному и тому же файлу.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113392
    about_Providers 
    Add-Content 
    Get-Content 
    Clear-Content 



Set-Date

ИМЯ
    Set-Date
    
ОПИСАНИЕ
    Устанавливает системное время на компьютере.
    
СИНТАКСИС
    Set-Date [-Adjust] <TimeSpan> [-DisplayHint {Date | Time | DateTime}] [-Con
    firm] [-WhatIf] [<CommonParameters>]
    
    Set-Date [-Date] <DateTime> [-DisplayHint {Date | Time | DateTime}] [-Confi
    rm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-Date изменяет системные дату и время, заменяя их указанными з
    начениями. Указать новую дату и время можно в виде строки, или передав кома
    ндлету Set-Date объект DateTime или TimeSpan. Для указания новой даты или в
    ремени используйте параметр Date. Для указания интервала изменения использу
    йте параметр Adjust.
    
ПАРАМЕТРЫ
    -Adjust <TimeSpan>
        Прибавляет или вычитает указанное значение из текущей даты и времени. М
        ожно вводить изменения в стандартном формате даты и времени для использ
        уемой локали либо использовать параметр Adjust, чтобы передать объект T
        imeSpan от командлета New-TimeSpan командлету Set-Date.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Date <DateTime>
        Устанавливает указанные значения даты и времени. Можно ввести новую дат
        у в кратком формате даты, а время в стандартном формате времени для исп
        ользуемой локали. Или можно передать объект Date-Time из командлета Get
        -Date.
        
        Если задана только дата (без времени), командлет Set-Date устанавливает
         время на полночь указанной даты. Если указано только время, дата не из
        меняется.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -DisplayHint <DisplayHintType>
        Определяет, какие элементы даты и времени будут отображаться. 
        
        Допустимые значения: 
        
        -- date: отображается только дата;
        -- time: отображается только время;
        -- datetime: отображаются дата и время.
        
        Этот параметр влияет только на выводимый результат. Он не влияет на объ
        ект DateTime, возвращаемый командлетом Get-Date.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.DateTime
        Можно передать дату в Set-Date с помощью конвейера.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.DateTime
        Командлет Set-Date возвращает объект, представляющий заданную им дату.
    
    
ПРИМЕЧАНИЯ
    
    
        Используя этот командлет для изменения даты и времени на компьютере, бу
        дьте внимательны. Из-за изменения даты или времени компьютер может не п
        олучать системные события и обновления, которые запускаются в определен
        ный день или момент времени. Для предотвращения ошибок используйте пара
        метры -WhatIf и -Confirm. 
        
        Для работы с объектами DateTime и TimeSpan, которые используются с кома
        ндлетом Set-Date, можно применять стандартные методы .NET, такие как Ad
        dDays, AddMonths и FromFileTime. Дополнительные сведения см. в разделах
         "Методы объектов DateTime" и "Методы объектов TimeSpan".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Set-Date -Date (Get-Date).AddDays(3)
    
    
    Описание
    -----------
    Эта команда добавляет к текущей системной дате три дня. На время она не вли
    яет. Параметр Date используется в этой команде для указания даты. Командлет
     Get-Date возвращает текущие значения даты и времени, после чего для объект
    ов DateTime вызывается метод AddDays платформы .NET, добавляющий к текущей 
    дате 3 дня.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-date -adjust -0:10:0 -displayHint time
    
    
    Описание
    -----------
    Эта команда переводит текущее системное время на 10 минут назад. Параметр A
    djust используется в ней для указания интервала изменения (минус 10 минут) 
    в стандартном формате времени текущей локали. Параметр DisplayHint указывае
    т, что должно быть отображено только время; но он не влияет на объект DateT
    ime, возвращаемый командлетом Set-Date.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$t = get-date
    
    C:\PS>set-date -date $t
    
    
    Описание
    -----------
    Эти команды изменяют системные дату и время компьютера, заменяя их значение
    м, сохраненным в переменной $t. Первая команда получает дату и сохраняет ее
     в переменной $t. Вторая команда с помощью параметра Date передает объект D
    ateTime из переменной $t командлету Set-Date.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$90mins = new-timespan -minutes 90
    
    C:\PS>set-date -adjust $90mins
    
    
    Описание
    -----------
    Эти команды переводят системное время на локальном компьютере на 90 минут в
    перед. Первая команда с помощью командлета New-Timespan создает объект Time
    Span, определяющий 90-минутный интервал, после чего сохраняет его в перемен
    ной $90mins. Вторая команда с помощью параметра Adjust командлета Set-Date 
    изменяет время на интервал, который определяется объектом TimeSpan, сохране
    нным в переменной $90mins.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113393
    Get-Date 
    New-TimeSpan 



Set-ExecutionPolicy

ИМЯ
    Set-ExecutionPolicy
    
ОПИСАНИЕ
    Изменяет пользовательские параметры политики выполнения Windows PowerShell.
    
СИНТАКСИС
    Set-ExecutionPolicy [-ExecutionPolicy] {Unrestricted | RemoteSigned | AllSi
    gned | Restricted | Default | Bypass | Undefined} [[-Scope] {Process | Curr
    entUser | LocalMachine | UserPolicy | MachinePolicy}] [-Force] [-Confirm] [
    -WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-ExecutionPolicy изменяет пользовательские параметры политики 
    выполнения Windows PowerShell. 
    
    Чтобы выполнить эту команду в Windows Vista, Windows Server 2008 и более по
    здних версиях Windows, необходимо запустить Windows PowerShell с параметром
     "Запуск от имени администратора", даже если пользователь является членом г
    руппы "Администраторы" компьютера.
    Политика выполнения — часть стратегии безопасности оболочки Windows PowerSh
    ell. Она определяет, можно ли загружать файлы конфигурации (в том числе про
    филь Windows PowerShell) и выполнять скрипты, и определяет, для выполнения 
    каких скриптов, если такие имеются, требуется цифровая подпись.
    
    Дополнительные сведения см. в разделе about_Execution_Policies.
    
ПАРАМЕТРЫ
    -ExecutionPolicy <ExecutionPolicy>
        Задает новую политику выполнения для оболочки. Имя параметра ("Name") у
        казывать необязательно. 
        
        Допустимые значения:
        
        -- Restricted: не загружает файлы конфигурации и не выполняет скрипты. 
        "Restricted" — значение по умолчанию.
        
        -- AllSigned: требует, чтобы все скрипты и файлы конфигурации были подп
        исаны доверенным издателем, в том числе скрипты, подготовленные на лока
        льном компьютере.
        
        -- RemoteSigned: требует, чтобы все скрипты и файлы конфигурации, загру
        женные из Интернета, были подписаны доверенным издателем.
        
        -- Unrestricted: загружает все файлы конфигурации и выполняет все скрип
        ты. Если запущен неподписанный скрипт, который был загружен из Интернет
        а, то программа просит ввести разрешение перед запуском.
        
        -- Bypass: ничего не блокируется, и никакие предупреждения и запросы не
         появляются.
        
        Undefined: удаляет текущую назначенную политику выполнения из текущей о
        бласти. Этот параметр не удаляет политику выполнения, заданную в област
        и групповой политики.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Подавляет все запросы. По умолчанию Set-ExecutionPolicy отображает пред
        упреждение при каждом изменении политики выполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Scope <ExecutionPolicyScope>
        Задает область политики выполнения. По умолчанию используется значение 
        LocalMachine.
        Допустимые значения:
        
        -- Process: действие политики выполнения распространяется только на тек
        ущий процесс Windows PowerShell.
        -- CurrentUser: действие политики выполнения распространяется только на
         текущего пользователя.
        -- LocalMachine: действие политики выполнения распространяется на всех 
        пользователей компьютера.
        
        Чтобы удалить политику выполнения из конкретной области, задайте для по
        литики выполнения этой области значение Undefined.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                LocalMachine
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.ExecutionPolicy, System.String
        Объект политики выполнения или строку, содержащую имя политики выполнен
        ия, можно передать командлету Set-ExecutionPolicy по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    None
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        При использовании Set-ExecutionPolicy новый пользовательский параметр з
        аписывается в реестр и остается без изменений до тех пор, пока не будет
         изменен.
        Однако если для компьютера или пользователя включена групповая политика
         "Включить выполнение скриптов", то пользовательский параметр записывае
        тся в реестр, но не действует, и оболочка Windows PowerShell отображает
         сообщение, в котором разъясняется конфликт. Использовать командлет Set
        -ExecutionPolicy, чтобы переопределить групповую политику, нельзя, даже
         если пользовательский параметр содержит больше ограничений, чем полити
        ка.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>set-executionpolicy remotesigned
    
    
    Описание
    -----------
    Эта команда устанавливает значение RemoteSigned для пользовательского парам
    етра политики выполнения оболочки.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>Set-ExecutionPolicy Restricted
    
    Set-ExecutionPolicy : Windows PowerShell updated your local preference succ
    essfully, but the setting is overridden by the group policy applied to your
     system. Due to the override, your shell will retain its current effective 
    execution policy of "AllSigned". Contact your group policy administrator fo
    r more information.
    At line:1 char:20
    + set-executionpolicy  < restricted
    
    
    Описание
    -----------
    Эта команда пытается установить для политики выполнения оболочки значение "
    Restricted". Параметр "Restricted" записывается в реестр, но не действует, 
    так как противоречит групповой политике, даже если он представляет более ст
    рогие ограничения, чем в политике.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>invoke-command -computername Server01 -scriptblock {get-executionpoli
    cy} | set-executionpolicy -force
    
    
    Описание
    -----------
    Эта команда получает политику выполнения с удаленного компьютера и применяе
    т ее к локальному компьютеру.
    
    Эта команда использует командлет Invoke-Command для отправки команды удален
    ному компьютеру. Поскольку объект ExecutionPolicy (Microsoft.PowerShell.Exe
    cutionPolicy) можно передать командлету Set-ExecutionPolicy по конвейеру, э
    та команда не требует параметра ExecutionPolicy.
    Команда имеет параметр Force, который подавляет подтверждения.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>set-executionpolicy -scope CurrentUser -executionPolicy AllSigned -fo
    rce
    
    C:\PS> get-executionpolicy -list
    
            Scope   ExecutionPolicy
            -----   ---------------
    MachinePolicy         Undefined
       UserPolicy         Undefined
          Process         Undefined
      CurrentUser         AllSigned
     LocalMachine      RemoteSigned
    
    C:\PS> get-executionpolicy
    AllSigned
    
    
    Описание
    -----------
    В этом примере показано, как задать политику выполнения для конкретной обла
    сти.
    Первая команда использует командлет Set-ExecutionPolicy для указания полити
    ки выполнения AllSigned для текущего пользователя. Она использует параметр 
    Force для подавления подтверждений.
    Вторая команда использует параметр List командлета Get-ExecutionPolicy для 
    получения политик выполнения, заданных в каждой области. В результате вывод
    ится сообщение, что политика выполнения, заданная для текущего пользователя
    , отличается от политики выполнения, заданной для всех пользователей компью
    тера. 
    Третья команда использует командлет Get-ExecutionPolicy без параметров для 
    получения действующей политики выполнения для текущего пользователя локальн
    ого компьютера. В результате подтверждается, что политика выполнения, задан
    ная для текущего пользователя, имеет приоритет над политикой, заданной для 
    всех пользователей.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>set-executionpolicy -scope CurrentUser -executionPolicy Undefined
    
    
    Описание
    -----------
    Эта команда использует значение политики выполнения Undefined для эффективн
    ого удаления политики выполнения, заданной для области текущего пользовател
    я. В результате политика выполнения, заданная в групповой политике или в об
    ласти LocalMachine (все пользователи), является действующей.
    Если политику выполнения задать во всех областях как Undefined, а групповую
     политику не задавать, политика выполнения по умолчанию Restricted является
     действующей для всех пользователей компьютера.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113394
    Get-ExecutionPolicy 
    Set-AuthenticodeSignature 
    Get-AuthenticodeSignature 
    about_Execution_Policies 
    about_Signing 



Set-Item

ИМЯ
    Set-Item
    
ОПИСАНИЕ
    Заменяет значение элемента на значение, указанное в команде.
    
СИНТАКСИС
    Set-Item [-LiteralPath] <string[]> [[-Value] <Object>] [-Credential <PSCred
    ential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <strin
    g[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters
    >]
    
    Set-Item [-Path] <string[]> [[-Value] <Object>] [-Credential <PSCredential>
    ] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [
    -PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-Item заменяет значение элемента (например, переменной или раз
    дела реестра) на значение, указанное в команде.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету задать элементы, которые не могут быть изменены др
        угим образом, например псевдонимы или переменные только для чтения. Ком
        андлет не может изменять псевдонимы или переменные, являющиеся констант
        ами. Реализация варьируется от поставщика к поставщику. Дополнительные 
        сведения см. в разделе About_Providers. Даже при использовании параметр
        а Force командлет не может переопределить ограничения безопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Изменяет только указанные элементы. Значение этого параметра определяет
         значение параметра Path. Введите элемент пути или шаблон, например "*.
        txt". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к местоположению новых элементов. В отличие от значения пар
        аметра Path, значение параметра LiteralPath используется точно в том ви
        де, в котором оно введено. Никакие символы не интерпретируются как подс
        тановочные знаки. Если путь включает escape-символы, его нужно заключит
        ь в одиночные кавычки. Одиночные кавычки указывают оболочке Windows Pow
        erShell, что никакие символы не следует интерпретировать как escape-сим
        волы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Передает по конвейеру объект, представляющий элемент. По умолчанию этот
         командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к местоположению новых элементов. Подстановочные знаки разр
        ешены.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Value <Object>
        Задает новое значение элемента.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Object
        Объект, представляющий новое значение элемента, можно передать командле
        ту Set-Item по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или объект, представляющий новый или измененный элемент.
        При использовании параметра Passthru командлет Set-Item создает объект,
         представляющий элемент. В противном случае этот командлет не формирует
         никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Set-Item также можно вызывать с помощью встроенного псевдоним
        а "si". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлет Set-Item не поддерживается поставщиком FileSystem Windows Pow
        erShell. Чтобы изменить значения элементов файловой системы, используйт
        е командлет Set-Content.
        
        На дисках реестра (HKLM: и HKCU:) командлет Set-Item изменяет значение 
        параметра Default раздела реестра. Для создания и изменения имен раздел
        ов реестра используются командлеты New-Item и Rename-Item. Чтобы измени
        ть имена и данные параметров реестра, используйте командлеты New-ItemPr
        operty, Set-ItemProperty и Rename-ItemProperty.
        
        Командлет Set-Item предназначен для работы с данными, предоставляемыми 
        любым поставщиком. Чтобы получить список поставщиков, доступных в текущ
        ем сеансе, введите команду "Get-PsProvider". Дополнительные сведения см
        . в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>set-item -path alias:np -value c:\windows\notepad.exe
    
    
    Описание
    -----------
    Эта команда создает псевдоним "np" для приложения "Блокнот".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-item -path env:UserRole -value Administrator
    
    
    Описание
    -----------
    Эта команда использует командлет Set-Item для присвоения переменной среды "
    UserRole" значения "Administrator".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>set-item -path function:prompt -value {'PS '+ $(Get-Date -format t) +
     " " + $(Get-Location) + '> '}
    
    
    Описание
    -----------
    В этой команде командлет Set-Item используется для изменения функции "promp
    t" таким образом, чтобы перед значением пути отображалось время.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>set-item -path function:prompt -options "AllScope,ReadOnly"
    
    
    Описание
    -----------
    Эта команда задает значения параметров AllScope и ReadOnly для функции "pro
    mpt". В ней используется динамический параметр Options командлета Set-Item.
     Параметр Options доступен для Set-Item только при использовании с поставщи
    ком Alias или Function.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113395
    about_Providers 
    Get-Item 
    New-Item 
    Remove-Item 
    Clear-Item 
    Invoke-Item 
    Rename-Item 
    Move-Item 
    Copy-Item 



Set-ItemProperty

ИМЯ
    Set-ItemProperty
    
ОПИСАНИЕ
    Создает или изменяет значение свойства элемента.
    
СИНТАКСИС
    Set-ItemProperty [-LiteralPath] <string[]> -InputObject <psobject> [-Creden
    tial <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-In
    clude <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<Comm
    onParameters>]
    
    Set-ItemProperty [-Path] <string[]> -InputObject <psobject> [-Credential <P
    SCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include 
    string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParam
    eters>]
    
    Set-ItemProperty [-LiteralPath] <string[]> [-Name] <string> [-Value] <Objec
    t> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-
    Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransact
    ion] [<CommonParameters>]
    
    Set-ItemProperty [-Path] <string[]> [-Name] <string> [-Value] <Object> [-Cr
    edential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] 
    [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [
    CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-ItemProperty изменяет значение свойства заданного элемента. Э
    тот командлет можно использовать для задания или изменения свойств элементо
    в. Например, командлет Set-ItemProperty можно использовать для присвоения с
    войству IsReadOnly объекта файла значения true.
    
    Командлет Set-ItemProperty можно также использовать для создания и изменени
    я параметров и значений реестра. Например, можно добавить в раздел реестра 
    новую запись и задать или изменить ее значение.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, создаваемый командлетом G
        et-Credential. При вводе имени пользователя система запросит пароль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Определяет элементы, которые не должны быть обработаны командлетом, и в
        ключает все остальные.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Разрешает командлету устанавливать значения свойств элементов, которые 
        были бы недоступны пользователю другими способами. Реализация варьирует
        ся от поставщика к поставщику. Дополнительные сведения см. в разделе Ab
        out_Providers.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Определяет только элементы, которые будут обработаны командлетом, и иск
        лючает все остальные.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объект, свойства которого необходимо изменить. Укажите переменну
        ю, содержащую объект, либо введите команду, получающую его.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь к свойству элемента. Значение параметра LiteralPath использ
        уется точно в том виде, в котором оно введено. Никакие символы не интер
        претируются как подстановочные знаки. Если путь включает escape-символы
        , его нужно заключить в одиночные кавычки. Одиночные кавычки указывают 
        оболочке Windows PowerShell, что никакие символы не следует интерпретир
        овать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя свойства.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий свойство элемента. По умолчанию этот 
        командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь к элементам, свойство которых нужно задать.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Value <Object>
        Задает значение свойства.
        
        Требуется?                    true
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Объекты можно передать командлету Set-ItemProperty по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PSCustomObject
        Если задан параметр PassThru, командлет Set-ItemProperty формирует объе
        кт PSCustomObject, представляющий измененный элемент и новое значение е
        го свойства. В противном случае этот командлет не формирует никаких вых
        одных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Set-ItemProperty предназначен для работы с данными, предостав
        ляемыми любым поставщиком. Чтобы получить список поставщиков, доступных
         в текущем сеансе, введите команду "Get-PSProvider". Дополнительные све
        дения см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>set-itemproperty -path c:\GroupFiles\final.doc -name IsReadOnly -valu
    e $true
    
    
    Описание
    -----------
    Эта команда присваивает свойству IsReadOnly файла final.doc значение "true"
    . 
    
    Команда изменяет значение свойства файла final.doc с помощью командлета Set
    -ItemProperty. Для задания файла используется параметр Path. Параметр Name 
    используется для задания имени свойства, а параметр Value — для задания нов
    ого значения.
    
    Автоматическая переменная $true представляет значение TRUE. Дополнительные 
    сведения см. в разделе about_Automatic_Variables.
    
    Файл является объектом System.IO.FileInfo, и IsReadOnly — лишь одно из его 
    свойств. Чтобы просмотреть все свойства и методы объекта FileInfo, передайт
    е файл по конвейеру командлету Get-Member. Например: "final.doc | get-membe
    r".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-itemproperty -path HKLM:\Software\MyCompany -name NoOfEmployees -
    value 823
    
    C:\PS>get-itemproperty -path HKLM:\Software\MyCompany
    
    PSPath        : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\soft
    ware\mycompany
    PSParentPath  : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\soft
    ware
    PSChildName   : mycompany
    PSDrive       : HKLM
    PSProvider    : Microsoft.PowerShell.Core\Registry
    NoOfLocations : 2
    NoOfEmployees : 823
    
    C:\PS>set-itemproperty -path HKLM:\Software\MyCompany -name NoOfEmployees -
    value 824
    C:\PS>get-itemproperty -path HKLM:\Software\MyCompany
    
    
    PSPath        : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\soft
    ware\mycompany
    PSParentPath  : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\soft
    ware
    PSChildName   : mycompany
    PSDrive       : HKLM
    PSProvider    : Microsoft.PowerShell.Core\Registry
    NoOfLocations : 2
    NoOfEmployees : 824
    
    
    Описание
    -----------
    В этом примере показано, как использовать командлет Set-ItemProperty для со
    здания новой записи в реестре и присвоения этой записи значения. В нем созд
    ается запись NoOfEmployees в разделе MyCompany, который находится в разделе
     HKLM\Software, и этой записи присваивается значение 823.
    
    Поскольку записи реестра рассматриваются как свойства разделов реестра (кот
    орые представляют собой элементы), командлет Set-ItemProperty можно использ
    овать для создания записей реестра, а также для задания и изменения их знач
    ений.
    
    Первая команда с помощью командлета Set-ItemProperty создает запись реестра
    . Для задания пути к диску HKLM: и разделу Software\MyCompany используется 
    параметр Path. Параметр Name используется для задания имени записи, а парам
    етр Value — для задания значения.
    
    Вторая команда с помощью командлета Get-ItemProperty отображает новую запис
    ь реестра. Просмотреть записи с помощью командлета Get-Item или Get-ChildIt
    em нельзя, поскольку записи являются свойствами раздела, а не элементами ил
    и дочерними элементами.
    
    Третья команда изменяет значение записи NoOfEmployees на 824.
    
    Также можно создать запись реестра и ее значение с помощью командлета New-I
    temProperty, а затем с помощью командлета Set-ItemProperty изменить значени
    е.
    
    Чтобы получить дополнительные сведения о диске HKLM:, введите команду "get-
    help get-psdrive". Чтобы получить дополнительные сведения об использовании 
    Windows PowerShell для управления реестром, введите команду "get-help regis
    try".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-childitem weekly.txt | set-itemproperty -name IsReadOnly -value $
    true
    
    
    Описание
    -----------
    На примере этих команд показано, как переслать элемент командлету Set-ItemP
    roperty с помощью оператора конвейера (|). 
    
    В первой части команды используется командлет Get-ChildItem для получения о
    бъекта, представляющего файл Weekly.txt. С помощью оператора конвейера объе
    кт файла пересылается командлету Set-ItemProperty. Параметры Name и Value к
    оманды Set-ItemProperty используются для задания свойства и его нового знач
    ения.
    
    Эта команда эквивалентна использованию параметра InputObject для задания об
    ъекта, получаемого командлетом Get-ChildItem.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113396
    about_Providers 
    Get-ItemProperty 
    New-ItemProperty 
    Clear-ItemProperty 
    Remove-ItemProperty 
    Rename-ItemProperty 
    Move-ItemProperty 
    Copy-ItemProperty 



Set-Location

ИМЯ
    Set-Location
    
ОПИСАНИЕ
    Присваивает текущему местоположению заданное значение.
    
СИНТАКСИС
    Set-Location [-LiteralPath] <string> [-PassThru] [-UseTransaction] [<Common
    Parameters>]
    
    Set-Location [[-Path] <string>] [-PassThru] [-UseTransaction] [<CommonParam
    eters>]
    
    Set-Location [-StackName <string>] [-PassThru] [-UseTransaction] [<CommonPa
    rameters>]
    
    
ОПИСАНИЕ
    Командлет Set-Location присваивает рабочему местоположению заданное значени
    е. Местоположение может быть каталогом, вложенным каталогом, местоположение
    м в реестре или другим стеком каталогов.
    
ПАРАМЕТРЫ
    -LiteralPath <string>
        Задает путь к местоположению. Значение параметра LiteralPath использует
        ся точно в том виде, в котором оно введено. Никакие символы не интерпре
        тируются как подстановочные знаки. Если путь включает escape-символы, е
        го нужно заключить в одиночные кавычки. Одиночные кавычки указывают обо
        лочке Windows PowerShell, что никакие символы не следует интерпретирова
        ть как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Передает по конвейеру объект, представляющий местоположение. По умолчан
        ию этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Этот параметр используется для задания пути к новому рабочему местополо
        жению.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -StackName <string>
        Имя стека, которое задается местоположению.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь (но не литеральный путь), можно передать команд
        лету Set-Location по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PathInfo
        Если задан параметр PassThru, командлет Set-Location создает объект Sys
        tem.Management.Automation.PathInfo, представляющий местоположение. В пр
        отивном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Set-Location предназначен для работы с данными, предоставляем
        ыми любым поставщиком. Чтобы получить список поставщиков, доступных в т
        екущем сеансе, введите команду "Get-PSProvider". Дополнительные сведени
        я см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>set-location HKLM:
    
    
    Описание
    -----------
    Эта команда присваивает текущему местоположению заданное значение. В данном
     случае им является поставщик HKLM.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-location env: -passthru
    
    Path
    ----
    Env:\
    
    
    Описание
    -----------
    Эта команда присваивает текущему местоположению заданное значение. В данном
     случае им является поставщик переменных среды.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>set-location C:
    
    
    Описание
    -----------
    Эта команда присваивает текущему местоположению заданное значение. В данном
     случае им является диск C: поставщика файловой системы.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113397
    about_Providers 
    Get-Location 
    Pop-Location 
    Push-Location 



Set-PSBreakpoint

ИМЯ
    Set-PSBreakpoint
    
ОПИСАНИЕ
    Устанавливает точку останова на строке, команде или переменной.
    
СИНТАКСИС
    Set-PSBreakpoint -Command <string[]> [[-Script] <string[]>] [-Action <scrip
    tblock>] [<CommonParameters>]
    
    Set-PSBreakpoint [-Script] <string[]> [-Line] <Int32[]> [[-Column] <int>] [
    -Action <scriptblock>] [<CommonParameters>]
    
    Set-PSBreakpoint -Variable <string[]> [[-Script] <string[]>] [-Mode {Read |
     Write | ReadWrite}] [-Action <scriptblock>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-PSBreakpoint устанавливает точку останова в скрипте или в люб
    ой команде, выполняемой в текущем сеансе.  С помощью командлета Set-PSBreak
    point точку останова можно установить до выполнения скрипта или команды или
     во время отладки в момент останова на другой точке останова.
    
    Примечание. Командлет Set-PSBreakpoint не позволяет устанавливать точку ост
    анова на удаленном компьютере. Для отладки скрипта на удаленном компьютере 
    скопируйте скрипт на локальный компьютер и отлаживайте его локально.
    
    Каждая команда Set-PSBreakpoint создает точку останова одного из следующих 
    трех типов.
      -- Точка останова строки: устанавливает точку останова на пересечении стр
    оки и столбца с заданными номерами.
      -- Точка останова команды: устанавливает точку останова на команде или фу
    нкции.
      -- Точка останова переменной: устанавливает точку останова на переменной.
    
    С помощью одной команды Set-PSBreakpoint можно установить точки останова на
     нескольких строках, командах или переменных, однако каждая команда Set-PSB
    reakpoint задает точки останова только одного типа. 
    
    В точке останова Windows PowerShell временно прекращает выполнение и переда
    ет управление отладчику. Командная строка меняет вид на "DBG>", а у пользов
    ателя появляется доступ к набору команд отладчика. Однако с помощью парамет
    ра Action можно настроить альтернативную реакцию, например условия срабатыв
    ания точки останова или инструкции по выполнению дополнительных задач, таки
    х как ведение журнала или диагностика.
     
    Командлет Set-PSBreakpoint — это один из нескольких командлетов, предназнач
    енных для отладки скриптов Windows PowerShell. Дополнительные сведения об о
    тладчике Windows PowerShell см. в разделе about_Debuggers.
    
ПАРАМЕТРЫ
    -Action <scriptblock>
        Задает команды, выполняемые в каждой точке останова вместо остановки. В
        ведите блок скрипта, содержащий команды. С помощью этого параметра можн
        о задать условные точки останова или выполнить другие задачи, например 
        тестирование и ведение журнала.
        
        Если этот параметр опущен или никакое действие не задано, выполнение пр
        ерывается в точке останова и запускается отладчик.
        
        В случае использования параметра Action в каждой точке останова выполня
        ется блок скрипта Action. Выполнение не останавливается, пока в скрипте
         не встретится ключевое слово Break. Если в блоке скрипта имеется слово
         Continue, то выполнение продолжится до следующей точки останова. 
        
        Дополнительные сведения см. в разделах about_Script_Blocks, about_Break
         и about_Continue.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Column <int>
        Задает номер столбца в файле скрипта, на котором останавливается выполн
        ение. Укажите только один номер столбца. По умолчанию используется стол
        бец 1. 
        
        Значение Column используется со значением параметра Line для задания то
        чки останова. Если параметр Line задает несколько строк, то параметр Co
        lumn устанавливает точку останова в заданном столбце каждой из этих стр
        ок. Windows PowerShell прерывает выполнение перед инструкцией или выраж
        ением, которые включают знак, расположенный на пересечении указанных ст
        роки и столбца. 
        
        Столбцы отсчитываются от левого верхнего поля и нумеруются от 1 (не 0).
         Если указать столбец, которого нет в скрипте, ошибки не произойдет, од
        нако точка останова никогда не будет достигнута.
        
        Требуется?                    false
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Command <string[]>
        Устанавливает точку останова команды. Введите имена команд, например Ge
        t-Process, или имена функций. Подстановочные знаки разрешены.
        
        Выполнение будет останавливаться перед выполнением каждого экземпляра к
        аждой из команд. Если команда является функцией, то выполнение останавл
        ивается перед каждым вызовом функции и в каждом из разделов BEGIN, PROC
        ESS и END.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Line <Int32[]>
        Задает точку останова строки в скрипте. Введите один или несколько номе
        ров строк, разделив их запятыми. Windows PowerShell останавливается неп
        осредственно перед выполнением инструкций, которые начинаются в каждой 
        из указанных строк.
        
        Строки отсчитываются от левого верхнего поля файла скрипта и нумеруются
         от 1 (не 0). Если указать пустую строку, выполнение будет остановлено 
        перед очередной непустой строкой. Если заданной строки не существует, т
        очка останова никогда не будет достигнута.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Mode <VariableAccessMode>
        Определяет тип доступа для срабатывания точек останова переменных. По у
        молчанию используется значение Write. 
        
        Этот параметр допустим только при использовании в команде параметра Var
        iable. Действие этого режима распространяется на все точки останова, ус
        танавливаемые командой. 
        
        Допустимые значения:
        
        -- Write: останавливает выполнение непосредственно перед записью в пере
        менную нового значения. 
        
        --  Read: останавливает выполнение при чтении переменной, т. е. когда к
         переменной обращаются для присваивания, вывода или использования. В ре
        жиме чтения выполнение не останавливается до изменения значения перемен
        ной.
        
        --  ReadWrite: останавливает выполнение при чтении или записи переменно
        й.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Script <string[]>
        Устанавливает точку останова в каждом из заданных файлов скриптов. Введ
        ите пути и имена одного или нескольких файлов скриптов. Если файлы нахо
        дятся в текущем каталоге, путь можно не указывать. Подстановочные знаки
         разрешены.
        
        По умолчанию точки останова переменных и точки останова команд устанавл
        иваются на всех командах, выполняемых в текущем сеансе. Этот параметр т
        ребуется только при установке точки останова строки.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Variable <string[]>
        Устанавливает точку останова переменной. Введите список разделенных зап
        ятыми переменных без знаков доллара ($).
        
        Для определения типа доступа для срабатывания точек останова переменных
         используйте параметр Mode. По умолчанию используется режим Write, в ко
        тором выполнение прекращается, прежде чем в переменную будет записано н
        овое значение.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Данные невозможно передать командлету Set-PSBreakpoint по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Объект точки останова (System.Management.Automation.LineBreakpoint, System.
    Management.Automation.VariableBreakpoint, System.Management.Automation.Comm
    andBreakpoint)
        Командлет Set-PSBreakpoint возвращает объект, представляющий каждую из 
        установленных им точек останова.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Set-PSBreakpoint не позволяет устанавливать точку останова на
         удаленном компьютере. Для отладки скрипта на удаленном компьютере скоп
        ируйте скрипт на локальный компьютер и отлаживайте его локально.
        
        При установке точки останова на нескольких строках командах или перемен
        ных командлет Set-PSBreakpoint создает объект точки останова для каждой
         точки. 
        
        При установке точки останова на функции или переменной в командной стро
        ке точку останова можно устанавливать как до создания функции или перем
        енной, так и после.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>set-psbreakpoint -script sample.ps1 -line 5
    
    Column     : 0
    Line       : 5
    Action     :
    Enabled    : True
    HitCount   : 0
    Id         : 0
    Script     : C:\ps-test\sample.ps1
    ScriptName : C:\ps-test\sample.ps1
    
    
    Описание
    -----------
    Эта команда устанавливает точку останова на строке 5 скрипта Sample.ps1. В 
    результате после запуска скрипта его выполнение будет приостановлено непоср
    едственно перед выполнением строки 5.
    
    При установке новой точки останова по номеру строки командлет Set-PSBreakpo
    int создает объект точки останова строки (System.Management.Automation.Line
    Breakpoint), который включает идентификатор точки останова, а также число с
    рабатываний, как показано в примере вывода.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-psbreakpoint -command Increment -script sample.ps1
    
    Command    : Increment
    Action     :
    Enabled    : True
    HitCount   : 0
    Id         : 1
    Script     : C:\ps-test\sample.ps1
    ScriptName : C:\ps-test\sample.ps1
    
    
    Описание
    -----------
    Эта команда создает точку останова команды на функции Increment в скрипте S
    ample.ps1. Выполнение скрипта останавливается непосредственно перед вызовом
     указанной функции.
    
    Результатом выполнения команды является объект точки останова. Перед запуск
    ом скрипта значение свойства HitCount равно 0.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>set-psbreakpoint -script sample.ps1 -variable Server -Mode ReadWrite
    
    
    Описание
    -----------
    Эта команда устанавливает точку останова на переменной Server в скрипте Sam
    ple.ps1. Чтобы остановить выполнение при чтении переменной или перед измене
    нием ее значения команда использует параметр Mode со значением ReadWrite.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>set-psbreakpoint -script Sample.ps1 -command "write*"
    
    
    Описание
    -----------
    Эта команда устанавливает точку останова на каждой команде скрипта Sample.p
    s1, начинающейся с "write," например "write-host".
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>set-psbreakpoint -script test.ps1 -command DiskTest `
      -action { (if $disk -gt 2) { break } }
    
    
    Описание
    -----------
    Эта команда останавливает выполнение на функции DiskTest скрипта Test.ps1 т
    олько в том случае, если значение переменной $disk больше 2.
    
    Она использует командлет Set-PSBreakpoint, чтобы установить точку останова 
    команды на функции DiskTest. Значением параметра action является блок скрип
    та, который проверяет значение переменной $disk в функции.
    
    В скрипте используется ключевое слово BREAK, чтобы остановить выполнение, е
    сли условие соблюдается. Альтернативный вариант (он используется по умолчан
    ию) — CONTINUE.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>set-psbreakpoint -command checkpoint-computer
    
    Id       : 0
    Command  : checkpoint-computer
    Enabled  : True
    HitCount : 0
    Action   :
    
    C:\PS> function CheckLog {
    >> get-eventlog -log Application | 
    >> where {($_.source -like "TestApp") -and ($_.Message -like "*failed*")}
    >>}
    >>
    C:\PS> Checklog
    DEBUG: Hit breakpoint(s)
    DEBUG:  Function breakpoint on 'prompt:Checklog'
    C:\PS>>>
    
    
    Описание
    -----------
    Эта команда устанавливает точку останова на функции CheckLog. Поскольку в к
    оманде не указан скрипт, точка останова относится ко всем выполняемым в дан
    ном сеансе командам. Отладчик прерывает выполнение при вызове функции, а не
     при ее объявлении.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>set-psbreakpoint -script sample.ps1 -line 1, 14, 19 -column 2 -action
     {&(log.ps1)}
    
    Column     : 2
    Line       : 1
    Action     :
    Enabled    : True
    HitCount   : 0
    Id         : 6
    Script     : C:\ps-test\sample.ps1
    ScriptName : C:\ps-test\sample.ps1
    
    Column     : 2
    Line       : 14
    Action     :
    Enabled    : True
    HitCount   : 0
    Id         : 7
    Script     : C:\ps-test\sample.ps1
    ScriptName : C:\ps-test\sample.ps1
    
    Column     : 2
    Line       : 19
    Action     :
    Enabled    : True
    HitCount   : 0
    Id         : 8
    Script     : C:\ps-test\sample.ps1
    ScriptName : C:\ps-test\sample.ps1
    
    
    Описание
    -----------
    Эта команда устанавливает три точки останова строк в скрипте Sample.ps1. Он
    а устанавливает по одной точке останова в столбце 2 каждой из строк скрипта
    . Действие, указанное в параметре Action, относится ко всем точкам останова
    .
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113449
    about_Debuggers 
    Get-PSBreakpoint 
    Enable-PSBreakpoint 
    Disable-PSBreakpoint 
    Remove-PSBreakpoint 
    Get-PSCallStack 



Set-PSDebug

ИМЯ
    Set-PSDebug
    
ОПИСАНИЕ
    Позволяет включать и отключать функции отладки скриптов, устанавливать уров
    ень трассировки и переключать строгий режим.
    
СИНТАКСИС
    Set-PSDebug [-Off] [<CommonParameters>]
    
    Set-PSDebug [-Step] [-Strict] [-Trace <int>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-PSDebug позволяет включать и отключать функции отладки скрипт
    ов, устанавливать уровень трассировки и переключать строгий режим. 
    
    Если параметру Trace присвоено значение 1, будет осуществляться трассировка
     каждой сроки скрипта по мере ее выполнения. Если этому параметру присвоено
     значение 2, будут трассироваться также назначения переменных, вызовы функц
    ий и вызовы скриптов. Если задан параметр Step, перед выполнением каждой ср
    оки скрипта будет появляться запрос.
    
ПАРАМЕТРЫ
    -Off [<SwitchParameter>]
        Отключает все функции отладки скриптов.
        
        Примечание. Команда "set-strictmode -off" отключает проверку, заданную 
        командой "set-psdebug -strict". Дополнительные сведения см. в описании 
        командлета Set-StrictMode.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Step [<SwitchParameter>]
        Включает режим пошагового выполнения скриптов. Перед выполнением каждой
         строки пользователь получает запрос, следует ли остановить выполнение 
        скрипта, продолжить выполнение или задать новый уровень интерпретатора 
        команд для проверки состояния скрипта.
        
        Примечание. При задании параметра Step параметру Trace автоматически пр
        исваивается значение 1.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Strict [<SwitchParameter>]
        Указывает, что интерпретатор должен создавать исключение, если происход
        ит обращение к переменной до момента присвоения ей значения.
        
        Примечание. Команда "set-strictmode -off" отключает проверку, заданную 
        командой "set-psdebug -strict". Дополнительные сведения см. в описании 
        командлета Set-StrictMode.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Trace <int>
        Задает уровень трассировки:
         0 — отключить трассировку скрипта
         1 — трассировать строки скрипта по мере выполнения
         2 — трассировать строки скрипта, присвоения значений переменным, обращ
        ения к функциям и скрипты.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>set-psdebug -trace 2; foreach ($i in 1..3) {$i}
    
    DEBUG:    1+ Set-PsDebug -trace 2; foreach ($i in 1..3) {$i}
    DEBUG:    1+ Set-PsDebug -trace 2; foreach ($i in 1..3) {$i}
    1
    DEBUG:    1+ Set-PsDebug -trace 2; foreach ($i in 1..3) {$i}
    2
    DEBUG:    1+ Set-PsDebug -trace 2; foreach ($i in 1..3) {$i}
    3
    
    
    Описание
    -----------
    Эта команда задает уровень трассировки 2 и запускает скрипт, который отобра
    жает числа 1, 2 и 3.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-psdebug -step; foreach ($i in 1..3) {$i}
    
    DEBUG:    1+ Set-PsDebug -step; foreach ($i in 1..3) {$i}
    Continue with this operation?
       1+ Set-PsDebug -step; foreach ($i in 1..3) {$i}
    [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help
    (default is "Y"):a
    DEBUG:    1+ Set-PsDebug -step; foreach ($i in 1..3) {$i}
    1
    2
    3
    
    
    Описание
    -----------
    Эта команда включает пошаговый режим, а затем 
    запускает скрипт, который отображает числа 1, 2 и 3.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>set-psdebug -off; foreach ($i in 1..3) {$i}
    
    1
    2
    3
    
    
    Описание
    -----------
    Эта команда выключает все функции отладки, а затем запускает скрипт, которы
    й отображает числа 1, 2 и 3.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>set-psdebug -strict; $NewVar
    
    The variable $NewVar cannot be retrieved because it has not been set yet.
    At line:1 char:28
    + Set-PsDebug -strict;$NewVar 
    
    
    Описание
    -----------
    Эта команда переводит интерпретатор в строгий режим и пытается получить дос
    туп к переменной, значение которой еще не задано.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113398
    about_Debuggers 
    Debug-Process 
    Set-PSBreakpoint 
    Set-StrictMode 
    Write-Debug 



Set-PSSessionConfiguration

ИМЯ
    Set-PSSessionConfiguration
    
ОПИСАНИЕ
    Изменяет свойства зарегистрированной конфигурации сеанса.
    
СИНТАКСИС
    Set-PSSessionConfiguration [-AssemblyName] <string> [-ConfigurationTypeName
    ] <string> [-Name] <string> [-ApplicationBase <string>] [-Force] [-MaximumR
    eceivedDataSizePerCommandMB <double>] [-MaximumReceivedObjectSizeMB <double
    >] [-NoServiceRestart] [-SecurityDescriptorSDDL <string>] [-ShowSecurityDes
    criptorUI] [-StartupScript <string>] [-ThreadApartmentState {STA | MTA | Un
    known}] [-ThreadOptions {Default | UseNewThread | ReuseThread | UseCurrentT
    hread}] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-PSSessionConfiguration изменяет свойства зарегистрированной к
    онфигурации сеанса на локальном компьютере. Этот расширенный командлет пред
    назначен для использования системными администраторами и позволяет управлят
    ь конфигурациями сеансов для пользователей.
    
    Для указания конфигурации, которую нужно изменить, используется параметр Na
    me. Остальные параметры используются для задания новых значений свойств кон
    фигурации сеанса. Чтобы удалить из конфигурации значение свойства (и исполь
    зовать значение по умолчанию), введите в качестве значения соответствующего
     параметра пустую строку ("") или значение "$null".
    
    Для задания свойств конфигурации сеанса используйте командлет Get-PSSession
    Configuration или поставщик WS-Management. Чтобы получить дополнительные св
    едения о поставщике WS-Management, введите команду "get-help wsman".
    
ПАРАМЕТРЫ
    -ApplicationBase <string>
        Изменяет путь к файлу сборки (*.dll), указанному в значении параметра A
        ssemblyName.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -AssemblyName <string>
        Задает для конфигурации другой файл сборки. Введите путь (необязательно
        ) и имя файла сборки (DLL), в котором определен тип конфигурации. 
        
        Если ввести только имя, путь можно ввести в значении параметра Applicat
        ionBase.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ConfigurationTypeName <string>
        Задает для конфигурации другой тип конфигурации. Задаваемый тип должен 
        реализовывать класс System.Management.Automation.Remoting.PSSessionConf
        iguration.
        
        Если ввести "$null" или пустую строку, для конфигурации сеанса использу
        ется класс DefaultRemotePowerShellConfiguration.
        
        Требуется?                    true
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Подавляет все запросы пользователю и перезапускает службу WinRM без зап
        роса подтверждения. Перезапуск службы обеспечивает вступление изменений
         конфигурации в силу.
        
        Чтобы предотвратить перезапуск и подавить запрос на перезапуск, использ
        уйте параметр NoServiceRestart.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MaximumReceivedDataSizePerCommandMB <double>
        Изменяет ограничение на объем данных, которые могут быть переданы данно
        му компьютеру в любой отдельно взятой удаленной команде. Укажите объем 
        данных в мегабайтах (МБ). По умолчанию используется значение "50 МБ".
        
        Если ограничение на объем данных определено в типе конфигурации, заданн
        ом параметром ConfigurationTypeName, используется ограничение из типа к
        онфигурации, а значение этого параметра игнорируется.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                50
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -MaximumReceivedObjectSizeMB <double>
        Изменяет ограничение на объем данных, которые могут быть переданы данно
        му компьютеру в любом отдельно взятом объекте. Укажите объем данных в м
        егабайтах (МБ). По умолчанию используется значение "10 МБ".
        
        Если ограничение на размер объекта определено в типе конфигурации, зада
        нном параметром ConfigurationTypeName, используется ограничение из типа
         конфигурации, а значение этого параметра игнорируется.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                10
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя конфигурации сеанса, которую нужно изменить. 
        
        Изменить имя конфигурации сеанса с помощью этого параметра невозможно.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NoServiceRestart [<SwitchParameter>]
        Не перезапускает службу WinRM и подавляет запрос на перезапуск службы.
        
        По умолчанию при вводе команды Set-PSSessionConfiguration предлагается 
        перезапустить службу WinRM, чтобы новая конфигурация сеанса вступила в 
        силу.  Пока служба WinRM не будет перезапущена, новая конфигурация сеан
        са не действует.
        
        Чтобы перезапустить службу WinRM без запроса подтверждения, используйте
         параметр Force. Чтобы перезапустить службу WinRM вручную, используйте 
        командлет Restart-Service.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SecurityDescriptorSDDL <string>
        Задает для конфигурации другую строку в формате языка определения дескр
        ипторов безопасности (SDDL). 
        
        Эта строка определяет разрешения, необходимые для использования новой к
        онфигурации сеанса. Для использования конфигурации в сеансе пользовател
        и должны иметь как минимум разрешение на запуск конфигурации ("Выполнен
        ие (Invoke)").
        
        Чтобы использовать для конфигурации дескриптор безопасности по умолчани
        ю, введите пустую строку ("") или значение "$null". По умолчанию исполь
        зуется корневой элемент SDDL на диске WSMan:.
        
        В случае сложного дескриптора безопасности вместо этого параметра можно
         использовать параметр ShowSecurityDescriptorUI. Использовать оба парам
        етра в одной команде нельзя.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ShowSecurityDescriptorUI [<SwitchParameter>]
        Выводит лист свойств, помогающий создать новую строку SDDL для конфигур
        ации сеанса. Лист свойств отображается после ввода команды Set-PSSessio
        nConfiguration и перезапуска службы WinRM.
        
        При задании разрешений для конфигурации сеанса помните, что для использ
        ования конфигурации в сеансе пользователи должны иметь как минимум разр
        ешение на запуск конфигурации ("Выполнение (Invoke)").
        
        Параметр SecurityDescriptorSDDL и этот параметр нельзя использовать в о
        дной команде.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -StartupScript <string>
        Добавляет или изменяет скрипт запуска для конфигурации. Введите полный 
        путь к скрипту Windows PowerShell. Заданный скрипт выполняется в новом 
        сеансе, для которого используется данная конфигурация сеанса.  
        
        Чтобы удалить скрипт запуска из конфигурации сеанса, введите пустую стр
        оку ("") или значение "$null".
        
        Скрипт запуска можно использовать для дальнейшей настройки сеанса польз
        ователя. Если скрипт выдает ошибку (даже непрерывающую), сеанс не созда
        ется, и команда New-PSSession пользователя завершается неудачей.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ThreadApartmentState <ApartmentState>
        Изменяет заданное состояние подразделения потоков в сеансе. Допустимые 
        значения: "STA", "MTA" и "Unknown". По умолчанию используется значение 
        "Unknown".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                ApartmentState.Unknown
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ThreadOptions <PSThreadOptions>
        Изменяет заданный в конфигурации параметр потоков. Этот параметр опреде
        ляет способ создания и использования потоков при выполнении команд в се
        ансе. Допустимые значения: "Default", "ReuseThread", "UseCurrentThread"
         и "UseNewThread". По умолчанию используется значение "UseCurrentThread
        ".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                PSThreadOptions.UserCurrentThread
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Microsoft.WSMan.Management.WSManConfigLeafElement
        
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать этот командлет в Windows Vista, Windows Server 2008 
        и более поздних версиях Windows, необходимо запускать Windows PowerShel
        l командой "Запуск от имени администратора".
        
        Командлет Set-PSSessionConfiguration не изменяет имя конфигурации, а по
        ставщик WS-Management не поддерживает командлет Rename-Item. Чтобы изме
        нить имя конфигурации, удалите конфигурацию с помощью командлета Unregi
        ster-PSSessionConfiguration, а затем с помощью командлета Register-PSSe
        ssionConfiguration создайте и зарегистрируйте новую конфигурацию сеанса
        .
        
        С помощью командлета Set-PSSessionConfiguration можно изменять конфигур
        ации сеанса по умолчанию (Microsoft.PowerShell и Microsoft.PowerShell32
        ). Эти конфигурации не защищены от внесения изменений. Чтобы вернуться 
        к исходной версии конфигурации сеанса по умолчанию, с помощью командлет
        а Unregister-PSSessionConfiguration удалите конфигурацию сеанса по умол
        чанию, а затем восстановите ее с помощью командлета Enable-PSRemoting.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>set-pssessionconfiguration -name MaintenanceShell -threadApartmentSta
    te STA
    
    
    Описание
    -----------
    Эта команда изменяет состояние подразделения потоков в конфигурации Mainten
    anceShell на STA. Изменение вступает в силу после перезапуска службы WinRM.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>register-pssessionconfiguration -name AdminShell -assemblyName c:\she
    lls\AdminShell.dll -configurationType AdminClass
    
    C:\PS> set-pssessionconfiguration -name AdminShell -startupScript AdminConf
    ig.ps1
    
    C:\PS> set-pssessionconfiguration -name AdminShell -startupScript $null
    
    
    Описание
    -----------
    В этом примере показано, как создать и затем изменить конфигурацию сеанса.
    
    Первая команда с помощью командлета Register-PSSessionConfiguration создает
     конфигурацию AdminShell. 
    
    Вторая команда с помощью командлета Set-PSSessionConfiguration добавляет в 
    эту конфигурацию скрипт AdminConfig.ps1. Изменение вступает в силу после пе
    резапуска службы WinRM.
    
    Третья команда удаляет из конфигурации скрипт AdminConfig.ps1. В ней исполь
    зуется командлет Set-PSSessionConfiguration со значением "$null" параметра 
    StartupScript.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>Set-PSSessionConfiguration -name foo -MaximumReceivedObjectSizeMB 20
    
       WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin\foo\Init
    ializationParameters
    
    ParamName                       ParamValue
    ---------                       ----------
    psmaximumreceivedobjectsizemb   20
    
    "Restart WinRM service"
    WinRM service need to be restarted to make the changes effective. Do you wa
    nt to run the command "restart-service winrm"?
    [Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"): y
    
    
    Описание
    -----------
    В этом примере показан пример выходных данных командлета Set-PSSessionConfi
    guration. 
    
    Команда Set-PSSessionConfiguration в этом примере увеличивает значение свой
    ства MaximumReceivedObjectSizeMB до 20. 
    
    Команда Set-PSSessionConfiguration возвращает объект Microsoft.WSMan.Manage
    ment.WSManConfigLeafElement и отображает имя параметра и его новое значение
    .
    
    Кроме того, она выводит запрос на перезапуск службы WinRM. Внесенное команд
    летом Set-PSSessionConfiguration изменение не вступает в силу, пока служба 
    WinRM не будет перезапущена.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>set-pssessionconfiguration -name MaintenanceShell -startupScript c:\p
    s-test\Maintenance.ps1
    
    
       WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin\Maintena
    nceShell\InitializationParameters
    
    ParamName            ParamValue
    ---------            ----------
    startupscript        c:\ps-test\Mainte...
    
    "Restart WinRM service"
    WinRM service need to be restarted to make the changes effective. Do you wa
    nt to run the command "restart-service winrm"?
    [Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"): y
    
    
    C:\PS> get-pssessionConfiguration maintenanceshell | format-list -property 
    *
    
    xmlns            : http://schemas.microsoft.com/wbem/wsman/1/config/PluginC
    onfiguration
    Name             : MaintenanceShell
    Filename         : %windir%\system32\pwrshplugin.dll
    SDKVersion       : 1
    XmlRenderingType : text
    lang             : en-US
    PSVersion        : 2.0
    startupscript    : c:\ps-test\Maintenance.ps1
    ResourceUri      : http://schemas.microsoft.com/powershell/MaintenanceShell
    SupportsOptions  : true
    ExactMatch       : true
    Capability       : {Shell}
    Permission       :
    
    
    C:\PS> dir wsman:\localhost\plugin\MaintenanceShell\InitializationParameter
    s
    
    ParamName     ParamValue
    ---------     ----------
    PSVersion     2.0
    startupscript c:\ps-test\Maintenance.ps1
    
    
    Описание
    -----------
    Эта команда демонстрирует различные способы просмотра результатов выполнени
    я команды Set-PSSessionConfiguration.
    
    Первая команда с помощью командлета Set-PSSessionConfiguration изменяет скр
    ипт запуска в конфигурации MaintenanceShell на Maintenance.ps1. В выходных 
    данных этой команды отражается изменение и содержится запрос на перезапуск 
    службы WinRM. Ответ — "y" (да).
    
    Вторая команда с помощью командлета Get-PSSessionConfiguration получает кон
    фигурацию сеанса MaintenanceShell. Оператор конвейера (|) передает результа
    ты выполнения команды командлету Format-List, который отображает все свойст
    ва конфигурации сеанса в виде списка.
    
    В третьей команде используется поставщик WS-Management для просмотра параме
    тров инициализации конфигурации MaintenanceShell. Для получения дочерних эл
    ементов в узле InitializationParameters для подключаемого модуля Maintenanc
    eShell используется командлет Get-ChildItem (псевдоним: dir).
    
    Чтобы получить дополнительные сведения о поставщике WS-Management, введите 
    команду "get-help wsman".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=144307
    about_Session_Configurations 
    Disable-PSSessionConfiguration 
    Enable-PSSessionConfiguration 
    Get-PSSessionConfiguration 
    Register-PSSessionConfiguration 
    Unregister-PSSessionConfiguration 
    WS-Management Provider 



Set-Service

ИМЯ
    Set-Service
    
ОПИСАНИЕ
    Запускает, останавливает и приостанавливает службу и изменяет ее свойства.
    
СИНТАКСИС
    Set-Service [-Name] <string> [-Description <string>] [-DisplayName <string>
    ] [-PassThru] [-StartupType {Automatic | Manual | Disabled}] [-Status <stri
    ng>] [-ComputerName <string[]>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Set-Service [-Description <string>] [-DisplayName <string>] [-InputObject 
    ServiceController>] [-PassThru] [-StartupType {Automatic | Manual | Disable
    d}] [-Status <string>] [-ComputerName <string[]>] [-Confirm] [-WhatIf] [<Co
    mmonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-Service изменяет свойства локальной или удаленной службы, вкл
    ючая состояние, описание, отображаемое имя и режим запуска. Этот командлет 
    можно использовать для запуска, остановки или приостановки службы. Для зада
    ния службы можно ввести ее имя или передать объект службы, либо передать им
    я службы или объект службы командлету Set-Service по конвейеру.
    
ПАРАМЕТРЫ
    -ComputerName <string[]>
        Задает один или несколько компьютеров. По умолчанию используется значен
        ие "Локальный компьютер". 
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя удаленного компью
        тера. Чтобы указать локальный компьютер, введите имя компьютера, точку 
        (.) или "localhost".
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName командлета Set-Service можно использовать, даже
         если компьютер не настроен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                локальный компьютер
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Description <string>
        Задает новое описание службы.
        
        Описание службы отображается на вкладке "Службы" оснастки "Управление к
        омпьютером". Описание не является свойством объекта ServiceController, 
        получаемого командлетом Get-Service. Чтобы просмотреть описание службы,
         используйте командлет Get-WmiObject для получения объекта Win32_Servic
        e, который представляет одноименную службу.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -DisplayName <string>
        Задает новое отображаемое имя службы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <ServiceController>
        Задает объект ServiceController, представляющий изменяемую службу. Введ
        ите переменную, содержащую объект, либо команду или выражение, получающ
        ие объект, например команду Get-Service. Кроме того, можно передать объ
        ект службы командлету Set-Service по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имя изменяемой службы.  Подстановочные знаки запрещены. Кроме то
        го, можно передать имя службы командлету Set-Service по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объекты, представляющие измененные службы. По умолчанию этот
         командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -StartupType <ServiceStartMode>
        Изменяет режим запуска службы. Параметр StartupType может принимать сле
        дующие значения: 
        
        -- Automatic: автоматический запуск при запуске системы.
        -- Manual: запуск осуществляется только пользователем или приложением.
        -- Disabled: запуск запрещен.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Status <string>
        Запускает, останавливает или приостанавливает службы.  Допустимые значе
        ния:
        
        -- Running: запускает службу.
        -- Stopped: останавливает службу.
        -- Paused: приостанавливает службу.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.ServiceProcess.ServiceController, System.String
        Можно передать объект службы или строку, содержащую имя службы, по конв
        ейеру командлету Set-Service.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать командлет Set-Service в Windows Vista и более поздни
        х версиях Windows, необходимо запускать Windows PowerShell командой "За
        пуск от имени администратора".
        
        Командлет Set-Service может использоваться для управления службами, тол
        ько если у текущего пользователя есть на это разрешение. Некорректная р
        абота команды может быть обусловлена отсутствием требуемых разрешений. 
        
        Чтобы извлечь имена служб и отображаемые имена служб на текущем компьют
        ере, введите команду "get-service". Имена служб содержатся в столбце Na
        me, а отображаемые имена — в столбце DisplayName.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>set-service -name lanmanworkstation -DisplayName "LanMan Workstation"
    
    
    Описание
    -----------
    Эта команда изменяет отображаемое имя службы "lanmanworkstation" на "LanMan
     Workstation". (По умолчанию используется имя "Workstation".)
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-wmiobject win32_service -filter "name = 'SysmonLog'"
    
    ExitCode  : 0
    Name      : SysmonLog
    ProcessId : 0
    StartMode : Manual
    State     : Stopped
    Status    : OK
    
    C:\PS> set-service sysmonlog -startuptype automatic
    
    C:\PS> get-wmiobject win32_service -filter "name = 'SysmonLog'"
    
    ExitCode  : 0
    Name      : SysmonLog
    ProcessId : 0
    StartMode : Auto
    State     : Stopped
    Status    : OK
    
    C:\PS> get-wmiobject win32_service | format-table Name, StartMode -auto
    
    Name                                  StartMode
    ----                                  ---------
    AdtAgent                              Auto
    Alerter                               Disabled
    ALG                                   Manual
    AppMgmt                               Manual
    ...
    
    
    Описание
    -----------
    Приведенные команды извлекают тип запуска службы "Журналы и оповещения прои
    зводительности" (SysmonLog), изменяют тип запуска на автоматический, а зате
    м отображают результаты изменения.
    
    В этих командах используется командлет Get-WmiObject для получения объекта 
    Win32_Service службы, поскольку объект ServiceController, возвращаемый кома
    ндлетом Get-Service, не включает в себя тип запуска.
    
    Первая команда с помощью командлета Get-WmiObject получает объект WMI, пред
    ставляющий службу SysmonLog. По умолчанию в выходных данных этой команды ук
    азывается тип запуска службы. 
    
    Вторая команда с помощью командлета Set-Service изменяет тип запуска на авт
    оматический. Затем повторно вызывается первая команда для отображения внесе
    нных изменений.
    
    Последняя команда отображает типы запуска всех служб на компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>set-service -name Schedule -computername S1 -description "Configures 
    and schedules tasks."
    
    C:\PS> get-wmiobject win32_service -computername s1 | where-object {$_.Name
     -eq "Schedule"} | format-list Name, Description
    
    
    Описание
    -----------
    Приведенные команды изменяют описание службы Task Scheduler на удаленном ко
    мпьютере S1, а затем отображают результат изменения.
    
    В этих командах используется командлет Get-WmiObject для получения объекта 
    Win32_Service службы, поскольку объект ServiceController, возвращаемый кома
    ндлетом Get-Service, не включает в себя описание службы.
    
    Первая команда с помощью командлета Set-Service изменяет описание. Эта кома
    нда обращается к службе с помощью ее имени: "Schedule".
    
    Вторая команда с помощью командлета Get-WmiObject получает экземпляр службы
     WMI Win32_Service, представляющий службу планировщика заданий. Первый элем
    ент команды получает все экземпляры класса Win32_service. 
    
    Оператор конвейера (|) передает результаты командлету Where-Object, который
     выбирает из них те, у которых свойство Name имеет значение "Schedule". 
    
    Следующий оператор конвейера пересылает результаты командлету Format-List, 
    который осуществляет вывод данных с указанием только двух свойств: Name и D
    escription.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>set-service winrm -status Running -passthru -computername Server02
    
    
    Описание
    -----------
    Эта команда запускает на компьютере Server02 службу WinRM. Параметр Status 
    используется для задания требуемого состояния ("running"), а параметр PassT
    hru указывает командлету Set-Service возвратить объект, представляющий служ
    бу WinRM.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-service schedule -computername S1, S2 | set-service -status pause
    d
    
    
    Описание
    -----------
    Эта команда приостанавливает службу Schedule на удаленных компьютерах S1 и 
    S2. Для получения службы используется командлет Get-Service. Оператор конве
    йера (|) пересылает службу командлету Set-Service, который изменяет ее сост
    ояние на "Paused".
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>$s = get-service schedule
    
    C:\PS> set-service -inputobject $s -status stopped
    
    
    Описание
    -----------
    Приведенные команды останавливают службу Schedule на локальном компьютере. 
    
    Первая команда с помощью командлета Get-Service получает службу Schedule. С
    лужба сохраняется в переменной $s.
    
    Вторая команда с помощью командлета Set-Service изменяет состояние службы S
    chedule на "Stopped". Параметр InputObject используется для передачи службы
    , хранящейся в переменной $s, а параметр Status используется для задания тр
    ебуемого статуса.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113399
    Get-Service 
    Start-Service 
    Stop-Service 
    Restart-Service 
    Resume-Service 
    Suspend-Service 
    New-Service 



Set-StrictMode

ИМЯ
    Set-StrictMode
    
ОПИСАНИЕ
    Задает и применяет правила кодирования в выражениях, скриптах и блоках скри
    пта.
    
СИНТАКСИС
    Set-StrictMode -Off [<CommonParameters>]
    
    Set-StrictMode -Version <Version> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-StrictMode позволяет настроить строгий режим для текущей обла
    сти (и всех дочерних областей), а также включать и выключать его. Если вклю
    чен строгий режим, Windows PowerShell создает прерывающую ошибку, если соде
    ржимое выражения, скрипта или блока скрипта нарушает основные рекомендуемые
     правила кодирования. 
    
    Параметр Version используется для того, чтобы определить применяемые правил
    а кодирования.
    
    В отличие от Set-PSDebug командлет Set-StrictMode влияет только на текущую 
    область и ее дочерние области, поэтому его можно использовать в скрипте или
     функции, не оказывая влияния на глобальную область.
    
    Если команда Set-StrictMode отключена, то предполагается, что неинициализир
    ованные переменные (Version 1) имеют значение 0 (нуль) или $null в зависимо
    сти от типа. При обращении к несуществующим свойствам возвращается значение
     $null, а в случае неправильного синтаксиса функции результаты зависят от т
    ипа ошибки. Неименованные переменные не разрешены.
    
ПАРАМЕТРЫ
    -Off [<SwitchParameter>]
        Отключает строгий режим. Этот параметр также отключает команду "Set-PSD
        ebug -Strict".
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Version <Version>
        Определяет условия, которые приводят к ошибке в строгом режиме. Это обя
        зательный параметр.
        
        Допустимые значения: "1.0", "2.0" и "Latest". В следующем списке показа
        ны результаты использования каждого значения.
        
        1.0    
        -- Ссылки на неинициализированные переменные, исключая неинициализирова
        нные переменные в строках, не разрешены.
        
        2.0
        -- Ссылки на неинициализированные переменные (включая неинициализирован
        ные переменные в строках) не разрешены.
        -- Ссылки на несуществующие свойства объекта не разрешены.
        -- Вызовы функций с использованием синтаксиса вызова методов не разреше
        ны.
        -- Переменные без имени (${}) не разрешены.
        
        Latest: 
        -- Выбор последней (самой строгой) доступной версии.  Это значение след
        ует использовать, чтобы обеспечить применение в скриптах самой строгой 
        имеющейся версии даже в случае добавления новых версий в Windows PowerS
        hell.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Команда Set-StrictMode аналогична параметру команды Set-PSDebug. Команд
        а "Set-Strictmode -version 1" эквивалентна команде "Set-PSDebug –strict
        " за исключением того, что команда Set-PSDebug действует во всех област
        ях. Set-StrictMode оказывает влияние только на область, в которой она з
        адана, и ее дочерние области. Дополнительные сведения об областях в Win
        dows PowerShell см. в разделе about_Scopes.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>set-strictmode -version 1.0
    
    C:\PS> $a -gt 5
    False
    The variable $a cannot be retrieved because it has not been set yet.
    At line:1 char:3
    + $a <  -gt 5
        + CategoryInfo          : InvalidOperation: (a:Token) [], RuntimeExcept
    ion
        + FullyQualifiedErrorId : VariableIsUndefined
    
    
    Описание
    -----------
    Эта команда включает строгий режим и задает версию режима 1.0. В результате
     при попытке обращения к неинициализированным переменным произойдет ошибка.
    
    Пример выходных данных приведен для строгого режима версии 1.0.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS># set-strictmode -version 2.0
    
    # Strict mode is off by default.
    
    C:\PS> function add ($a, $b) {$a + $b}
    C:\PS> add 3 4
    7
    C:\PS> add(3,4)
    3
    4
    
    C:\PS> set-strictmode -version 2.0
    
    C:\PS> add(3,4)
    
    The function or command was called like a method. Parameters should be sepa
    rated by spaces, as described in 'Get-Help about_Parameter.'
    At line:1 char:4
    + add < (3,4)
        + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
        + FullyQualifiedErrorId : StrictModeFunctionCallWithParens
    
    
    C:\PS> set-strictmode -off
    
    C:\PS> $string = "This is a string".
    C:\PS> $string.Month
    C:\PS>
    
    C:\PS> set-strictmode -version 2.0
    
    C:\PS> $string = "This is a string".
    C:\PS> $string.Month
    Property 'month' cannot be found on this object; make sure it exists.
    At line:1 char:9
    + $string. < month
        + CategoryInfo          : InvalidOperation: (.:OperatorToken) [], Runti
    meException
        + FullyQualifiedErrorId : PropertyNotFoundStrict
    
    
    Описание
    -----------
    Эта команда включает строгий режим и задает его версию 2.0. В результате пр
    и использовании синтаксиса метода (скобки и запятые) для вызова функции или
     обращении к неинициализированным переменным или несуществующим свойствам о
    болочка Windows PowerShell создает ошибку.
    
    Пример выходных данных приведен для строгого режима версии 2.0.
    
    Если строгий режим версии 2.0 не используется, значение "(3,4)" интерпретир
    уется как один объект массива, к которому ничего не добавляется. В строгом 
    режиме версии 2.0 это выражение надлежащим образом интерпретируется как неп
    равильный синтаксис передачи двух значений.
    
    Без строгого режима версии 2.0 ссылка на несуществующее свойство Month стро
    ки просто возвращает значение null. В строгом режиме версии 2.0 она интерпр
    етируется как ошибочная ссылка.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113450
    about_Debuggers 
    about_Scopes 
    Set-PSDebug 



Set-TraceSource

ИМЯ
    Set-TraceSource
    
ОПИСАНИЕ
    Настраивает, запускает и останавливает трассировку компонентов Windows Powe
    rShell.
    
СИНТАКСИС
    Set-TraceSource [[-Option] {None | Constructor | Dispose | Finalizer | Meth
    od | Property | Delegates | Events | Exception | Lock | Error | Errors | Wa
    rning | Verbose | WriteLine | Data | Scope | ExecutionFlow | Assert | All}]
     [-Debugger] [-FilePath <string>] [-Force] [-ListenerOption {None | Logical
    OperationStack | DateTime | Timestamp | ProcessId | ThreadId | Callstack}] 
    [-PassThru] [-PSHost] [-Name] <string[]> [<CommonParameters>]
    
    Set-TraceSource [-RemoveListener <string[]>] [-Name] <string[]> [<CommonPar
    ameters>]
    
    Set-TraceSource [-RemoveFileListener <string[]>] [-Name] <string[]> [<Commo
    nParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-TraceSource позволяет настраивать, запускать и останавливать 
    трассировку компонента Windows PowerShell. Его можно использовать для указа
    ния того, какие компоненты следует трассировать, а также куда нужно отправи
    ть результат трассировки.
    
ПАРАМЕТРЫ
    -Debugger [<SwitchParameter>]
        Отправляет выходные данные трассировки в отладчик. Выходные данные можн
        о просмотреть в любом отладчике, работающем в пользовательском режиме и
        ли режиме ядра, или в Microsoft Visual Studio. Данный параметр также за
        дает прослушиватель трассировки по умолчанию.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FilePath <string>
        Записывает выходные данные трассировки в указанный файл. Данный парамет
        р также выбирает прослушиватель трассировки файла. Если для запуска тра
        ссировки используется этот параметр, воспользуйтесь параметром RemoveFi
        leListener, чтобы прекратить трассировку.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету перезаписывать доступный только для чтения файл. И
        спользуется с параметром FilePath.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ListenerOption <TraceOptions>
        Добавляет необязательные данные в префикс каждого сообщения трассировки
        . Допустимые значения: "None", "LogicalOperationStack", "DateTime", "Ti
        mestamp", "ProcessId", "ThreadId" и "Callstack". По умолчанию используе
        тся "None".
        
        Чтобы указать несколько параметров, разделите их запятыми без пробелов 
        и заключите их в кавычки, например так: "ProcessID,ThreadID".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Определяет, какие компоненты трассируются. Введите имя объекта трассиро
        вки для каждого компонента. Подстановочные знаки разрешены.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Option <PSTraceSourceOptions>
        Определяет тип трассируемых событий. 
        
        Список допустимых значений: "None", "Constructor", "Dispose", "Finalize
        r", "Method", "Property", "Delegates", "Events", "Exception", "Lock", "
        Error", "Errors", "Warning", "Verbose", "WriteLine", "Data", "Scope", "
        ExecutionFlow", "Assert" и "All". По умолчанию используется "All". 
        
        Следующие значения являются комбинацией других значений:
        
        -- ExecutionFlow: (Constructor, Dispose, Finalizer, Method, Delegates, 
        Events и Scope)
        
        -- Data: (Constructor, Dispose, Finalizer, Property, Verbose и WriteLin
        e)
        
        -- Errors: (Error и Exception).
        
        Чтобы указать несколько параметров, разделите их запятыми без пробелов 
        и заключите их в кавычки, например так: "Constructor,Dispose".
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий сеанс трассировки. По умолчанию этот 
        командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PSHost [<SwitchParameter>]
        Отправляет выходные данные трассировки в основное приложение Windows Po
        werShell. Данный параметр также задает прослушиватель трассировки PSHos
        t.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -RemoveFileListener <string[]>
        Прекращает трассировку, удаляя прослушиватель трассировки файла, связан
        ный с указанным файлом. Введите путь и имя выходного файла трассировки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -RemoveListener <string[]>
        Прекращает трассировку, удаляя прослушиватель трассировки. 
        
        Используйте следующие значения с параметром RemoveListener.
        
        --Чтобы удалить PSHost (консоль), введите "Host".
        --Чтобы удалить отладчик, введите "Debug".
        --Чтобы удалить все прослушиватели трассировки, введите "*".
        
        Чтобы удалить прослушиватель трассировки файла, воспользуйтесь параметр
        ом RemoveFileListener.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую имя, можно передать командлету Set-TraceSource по ко
        нвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PSTraceSource
        Если задан параметр PassThru, командлет Set-TraceSource создает объект 
        System.Management.Automation.PSTraceSource, представляющий сеанс трасси
        ровки. В противном случае этот командлет не формирует никаких выходных 
        данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Трассировка — это метод, используемый разработчиками для отладки и изме
        нения программы. Во время трассировки программа формирует подробные соо
        бщения о каждом шаге внутренней обработки. 
        
        Командлеты трассировки Windows PowerShell созданы для разработчиков Win
        dows PowerShell, но доступны всем пользователям. Они позволяют отслежив
        ать практически все аспекты функциональности Windows PowerShell.
        
        "Источник трассировки" является частью каждого компонента Windows Power
        Shell, который управляет трассировкой и формирует сообщения трассировки
         для компонента. Чтобы выполнить трассировку компонента, нужно определи
        ть его источник трассировки.
        
        "Прослушиватель трассировки" получает выходные данные трассировки и пок
        азывает их пользователю. Трассировочные данные можно отправить отладчик
        у, работающему в пользовательском режиме или режиме ядра, на консоль, в
         файл или пользовательскому прослушивателю, производному от класса Syst
        em.Diagnostics.TraceListener.
        
        Чтобы начать трассировку, укажите с помощью параметра Name источник тра
        ссировки (трассируемый компонент), а с помощью параметров FilePath, Deb
        ugger или PSHost — прослушиватель (объект, которому будет передаваться 
        вывод). Для определения типов трассируемых событий используйте параметр
         Options, а для конфигурирования вывода трассировки — параметр Listener
        Options.
        
        Чтобы изменить конфигурацию трассировки, введите команду Set-TraceSourc
        e, запускающую трассировку. Оболочка Windows PowerShell обнаруживает, ч
        то источник трассировки уже трассируется. Она остановит трассировку, до
        бавит новую конфигурацию и запустит или перезапустит трассировку.
        
        Чтобы остановить трассировку, используйте параметр RemoveListener. Чтоб
        ы остановить трассировку, выполняемую с файлом-прослушивателем (трассир
        овку, запущенную с помощью параметра -FilePath), используйте параметр R
        emoveFileListener. При удалении прослушивателя трассировка останавливае
        тся.
        
        Чтобы узнать, какие компоненты можно трассировать, используйте командле
        т Get-TraceSource. Источники трассировки каждого модуля загружаются авт
        оматически при использовании компонента и включаются в вывод командлета
         Get-TraceSource.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Set-TraceSource -Name Parameterbinding -Option ExecutionFlow -PSHost 
    '
    -ListenerOption "ProcessID,TimeStamp"
    
    
    Описание
    -----------
    Эта команда запускает трассировку для компонента ParameterBinding оболочки 
    Windows PowerShell. Параметр Name используется для указания источника трасс
    ировки, параметр Option — для выбора событий трассировки ExecutionFlow, а п
    араметр PSHost — для выбора прослушивателя основного приложения Windows Pow
    erShell, который отправляет вывод на консоль. Параметр ListenerOption добав
    ляет в префикс сообщения трассировки значения "ProcessID" и "TimeStamp".
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-tracesource -name ParameterBinding -RemoveListener Host
    
    
    Описание
    -----------
    Эта команда останавливает трассировку компонента ParameterBinding оболочки 
    Windows PowerShell. Параметр Name в этой команде идентифицирует трассируемы
    й компонент, а параметр RemoveListener — прослушиватель трассировки.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113400
    Get-TraceSource 
    Trace-Command 
    Set-PSDebug 



Set-Variable

ИМЯ
    Set-Variable
    
ОПИСАНИЕ
    Задает значение переменной. Если переменная с указанным именем не существуе
    т, она создается.
    
СИНТАКСИС
    Set-Variable [-Name] <string[]> [[-Value] <Object>] [-Description <string>]
     [-Exclude <string[]>] [-Force] [-Include <string[]>] [-Option {None | Read
    Only | Constant | Private | AllScope}] [-PassThru] [-Scope <string>] [-Visi
    bility {Public | Private}] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-Variable присваивает значение заданной переменной или изменяе
    т ее текущее значение. Если переменная не существует, командлет создаст ее.
    
ПАРАМЕТРЫ
    -Description <string>
        Задает описание переменной.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет создать новую переменную с именем уже существующей доступной 
        только чтения переменной или изменить значение доступной только для чте
        ния переменной. 
        
        По умолчанию переменную можно перезаписать, если у нее нет параметра "R
        eadOnly" или "Constant". Дополнительные сведения см. в описании парамет
        ра Option.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Изменяет только указанные элементы. Значение данного параметра определя
        ет значение параметра Name. Введите имя или шаблон имени, например "c*"
        . Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имя переменной.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Option <ScopedItemOptions>
        Изменяет значение свойства Options переменной. Допустимые значения: 
        
        -- None: не определяет параметров (по умолчанию используется "None").
        
        -- ReadOnly: свойства переменной изменить нельзя, если только не исполь
        зовать параметр Force. Для удаления переменной можно использовать коман
        длет Remove-Variable.
        
        -- Constant: переменную нельзя удалить, а ее свойства нельзя изменить. 
        Значение "Constant" доступно только при создании псевдонима. Невозможно
         изменить на "Constant" значение этого параметра для существующей перем
        енной.
        
        -- Private: переменная доступна только в области, определенной параметр
        ом Scope. Она наследуется дочерними областями.
        
        -- AllScope: переменная копируется во все создаваемые области.
        
        Чтобы увидеть свойство переменных Options, введите команду "get-variabl
        e| format-table -property name, options -autosize".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий новую переменную. По умолчанию этот к
        омандлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Scope <string>
        Определяет область переменной. Допустимые значения: "Global", "Local", 
        "Script" или номер относительно текущей области (от 0 до количества обл
        астей, где 0 — текущая область, а 1 — ее родительская область). По умол
        чанию используется значение "Local". Дополнительные сведения см. в разд
        еле about_Scopes.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Value <Object>
        Задает значение переменной.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Visibility <SessionStateEntryVisibility>
        Определяет видимость переменной за пределами области, в которой она был
        а создана. Этот параметр предназначен для использования в скриптах и ко
        мандах, которые будут предоставляться другим пользователям.
        
        Допустимые значения:
        
        -- Public: переменная видима. ("Public" является значением по умолчанию
        .)
        -- Private: переменная невидима.
        
        Если переменная закрыта (Private), она не появляется в списках переменн
        ых, например в списках, возвращаемых командлетом Get-Variable, или при 
        отображении диска Variable:. Выполнение команд чтения или изменения зна
        чения частной переменной возвращает ошибку. Но пользователи могут выпол
        нять команды, использующие частные переменные, если эти команды были на
        писаны в сеансах, в которых были определены эти переменные.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Public
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Object
        Объект, представляющий значение переменной, можно передать командлету S
        et-Variable по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Management.Automation.PSVariable
        Если задан параметр PassThru, командлет Set-Variable создает объект Sys
        tem.Management.Automation.PSVariable, представляющий новую или измененн
        ую переменную. В противном случае этот командлет не формирует никаких в
        ыходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>set-variable -name desc -value "A description"
    
    C:\PS>get-variable -name desc
    
    
    Описание
    -----------
    Эти команды присваивают переменной "desc" значение "A description" и получа
    ют его.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-variable -name processes -value (Get-Process) -option constant -s
    cope global -description "All processes" -passthru | format-list -property 
    *
    
    
    Описание
    -----------
    Эта команда создает доступную только для чтения глобальную переменную, соде
    ржащую все выполняемые в системе процессы, а затем отображает все свойства 
    этой переменной.
    
    Для создания переменной в этой команде используется командлет Set-Variable.
     Параметр PassThru используется для создания объекта, представляющего новую
     переменную, а оператор конвейера (|) — для передачи объекта командлету For
    mat-List. Для отображения всех свойств новой переменной в командлете Format
    -List указан параметр Property со значением (*). 
    
    Значение "(Get-Process)" заключено в скобки, чтобы гарантировать выполнение
     этого командлета до сохранения значения в переменной. В противном случае п
    еременная будет содержать слова "Get-Process".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS># set-variable -name counter -visibility private
    
    C:\PS> new-variable -name counter -visibility public -value 26
    
    C:\PS> $counter
    26
    
    C:\PS> get-variable c*
    
    Name Value
    ---- -----
    Culture en-US
    ConsoleFileName
    ConfirmPreference High
    CommandLineParameters {}
    Counter 26
    
    C:\PS> set-variable -name counter -visibility private
    
    C:\PS> get-variable c*
    
    Name Value
    ---- -----
    Culture en-US
    ConsoleFileName
    ConfirmPreference High
    CommandLineParameters {}
    
    C:\PS> $counter
    "Cannot access the variable '$counter' because it is a private variable"
    
    C:\PS> .\use-counter.ps1
    Commands completed successfully.
    
    
    Описание
    -----------
    Эта команда показывает, как изменить видимость переменной на "Private". К п
    еременной могут обращаться и изменять ее скрипты с соответствующими разреше
    ниями, но она не видна пользователю.
    
    В примере вывода показано различие в поведении общих и частных переменных.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113401
    Get-Variable 
    New-Variable 
    Remove-Variable 
    Clear-Variable 



Set-WmiInstance

ИМЯ
    Set-WmiInstance
    
ОПИСАНИЕ
    Создает или обновляет экземпляр существующего класса инструментария управле
    ния Windows (WMI).
    
СИНТАКСИС
    Set-WmiInstance [-Class] <string> [[-Arguments] <hashtable>] [-Authenticati
    on {Default | None | Connect | Call | Packet | PacketIntegrity | PacketPriv
    acy | Unchanged}] [-Authority <string>] [-ComputerName <string[]>] [-Creden
    tial <PSCredential>] [-EnableAllPrivileges] [-Impersonation {Default | Anon
    ymous | Identify | Impersonate | Delegate}] [-Locale <string>] [-Namespace 
    <string>] [-AsJob] [-PutType {None | UpdateOnly | CreateOnly | UpdateOrCrea
    te}] [-ThrottleLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Set-WmiInstance [-Authentication {Default | None | Connect | Call | Packet 
    | PacketIntegrity | PacketPrivacy | Unchanged}] [-Authority <string>] [-Com
    puterName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [
    -Impersonation {Default | Anonymous | Identify | Impersonate | Delegate}] [
    -Locale <string>] [-Namespace <string>] [-AsJob] [-PutType {None | UpdateOn
    ly | CreateOnly | UpdateOrCreate}] [-ThrottleLimit <int>] [-Confirm] [-What
    If] [<CommonParameters>]
    
    Set-WmiInstance -InputObject <ManagementObject> [-Arguments <hashtable>] [-
    AsJob] [-PutType {None | UpdateOnly | CreateOnly | UpdateOrCreate}] [-Throt
    tleLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Set-WmiInstance -Path <string> [-Arguments <hashtable>] [-Authentication {D
    efault | None | Connect | Call | Packet | PacketIntegrity | PacketPrivacy |
     Unchanged}] [-Authority <string>] [-ComputerName <string[]>] [-Credential 
    <PSCredential>] [-EnableAllPrivileges] [-Impersonation {Default | Anonymous
     | Identify | Impersonate | Delegate}] [-Locale <string>] [-Namespace <stri
    ng>] [-AsJob] [-PutType {None | UpdateOnly | CreateOnly | UpdateOrCreate}] 
    [-ThrottleLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Set-WmiInstance [-Authentication {Default | None | Connect | Call | Packet 
    | PacketIntegrity | PacketPrivacy | Unchanged}] [-Authority <string>] [-Com
    puterName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [
    -Impersonation {Default | Anonymous | Identify | Impersonate | Delegate}] [
    -Locale <string>] [-Namespace <string>] [-AsJob] [-PutType {None | UpdateOn
    ly | CreateOnly | UpdateOrCreate}] [-ThrottleLimit <int>] [-Confirm] [-What
    If] [<CommonParameters>]
    
    Set-WmiInstance [-Authentication {Default | None | Connect | Call | Packet 
    | PacketIntegrity | PacketPrivacy | Unchanged}] [-Authority <string>] [-Com
    puterName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [
    -Impersonation {Default | Anonymous | Identify | Impersonate | Delegate}] [
    -Locale <string>] [-Namespace <string>] [-AsJob] [-PutType {None | UpdateOn
    ly | CreateOnly | UpdateOrCreate}] [-ThrottleLimit <int>] [-Confirm] [-What
    If] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-WmiInstance создает или обновляет экземпляр существующего кла
    сса WMI. Созданный или обновленный экземпляр записывается в репозиторий WMI
    .
    
ПАРАМЕТРЫ
    -Arguments <hashtable>
        Задает имя изменяемого свойства и новое значение этого свойства. Имя и 
        значение должны следовать в паре. Пара имя-значение передается в команд
        ную строку как хэш-таблица. Например:
              -argument @{Setting1=1; Setting2=5; Setting3="test"}.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -AsJob [<SwitchParameter>]
        Запускает команду в качестве фонового задания. Этот параметр служит для
         запуска команд, выполнение которых занимает длительное время.
        
        При использовании параметра AsJob команда возвращает объект, представля
        ющий фоновое задание, а затем отображает командную строку. Пока задание
         выполняется можно продолжать работу в сеансе. Если Set-WmiObject испол
        ьзуется для работы с удаленным компьютером, задание создается на локаль
        ном компьютере, и результаты с удаленных компьютеров автоматически возв
        ращаются на локальный компьютер. Для управления заданием используйте ко
        мандлеты, в именах которых содержится существительное Job (командлеты J
        ob). Чтобы получить результаты задания, используйте командлет Receive-J
        ob.
        
        Примечание. Чтобы использовать этот параметр для удаленных компьютеров,
         для локального и удаленного компьютеров должно быть настроено удаленно
        е взаимодействие. Кроме того, при работе с компьютером под управлением 
        Windows Vista и более поздних версий Windows необходимо запускать Windo
        ws PowerShell командой "Запуск от имени администратора". Дополнительные
         сведения см. в разделе about_Remote_Requirements.
        
        Дополнительные сведения о фоновых заданиях в Windows PowerShell см. в р
        азделах about_Jobs и about_Remote_Jobs.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authentication <AuthenticationLevel>
        Задает уровень проверки подлинности, используемый для WMI-соединения. Д
        опустимые значения:
        
        -1: Unchanged
        0: Default
        1: None (проверка подлинности не используется).
        2: Connect (проверка подлинности выполняется только при установке клиен
        том подключения к приложению).
        
        3: Call (проверка подлинности выполняется только в начале каждого вызов
        а при получении запроса приложением).
        4: Packet (проверка подлинности выполняется при обработке всех данных, 
        полученных от клиента).
        5: PacketIntegrity (для всех данных, передаваемых между клиентом и прил
        ожением, проводится проверка подлинности и проверка целостности).
        6: PacketPrivacy (используются свойства других уровней проверки подлинн
        ости, все данные шифруются).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authority <string>
        Задает центр, который используется для проверки подлинности WMI-соедине
        ния. Можно указать стандартную проверку подлинности NTLM или Kerberos. 
        Чтобы использовать NTLM, задайте для параметра Authority значение "ntlm
        domain:<имя_домена>", где <имя_домена> — допустимое имя домена NTLM. Чт
        обы использовать Kerberos, укажите "kerberos:<имя_домена>\<имя_сервера>
        ". При подключении к локальному компьютеру нельзя использовать параметр
         Authority.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Class <string>
        Задает имя класса WMI.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string[]>
        Задает компьютер, к которому требуется применить операцию управления. З
        начение может быть полным доменным именем, именем NetBIOS или IP-адресо
        м. Используйте имя локального компьютера, "localhost" или точку (.) что
        бы указать "Локальный компьютер". Локальный компьютер используется по у
        молчанию. Если пользователь и удаленный компьютер находятся в разных до
        менах, необходимо использовать полное доменное имя. Можно передать знач
        ение этому параметру по конвейеру.
         
        Этот параметр не использует функцию удаленного взаимодействия Windows P
        owerShell, которая использует протокол WS-Management. Параметр Computer
        Name командлета Get-WmiObject можно использовать, даже если компьютер н
        е настроен на выполнение удаленных команд по протоколу WS-Management.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". Введите имя пользователя, например "User01", "Domain01\
        User01" или User@Contoso.com. Или укажите объект PSCredential, например
         объект, возвращенный командлетом Get-Credential. При вводе имени польз
        ователя появится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -EnableAllPrivileges [<SwitchParameter>]
        Включает все привилегии текущего пользователя перед вызовом WMI из кома
        нды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Impersonation <ImpersonationLevel>
        Задает используемый уровень олицетворения. Допустимые значения: 
        
        0: Default (считывает значение уровня представления по умолчанию из лок
        ального реестра, обычно это значение равняется "3: Impersonate").
        1: Anonymous (скрывает учетные данные вызывающего).
        2: Identify (позволяет объектам запрашивать учетные данные вызывающего)
        .
        3: Impersonate (позволяет объектам использовать учетные данные вызывающ
        его).
        4: Delegate (позволяет объектам разрешать другим объектам использовать 
        учетные данные вызывающего).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <ManagementObject>
        Задает объект ManagementObject, используемый в качестве входных данных.
         При использовании этого параметра все остальные параметры, кроме парам
        етра Arguments, игнорируются.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Locale <string>
        Задает предпочтительную локаль для объектов WMI. Значение параметра Loc
        ale задается как массив в формате MS_<LCID> в желаемом порядке.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Namespace <string>
        При использовании с параметром Class данный параметр задает пространств
        о имен хранилища WMI, в котором находится указанный класс WMI.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Задает путь к экземпляру объекта WMI, который нужно создать или обновит
        ь.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PutType <PutType>
        Указывает, что требуется сделать: создать экземпляр WMI или обновить эк
        земпляр WMI. Допустимые значения:
        
        UpdateOnly. Обновляет существующий экземпляр WMI.
        CreateOnly. Создает новый экземпляр WMI.
        UpdateOrCreate. Обновляет экземпляр WMI, если он существует; в противно
        м случае создает новый экземпляр.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ThrottleLimit <int>
        Дает возможность пользователю указать пороговое значение количества опе
        раций WMI, которые могут выполняться одновременно. Этот параметр исполь
        зуется вместе с параметром AsJob. Ограничение скорости относится только
         к текущей команде, но не к сеансу или компьютеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Set-WMIInstance -class Win32_WMISetting -argument @{LoggingLevel=2}
    
    __GENUS                        : 2
    __CLASS                        : Win32_WMISetting
    __SUPERCLASS                   : CIM_Setting
    __DYNASTY                      : CIM_Setting
    __RELPATH                      : Win32_WMISetting=@
    __PROPERTY_COUNT               : 27
    __DERIVATION                   : {CIM_Setting}
    __SERVER                       : SYSTEM01
    __NAMESPACE                    : root\cimv2
    __PATH                         : \\SYSTEM01\root\cimv2:Win32_WMISetting=@
    ASPScriptDefaultNamespace      : \\root\cimv2
    ASPScriptEnabled               : False
    AutorecoverMofs                : {%windir%\system32\wbem\cimwin32.mof, %win
    dir%\system32\wbem\ncprov.mof, %windir%\syst
                                     em32\wbem\wmipcima.mof, %windir%\system32\
    wbem\secrcw32.mof...}
    AutoStartWin9X                 :
    BackupInterval                 :
    BackupLastTime                 :
    BuildVersion                   : 6001.18000
    Caption                        :
    DatabaseDirectory              : C:\Windows\system32\wbem\repository
    DatabaseMaxSize                :
    Description                    :
    EnableAnonWin9xConnections     :
    EnableEvents                   : False
    EnableStartupHeapPreallocation : False
    HighThresholdOnClientObjects   :
    HighThresholdOnEvents          : 20000000
    InstallationDirectory          : C:\Windows\system32\wbem
    LastStartupHeapPreallocation   :
    LoggingDirectory               : C:\Windows\system32\wbem\Logs\
    LoggingLevel                   : 2
    LowThresholdOnClientObjects    :
    LowThresholdOnEvents           : 10000000
    MaxLogFileSize                 : 65536
    MaxWaitOnClientObjects         :
    MaxWaitOnEvents                : 2000
    MofSelfInstallDirectory        :
    SettingID                      :
    
    
    Описание
    -----------
    Эта команда задает значение 2 для уровня записи WMI. Команда передает свойс
    тво, которое требуется задать, и значение (как пару) в параметре argument. 
    Параметр принимает хэш таблицу, представленную конструкцией @{property = va
    lue}. Возвращаемая информация о классе содержит новое значение.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-wmiinstance -class win32_environment -argument @{Name="testvar";V
    ariableValue="testvalue";UserName="<SYSTEM>"}
    
    __GENUS          : 2
    __CLASS          : Win32_Environment
    __SUPERCLASS     : CIM_SystemResource
    __DYNASTY        : CIM_ManagedSystemElement
    __RELPATH        : Win32_Environment.Name="testvar",UserName="<SYSTEM>"
    __PROPERTY_COUNT : 8
    __DERIVATION     : {CIM_SystemResource, CIM_LogicalElement, CIM_ManagedSyst
    emElement}
    __SERVER         : SYSTEM01
    __NAMESPACE      : root\cimv2
    __PATH           : \\SYSTEM01\root\cimv2:Win32_Environment.Name="testvar",U
    serName="<SYSTEM>"
    Caption          : <SYSTEM>\testvar
    Description      : <SYSTEM>\testvar
    InstallDate      :
    Name             : testvar
    Status           : OK
    SystemVariable   : True
    UserName         : <SYSTEM>
    VariableValue    : testvalue
    
    
    Описание
    -----------
    Эта команда создает переменную среды "testvar" со значением "testvalue". Эт
    о выполняется путем создания нового экземпляра класса Win32_Environment WMI
    . Следует иметь в виду, что эта операция требует наличия соответствующих уч
    етных данных, и что для просмотра новой переменной среды может понадобиться
     перезапустить Windows PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>Set-WMIInstance -class Win32_WMISetting -argument @{LoggingLevel=2} -
    computername system01, system02, system03
    
    __GENUS                        : 2
    __CLASS                        : Win32_WMISetting
    __SUPERCLASS                   : CIM_Setting
    __DYNASTY                      : CIM_Setting
    __RELPATH                      : Win32_WMISetting=@
    __PROPERTY_COUNT               : 27
    __DERIVATION                   : {CIM_Setting}
    __SERVER                       : SYSTEM01
    __NAMESPACE                    : root\cimv2
    __PATH                         : \\SYSTEM01\root\cimv2:Win32_WMISetting=@
    ASPScriptDefaultNamespace      : \\root\cimv2
    ASPScriptEnabled               : False
    AutorecoverMofs                : {%windir%\system32\wbem\cimwin32.mof, %win
    dir%\system32\wbem\ncprov.mof, %windir%\syst
                                     em32\wbem\wmipcima.mof, %windir%\system32\
    wbem\secrcw32.mof...}
    AutoStartWin9X                 :
    BackupInterval                 :
    BackupLastTime                 :
    BuildVersion                   : 6001.18000
    Caption                        :
    DatabaseDirectory              : C:\Windows\system32\wbem\repository
    DatabaseMaxSize                :
    Description                    :
    EnableAnonWin9xConnections     :
    EnableEvents                   : False
    EnableStartupHeapPreallocation : False
    HighThresholdOnClientObjects   :
    HighThresholdOnEvents          : 20000000
    InstallationDirectory          : C:\Windows\system32\wbem
    LastStartupHeapPreallocation   :
    LoggingDirectory               : C:\Windows\system32\wbem\Logs\
    LoggingLevel                   : 2
    LowThresholdOnClientObjects    :
    LowThresholdOnEvents           : 10000000
    MaxLogFileSize                 : 65536
    MaxWaitOnClientObjects         :
    MaxWaitOnEvents                : 2000
    MofSelfInstallDirectory        :
    SettingID                      :
    
    ...
    
    
    Описание
    -----------
    Эта команда задает значение 2 для уровня записи WMI. Команда передает свойс
    тво, которое требуется задать, и значение (как пару) в параметре argument. 
    Параметр принимает хэш таблицу, представленную конструкцией @{property = va
    lue}. Возвращаемая информация о классе содержит новое значение.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113402
    Get-WmiObject 
    Invoke-WmiMethod 
    Remove-WmiObject 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManInstance 
    Remove-WSManInstance 



Set-WSManInstance

ИМЯ
    Set-WSManInstance
    
ОПИСАНИЕ
    Вносит изменения в относящиеся к ресурсу сведения об управлении.
    
СИНТАКСИС
    Set-WSManInstance [-ApplicationName <string>] [-ComputerName <string>] [-Fr
    agment <string>] [-Port <int>] [-UseSSL] -ResourceURI <Uri> [[-SelectorSet]
     <hashtable>] [-Authentication <AuthenticationMechanism>] [-Credential <PSC
    redential>] [-Dialect <Uri>] [-FilePath <File>] [-SessionOption <hashtable>
    ] [-ValueSet <hashtable>] [<CommonParameters>]
    
    Set-WSManInstance [-ConnectionURI <Uri>] [-Fragment <string>] -ResourceURI 
    <Uri> [[-SelectorSet] <hashtable>] [-Authentication <AuthenticationMechanis
    m>] [-Credential <PSCredential>] [-Dialect <Uri>] [-FilePath <File>] [-Sess
    ionOption <hashtable>] [-ValueSet <hashtable>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-WSManInstance вносит изменения в относящиеся к ресурсу сведен
    ия об управлении.
    
    Для изменения сведений командлет использует уровень соединений/транспорта W
    inRM.
    
ПАРАМЕТРЫ
    -ApplicationName <string>
        Задает имя приложения для подключения. По умолчанию параметр Applicatio
        nName имеет значение "WSMAN". Полный идентификатор удаленной конечной т
        очки имеет следующий формат:
        
              <протокол>://<сервер>:<порт>/
        
        Пример:
        
              http://server01:8080/WSMAN
        
        Службы IIS, которые обрабатывают сеанс, перенаправляют запросы с данной
         конечной точкой указанному приложению. Значение по умолчанию "WSMAN" п
        одходит для большинства случаев. Этот параметр предназначен для использ
        ования, когда большое число компьютеров устанавливают удаленные подключ
        ения к одному компьютеру, на котором работает Windows PowerShell. В это
        м случае для повышения эффективности веб-службы WS-Management размещают
        ся в службах IIS.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                wsman
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authentication <AuthenticationMechanism>
        Задает механизм проверки подлинности, используемый на сервере. Возможны
        е значения:
        
        - Basic: при использовании схемы Basic имя пользователя и пароль переда
        ются серверу или прокси-серверу открытым текстом.
        - Default: использовать метод проверки подлинности, реализованный прото
        колом WS-Management. Это значение используется по умолчанию.
        - Digest: при использовании схемы Digest проверка подлинности проводитс
        я по принципу "запрос-ответ". В качестве запроса поступает строка данны
        х, указанная сервером.
        - Kerberos: выполняется взаимная проверка подлинности компьютера и серв
        ера с использованием сертификатов Kerberos.
        - Negotiate: при использовании схемы Negotiate между компьютером и серв
        ером или прокси происходит обмен данными по принципу "запрос-ответ", в 
        ходе которого определяется схема, используемая для проверки подлинности
        . Например, это значение параметра разрешает согласование одного из дву
        х методов проверки подлинности: Kerberos или NTLM.
        - CredSSP: использовать проверку подлинности CredSSP (Credential Securi
        ty Service Provider), при которой пользователю разрешается делегировать
         учетные данные. Этот вариант предназначен для команд, которые запускаю
        тся на одном удаленном компьютере, но собирают данные с других удаленны
        х компьютеров или выполняют на них дополнительные команды. 
        
        Внимание При проверке подлинности CredSSP учетные данные пользователя 
        делегируются с локального компьютера на удаленный компьютер. Такой подх
        од повышает угрозы безопасности удаленных операций. Если безопасность у
        даленного компьютера нарушена, при передаче на него учетных данных эти 
        данные могут быть использованы для управления сетевым сеансом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string>
        Задает компьютер, к которому требуется применить операцию управления. З
        начение может быть полным доменным именем, именем NetBIOS или IP-адресо
        м. Чтобы задать локальный компьютер, введите имя компьютера, "localhost
        " или точку (.). Локальный компьютер используется по умолчанию. Если по
        льзователь и удаленный компьютер находятся в разных доменах, необходимо
         использовать полное доменное имя. Значение этого параметра можно перед
        ать командлету по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                localhost
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ConnectionURI <Uri>
        Задает конечную точку соединения. Строка имеет следующий формат: 
        
             <протокол>://<сервер>:<порт>/
        
        Следующая строка представляет собой правильно отформатированное значени
        е для этого параметра: 
        
             http://Server01:8080/WSMAN
        
        Значение URI должно быть указано полностью.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". Введите имя пользователя, например "User01", "Domain01\
        User01" или "User@Domain.com". Или укажите объект PSCredential, наприме
        р возвращенный командлетом Get-Credential. При вводе имени пользователя
         появится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Dialect <Uri>
        Задает диалект, который должен использоваться в предикате фильтра. Это 
        может быть любой диалект, поддерживаемый удаленной службой. Для URI диа
        лекта можно использовать следующие псевдонимы:
        
        - WQL: http://schemas.microsoft.com/wbem/wsman/1/WQL 
        - Selector: http://schemas.microsoft.com/wbem/wsman/1/wsman/SelectorFil
        ter
        - Association: http://schemas.dmtf.org/wbem/wsman/1/cimbinding/associat
        ionFilter
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                http://schemas.microsoft.com/wbem/
        wsman/1/WQL
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FilePath <File>
        Задает путь к файлу, который используется для обновления ресурса управл
        ения. Ресурс управления указывается с помощью параметров ResourceURI и 
        SelectorSet. Например, в следующей команде используется параметр FilePa
        th:
        
        invoke-wsmanaction -action stopservice -resourceuri wmicimv2/Win32_Serv
        ice -SelectorSet @{Name="spooler"} -FilePath:c:\input.xml -authenticati
        on default
        
        Эта команда вызывает метод StopService службы очереди печати, используя
         входные данные из файла. В файле (Input.xml) содержатся следующие данн
        ые: 
        
        <p:StopService_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1
        /wmi/root/cimv2/Win32_Service"/>
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Fragment <string>
        Задает раздел внутри экземпляра, который будет обновлен или извлечен ук
        азанной операцией. Например, для получения состояния службы очереди печ
        ати укажите "-Fragment Status".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -OptionSet <hashtable>
        Передает службе набор параметров для изменения или уточнения запроса. П
        ередаваемые параметры похожи на параметры, используемые в оболочках ком
        андной строки: они зависят от конкретной службы. Можно задать произволь
        ное количество параметров. 
        
        В следующем примере показано синтаксическое выражение, позволяющее пере
        дать значения 1, 2 и 3 параметрам a, b и c соответственно:
        
              -OptionSet @{a=1;b=2;c=3}
        
        Требуется?                    
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Port <int>
        Задает порт, используемый клиентом для подключения к службе WinRM. Если
         в качестве транспорта выбран HTTP, по умолчанию используется порт 80. 
        Если в качестве транспорта выбран HTTPS, по умолчанию используется порт
         443. При использовании в качестве транспорта HTTPS значение параметра 
        ComputerName должно соответствовать общему имени сертификата сервера. О
        днако, если в качестве элемента параметра SessionOption указан параметр
         SkipCNCheck, общее имя сертификата сервера не обязательно должно соотв
        етствовать имени узла сервера. Параметр SkipCNCheck следует использоват
        ь только в случае доверенных компьютеров.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ResourceURI <Uri>
        Содержит универсальный идентификатор ресурса (URI) экземпляра или класс
        а ресурса. URI используется для определения конкретного типа ресурса, н
        апример диска или процесса, на компьютере. 
        
        URI состоит из префикса и пути к ресурсу. Пример: 
        
             http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Log
        icalDisk
             http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSenso
        r
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SelectorSet <hashtable>
        Задает набор пар значений, которые используются для выбора конкретных э
        кземпляров ресурса управления. Параметр SelectorSet используется в случ
        ае существования нескольких экземпляров ресурса. Значение параметра Sel
        ectorSet представляет собой хэш-таблицу. В следующем примере показано, 
        как задать значение для этого параметра: 
        
            -SelectorSet @{Name="WinRM";ID="yyy"}
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -SessionOption <hashtable>
        Определяет расширенные параметры сеанса WS-Management. Введите объект S
        essionOption, созданный с помощью командлета New-WSManSessionOption. До
        полнительные сведения о доступных параметрах см. в разделе New-WSManSes
        sionOption.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseSSL [<SwitchParameter>]
        Указывает, что для установки подключения к удаленному компьютеру должен
         использоваться протокол SSL (Secure Sockets Layer). По умолчанию SSL н
        е используется. 
        
        Протокол WS-Management шифрует все передаваемое по сети содержимое Wind
        ows PowerShell. Параметр UseSSL позволяет указать, что необходимо испол
        ьзовать дополнительную меру защиты: протокол HTTPS вместо HTTP. Если ук
        азан этот параметр, однако используемый для подключения порт не поддерж
        ивает SSL, команда завершается с ошибкой.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ValueSet <hashtable>
        Задает хэш-таблицу, которая позволяет изменить ресурс управления. Ресур
        с управления указывается с помощью параметров ResourceURI и SelectorSet
        . Значение параметра ValueSet должно быть хэш-таблицей.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает никаких входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>set-wsmaninstance -resourceuri winrm/config/listener -selectorset @{a
    ddress="*";transport="https"} -valueset @{Enabled="false"}
    
    cfg                   : http://schemas.microsoft.com/wbem/wsman/1/config/li
    stener
    xsi                   : http://www.w3.org/2001/XMLSchema-instance
    lang                  : en-US
    Address               : *
    Transport             : HTTPS
    Port                  : 443
    Hostname              :
    Enabled               : false
    URLPrefix             : wsman
    CertificateThumbprint :
    ListeningOn           : {127.0.0.1, 172.30.168.171, ::1, 2001:4898:0:fff:0:
    5efe:172.30.168.171...}
    
    
    Описание
    -----------
    Эта команда отключает HTTPS-прослушиватель на локальном компьютере.
    
    Важно: при сравнении свойств, заданных в параметре ValueSet, учитывается ре
    гистр.  
    
    Возьмем в качестве примера приведенную выше команду. 
    
    Эта запись завершится неудачей:     -ValueSet @{enabled="False"}
    
    Эта запись завершится успешно:      -ValueSet @{Enabled="False"}
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>set-wsmaninstance -resourceuri winrm/config -ValueSet @{MaxEnvelopeSi
    zekb = "200"}
    
    cfg                 : http://schemas.microsoft.com/wbem/wsman/1/config
    lang                : en-US
    MaxEnvelopeSizekb   : 200
    MaxTimeoutms        : 60000
    MaxBatchItems       : 32000
    MaxProviderRequests : 4294967295
    Client              : Client
    Service             : Service
    Winrs               : Winrs
    
    
    Описание
    -----------
    Эта команда устанавливает параметр MaxEnvelopeSizekb на локальном компьютер
    е равным 200.
    
    Важно: при сравнении свойств, заданных в параметре ValueSet, учитывается ре
    гистр.  
    
    Возьмем в качестве примера приведенную выше команду. 
    
    Эта запись завершится неудачей:     -ValueSet @{MaxEnvelopeSizeKB ="200"}
    
    Эта запись завершится успешно:      -ValueSet @{MaxEnvelopeSizekb ="200"}
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>set-wsmaninstance -resourceuri winrm/config/listener -computername SE
    RVER02 -selectorset @{address="*";transport="https"} -valueset @{Enabled="f
    alse"}
    
    cfg                   : http://schemas.microsoft.com/wbem/wsman/1/config/li
    stener
    xsi                   : http://www.w3.org/2001/XMLSchema-instance
    lang                  : en-US
    Address               : *
    Transport             : HTTPS
    Port                  : 443
    Hostname              :
    Enabled               : false
    URLPrefix             : wsman
    CertificateThumbprint :
    ListeningOn           : {127.0.0.1, 172.30.168.172, ::1, 2001:4898:0:fff:0:
    5efe:172.30.168.172...}
    
    
    Описание
    -----------
    Эта команда отключает HTTPS-прослушиватель на удаленном компьютере SERVER02
    .
    
    Важно: при сравнении свойств, заданных в параметре ValueSet, учитывается ре
    гистр.  
    
    Возьмем в качестве примера приведенную выше команду. 
    
    Эта запись завершится неудачей:     -ValueSet @{enabled="False"}
    
    Эта запись завершится успешно:      -ValueSet @{Enabled="False"}
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkId=141458
    Connect-WSMan 
    Disable-WSManCredSSP 
    Disconnect-WSMan 
    Enable-WSManCredSSP 
    Get-WSManCredSSP 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManInstance 
    New-WSManSessionOption 
    Remove-WSManInstance 
    Set-WSManQuickConfig 
    Test-WSMan 



Set-WSManQuickConfig

ИМЯ
    Set-WSManQuickConfig
    
ОПИСАНИЕ
    Настраивает локальный компьютер для удаленного управления.
    
СИНТАКСИС
    Set-WSManQuickConfig [-UseSSL] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Set-WSManQuickConfig настраивает компьютер на получение удаленных
     команд Windows PowerShell, отправляемых с использованием технологии WS-Man
    agement. 
    
    Командлет выполняет следующие операции.
    1. Проверяет, запущена ли служба WinRM. Если служба WinRM не запущена, кома
    ндлет запускает ее.
    2. Устанавливает для службы WinRM тип запуска "Авто".
    3. Создает прослушиватель для приема запросов на любом IP-адресе. По умолча
    нию используется протокол HTTP.
    4. Создает исключение брандмауэра для трафика, создаваемого службой WinRM.
    
    Чтобы использовать этот командлет в Windows Vista, Windows Server 2008 и бо
    лее поздних версиях Windows, необходимо запускать Windows PowerShell команд
    ой "Запуск от имени администратора".
    
ПАРАМЕТРЫ
    -UseSSL [<SwitchParameter>]
        Указывает, что для установки подключения к удаленному компьютеру должен
         использоваться протокол SSL (Secure Sockets Layer). По умолчанию SSL н
        е используется. 
        
        Протокол WS-Management шифрует все передаваемое по сети содержимое Wind
        ows PowerShell. Параметр UseSSL позволяет указать, что необходимо испол
        ьзовать дополнительную меру защиты и передавать данные по протоколу HTT
        PS вместо HTTP. Если используется этот параметр, но установить SSL-соед
        инение с портом, указанным в команде, не удается, команда завершается с
         ошибкой.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает никаких входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Set-WSManQuickConfig
    
    
    Описание
    -----------
    Эта команда устанавливает конфигурацию, необходимую для обеспечения удаленн
    ого управления локальным компьютером. По умолчанию она создает прослушивате
    ль WS-Management для протокола HTTP.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>Set-WSManQuickConfig -UseSSL
    
    
    Описание
    -----------
    Эта команда устанавливает конфигурацию, необходимую для обеспечения удаленн
    ого управления локальным компьютером. Поскольку указан параметр UseSSL, ком
    анда создает прослушиватель WS-Management для протокола HTTPS.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=141463
    Connect-WSMan 
    Disable-WSManCredSSP 
    Disconnect-WSMan 
    Enable-PSRemoting 
    Enable-WSManCredSSP 
    Get-WSManCredSSP 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-PSSession 
    New-WSManInstance 
    New-WSManSessionOption 
    Test-WSMan 



Show-EventLog

ИМЯ
    Show-EventLog
    
ОПИСАНИЕ
    Отображает журналы событий локального или удаленного компьютера в средстве 
    просмотра событий.
    
СИНТАКСИС
    Show-EventLog [[-ComputerName] <string>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Show-EventLog открывает средство просмотра событий на локальном к
    омпьютере и отображает в нем все классические журналы событий, имеющиеся на
     локальном компьютере или на удаленном компьютере.  
    
    Чтобы открывать средство просмотра событий в Windows Vista и более поздних 
    версиях Windows, текущий пользователь должен быть членом группы "Администра
    торы" на локальном компьютере. 
    
    Командлеты, в имени которых содержится существительное EventLog (командлеты
     EventLog) работают только с классическими журналами событий. Чтобы получат
    ь события из журналов, основанных на технологии журнала событий Windows (в 
    Windows Vista и более поздних версиях Windows), используйте командлет Get-W
    inEvent.
    
ПАРАМЕТРЫ
    -ComputerName <string>
        Задает удаленный компьютер. Командлет Show-EventLog отображает журналы 
        событий с указанного компьютера в средстве просмотра событий на локальн
        ом компьютере. По умолчанию используется значение "Локальный компьютер"
        .
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя удаленного компью
        тера. 
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName командлета Get-EventLog можно использовать, даж
        е если компьютер не настроен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                .
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Сразу же после открытия средства просмотра событий снова отображается к
        омандная строка Windows PowerShell. Можно продолжать работу в рамках да
        нного сеанса, не закрывая средство просмотра событий.
        
        Поскольку этому командлету требуется пользовательский интерфейс, он не 
        работает в ОС Windows Server, установленной в варианте Server Core.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>show-eventlog
    
    
    Описание
    -----------
    Эта команда открывает средство просмотра событий и отображает в нем классич
    еские журналы событий, имеющиеся на локальном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>show-eventlog -computername Server01
    
    
    Описание
    -----------
    Эта команда открывает средство просмотра событий и отображает в нем классич
    еские журналы событий, имеющиеся на компьютере Server01.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135257
    Clear-EventLog 
    Get-EventLog 
    Limit-EventLog 
    New-EventLog 
    Remove-EventLog 
    Write-EventLog 
    Get-WinEvent 



Sort-Object

ИМЯ
    Sort-Object
    
ОПИСАНИЕ
    Сортирует объекты по значениям свойств.
    
СИНТАКСИС
    Sort-Object [[-Property] <Object[]>] [-CaseSensitive] [-Culture <string>] [
    -Descending] [-InputObject <psobject>] [-Unique] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Sort-Object сортирует объекты по возрастанию или по убыванию на о
    снове значений свойств объектов. 
    
    Можно задать одно свойство или несколько свойств (сортировка по нескольким 
    ключам), а также выбрать сортировку с учетом или без учета регистра. Кроме 
    того, можно сделать так, чтобы командлет Sort-Object выводил только объекты
     с уникальными значениями того или иного свойства.
    
ПАРАМЕТРЫ
    -CaseSensitive [<SwitchParameter>]
        Указывает, что сортировка должна выполняться с учетом регистра. По умол
        чанию сортировка выполняется без учета регистра.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Culture <string>
        Указывает используемую при сортировке настройку культуры.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Descending [<SwitchParameter>]
        Сортирует объекты в порядке убывания. По умолчанию используется сортиро
        вка в порядке возрастания.
        
        Действие параметра Descending распространяется на все свойства. Чтобы в
        ыполнить сортировку по некоторым свойствам в порядке возрастания значен
        ий, а по другим свойствам — в порядке убывания, значения этих свойств н
        ужно задать с использованием хэш-таблицы. Подробности см. в примерах.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объекты для сортировки.
        
        Если для передачи коллекции объектов используется параметр InputObject,
         командлет Sort-Object получает один объект, представляющий коллекцию. 
        Поскольку один объект отсортировать невозможно, Sort-Object возвращает 
        всю коллекцию без изменений.
        
        Чтобы отсортировать объекты, передайте их командлету Sort-Object по кон
        вейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Property <Object[]>
        Задает свойства для использования при сортировке. Объекты сортируются н
        а основании значений этих свойств. Введите имена свойств. Подстановочны
        е знаки разрешены. 
        
        Если указано несколько свойств, объекты сначала сортируются по первому 
        свойству. Если у нескольких объектов значения первого свойства совпадаю
        т, эти объекты сортируются по второму свойству. Это продолжается до тех
         пор, пока не закончатся все указанные свойства или группы объектов.
        
        Если свойства не указаны, командлет выполняет сортировку на основании с
        войств по умолчанию для объектов данного типа.
        
        Значение параметра Property может быть новым вычисляемым свойством. Что
        бы создать вычисляемое свойство, используйте хэш-таблицу. Допустимые кл
        ючи:
        
        -- Expression <строка> или <блок скрипта>
        -- Ascending <Boolean>
        -- Descending <Boolean>
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  true
        
    -Unique [<SwitchParameter>]
        Удаляет дубликаты и возвращает только уникальные элементы коллекции. Эт
        от параметр можно использовать вместо командлета Get-Unique.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Объекты для сортировки можно передать командлету Sort-Object по конвейе
        ру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Командлет Sort-Object возвращает отсортированные объекты.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Sort-Object сортирует объекты на основании заданных свойств и
        ли свойств сортировки по умолчанию для объектов данного типа.
        
        Если объект не имеет одного из указанных свойств, соответствующее значе
        ние свойства интерпретируется командлетом как NULL, и объект помещается
         в конец списка сортировки.
        
        При сортировке объектов командлет Sort-Object использует для каждого св
        ойства метод Compare. Если интерфейс IComparable в свойстве не реализов
        ан, то этот командлет преобразует значение свойства в строку и вызывает
         метод Compare класса System.String.
        
        Командлет Sort-Object сортирует объекты по возрастанию или по убыванию 
        на основе значений свойств объектов.
        
        При сортировке по свойству, значения которого являются перечислением, к
        омандлет Sort-Object сортирует значения по их числовым эквивалентам, а 
        не по именам элементов перечисления. Например, при сортировке служб по 
        состоянию службы с состоянием "Остановлена" будут отображаться до служб
         с состоянием "Работает", поскольку значение свойства Status является п
        еречислением ServiceControllerStatus, в котором элементу "Stopped" соот
        ветствует значение 1, а элементу "Running" — значение 4.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-childitem | sort-object 
    
    Mode                LastWriteTime     Length Name
    ----                -------------     ------ ----
    -a---         9/13/2005   4:24 PM          0 0
    -a---          9/6/2005   4:19 PM         12 a.csv
    -a---         9/21/2005   3:49 PM        529 a.Ps
    -a---         8/22/2005   4:14 PM         22 a.pl
    -a---         9/27/2005  10:33 AM         24 a.txt
    -a---         9/15/2005  10:31 AM        398 a.vbs
    -a---         7/21/2005  12:39 PM      37066 a.xml
    -a---         8/28/2005  11:30 PM       5412 a.xslt
    -a---        10/25/2005   1:59 PM        125 AdamTravel.txt
    -a---         7/21/2005   9:49 AM         59 add2Num.Ps
    -a---         8/29/2005   5:42 PM       7111 add-content.xml
    -a---         9/21/2005  12:46 PM       8771 aliens.Ps
    -a---         8/10/2005   2:10 PM        798 array.xml
    -a---          8/4/2004   5:00 AM        110 AUTORUN.INF
    -a---          9/6/2005   4:20 PM        245 b.csv
    ...
    
    
    Описание
    -----------
    Эта команда сортирует вложенные каталоги и файлы из текущего каталога. Поск
    ольку ни одно свойство не задано, файлы и каталоги отсортированы по алфавит
    у по свойству по умолчанию (Name).
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-childitem | sort-object -property length 
    
    Mode                LastWriteTime     Length Name
    ----                -------------     ------ ----
    -a---         12/3/2006   5:35 PM          2 pref.txt
    -a---          9/6/2006   3:33 PM         15 count.txt
    -a---         7/26/2006  10:01 AM         30 filenoext
    -a---         8/18/2006   9:02 AM         52 temp.ps1
    -a---         8/18/2006   9:02 AM         52 temp.msh
    -a---          9/6/2006   3:33 PM         56 fivewords.txt
    -a---         7/26/2006   9:28 AM         80 date.csv
    -a---         7/29/2006   7:15 PM         84 test2.txt
    -a---         7/29/2006   7:15 PM         84 test.ps1
    
    
    Описание
    -----------
    Эта команда отображает имеющиеся в текущем каталоге файлы, сортируя их по в
    озрастанию размера.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-process | sort-object -property WS | select-object -last 5 
    
    Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
    -------  ------    -----      ----- -----   ------     -- -----------
       1105      25    44236      18932   197    93.81   2032 iexplore
       2526      66    37668      36836   221   393.27    868 svchost
        974      19    22844      45928   371    88.39   3952 WINWORD
       1371      22    42192      61872   323    75.75   1584 INFOPATH
       2145      58    93088      70680   619   396.69   3908 OUTLOOK
    
    
    Описание
    -----------
    Эта команда отображает пять процессов, которые используют наибольший объем 
    памяти на основании их рабочих наборов. 
    
    С помощью командлета Get-Process команда получает список выполняющихся на к
    омпьютере процессов. С помощью оператора конвейера (|) она передает результ
    аты командлету Sort-Object, который сортирует объекты в порядке размеров ра
    бочих наборов. 
    
    Другой оператор конвейера передает результаты командлету Select-Object, кот
    орый отображает только пять элементов списка.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-history | sort-object -descending 
    
    Id CommandLine
    -- -----------
    51 get-history | sort -descending
    50 get-history | sort -descending
    49 get-history | sort -descending
    48 get-history | sort -descending
    47 get-history | sort -descending
    46 get-history | sort -descending
    45 get-history | sort -descending
    44 cd $pshome
    43 get-childitem | sort-object
    42 gci *.txt
    
    
    Описание
    -----------
    Эта команда сортирует объекты HistoryInfo, используя в качестве ключа по ум
    олчанию свойство Id.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>C:\PS> get-service | sort-object -property `
    @{Expression="Status";Descending=$true}, `
    @{Expression="DisplayName";Descending=$false} 
    
    Status   Name               DisplayName
    ------   ----               -----------
    Running  ALG                Application Layer Gateway Service
    Running  Ati HotKey Poller  Ati HotKey Poller
    Running  wuauserv           Automatic Updates
    Running  BITS               Background Intelligent Transfer Ser...
    Running  Client for NFS     Client for NFS
    ...
    Stopped  clr_optimizatio... .NET Runtime Optimization Service v...
    Stopped  Alerter            Alerter
    Stopped  AppMgmt            Application Management
    Stopped  aspnet_state       ASP.NET State Service
    Stopped  ATI Smart          ATI Smart
    Stopped  ClipSrv            ClipBook
    
    
    Описание
    -----------
    Эта команда отображает службы компьютера в порядке убывания значения Status
     и возрастания значения DisplayName.
    
    Эта команда с помощью командлета Get-Service получает службы на компьютере.
     Службы с помощью оператора конвейера (|) передаются командлету Sort-Object
    .
    
    Чтобы выполнить сортировку по возрастанию одного свойства и убыванию другог
    о, в этой команде используется хэш-таблица для значения свойства Property. 
    Хэш-таблица использует ключ Expression, чтобы задать имя свойства, и ключ A
    scending или Descending, чтобы определить порядок сортировки.
    
    В результатах выполнения команды, выполняющей сортировку по убыванию значен
    ия Status, объекты, для которых свойство Status имеет значение "Running" (Р
    аботает), будут отображаться до объектов, для которых свойство Status имеет
     значение "Stopped" (Остановлена). При сортировке по возрастанию значения "
    Stopped" отображаются до значений "Running", потому что значениями свойства
     Status являются элементы перечисления, в котором значение "Stopped" (1) ме
    ньше, чем "Running" (4).
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>get-childitem *.txt | sort-object -property @{Expression={$_.LastWrit
    eTime - $_.CreationTime}; Ascending=$false} | Format-Table LastWriteTime, C
    reationTime 
    
    LastWriteTime                           CreationTime
    -------------                           ------------
    2/21/2006 10:22:20 AM                   10/3/2005 4:19:40 PM
    2/27/2006 8:14:24 AM                    2/23/2006 10:41:08 PM
    2/24/2006 1:26:19 PM                    2/23/2006 11:23:36 PM
    1/5/2006 12:01:35 PM                    1/5/2006 11:35:30 AM
    2/24/2006 9:25:40 AM                    2/24/2006 9:22:24 AM
    2/24/2006 9:40:01 AM                    2/24/2006 9:39:41 AM
    2/21/2006 10:21:30 AM                   2/21/2006 10:21:30 AM
    
    
    Описание
    -----------
    Эта команда сортирует текстовые файлы по возрастанию, используя в качестве 
    критерия сортировки интервал между временем создания файла (CreationTime) и
     временем последней записи (LastWriteTime).
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-content servers.txt
    
    localhost
    test01
    server01
    server02
    localhost
    server01
    
    C:\PS> get-content servers.txt | sort-object -unique
    localhost
    server01
    server02
    test01
    
    
    Описание
    -----------
    Эти команды сортируют имена серверов в текстовом файле. Вторая команда с по
    мощью командлета Sort-Object с параметром Unique возвращает отсортированный
     список без дубликатов.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113403
    Group-Object 



Split-Path

ИМЯ
    Split-Path
    
ОПИСАНИЕ
    Возвращает указанную часть пути.
    
СИНТАКСИС
    Split-Path [-IsAbsolute] [-Path] <string[]> [-Credential <PSCredential>] [-
    LiteralPath <string[]>] [-Resolve] [-UseTransaction] [<CommonParameters>]
    
    Split-Path [-Leaf] [-Path] <string[]> [-Credential <PSCredential>] [-Litera
    lPath <string[]>] [-Resolve] [-UseTransaction] [<CommonParameters>]
    
    Split-Path [-NoQualifier] [-Path] <string[]> [-Credential <PSCredential>] [
    -LiteralPath <string[]>] [-Resolve] [-UseTransaction] [<CommonParameters>]
    
    Split-Path [-Parent] [-Path] <string[]> [-Credential <PSCredential>] [-Lite
    ralPath <string[]>] [-Resolve] [-UseTransaction] [<CommonParameters>]
    
    Split-Path [[-Qualifier]] [-Path] <string[]> [-Credential <PSCredential>] [
    -LiteralPath <string[]>] [-Resolve] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Split-Path возвращает только указанную часть пути, например корне
    вой каталог, вложенный каталог или имя файла. Также он может отображать эле
    менты, на которые указывает путь после разбиения, и сообщать, относительным
     или абсолютным является путь.
    
    Этот командлет можно использовать для отображения или передачи только выбра
    нной части пути.
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01". Или 
        укажите объект PSCredential, например один из объектов, созданных коман
        длетом Get-Credential. При вводе имени пользователя система запросит па
        роль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -IsAbsolute [<SwitchParameter>]
        Возвращает TRUE, если путь является абсолютным, и FALSE, если путь явля
        ется относительным. Абсолютный путь имеет длину, большую нуля, и не сод
        ержит точку (. ) для обозначения текущего пути.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Leaf [<SwitchParameter>]
        Возвращает только последний элемент или контейнер в указанном пути. Нап
        ример, при обработке пути "C:\Test\Logs\Pass1.log" возвращается значени
        е "Pass1.log".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает пути для разбиения. В отличие от значения параметра Path, значен
        ие параметра LiteralPath используется точно в том виде, в котором оно в
        ведено. Никакие символы не интерпретируются как подстановочные знаки. Е
        сли путь включает escape-символы, его нужно заключить в одиночные кавыч
        ки. Одиночные кавычки указывают оболочке Windows PowerShell, что никаки
        е символы не следует интерпретировать как escape-символы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -NoQualifier [<SwitchParameter>]
        Возвращает путь без квалификатора. Для поставщиков файловой системы или
         реестра квалификатором является имя диска, на котором расположен поста
        вщик, например "C:" или "HKCU:". Например, при обработке пути "C:\Test\
        Logs\Pass1.log" возвращается значение "\Test\Logs\Pass1.log".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Parent [<SwitchParameter>]
        Возвращает только родительские контейнеры элемента или контейнера, зада
        ваемого путем. Например, при обработке пути "C:\Test\Logs\Pass1.log" во
        звращается значение "C:\Test\Logs". Параметр Parent является параметром
         разбиения пути, используемым по умолчанию.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает пути для разбиения. Подстановочные знаки разрешены. Путь, содерж
        ащий пробелы, необходимо заключать в кавычки. Кроме того, можно передат
        ь путь командлету Split-Path по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Qualifier [<SwitchParameter>]
        Возвращает только квалификатор заданного пути. Для поставщиков файловой
         системы или реестра квалификатором является имя диска, на котором расп
        оложен поставщик, например "C:" или "HKCU:".
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Resolve [<SwitchParameter>]
        Отображает элементы, на которые указывает путь после разбиения, а не эл
        ементы пути.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь, можно передать командлету Split-Path по конвей
        еру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String
        Командлет Split-Path возвращает текстовые строки. При использовании пар
        аметра Resolve командлет Split-Path возвращает строку, описывающую мест
        оположение элементов, но не возвращает объекты, представляющие элементы
        , например объекты FileInfo или RegistryKey.
    
    
ПРИМЕЧАНИЯ
    
    
        Параметры разбиения пути (Qualifier, Parent, Leaf и NoQualifier) являют
        ся взаимоисключающими. В каждой команде может использоваться только оди
        н параметр. 
        
        Командлеты, в именах которых содержится существительное Path (командлет
        ы Path), оперируют именами путей и возвращают эти имена в сокращенном ф
        ормате, который поддерживается всеми поставщиками Windows PowerShell. О
        ни предназначены для использования в программах и скриптах, в которых т
        ребуется отображать имя пути или его часть в конкретном формате. Исполь
        зуйте их аналогично другим командам для работы с путями, таким как Dirn
        ame, Normpath, Realpath и Join.
        
        Командлеты Path можно использовать с несколькими поставщиками, включая 
        FileSystem, Registry и Certificate.
        
        Командлет Split-Path предназначен для работы с данными, предоставляемым
        и любым поставщиком. Чтобы получить список поставщиков, доступных в тек
        ущем сеансе, введите команду "Get-PSProvider". Дополнительные сведения 
        см. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>split-path "HKCU:\Software\Microsoft" -qualifier
    
    HKCU:
    
    
    Описание
    -----------
    Эта команда возвращает только квалификатор (имя диска) заданного пути.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>split-path "C:\Test\Logs\*.log" -leaf -resolve
    
    Pass1.log
    Pass2.log
    ...
    
    
    Описание
    -----------
    Эта команда отображает файлы, на которые указывает путь после разбиения. По
    скольку данный путь был разбит до последнего элемента ("листа" дерева катал
    огов), отображаются только имена файлов. 
    
    Параметр Resolve указывает командлету Split-Path отображать элементы, на ко
    торые указывает путь после разбиения, а не сам путь после разбиения.
    
    Как и все команды Split-Path, эта команда возвращает строки. Она не возвращ
    ает объекты FileInfo, представляющие файлы.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>split-path "C:\WINDOWS\system32\WindowsPowerShell\V1.0\about_*.txt"
    
    C:\WINDOWS\system32\WindowsPowerShell\V1.0
    
    
    Описание
    -----------
    Эта команда возвращает только родительские контейнеры заданного пути. Так к
    ак данная команда не содержит параметров разбиения, командлет Split-Path ис
    пользует разбиение по умолчанию, которым является Parent.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>split-path ".\My Pictures\*.jpg" -IsAbsolute
    
    False
    
    
    Описание
    -----------
    Эта команда определяет, относительным или абсолютным является указанный пут
    ь. Так как в данном случае путь является относительным для текущей папки, п
    редставленной точкой (.), результатом выполнения команды является значение 
    FALSE ($false).
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>set-location (split-path $profile)
    
    PS C:\Documents and Settings\juneb\My Documents\WindowsPowerShell>
    
    
    Описание
    -----------
    Эта команда изменяет текущее местоположение на папку, содержащую профиль Wi
    ndows PowerShell. 
    Команда, заключенная в круглые скобки, с помощью командлета Split-Path возв
    ращает только родительский контейнер пути, хранящегося в переменной $Profil
    e. (Параметр Parent является параметром разбиения пути по умолчанию, поэтом
    у его можно опустить.) Круглые скобки указывают оболочке Windows PowerShell
    , что данную команду необходимо выполнять в первую очередь. Это удобный спо
    соб перейти в папку с длинным путем.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>'C:\Documents and Settings\User01\My Documents\My Pictures' | split-p
    ath
    
    C:\Documents and Settings\User01\My Documents
    
    
    Описание
    -----------
    В этой команде используется оператор конвейера (|) для передачи пути команд
    лету Split-Path. Путь заключен в кавычки, что указывает, что он является ед
    иной лексемой.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113404
    about_Providers 
    Test-Path 
    Convert-Path 
    Resolve-Path 
    Join-Path 



Start-Job

ИМЯ
    Start-Job
    
ОПИСАНИЕ
    Запускает фоновое задание Windows PowerShell.
    
СИНТАКСИС
    Start-Job [-ScriptBlock] <scriptblock> [[-InitializationScript] <scriptbloc
    k>] [-ArgumentList <Object[]>] [-Authentication {Default | Basic | Negotiat
    e | NegotiateWithImplicitCredential | Credssp | Digest | Kerberos}] [-Crede
    ntial <PSCredential>] [-InputObject <psobject>] [-Name <string>] [-RunAs32]
     [<CommonParameters>]
    
    Start-Job [[-FilePath] <string>] [[-InitializationScript] <scriptblock>] [-
    ArgumentList <Object[]>] [-Authentication {Default | Basic | Negotiate | Ne
    gotiateWithImplicitCredential | Credssp | Digest | Kerberos}] [-Credential 
    <PSCredential>] [-InputObject <psobject>] [-Name <string>] [-RunAs32] [
    monParameters>]
    
    
ОПИСАНИЕ
    Командлет Start-Job запускает фоновое задание Windows PowerShell на локальн
    ом компьютере. 
    
    Фоновое задание Windows PowerShell выполняет команду "в фоновом режиме" без
     взаимодействия с текущим сеансом. При запуске фонового задания объект зада
    ния возвращается немедленно, даже если для выполнения задания требуется зна
    чительное время. Пока задание выполняется, можно продолжать работу с данным
     сеансом.  
    
    Объект задания содержит полезные сведения о задании, но не содержит результ
    атов выполнения задания. После завершения задания используйте командлет Rec
    eive-Job для получения результатов задания. Дополнительные сведения о фонов
    ых заданиях см. в разделе about_Jobs.
    
    Чтобы выполнить фоновое задание на удаленном компьютере, используйте параме
    тр AsJob, имеющийся во многих командлетах, или командлет Invoke-Command для
     выполнения команды Start-Job на удаленном компьютере.  Дополнительные свед
    ения см. в разделе about_Remote_Jobs.
    
ПАРАМЕТРЫ
    -ArgumentList <Object[]>
        Указывает аргументы (значения параметров) скрипта, заданного в параметр
        е FilePath. 
        
        Поскольку все значения после имени параметра ArgumentList интерпретирую
        тся как значения этого параметра, он должен быть последним параметром к
        оманды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authentication <AuthenticationMechanism>
        Задает механизм, используемый при проверке подлинности учетных данных п
        ользователя.   Допустимые значения: Default, Basic, Credssp, Digest, Ke
        rberos, Negotiate и NegotiateWithImplicitCredential.  По умолчанию испо
        льзуется значение "Default".
        
        Проверка подлинности CredSSP доступна только в Windows Vista, Windows S
        erver 2008 и более поздних версиях Windows.
        
        Дополнительные сведения о значениях этого параметра см. в описании пере
        числения System.Management.Automation.Runspaces.AuthenticationMechanism
         в библиотеке MSDN.
        
        ВНИМАНИЕ Проверка подлинности CredSSP, при которой учетные данные поль
        зователя передаются на удаленный компьютер, предназначена для команд, к
        оторые должны пройти процедуру проверки подлинности на нескольких ресур
        сах, например при доступе к удаленному общему сетевому ресурсу. Такой м
        еханизм повышает угрозы безопасности удаленных операций. Если безопасно
        сть удаленного компьютера нарушена, передаваемые ему учетные данные мог
        ут использоваться для управления сетевым сеансом.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь".
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, возвращаемый командлетом 
        Get-Credential.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Текущий пользователь
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FilePath <string>
        Запускает заданный локальный скрипт в качестве фонового задания. Введит
        е путь и имя файла скрипта или передайте путь к скрипту командлету Star
        t-Job по конвейеру. Скрипт должен находиться на локальном компьютере ил
        и в каталоге, к которому можно получить доступ с локального компьютера.
         
        
        При использовании этого параметра Windows PowerShell преобразует указан
        ный файл скрипта в блок скрипта и выполняет этот блок в качестве фоново
        го задания.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InitializationScript <scriptblock>
        Задает команды, выполняемые перед запуском задания. Чтобы создать блок 
        скрипта, заключите команды в фигурные скобки ( { } ). 
        
        Используйте этот параметр для подготовки сеанса, в котором выполняется 
        задание. Например, его можно использовать для добавления в сеанс функци
        й, оснасток и модулей.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает входные данные команды. Укажите переменную, содержащую объекты, 
        либо введите команду или выражение, создающее их.
        
        В значении параметра ScriptBlock следует использовать автоматическую пе
        ременную $input для представления входных объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает понятное имя нового задания. Это имя можно использовать для иден
        тификации задания в других командлетах заданий, например Stop-Job. 
        
        По умолчанию понятное имя имеет формат Job#, где символ "#" является по
        рядковым номером, который увеличивается на единицу для каждого задания.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Job<номер>
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -RunAs32 [<SwitchParameter>]
        Запускает задание в 32-разрядном процессе. 
        
        Используйте этот параметр для принудительного запуска задания в 32-разр
        ядном процессе 64-разрядной операционной системы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ScriptBlock <scriptblock>
        Задает команды, которые требуется выполнить в фоновом задании. Чтобы со
        здать блок скрипта, заключите команды в фигурные скобки ( { } ). Это об
        язательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Путь к файлу можно передать командлету Start-Job по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.RemotingJob
        Командлет Start-Job возвращает объект, представляющий запущенное им зад
        ание.
    
    
ПРИМЕЧАНИЯ
    
    
        Для выполнения в фоновом режиме командлет Start-Job запускается в собст
        венном сеансе в рамках текущего сеанса. Если командлет Invoke-Command и
        спользуется для выполнения команды Start-Job в сеансе на удаленном комп
        ьютере, команда Start-Job выполняется в сеансе в рамках удаленного сеан
        са.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>start-job -scriptblock {get-process}
    
    C:\PS> start-job -command "get-process"
    
    Id    Name  State    HasMoreData  Location   Command
    ---   ----  -----    -----------  --------   -------
    1     Job1  Running  True         localhost  get-process
    
    
    Описание
    -----------
    Эта команда запускает фоновое задание, которое выполняет команду Get-Proces
    s. Команда возвращает объект задания, содержащий информацию о задании. Кома
    ндная строка возвращается немедленно, что позволяет работать с сеансом во в
    ремя выполнения задания в фоновом режиме.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$jobWRM = invoke-command -computerName (get-content servers.txt) -scr
    iptblock {get-service winrm} -jobname WinRM -throttlelimit 16 -AsJob
    
    
    Описание
    -----------
    Эта команда использует командлет Invoke-Command и его параметр AsJob для за
    пуска фонового задания, которое выполняет команду "get-service winrm" на не
    скольких компьютерах. Поскольку команда выполняется на сервере со значитель
    ным сетевым трафиком, в команде используется параметр ThrottleLimit командл
    ета Invoke-Command для ограничения количества одновременно выполняемых кома
    нд до 16. 
    
    В команде используется параметр ComputerName ?? ??????? ??????????, ?? ????
    ?? ????????? задание. Значением параметра ComputerName является команда Get
    -Content, которая получает текст из файла Servers.txt, содержащего имена ко
    мпьютеров в домене. 
    
    В команде используется параметр ScriptBlock для указания команды и параметр
     JobName для указания понятного имени задания.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$j = start-job -scriptblock {get-eventlog -log system} -credential do
    main01\user01
    
    C:\PS> $j | format-list -property *
    
    HasMoreData   : True
    StatusMessage :
    Location      : localhost
    Command       : get-eventlog -log system
    JobStateInfo  : Running
    Finished      : System.Threading.ManualResetEvent
    InstanceId    : 2d9d775f-63e0-4d48-b4bc-c05d0e177f34
    Id            : 1
    Name          : Job1
    ChildJobs     : {Job2}
    Output        : {}
    Error         : {}
    Progress      : {}
    Verbose       : {}
    Debug         : {}
    Warning       : {}
    StateChanged  :
    
    C:\PS> $j.JobStateInfo.state
    Completed
    
    C:\PS> $results = receive-job -job $j
    
    C:\PS> $results
    Index Time          Type        Source                EventID Message
    ----- ----          ----        ------                ------- -------
    84366 Feb 18 19:20  Information Service Control M...     7036 The descripti
    on...
    84365 Feb 18 19:16  Information Service Control M...     7036 The descripti
    on...
    84364 Feb 18 19:10  Information Service Control M...     7036 The descripti
    on...
    ...
    
    
    Описание
    -----------
    Эти команды управляют фоновым заданием, которое получает все события из сис
    темного журнала средства просмотра событий. Задание выполняется на локально
    м компьютере.
    
    Первая команда запускает задание с помощью командлета Start-Job. В ней испо
    льзуется параметр Credential для указания учетной записи пользователя, кото
    рый располагает разрешениями для выполнения этого задания на компьютере. За
    тем команда сохраняет объект задания, возвращенный командлетом Start-Job, в
     переменной $j.
    
    Далее можно продолжить работу, пока задание выполняется.
    
    Вторая команда передает объект задания, указанный в переменной $j, в команд
    лет Format-List с помощью оператора конвейера (|). Команда Format-List испо
    льзует параметр Property со значением * (все) для отображения всех свойств 
    объекта задания в списке.
    
    Третья команда отображает значение свойства JobStateInfo, которое содержит 
    состояние задания.
    
    Четвертая команда использует командлет Receive-Job для получения результато
    в задания. Результат сохраняется в переменной $results.
    
    Последняя команда отображает значение переменной $results.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>start-job -filepath c:\scripts\sample.ps1
    
    
    Описание
    -----------
    Эта команда запускает скрипт Sample.ps1 в качестве фонового задания.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>start-job -name WinRm -scriptblock {get-process winrm}
    
    
    Описание
    -----------
    Эта команда запускает фоновое задание, которое получает процесс WinRM на ло
    кальном компьютере. В команде используется параметр ScriptBlock для указани
    я команды, которая выполняется в фоновом задании. Для задания понятного име
    ни нового задания используется параметр Name.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>start-job -name GetMappingFiles -initializationScript {import-module 
    MapFunctions} -scriptblock {Get-Map -name * | set-content D:\Maps.tif} -run
    As32
    
    
    Описание
    -----------
    Эта команда запускает задание, собирающее большой объем данных, и сохраняет
     эти данные в файле TIF. Команда использует параметр InitializationScript д
    ля запуска блока скрипта, импортирующего требуемый модуль. Она также исполь
    зует параметр RunAs32 для запуска задания в 32-разрядном процессе, даже есл
    и на компьютере установлена 64-разрядная операционная система.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113405
    about_Jobs 
    about_Job_Details 
    about_Remote_Jobs 
    Get-Job 
    Receive-Job 
    Wait-Job 
    Stop-Job 
    Remove-Job 
    Invoke-Command 



Start-Process

ИМЯ
    Start-Process
    
ОПИСАНИЕ
    Запускает один или несколько процессов на локальном компьютере.
    
СИНТАКСИС
    Start-Process [-FilePath] <string> [[-ArgumentList] <string[]>] [-Credentia
    l <PSCredential>] [-LoadUserProfile] [-NoNewWindow] [-PassThru] [-RedirectS
    tandardError <string>] [-RedirectStandardInput <string>] [-RedirectStandard
    Output <string>] [-UseNewEnvironment] [-Wait] [-WorkingDirectory <string>] 
    [<CommonParameters>]
    
    Start-Process [-FilePath] <string> [[-ArgumentList] <string[]>] [-PassThru]
     [-Verb <string>] [-Wait] [-WindowStyle {Normal | Hidden | Minimized | Maxi
    mized}] [-WorkingDirectory <string>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Запускает один или несколько процессов на локальном компьютере.  Чтобы указ
    ать программу, выполняемую в процессе, введите исполняемый файл или файл ск
    рипта, либо файл, который может быть открыт с помощью имеющейся на компьюте
    ре программы. Если указанный файл не является исполняемым, командлет Start-
    Process запускает связанную с этим файлом программу, подобно командлету Inv
    oke-Item.
    
    Параметры командлета Start-Process можно использовать для задания параметро
    в запуска, таких как загрузка профиля пользователя, запуск процесса в новом
     окне или использование других учетных данных.
    
ПАРАМЕТРЫ
    -ArgumentList <string[]>
        Задает параметры или значения параметров, используемые при запуске проц
        есса.  Имя параметра ("Arguments") указывать необязательно.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. Введите имя пользователя, например "User01"
         или "Domain01\User01", или введите объект PSCredential, например объек
        т, возвращаемый командлетом Get-Credential. По умолчанию командлет испо
        льзует учетные данные текущего пользователя.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Текущий пользователь
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FilePath <string>
        Задает путь (необязательно) и имя файла программы, выполняемой в процес
        се. Введите имя исполняемого файла или документа, такого как TXT- или D
        OC-файл, связанного с имеющейся на компьютере программой. Это обязатель
        ный параметр.
        
        При указании только имени файла необходимо использовать параметр Workin
        gDirectory для задания пути.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LoadUserProfile [<SwitchParameter>]
        Загружает профиль пользователя Windows, хранящийся в разделе реестра HK
        EY_USERS для текущего пользователя. По умолчанию используется значение 
        FALSE.
        
        Этот параметр не влияет на профили Windows PowerShell. (См. раздел abou
        t_Profiles.)
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NoNewWindow [<SwitchParameter>]
        Предотвращает запуск процесса в новом окне. По умолчанию процесс выполн
        яется в новом окне.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект процесса для каждого запущенного командлетом процесса
        . По умолчанию этот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -RedirectStandardError <string>
        Отправляет все формируемые процессом ошибки в указанный файл. Введите п
        уть и имя файла. По умолчанию ошибки отображаются в консоли.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Ошибки отображаются в консоли
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -RedirectStandardInput <string>
        Считывает входные данные из указанного файла. Введите путь и имя входно
        го файла. По умолчанию процесс получает входные данные с клавиатуры.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                С клавиатуры
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -RedirectStandardOutput <string>
        Отправляет формируемые процессом выходные данные в указанный файл. Введ
        ите путь и имя файла. По умолчанию выходные данные отображаются в консо
        ли.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                FALSE
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseNewEnvironment [<SwitchParameter>]
        Указывает командлету использовать новые переменные среды, заданные для 
        процесса. По умолчанию запущенный процесс выполняется с переменными сре
        ды, заданными для компьютера и пользователя.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Verb <string>
        Задает команду, используемую при запуске процесса, такую как Edit, Open
         или Print. 
        
        С каждым типом файлов связан набор команд, которые можно использовать. 
        Чтобы определить команды, которые можно использовать в сочетании с данн
        ым процессом, используйте свойство Verbs объекта.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Wait [<SwitchParameter>]
        Ожидает завершения указанного процесса, прежде чем принимать следующий 
        ввод. Этот параметр отключает командую строку или удерживает окно до за
        вершения процесса.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WindowStyle <ProcessWindowStyle>
        Задает состояние окон, используемых для выполнения процесса. Допустимые
         значения: Normal, Hidden, Minimized и Maximized. По умолчанию использу
        ется значение "Normal".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Normal
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WorkingDirectory <string>
        Задает местоположение исполняемого файла, выполняемого в процессе, или 
        обрабатываемого документа.  По умолчанию используется текущий каталог.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Текущий каталог
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Данные невозможно передать командлету Start-Process по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Diagnostics.Process
        Если задан параметр PassThru, командлет Start-Process формирует объект 
        System.Diagnostics.Process. В противном случае этот командлет не возвра
        щает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Этот командлет реализован с использованием метода Start класса System.D
        iagnostics.Process. Дополнительные сведения об этом методе см. в раздел
        е "Метод Process.Start" библиотеки MSDN (Microsoft Developer Network) п
        о адресу  (на английском языке).
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>start-process sort.exe
    
    
    Описание
    -----------
    Эта команда запускает процесс, использующий файл Sort.exe в текущем каталог
    е. Все используемые значения, включая стиль окна, рабочий каталог и учетные
     данные, представляют собой значения по умолчанию.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>start-process myfile.txt -workingdirectory "C:\PS-Test" -verb Print
    
    
    Описание
    -----------
    Эта команда запускает процесс, который выводит на печать файл C:\PS-Test\My
    File.txt.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>start-process Sort.exe -RedirectStandardInput Testsort.txt -RedirectS
    tandardOutput Sorted.txt -RedirectStandardError SortError.txt -UseNewEnviro
    nment
    
    
    Описание
    -----------
    Эта команда запускает процесс, который сортирует элементы в файле Testsort.
    txt и возвращает отсортированные элементы в файле Sorted.txt. Все ошибки за
    писываются в файл SortError.txt. 
    
    Параметр UseNewEnvironment указывает, что этот процесс выполняется с собств
    енными переменными среды.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>start-process notepad -wait -windowstyle Maximized
    
    
    Описание
    -----------
    Эта команда запускает процесс Notepad. Окно разворачивается во весь экран и
     удерживается до завершения процесса.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135261
    Start-Service 
    Get-Process 
    Stop-Process 
    Wait-Process 
    Debug-Process 



Start-Service

ИМЯ
    Start-Service
    
ОПИСАНИЕ
    Запускает остановленные службы.
    
СИНТАКСИС
    Start-Service [-Name] <string[]> [-Exclude <string[]>] [-Include <string[]>
    ] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Start-Service -DisplayName <string[]> [-Exclude <string[]>] [-Include <stri
    ng[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Start-Service [-InputObject <ServiceController[]>] [-Exclude <string[]>] [-
    Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Start-Service отсылает сообщение о запуске диспетчеру служб Windo
    ws для каждой указанной службы. Если служба уже запущена, сообщение игнорир
    уется (ошибка при этом не возникает). Службы можно задавать с помощью их им
    ен или отображаемых имен. Кроме того, можно с помощью параметра InputObject
     передавать объекты, представляющие запускаемые службы.
    
ПАРАМЕТРЫ
    -DisplayName <string[]>
        Задает отображаемые имена запускаемых служб. Подстановочные знаки разре
        шены.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные службы. Значение данного параметра определяет значе
        ние параметра Name. Введите часть имени или шаблон, например "s*". Подс
        тановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Запускает только указанные службы. Значение данного параметра определяе
        т значение параметра Name. Введите часть имени или шаблон, например "s*
        ". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <ServiceController[]>
        Задает объекты ServiceController, представляющие запускаемые службы. Вв
        едите переменную, содержащую объекты, либо команду или выражение для по
        лучения объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена запускаемых служб. 
        
        Имя параметра указывать необязательно. Можно использовать "-Name" или е
        го псевдоним ("-ServiceName") либо опустить имя параметра.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий службу. По умолчанию этот командлет н
        е формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.ServiceProcess.ServiceController, System.String
        Можно передавать объекты, представляющие службы, или строки с именами с
        лужб командлету Start-Service по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.ServiceProcess.ServiceController
        Если задан параметр PassThru, командлет Start-Service формирует объект 
        System.ServiceProcess.ServiceController, представляющий службу. В проти
        вном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Start-Service также можно вызывать с помощью встроенного псев
        донима "sasv". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлет Start-Service может использоваться для управления службами, т
        олько если у текущего пользователя есть на это разрешение. Некорректная
         работа команды может быть обусловлена отсутствием требуемых разрешений
        .
        
        Чтобы извлечь имена служб и отображаемые имена служб на текущем компьют
        ере, введите команду "get-service". Имена служб содержатся в столбце Na
        me, а отображаемые имена — в столбце DisplayName.
        
        Можно запускать только службы с типом запуска "Manual" или "Automatic".
         Нельзя запускать службы с типом запуска "Disabled". Если команда Start
        -Service завершается ошибкой с сообщением "Не удается запустить службу 
        <имя службы> на компьютере", с помощью команды Get-WmiObject получите с
        ведения о типе запуска данной службы и затем, если необходимо, измените
         его с помощью команды Set-Service.
        
        Некоторые службы, такие как "Performance Logs and Alerts" (SysmonLog), 
        останавливаются автоматически, если бездействуют. Когда Windows PowerSh
        ell запускает службу, которая практически сразу останавливается, отобра
        жается сообщение: "Ошибка при запуске службы "<отображаемое_имя>".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>start-service -name eventlog
    
    
    Описание
    -----------
    Эта команда запускает на локальном компьютере службу EventLog. Для задания 
    службы с помощью ее имени используется параметр Name.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>start-service -displayname *remote* -whatif
    
    
    Описание
    -----------
    Эта команда выводит на экран сведения о том, что произойдет при запуске слу
    жб, отображаемые имена которых содержат строку "remote". Параметр DisplayNa
    me используется, чтобы указать службы по их отображаемым именам вместо имен
     служб. Параметр WhatIf используется, чтобы узнать, что произойдет при выпо
    лнении команды вместо ее фактического выполнения.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$s = get-service wmi
    
    C:\PS>start-service -InputObject $s -passthru | format-list >> services.txt
    
    
    Описание
    -----------
    Приведенные команды запускают на компьютере службу инструментария управлени
    я Windows (WMI), а также вносят соответствующую запись в файл services.txt.
     Первая команда с помощью командлета Get-Service получает объект, представл
    яющий службу WMI, и сохраняет его в переменной $s. 
    
    Вторая команда с помощью командлета Start-Service запускает службу WMI. Слу
    жба определяется с помощью параметра InputObject, через который переменная 
    $s, содержащая объект службы WMI, передается командлету Start-Service. Зате
    м с помощью параметра PassThru создается объект, представляющий запуск служ
    бы. Командлет Start-Service формирует выходные данные только при указании э
    того параметра.
    
    Оператор конвейера (|) передает созданный командлетом Start-Service объект 
    командлету Format-List, который выводит сведения об объекте в виде списка с
    войств. Оператор перенаправления с добавлением в конец файла     (>>) перен
    аправляет выходные данные в файл services.txt и записывает их в конец этого
     файла.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS># start-service
    
    
    Описание
    -----------
    Приведенная ниже последовательность команд показывает, как запустить службу
    , у которой тип запуска имеет значение "Disabled". Выполнение первой команд
    ы, в которой для запуска службы Telnet (tlntsvr) используется командлет Sta
    rt-Service, завершается ошибкой.
    
    C:\PS>start-service tlntsvr
    
    Start-Service : Не удается запустить службу "Telnet (TlntSvr)" из-за следую
    щей ошибки: Cannot start service TlntSvr on computer '.'.
    В строке:1 знак:14
    + start-service  < tlntsvr
    
    Во второй команде используется командлет Get-WmiObject для получения службы
     Tlntsvr. Эта команда извлекает объект с типом запуска в поле "StartMode". 
    Из результатов видно, что тип запуска службы Tlntsvr — "Disabled".
    
    C:\PS> get-wmiobject win32_service | where-object {$_.Name -eq "tlntsvr"}
    
    ExitCode  : 0
    Name      : TlntSvr
    ProcessId : 0
    StartMode : Disabled
    State     : Stopped
    Status    : OK
    
    Следующая команда с помощью командлета Set-Service изменяет тип запуска слу
    жбы Tlntsvr на "Manual".
    
    C:\PS> set-service tlntsvr -startuptype manual
    
    Теперь введем команду Start-Service повторно. В данном случае команда выпол
    няется успешно.
    
    C:\PS> start-service tlntsvr
    
    Чтобы убедиться, что команда успешно выполнена, воспользуйтесь командой Get
    -Service.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113406
    Get-Service 
    Suspend-Service 
    Stop-Service 
    Restart-Service 
    Resume-Service 
    Set-Service 
    New-Service 



Start-Sleep

ИМЯ
    Start-Sleep
    
ОПИСАНИЕ
    Приостанавливает выполнение скрипта или сеанса на указанный период времени.
    
СИНТАКСИС
    Start-Sleep -Milliseconds <int> [<CommonParameters>]
    
    Start-Sleep [-Seconds] <int> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Start-Sleep приостанавливает выполнение скрипта или сеанса на ука
    занный период времени. Его можно использовать для решения различных задач, 
    например чтобы дождаться завершения операции или приостановить работу перед
     повтором операции.
    
ПАРАМЕТРЫ
    -Milliseconds <int>
        Задает время неактивного состояния ресурса в миллисекундах. Этот параме
        тр может быть сокращен до "-m".
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Seconds <int>
        Указывает время неактивного состояния ресурса в секундах. Имя параметра
         ("Seconds") можно пропустить или сократить до "-s".
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Int32
        Время в секундах можно передать командлету Start-Sleep по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Start-Sleep также можно вызывать с помощью встроенного псевдо
        нима "sleep". Дополнительные сведения см. в разделе About_Aliases.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Start-Sleep -s 15
    
    
    Описание
    -----------
    Эта команда приостанавливает все команды в сеансе на 15 секунд.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>Start-Sleep -m 500
    
    
    Описание
    -----------
    Эта команда приостанавливает все команды в сеансе на 1/2 секунды (500 милли
    секунд).
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113407



Start-Transaction

ИМЯ
    Start-Transaction
    
ОПИСАНИЕ
    Запускает транзакцию.
    
СИНТАКСИС
    Start-Transaction [-Independent] [-RollbackPreference {Error | TerminatingE
    rror | Never}] [-Timeout <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Start-Transaction запускает транзакцию, т. е. последовательность 
    команд, которыми можно управлять как единым блоком. Транзакцию можно заверш
    ить ("зафиксировать") или же полностью отменить ("откатить"), тем самым при
    ведя все измененные транзакцией данные в их исходное состояние. Поскольку к
    оманды в транзакции рассматриваются как единый блок, либо все команды фикси
    руются, либо все команды откатываются. 
    
    По умолчанию, если какая-либо из команд в транзакции выдает ошибку, транзак
    ция автоматически откатывается. Это поведение можно изменить с помощью пара
    метра RollbackPreference.
    
    Используемые в транзакции командлеты должны предусматривать поддержку транз
    акций. Командлеты, поддерживающие транзакции, имеют параметр UseTransaction
    . Для выполнения транзакций в поставщике последний должен поддерживать тран
    закции. Поставщик Windows PowerShell Registry в Windows Vista и более поздн
    их версиях Windows поддерживает транзакции. Также можно использовать класс 
    Microsoft.PowerShell.Commands.Management.TransactedString для включения в т
    ранзакции выражений в любой версии Windows, поддерживающей Windows PowerShe
    ll. Другие поставщики Windows PowerShell также могут поддерживать транзакци
    и. 
    
    Одновременно может быть активна только одна транзакция. При запуске новой н
    езависимой транзакции во время выполнения другой транзакции (т. е. пока дру
    гая транзакция не завершена или не отменена) новая транзакция становится ак
    тивной транзакцией, и ее необходимо зафиксировать или откатить, прежде чем 
    можно будет внести какие-либо изменения в первоначальную транзакцию. 
    
    Командлет Start-Transaction входит в набор командлетов, поддерживающих обра
    ботку транзакций в Windows PowerShell. Дополнительные сведения см. в раздел
    е about_Transactions.
    
ПАРАМЕТРЫ
    -Independent [<SwitchParameter>]
        Запускает транзакцию, независимую от какой-либо выполняющейся транзакци
        и. По умолчанию при использовании командлета Start-Transaction во время
         выполнения другой транзакции в выполняющуюся транзакцию добавляется но
        вый подписчик. Этот параметр действует только при наличии в сеансе уже 
        выполняющейся транзакции. 
        
        По умолчанию при использовании командлета Start-Transaction во время вы
        полнения другой транзакции существующий объект транзакции используется 
        повторно и количество подписчиков увеличивается. Это во многом похоже н
        а присоединение к первоначальной транзакции. Команда Undo-Transaction о
        ткатывает всю транзакцию. Для завершения транзакции необходимо ввести п
        о команде Complete-Transaction для каждого подписчика. Поскольку больши
        нство одновременно выполняющихся транзакций связаны между собой, поведе
        ние по умолчанию подходит для большинства случаев.
        
        При использовании параметра Independent создается новая транзакция, кот
        орая может быть завершена или отменена без затрагивания существующей тр
        анзакции. Однако, поскольку одновременно может быть активна только одна
         транзакция, необходимо завершить или откатить новую транзакцию, прежде
         чем продолжить работу над первоначальной транзакцией.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Повторно использует объект первона
        чальной транзакции.
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -RollbackPreference <RollbackSeverity>
        Задает условия, при которых транзакция автоматически откатывается. По у
        молчанию используется значение "Error".
        
        Допустимые значения:
        
        -- Error:  транзакция автоматически откатывается, если происходит преры
        вающая или непрерывающая ошибка. Значение "Error" используется по умолч
        анию.
        -- Terminating error: транзакция автоматически откатывается, если проис
        ходит прерывающая ошибка.
        -- Never: транзакция не откатывается автоматически ни при каких условия
        х.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Error
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Timeout <int>
        Задает максимальное время активности транзакции в минутах. По истечении
         этого времени транзакция автоматически откатывается. 
        
        По умолчанию для транзакций, запущенных из командной строки, время ожид
        ания не задано. При запуске транзакций с помощью скрипта время ожидания
         по умолчанию составляет 30 минут.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Время ожидания не задано (бесконеч
        но)
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>cd hkcu:\software
    
    PS HKCU:\software> start-transaction
    
    PS HKCU:\software> new-item MyCompany -UseTransaction
    
    PS HKCU:\software> new-itemproperty MyCompany -name MyKey -value 123 -UseTr
    ansaction
    
    PS HKCU:\software> undo-transaction
    
    
    Описание
    -----------
    Приведенные команды запускают и затем откатывают транзакцию. Поскольку тран
    закция откатывается, никакие изменения в реестр не вносятся.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>cd hkcu:\software
    
    PS HKCU:\software> start-transaction
    
    PS HKCU:\software> new-item MyCompany -UseTransaction
    
    PS HKCU:\software> new-itemproperty MyCompany -name MyKey -value 123 -UseTr
    ansaction
    
    PS HKCU:\software> complete-transaction
    
    
    Описание
    -----------
    Приведенные команды запускают и затем завершают транзакцию. До применения к
    оманды Complete-Transaction никакие изменения в реестр не вносятся.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>cd HKCU:\software
    PS HKCU:\software> start-transaction
    PS HKCU:\software> new-item -path NoPath -name MyCompany -UseTransaction
    PS HKCU:\software> new-item -path . -name MyCompany -UseTransaction
    
    PS HKCU:\software> start-transaction -RollbackPreference never
    PS HKCU:\software> new-item -path NoPath -name MyCompany -UseTransaction
    PS HKCU:\software> new-item -path . -name MyCompany -UseTransaction
    
    # Start-Transaction (-rollbackpreference error)
    
    PS HKCU:\software> start-transaction
    PS HKCU:\software> new-item -path NoPath -Name MyCompany -UseTransaction
    New-Item : The registry key at the specified path does not exist.
    At line:1 char:9
    + new-item <  -path NoPath -Name MyCompany -UseTransaction
    
    PS HKCU:\software> new-item -path . -name MyCompany -UseTransaction
    New-Item : Cannot use transaction. The transaction has been rolled back or 
    has timed out.
    At line:1 char:9
    + new-item <  -path . -name MyCompany -UseTransaction
    
    
    
    # Start-Transaction (-rollbackpreference never)
    PS HKCU:\software> start-transaction -RollbackPreference never
    PS HKCU:\software> new-item -path NoPath -name MyCompany -UseTransaction
    New-Item : The registry key at the specified path does not exist.
    At line:1 char:9
    + new-item <  -path NoPath -name MyCompany -UseTransaction
    
    
    PS HKCU:\software> new-item -path . -name MyCompany -UseTransaction
      Hive: HKEY_CURRENT_USER\Software
    
    SKC  VC Name                           Property
    ---  -- ----                           --------
      0   0 MyCompany                      {}
    
    PS HKCU:\Software> complete-transaction
    # Succeeds
    
    
    Описание
    -----------
    Этот пример демонстрирует эффект от изменения значения параметра RollbackPr
    eference.
    
    В первом наборе команд параметр RollbackPreference в команде Start-Transact
    ion не задан. В результате используется значение по умолчанию ("Error"). Пр
    и возникновении ошибки в одной из команд транзакции (указанный путь не суще
    ствует) транзакция автоматически откатывается.
    
    Во втором наборе команд в команде Start-Transaction используется параметр R
    ollbackPreference со значением "Never". В результате при возникновении ошиб
    ки в одной из команд транзакции транзакция остается активной и может быть у
    спешно завершена.
    
    Поскольку большинство транзакций должны выполняться без ошибок, как правило
    , используется предусмотренное по умолчанию значение параметра RollbackPref
    erence.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>cd HKCU:\software
    
    PS HKCU:\software> start-transaction
    PS HKCU:\software> new-item MyCompany -UseTransaction
    
    PS HKCU:\software> start-transaction
    PS HKCU:\software> get-transaction
    PS HKCU:\software> new-item MyCompany2 -UseTransaction
    
    PS HKCU:\software> complete-transaction
    PS HKCU:\software> complete-transaction
    
    PS HKCU:\Software> Get-Transaction
    
    RollbackPreference   SubscriberCount   Status
    ------------------   ---------------   ------
    Error                2                 Active
    
    
    Описание
    -----------
    В этом примере показан результат использования командлета Start-Transaction
     при наличии выполняющейся транзакции. Это во многом похоже на присоединени
    е к выполняющейся транзакции.
    
    Хотя показанная команда является упрощенной, подобная ситуация обычно имеет
     место, когда транзакция предполагает выполнение скрипта, включающего завер
    шенную транзакцию.
    
    Первая команда Start-Transaction запускает транзакцию. Первая команда New-I
    tem является частью транзакции. 
    
    Вторая команда Start-Transaction добавляет в транзакцию нового подписчика. 
    Команда Get-Transaction теперь возвращает транзакцию с количеством подписчи
    ков, равным 2. Вторая команда New-Item является частью этой же транзакции.
    
    Изменения в реестр не вносятся до тех пор, пока вся транзакция не будет зав
    ершена. Для завершения транзакции необходимо ввести две команды Complete-Tr
    ansaction — по одной для каждого подписчика. Если откатить транзакцию на ка
    ком-либо этапе, произойдет откат всей транзакции для обоих подписчиков.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>cd HKCU:\software
    PS HKCU:\software> start-transaction
    PS HKCU:\software> new-item MyCompany -UseTransaction
    
    PS HKCU:\software> start-transaction -independent
    PS HKCU:\software> get-transaction
    PS HKCU:\software> undo-transaction
    
    PS HKCU:\software> new-itemproperty -path MyCompany -name MyKey -value 123 
    -UseTransaction
    PS HKCU:\software> complete-transaction
    PS HKCU:\software> dir my*
    
    PS HKCU:\Software> get-transaction
    
    RollbackPreference   SubscriberCount   Status
    ------------------   ---------------   ------
    Error                1                 Active
    
    PS HKCU:\software> undo-transaction
    PS HKCU:\software> new-itemproperty -path MyCompany -name MyKey -value 123 
    -UseTransaction
    
    MyKey
    -----
    123
    
    PS HKCU:\software> complete-transaction
    PS HKCU:\software> dir my*
    
       Hive: HKEY_CURRENT_USER\Software
    
    SKC  VC Name                           Property
    ---  -- ----                           --------
      0   1 MyCompany                      {MyKey}
    
    
    Описание
    -----------
    В этом примере показано, что происходит при использовании параметра Indepen
    dent командлета Start-Transaction для запуска транзакции во время выполнени
    я другой транзакции. В данном случае новая транзакция откатывается, не затр
    агивая первоначальную транзакцию.
    
    Хотя транзакции логически независимы, в связи с тем, что одновременно может
     быть активна только одна транзакция, необходимо откатить или зафиксировать
     более новую транзакцию, прежде чем продолжить работу над первоначальной тр
    анзакцией.
    
    Первый набор команд запускает транзакцию. Команда New-Item является частью 
    первой транзакции.
    
    Во втором наборе команд в команде Start-Transaction используется параметр I
    ndependent. Следующая за ней команда Get-Transaction выводит объект транзак
    ции для активной транзакции (более новой). Количество подписчиков равно 1, 
    что показывает, что транзакции не связаны между собой. 
    
    При выполнении отката активной транзакции с помощью команды Undo-Transactio
    n первоначальная транзакция снова становится активной.
    
    Команда New-ItemProperty, которая является частью первоначальной транзакции
    , выполняется без ошибки, и первоначальную транзакцию можно завершить с пом
    ощью команды Complete-Transaction. В результате в реестр вносится изменение
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>cd hkcu:\software
    
    PS HKCU:\software> start-transaction
    PS HKCU:\software> new-item MyCompany1 -UseTransaction
    PS HKCU:\software> new-item MyCompany2 
    PS HKCU:\software> new-item MyCompany3 -UseTransaction
    
    PS HKCU:\software> dir my*
    
    PS HKCU:\software> complete-transaction
    PS HKCU:\software> dir my*
    
    PS HKCU:\Software> dir my*
    
       Hive: HKEY_CURRENT_USER\Software
    
    SKC  VC Name                           Property
    ---  -- ----                           --------
      0   0 MyCompany2                     {}
    
    PS HKCU:\Software> complete-transaction
    
    PS HKCU:\Software> dir my*
    
       Hive: HKEY_CURRENT_USER\Software
    
    SKC  VC Name                           Property
    ---  -- ----                           --------
      0   0 MyCompany1                     {}
      0   0 MyCompany2                     {}
      0   0 MyCompany3                     {}
    
    
    Описание
    -----------
    Этот пример показывает, что переданные во время выполнения транзакции коман
    ды могут включаться в транзакцию или не включаться. Только команды с параме
    тром UseTransaction являются частью транзакции.
    
    В первой и третьей командах New-Item используется параметр UseTransaction. 
    Эти команды являются частью транзакции. Поскольку во второй команде New-Ite
    m параметр UseTransaction не используется, она не является частью транзакци
    и.
    
    Первая команда "dir" показывает результат. Вторая команда New-Item завершае
    тся немедленно, однако первая и третья команды не вступают в силу New-Item 
    до фиксации транзакции.
    
    Команда Complete-Transaction фиксирует транзакцию. В результате вторая кома
    нда "dir" показывает, что все новые элементы добавлены в реестр.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>start-transaction -timeout 2
    
    # Wait two minutes...
    
    C:\PS> get-transaction
    
    C:\PS> new-item HKCU:\Software\MyCompany -UseTransaction
    
    C:\PS> start-transaction -timeout 2
    
    # Wait two minutes...
    
    C:\PS>> get-transaction
    
    RollbackPreference   SubscriberCount   Status
    ------------------   ---------------   -----------
    Error                1                 RolledBack 
    
    
    C:\PS> new-item HKCU:\Software\MyCompany -UseTransaction
    New-Item : Cannot use transaction. The transaction has been rolled back or 
    has timed out.
    At line:1 char:9
    + new-item <  MyCompany -UseTransaction
    
    
    Описание
    -----------
    Эта команда с помощью параметра Timeout командлета Start-Transaction запуск
    ает транзакцию, которая должна быть завершена в течение двух минут. Если по
     истечении этого времени транзакция не будет завершена, она автоматически о
    ткатывается.
    
    По истечении времени ожидания уведомление не выводится, однако свойство Sta
    tus объекта транзакции устанавливается равным RolledBack и команды, в котор
    ых используется параметр UseTransaction, завершаются ошибкой.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135262
    about_Transactions 
    Get-Transaction 
    Complete-Transaction 
    Undo-Transaction 
    Use-Transaction 



Start-Transcript

ИМЯ
    Start-Transcript
    
ОПИСАНИЕ
    Создает запись всего сеанса Windows PowerShell или его части в текстовом фа
    йле.
    
СИНТАКСИС
    Start-Transcript [[-Path] <string>] [-Append] [-Force] [-NoClobber] [-Confi
    rm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Start-Transcript создает запись всего сеанса Windows PowerShell и
    ли его части в текстовом файле. Запись включает все команды, вводимые польз
    ователем, и все выходные данные, которые отображаются на консоли.
    
ПАРАМЕТРЫ
    -Append [<SwitchParameter>]
        Добавляет новый протокол в конец существующего файла. Используйте парам
        етр Path, чтобы указать файл.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету добавлять записи в существующий файл, доступный то
        лько для чтения. При использовании с файлом, доступным только для чтени
        я, командлет изменяет разрешения доступа к файлу на "чтение-запись". Да
        же при использовании параметра Force командлет не может переопределить 
        ограничения безопасности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NoClobber [<SwitchParameter>]
        Не будет перезаписывать существующий файл (то есть заменять его содержи
        мое). По умолчанию если по указанному пути существует файл протокола, к
        омандлет Start-Transcript перезаписывает файл без предупреждения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Path <string>
        Задает местонахождение файла протокола. Введите путь для TXT-файла. Под
        становочные знаки запрещены.
        
        Если путь не указан, командлет Start-Transcript использует путь в значе
        нии глобальной переменной $Transcript. Если эта переменная не создана, 
        командлет Start-Transcript сохраняет протоколы в каталоге "$Home\Мои до
        кументы" в файлах "\PowerShell_transcript.<метка-времени>.txt".
        
        Если какой-нибудь из каталогов в пути не существует, то выполнение кома
        нды завершается ошибкой.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать объекты этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String
        Start-Transcript возвращает строку, содержащую подтверждающее сообщение
         и путь к выходному файлу.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы остановить запись, используйте командлет Stop-Transcript.
        
        Чтобы записать весь сеанс, добавьте команду Start-Transcript в свой про
        филь. Дополнительные сведения см. в разделе about_Profiles.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>start-transcript
    
    
    Описание
    -----------
    Эта команда запускает запись в файл с местоположением по умолчанию.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>start-transcript -path c:\transcripts\transcript0.txt -noclobber
    
    
    Описание
    -----------
    Эта команда запускает запись в файл Transcript0.txt в каталоге "C:\transcri
    pts". Параметр NoClobber запрещает перезаписывать любые существующие файлы.
     Если файл Transcript0.txt уже существует, то выполнение команды завершаетс
    я неудачей.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113408
    Stop-Transcript 



Stop-Computer

ИМЯ
    Stop-Computer
    
ОПИСАНИЕ
    Останавливает локальный и удаленные компьютеры (завершает работу компьютеро
    в).
    
СИНТАКСИС
    Stop-Computer [[-ComputerName] <string[]>] [[-Credential] <PSCredential>] [
    -AsJob] [-Authentication {Default | None | Connect | Call | Packet | Packet
    Integrity | PacketPrivacy | Unchanged}] [-Force] [-Impersonation {Default |
     Anonymous | Identify | Impersonate | Delegate}] [-ThrottleLimit <int>] [-C
    onfirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Stop-Computer удаленно завершает работу компьютеров. Его также мо
    жно использовать для завершения работы локального компьютера. 
    
    С помощью параметров командлета Stop-Computer можно выполнять операции заве
    ршения работы в качестве фонового задания, задавать уровни проверки подлинн
    ости, использовать другие учетные данные, ограничивать количество одновреме
    нных соединений, создаваемых для выполнения команды, а также принудительно 
    инициировать немедленное завершение работы компьютера.
    
    Этому командлету не требуется удаленное взаимодействие Windows PowerShell, 
    за исключением случаев с использованием параметра AsJob.
    
ПАРАМЕТРЫ
    -AsJob [<SwitchParameter>]
        Запускает команду в качестве фонового задания.
        
        Примечание. Чтобы использовать этот параметр, локальный и удаленный ком
        пьютер должны быть настроены на удаленное взаимодействие, и запуск Wind
        ows PowerShell под управлением Windows Vista и более поздних версий Win
        dows должен выполняться командой "Запуск от имени администратора". Допо
        лнительные сведения см. в разделе about_Remote_Requirements.
        
        При использовании параметра AsJob команда немедленно возвращает объект,
         представляющий фоновое задание. Можно продолжить работу в рамках данно
        го сеанса, пока задание завершается. Задание создается на локальном ком
        пьютере, и результаты с удаленных компьютеров автоматически возвращаютс
        я на локальный компьютер. Чтобы управлять заданием, используйте командл
        еты Job. Чтобы получить результаты задания, используйте командлет Recei
        ve-Job.
        
        Дополнительные сведения о фоновых заданиях Windows PowerShell см. в раз
        делах about_Jobs и about_Remote_Jobs.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authentication <AuthenticationLevel>
        Задает уровень проверки подлинности, используемый для WMI-соединения. (
        Командлет Stop-Computer использует WMI.) По умолчанию используется знач
        ение "Packet".
        
        Допустимые значения:
        
        Unchanged:       уровень проверки подлинности такой же, как и у предыду
        щей команды.
        Default:         проверка подлинности Windows.
        None:            проверка подлинности COM не используется.
        Connect:         проверка подлинности COM уровня соединения.
        Call:            проверка подлинности COM уровня вызова.
        Packet:          проверка подлинности COM уровня пакета.
        PacketIntegrity: проверка подлинности COM уровня целостности пакета.
        PacketPrivacy:   проверка подлинности COM уровня конфиденциальности пак
        ета.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                4
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string[]>
        Останавливает указанные компьютеры. По умолчанию используется значение 
        "Локальный компьютер". 
                          
        Введите имя NETBIOS, IP-адрес или полное доменное имя одного или нескол
        ьких компьютеров в виде списка разделенных запятыми значений. Чтобы ука
        зать локальный компьютер, введите имя компьютера или "localhost".
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName можно использовать, даже если компьютер не наст
        роен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                .
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь".
        
        Введите имя пользователя, например "User01" или "Domain01\User01", или 
        введите объект PSCredential, например объект, возвращаемый командлетом 
        Get-Credential.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                Текущий пользователь
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Принудительно инициирует немедленное завершение работы компьютеров.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Impersonation <ImpersonationLevel>
        Задает уровень олицетворения при вызове WMI. (Командлет Stop-Computer и
        спользует WMI.) По умолчанию используется значение "Impersonate".
        
        Допустимые значения:
        
        Default:      олицетворение по умолчанию.
        Anonymous:    скрывает идентификатор вызывающего.
        Identify:     позволяет объектам запрашивать учетные данные вызывающего
        .
        Impersonate:  позволяет объектам использовать учетные данные вызывающег
        о.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Impersonate
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ThrottleLimit <int>
        Задает максимальное количество одновременных соединений, которые могут 
        быть установлены для выполнения данной команды. Если этот параметр не з
        адан или для него введено значение 0, используется значение по умолчани
        ю 32.
        
        Ограничение скорости относится только к текущей команде, но не к сеансу
         или компьютеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                32
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    None или System.Management.Automation.RemotingJob
        При использовании параметра AsJob командлет возвращает объект задания (
        System.Management.Automation.RemotingJob). В противном случае командлет
         не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        В этом командлете используется метод Win32Shutdown класса WMI Win32_Ope
        ratingSystem.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>stop-computer
    
    
    Описание
    -----------
    Эта команда завершает работу локального компьютера.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>stop-computer -computername Server01, Server02, localhost
    
    
    Описание
    -----------
    Эта команда останавливает два удаленных компьютера: Server01 и Server02, а 
    также локальный компьютер, указанный как "localhost".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$j = stop-computer -computername Server01, Server02 -asjob 
    
    C:\PS> $results = $j | receive-job
    
    C:\PS> $results
    
    
    Описание
    -----------
    В приведенных командах команда Stop-Computer выполняется в качестве фоновог
    о задания на двух удаленных компьютерах, после чего выводятся результаты.
    
    В первой команде используется параметр AsJob для выполнения команды в качес
    тве фонового задания. Полученный объект задания сохраняется в переменной $j
    .
    
    Во второй команде объект задания, сохраненный в переменной $j, с помощью оп
    ератора конвейера передается командлету Receive-Job, который получает резул
    ьтаты выполнения задания. Результаты сохраняются в переменной $results. 
    
    Третья команда отображает результаты, сохраненные в переменной $results.
    
    Поскольку при использовании параметра AsJob задание создается на локальном 
    компьютере и результаты автоматически возвращаются на локальный компьютер, 
    команду Receive-Job можно выполнять как локальную команду.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>stop-computer -comp Server01 -impersonation anonymous -authentication
     PacketIntegrity
    
    
    Описание
    -----------
    Эта команда перезагружает удаленный компьютер Server01. В команде использую
    тся настроенные параметры олицетворения и проверки подлинности.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$s = get-content domain01.txt
    
    C:\PS> $c = get-credential domain01\admin01
    
    C:\PS> stop-computer -computername $s -force -throttlelimit 10 -credential 
    $c
    
    
    Описание
    -----------
    Эти команды принудительно инициируют немедленное завершение работы всех ком
    пьютеров в домене Domain01. 
    
    Первая команда получает список компьютеров в домене и сохраняет его в перем
    енной $s.
    
    Вторая команда получает учетные данные администратора домена и сохраняет их
     в переменной $c.
    
    Третья команда завершает работу компьютеров. В ней используется параметр Co
    mputerName для передачи списка компьютеров в переменной $s, параметр Force 
    для принудительной инициации немедленного завершения работы, и параметр Cre
    dential для передачи учетных данных, сохраненных в переменной $c. Кроме тог
    о, с помощью параметра ThrottleLimit количество устанавливаемых командой од
    новременных соединений ограничивается десятью.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135263
    Add-Computer 
    Checkpoint-Computer 
    Remove-Computer 
    Restart-Computer 
    Restore-Computer 
    Test-Connection 



Stop-Job

ИМЯ
    Stop-Job
    
ОПИСАНИЕ
    Останавливает фоновое задание Windows PowerShell.
    
СИНТАКСИС
    Stop-Job [[-InstanceId] <Guid[]>] [-PassThru] [-Confirm] [-WhatIf] [<Common
    Parameters>]
    
    Stop-Job [-Job] <Job[]> [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters
    >]
    
    Stop-Job [[-Name] <string[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonPara
    meters>]
    
    Stop-Job [-Id] <Int32[]> [-PassThru] [-Confirm] [-WhatIf] [<CommonParameter
    s>]
    
    Stop-Job [-State {NotStarted | Running | Completed | Failed | Stopped | Blo
    cked}] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Stop-Job останавливает выполняющиеся фоновые задания Windows Powe
    rShell. Этот командлет можно использовать для остановки всех или выбранных 
    заданий по имени, идентификатору, идентификатору экземпляра или состоянию, 
    либо передав объект задания в командлет Stop-Job.
    
    Командлет Stop-Job можно использовать для остановки заданий, запущенных с и
    спользованием командлета Start-Job или параметра AsJob командлета Invoke-Co
    mmand. Когда пользователь останавливает фоновое задание, Windows PowerShell
     завершает все задачи, находящиеся в очереди задания, а затем завершает зад
    ание. После передачи этой команды новые задачи в очередь больше не добавляю
    тся. 
    
    Этот командлет не удаляет фоновые задания. Для удаления задания следует исп
    ользовать командлет Remove-Job.
    
ПАРАМЕТРЫ
    -Id <Int32[]>
        Останавливает задания с указанными идентификаторами. По умолчанию испол
        ьзуется значение "Все задания в пределах текущего сеанса".
        
        ID — это целое значение, которое однозначно определяет задание в предел
        ах текущего сеанса. Это значение проще запомнить и ввести, чем Instance
        Id, но оно уникально только в рамках текущего сеанса. Можно ввести один
         или несколько идентификаторов (разделенных запятыми). Чтобы найти знач
        ение идентификатора задания, введите "Get-Job" без параметров.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -InstanceId <Guid[]>
        Останавливает задания с указанными идентификаторами экземпляров. По умо
        лчанию возвращаются все задания.
        
        Идентификатор экземпляра — это GUID, который однозначно определяет зада
        ние на компьютере. Чтобы найти значение идентификатора экземпляра задан
        ия, воспользуйтесь командлетом Get-Job.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Job <Job[]>
        Указывает задания, которые требуется остановить. Укажите переменную, со
        держащую задания, либо введите команду, получающую их. Для передачи зад
        аний в командлет Stop-Job можно также использовать оператор конвейера. 
        По умолчанию командлет Stop-Job удаляет все задания, запущенные в текущ
        ем сеансе.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Останавливает задания с указанными понятными именами. Введите имена зад
        аний в виде списка разделенных запятыми значений или используйте подста
        новочный знак (*) для ввода шаблона имени задания. По умолчанию командл
        ет Stop-Job останавливает все задания, созданные в текущем сеансе.
        
        Поскольку понятное имя может быть не уникальным, следует использовать п
        араметры WhatIf или Confirm для остановки заданий по имени.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  true
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий новое фоновое задание. По умолчанию э
        тот командлет не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -State <JobState>
        Останавливает задания с указанным состоянием. Допустимые значения: "Not
        Started", "Running", "Completed", "Stopped", "Failed" и "Blocked".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.RemotingJob
        Объект задания можно передать командлету Stop-Job по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    None или System.Management.Automation.RemotingJob
        Если задан параметр PassThru, командлет Stop-Job возвращает объект зада
        ния. В противном случае этот командлет не формирует никаких выходных да
        нных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$s = new-pssession -computername Server01 -credential domain01\admin0
    2
    
    C:\PS> $j = invoke-command -session $s -scriptblock {start-job -scriptblock
     {get-eventlog system}} 
    
    C:\PS> invoke-command -session $s -scriptblock {param($j) stop-job -job $j}
     -ArgumentList $j
    
    
    Описание
    -----------
    В этом примере показано, как использовать командлет Stop-Job для остановки 
    задания, запущенного на удаленном компьютере. 
    
    Поскольку задание запущено с использованием командлета Invoke-Command для у
    даленного выполнения команды Start-Job, объект задания сохраняется на удале
    нном компьютере, и необходимо использовать другую команду Invoke-Command дл
    я удаленного выполнения команды Stop-Job. Чтобы получить дополнительные све
    дения об удаленных фоновых заданиях, см. раздел about_Remote_Jobs.
    
    Первая команда создает сеанс Windows PowerShell (PSSession) на компьютере S
    erver01 и сохраняет объект сеанса в переменной $s. Команда использует учетн
    ые данные администратора домена. 
    
    Вторая команда использует командлет Invoke-Command для выполнения команды S
    tart-Job в рамках данного сеанса. Эта команда в данном задании получает все
     события из журнала системных событий. Конечный объект задания сохраняется 
    в переменной $j. 
    
    Третья команда останавливает задание. Она использует командлет Invoke-Comma
    nd для выполнения команды Stop-Job в сеансе PSSession на компьютере Server0
    1. Поскольку объекты задания хранятся в локальной переменной $j, команда ис
    пользует ключевое слово "param" для объявления локальных переменных в коман
    де и параметр ArgumentList для задания значений переменных. 
    
    После выполнения команды задание останавливается, а объект PSSession, указа
    нный в переменной $s, становится доступным для использования.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>stop-job -state failed
    
    
    Описание
    -----------
    Эта команда останавливает все задания с состоянием "Failed".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>stop-job -name job1
    
    
    Описание
    -----------
    Эта команда останавливает фоновое задание Job1.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>stop-job -id 1, 3, 4
    
    
    Описание
    -----------
    Эта команда останавливает три задания. Задания определяются по идентификато
    рам.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>get-job | stop-job
    
    
    Описание
    -----------
    Эта команда останавливает все фоновые задания в текущем сеансе.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>stop-job -state blocked
    
    
    Описание
    -----------
    Эта команда останавливает все задания с состоянием задания "Blocked".
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>get-job | format-table ID, Name, Command, @{Label="State";Expression=
    {$_.jobstateinfo.state}}, I
    nstanceID -auto
    
    Id Name Command                 State  InstanceId
    -- ---- -------                 -----  ----------
     1 Job1 start-service schedule Running 05abb67a-2932-4bd5-b331-c0254b8d9146
     3 Job3 start-service schedule Running c03cbd45-19f3-4558-ba94-ebe41b68ad03
     5 Job5 get-service s*         Blocked e3bbfed1-9c53-401a-a2c3-a8db34336adf
    
    C:\PS> stop-job -instanceid e3bbfed1-9c53-401a-a2c3-a8db34336adf
    
    
    Описание
    -----------
    Эти команды останавливают задание, используя его идентификатор экземпляра. 
    
    Первая команда получает сведения о заданиях в текущем сеансе с использовани
    ем командлета Get-Job. Команда передает задания с помощью оператора конвейе
    ра (|) в команду Format-Table, которая отображает таблицу указанных свойств
     для всех заданий. Таблица содержит идентификатор экземпляра для каждого за
    дания. Для отображения состояния задания используется вычисляемое свойство.
    
    Вторая команда использует командлет Stop-Job с параметром InstanceID для ос
    тановки выбранного задания.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>$j = invoke-command -computername Server01 -scriptblock {get-eventlog
     system} -asjob
    
    C:\PS> $j | stop-job -passthru
    
    Id    Name    State      HasMoreData     Location         Command
    --    ----    ----      -----------     --------          -------
    5     Job5    Stopped    True            judithh-tablet   get-eventlog syst
    em
    
    
    Описание
    -----------
    В этом примере показано, как использовать командлет Stop-Job для остановки 
    задания, запущенного на удаленном компьютере. 
    
    Поскольку задание было запущено с использованием параметра AsJob командлета
     Invoke-Command, объект находится на локальном компьютере, даже если само з
    адание выполняется на удаленном компьютере. Поэтому для остановки задания м
    ожно использовать локальную команду Stop-Job.
    
    Первая команда запускает фоновое задание на компьютере Server01 с использов
    анием командлета Invoke-Command. В команде используется параметр AsJob для 
    выполнения удаленной команды в виде фонового задания. 
    
    Эта команда возвращает тот же самый объект задания, который возвращает кома
    ндлет Start-Job. Команда сохраняет объект задания в переменной $j.
    
    Вторая команда передает задание, содержащееся в переменной $j, командлету S
    top-Job с помощью оператора конвейера. Команда использует параметр PassThru
    , который означает, что командлет Stop-Job должен возвратить объект задания
    . Отображаемый объект задания подтверждает, что задание имеет состояние "St
    opped".
    
    Чтобы получить дополнительные сведения об удаленных фоновых заданиях, см. р
    аздел about_Remote_Jobs.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113413
    about_Jobs 
    about_Job_Details 
    about_Remote_Jobs 
    Start-Job 
    Get-Job 
    Receive-Job 
    Wait-Job 
    Remove-Job 
    Invoke-Command 



Stop-Process

ИМЯ
    Stop-Process
    
ОПИСАНИЕ
    Останавливает один или несколько выполняющихся процессов.
    
СИНТАКСИС
    Stop-Process [-Id] <Int32[]> [-Force] [-PassThru] [-Confirm] [-WhatIf] [<Co
    mmonParameters>]
    
    Stop-Process -InputObject <Process[]> [-Force] [-PassThru] [-Confirm] [-Wha
    tIf] [<CommonParameters>]
    
    Stop-Process -Name <string[]> [-Force] [-PassThru] [-Confirm] [-WhatIf] [<C
    ommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Stop-Process останавливает один или несколько выполняющихся проце
    ссов. Процесс для командлета Stop-Process можно указать при помощи имени, и
    дентификатора (PID) или объекта процесса. Командлет Stop-Process работает т
    олько с процессами, выполняющимися на локальном компьютере.
    
    В Windows Vista и более поздних версиях Windows для остановки процесса, вла
    дельцем которого не является текущий пользователь, необходимо запускать Win
    dows PowerShell командой "Запуск от имени администратора".  Кроме того, ком
    андлет запрашивает разрешение, если не задан параметр Force.
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Останавливает заданные процессы без запроса подтверждения. По умолчанию
         командлет Stop-Process запрашивает подтверждение перед удалением проце
        ссов, владельцем которых не является текущий пользователь.
        
        Чтобы определить владельца процесса, необходимо с помощью командлета Ge
        t-WmiMethod получить объект Win32_Process, представляющий процесс, а за
        тем использовать метод GetOwner объекта.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Id <Int32[]>
        Задает идентификаторы останавливаемых процессов. При вводе нескольких и
        дентификаторов необходимо разделять их запятыми. Чтобы определить идент
        ификатор процесса, введите команду get-process. Имя параметра ("Id") ук
        азывать необязательно.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -InputObject <Process[]>
        Останавливает процессы, представленные указанными объектами процессов. 
        Введите переменную, содержащую объекты, либо команду или выражение для 
        получения объектов.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена останавливаемых процессов. Можно ввести несколько имен про
        цессов, разделяя их запятыми, либо использовать подстановочные знаки.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий процесс. По умолчанию этот командлет 
        не формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Diagnostics.Process
        Объект процесса можно передать командлету Stop-Process по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.Diagnostics.Process
        Если задан параметр PassThru, командлет Stop-Process возвращает объект 
        System.Diagnostics.Process, представляющий остановленный процесс. В про
        тивном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Stop-Process также можно вызывать с помощью встроенных псевдо
        нимов "kill" и "spps". Дополнительные сведения см. в разделе About_Alia
        ses.
        
        В оболочке Windows PowerShell также можно использовать свойства и метод
        ы объекта Win32_Process инструментария управления Windows (WMI). Дополн
        ительные сведения см. в разделах о командлете Get-WmiObject и пакете SD
        K WMI.
        
        При остановке процессов необходимо учитывать, что остановка процесса мо
        жет повлечь за собой остановку зависимых от него процессов и служб. Ост
        ановка некоторых процессов в крайних случаях может вызвать остановку Wi
        ndows.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>stop-process -name notepad
    
    
    Описание
    -----------
    Эта команда останавливает все экземпляры процесса Notepad на компьютере. (К
    аждый экземпляр процесса Notepad выполняется в отдельном процессе.) Для зад
    ания процессов используется параметр Name: все экземпляры процесса имеют од
    инаковое имя. При обращении к экземплярам с помощью идентификаторов необход
    имо было бы перечислить идентификаторы всех экземпляров процесса Notepad.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>stop-process -id 3952 -confirm -passthru
    
    Confirm
    Are you sure you want to perform this action?
    Performing operation "Stop-Process" on Target "notepad (3952)".
    [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help
    (default is "Y"):y
    Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
    -------  ------    -----      ----- -----   ------     -- -----------
         41       2      996       3212    31            3952 notepad
    
    
    Описание
    -----------
    Эта команда останавливает конкретный экземпляр процесса Notepad. Для задани
    я процесса используется его идентификатор: 3952. Параметр Confirm указывает
     оболочке Windows PowerShell запрашивать подтверждение пользователя на оста
    новку процесса. Такая форма является наиболее удобной, так как запрос включ
    ает в себя как имя, так и идентификатор процесса. Параметр PassThru передае
    т объект процесса модулю форматирования для отображения. Если бы этот парам
    етр не использовался, после выполнения команды Stop-Process не выводилось б
    ы никаких сообщений.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>calc
    
    c:\PS>$p = get-process calc
    
    c:\PS>stop-process -inputobject $p
    
    c:\PS>get-process | where-object {$_.HasExited}
    
    
    Описание
    -----------
    Данная последовательность команд запускает и останавливает процесс Calc, а 
    затем определяет остановленные процессы. 
    
    Первая команда ("calc") запускает экземпляр приложения "Калькулятор". Втора
    я команда ("$p = get-process calc") с помощью командлета Get-Process извлек
    ает объект, представляющий процесс Calc, и сохраняет его в переменной $p. Т
    ретья команда ("stop-process -inputobject $p") с помощью командлета Stop-Pr
    ocess останавливает процесс Calc. Объект передается командлету Stop-Process
     с помощью параметра InputObject. 
    
    Последняя команда получает все процессы компьютера, которые работали ранее,
     но были остановлены. Для получения всех процессов на компьютере использует
    ся командлет Get-Process. Оператор конвейера (|) передает результаты команд
    лету Where-Object, который выбирает из них те, у которых свойство HasExited
     имеет значение TRUE. HasExited — это только одно из множества свойств объе
    ктов процессов. Чтобы просмотреть все свойства, введите "get-process | get-
    member".
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-process lsass | stop-process
    
    Stop-Process : Cannot stop process 'lsass (596)' because of the following e
    rror: Access is denied
    At line:1 char:34
    + get-process lsass  | stop-process 
    
    [ADMIN]: C:\PS> get-process lsass | stop-process
    Warning
    Are you sure you want to perform this action?
    Performing operation 'Stop-Process' on Target 'lsass(596)'
    [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (defa
    ult is "Y"):
    
    [ADMIN]: C:\PS> get-process lsass | stop-process -force
    [ADMIN]: C:\PS>
    
    
    Описание
    -----------
    Приведенные команды демонстрируют использование параметра Force для останов
    ки процесса, владельцем которого пользователь не является.
    
    Первая команда с помощью командлета Get-Process получает процесс Lsass. С п
    омощью оператора конвейера (|) процесс пересылается командлету Stop-Process
    , который должен остановить процесс. Как видно из примера выходных данных, 
    первая команда завершается с ошибкой "Отказано в доступе", поскольку этот п
    роцесс может быть остановлен только членом группы "Администраторы" компьюте
    ра.
    
    После запуска оболочки Windows PowerShell командой "Запуск от имени админис
    тратора" и повторения команды Windows PowerShell запрашивает подтверждение.
    
    Во второй команде используется параметр Force для отключения запроса. В рез
    ультате процесс останавливается без подтверждения.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113412
    Get-Process 
    Start-Process 
    Stop-Process 
    Wait-Process 
    Debug-Process 



Stop-Service

ИМЯ
    Stop-Service
    
ОПИСАНИЕ
    Останавливает одну или несколько выполняющихся служб.
    
СИНТАКСИС
    Stop-Service [-Name] <string[]> [-Exclude <string[]>] [-Force] [-Include <s
    tring[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Stop-Service -DisplayName <string[]> [-Exclude <string[]>] [-Force] [-Inclu
    de <string[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Stop-Service [-InputObject <ServiceController[]>] [-Exclude <string[]>] [-F
    orce] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParame
    ters>]
    
    
ОПИСАНИЕ
    Командлет Stop-Service отсылает сообщение об остановке диспетчеру служб Win
    dows для каждой указанной службы. Службы можно задавать с помощью их имен и
    ли отображаемых имен. Кроме того, можно с помощью параметра InputObject пер
    едавать объекты, представляющие останавливаемые службы.
    
ПАРАМЕТРЫ
    -DisplayName <string[]>
        Задает отображаемые имена останавливаемых служб. Подстановочные знаки р
        азрешены.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные службы. Значение данного параметра определяет значе
        ние параметра Name. Введите часть имени или шаблон, например "s*". Подс
        тановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету остановить службу, даже если у нее есть зависимые 
        службы.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Останавливает только указанные службы. Значение данного параметра опред
        еляет значение параметра Name. Введите часть имени или шаблон, например
         "s*". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <ServiceController[]>
        Задает объекты ServiceController, представляющие останавливаемые службы
        . Введите переменную, содержащую объекты, либо команду или выражение дл
        я получения объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена останавливаемых служб. Подстановочные знаки разрешены.
        
        Имя параметра указывать необязательно. Можно использовать параметр "Nam
        e" или его псевдоним "ServiceName", либо опустить имя параметра.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий службу. По умолчанию этот командлет н
        е формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.ServiceProcess.ServiceController или System.String.
        Можно передать объект службы или строку, содержащую имя службы, по конв
        ейеру командлету Stop-Service.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.ServiceProcess.ServiceController
        Если задан параметр PassThru, командлет Stop-Service формирует объект S
        ystem.ServiceProcess.ServiceController, представляющий службу. В против
        ном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Stop-Service также можно вызывать с помощью встроенного псевд
        онима "spsv". Дополнительные сведения см. в разделе About_Aliases.
        
        Командлет Stop-Service может использоваться для управления службами, то
        лько если у текущего пользователя есть на это разрешение. Некорректная 
        работа команды может быть обусловлена отсутствием требуемых разрешений.
        
        Чтобы извлечь имена служб и отображаемые имена служб на текущем компьют
        ере, введите команду "get-service". Имена служб содержатся в столбце Na
        me, а отображаемые имена — в столбце DisplayName.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>stop-service sysmonlog
    
    
    Описание
    -----------
    Эта команда останавливает службу "Журналы и оповещения производительности" 
    (SysmonLog) на локальном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-service -displayname telnet | stop-service
    
    
    Описание
    -----------
    Эта команда останавливает службу Telnet на локальном компьютере. Для извлеч
    ения объекта, представляющего службу Telnet, используется командлет Get-Ser
    vice. Оператор конвейера (|) пересылает объект командлету Stop-Service, кот
    орый останавливает службу.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-service iisadmin | format-list -property name, dependentservices
    
    C:PS>stop-service iisadmin -force -confirm
    
    
    Описание
    -----------
    Команда Stop-Service останавливает службу IISAdmin на локальном компьютере.
     Поскольку остановка данной службы влечет за собой остановку служб, зависим
    ых от IISAdmin, перед выполнением команды Stop-Service рекомендуется ввести
     команду для вывода списка служб, зависимых от IISAdmin.
    
    Первая команда отображает список всех служб, зависимых от IISAdmin. Для изв
    лечения объекта, представляющего службу IISAdmin, используется командлет Ge
    t-Service. Оператор конвейера (|) передает результат командлету Format-List
    . Для вывода на экран только значений свойств Name и DependentServices служ
    бы в команде Format-List используется параметр Property.
    
    Вторая команда останавливает работу службы IISAdmin. Параметр Force необход
    им для остановки служб, имеющих связанные с ними зависимые службы. Для запр
    оса подтверждения пользователя на остановку каждой службы используется пара
    метр Confirm.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113414
    Get-Service 
    Suspend-Service 
    Start-Service 
    Restart-Service 
    Resume-Service 
    Set-Service 
    New-Service 



Stop-Transcript

ИМЯ
    Stop-Transcript
    
ОПИСАНИЕ
    Останавливает запись.
    
СИНТАКСИС
    Stop-Transcript [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Stop-Transcript останавливает запись, запущенную с помощью команд
    лета Start-Transcript. Запись можно остановить, завершив сеанс.
    
ПАРАМЕТРЫ
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    None
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String
        Stop-Transcript возвращает строку, содержащую сообщение о состоянии и п
        уть к выходному файлу.
    
    
ПРИМЕЧАНИЯ
    
    
        Если запись не была начата, то команда завершается неудачей.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>stop-transcript
    
    
    Описание
    -----------
    Эта команда останавливает все текущие записи.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113415
    Start-Transcript 



Suspend-Service

ИМЯ
    Suspend-Service
    
ОПИСАНИЕ
    Приостанавливает одну или несколько выполняющихся служб.
    
СИНТАКСИС
    Suspend-Service [-Name] <string[]> [-Exclude <string[]>] [-Include <string[
    ]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Suspend-Service -DisplayName <string[]> [-Exclude <string[]>] [-Include <st
    ring[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Suspend-Service [-InputObject <ServiceController[]>] [-Exclude <string[]>] 
    [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Suspend-Service отсылает сообщение о приостановке диспетчеру служ
    б Windows для каждой указанной службы. Приостановленная служба по-прежнему 
    выполняется, однако ее работа прекращается до возобновления работы службы, 
    например с помощью командлета Resume-Service. Службы можно задавать с помощ
    ью их имен или отображаемых имен. Кроме того, можно с помощью параметра Inp
    utObject передавать объекты, представляющие приостанавливаемые службы.
    
ПАРАМЕТРЫ
    -DisplayName <string[]>
        Задает отображаемые имена приостанавливаемых служб. Подстановочные знак
        и разрешены.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные службы. Значение данного параметра определяет значе
        ние параметра Name. Введите часть имени или шаблон, например "s*". Подс
        тановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Приостанавливает только указанные службы. Значение данного параметра оп
        ределяет значение параметра Name. Введите часть имени или шаблон, напри
        мер "s*". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <ServiceController[]>
        Задает объекты ServiceController, представляющие приостанавливаемые слу
        жбы. Введите переменную, содержащую объекты, либо команду или выражение
         для получения объектов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена приостанавливаемых служб. Подстановочные знаки разрешены.
        
        Имя параметра указывать необязательно. Можно использовать параметр "Nam
        e" или его псевдоним "ServiceName", либо опустить имя параметра.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PassThru [<SwitchParameter>]
        Возвращает объект, представляющий службу. По умолчанию этот командлет н
        е формирует никаких выходных данных.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.ServiceProcess.ServiceController или System.String.
        Можно передать объект службы или строку, содержащую имя службы, по конв
        ейеру командлету Suspend-Service.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет или System.ServiceProcess.ServiceController
        Если задан параметр PassThru, командлет Suspend-Service формирует объек
        т System.ServiceProcess.ServiceController, представляющий службу. В про
        тивном случае этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлет Suspend-Service может использоваться для управления службами,
         только если у текущего пользователя есть на это разрешение. Некорректн
        ая работа команды может быть обусловлена отсутствием требуемых разрешен
        ий.
        
        Командлет Suspend-Service может приостанавливать только службы, допуска
        ющие временную приостановку и возобновление. Для получения сведений о в
        озможности временной приостановки конкретной службы используйте командл
        ет Get-Service со свойством "CanPauseAndContinue". Например, "get-servi
        ce wmi | format-list name, canpauseandcontinue". Чтобы отобразить списо
        к всех служб, работа которых может быть приостановлена, введите команду
         "get-service | where-object {$_.canpauseandcontinue -eq "True"}".
        
        Чтобы извлечь имена служб и отображаемые имена служб на текущем компьют
        ере, введите команду "get-service". Имена служб содержатся в столбце Na
        me, а отображаемые имена — в столбце DisplayName.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>suspend-service -displayname "Telnet"
    
    
    Описание
    -----------
    Эта команда временно останавливает службу Telnet (Tlntsvr) на локальном ком
    пьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>suspend-service -name lanman* -whatif
    
    
    Описание
    -----------
    Эта команда сообщает о том, что произойдет в результате временной остановки
     служб, имена которых начинаются со строки "lanman". Чтобы приостановить сл
    ужбы, введите команду без параметра WhatIf.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-service schedule | suspend-service
    
    
    Описание
    -----------
    Для извлечения объекта, представляющего службу Task Scheduler (Schedule), в
     данной команде используется командлет Get-Service. Оператор конвейера (|) 
    пересылает результат командлету Suspend-Service, который временно останавли
    вает службу.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-service | where-object {$_.canpauseandcontinue -eq "True"} | susp
    end-service -confirm
    
    
    Описание
    -----------
    Эта команда приостанавливает работу всех служб компьютера, допускающих прио
    становку. Для извлечения объектов, представляющих службы компьютера, исполь
    зуется командлет Get-Service. Оператор конвейера (|) передает результаты ко
    мандлету Where-Object, который выбирает из них те, у которых свойство CanPa
    useAndContinue имеет значение "True". Следующий оператор конвейера передает
     результаты командлету Suspend-Service. Параметр Confirm указывает на необх
    одимость подтверждения пользователем временной остановки для каждой службы.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113416
    Get-Service 
    Start-Service 
    Stop-Service 
    Restart-Service 
    Resume-Service 
    Set-Service 
    New-Service 



TabExpansion

TabExpansion [[-line] <Object>] [[-lastWord] <Object>]



Tee-Object

ИМЯ
    Tee-Object
    
ОПИСАНИЕ
    Сохраняет выходные данные команды в файле или переменной и отображает их на
     консоли.
    
СИНТАКСИС
    Tee-Object [-FilePath] <string> [-InputObject <psobject>] [<CommonParameter
    s>]
    
    Tee-Object -Variable <string> [-InputObject <psobject>] [<CommonParameters>
    ]
    
    
ОПИСАНИЕ
    Командлет Tee-Object передает вывод команды по двум направлениям (как у бук
    вы "T"). Он сохраняет вывод в файле или переменной, а также передает его по
     конвейеру. Если командлет Tee-Object является последним в конвейере, то вы
    вод команды отображается на консоли.
    
ПАРАМЕТРЫ
    -FilePath <string>
        Задает файл, в котором командлет сохраняет объект. Принимает подстаново
        чные знаки, которые разрешаются в единственный файл.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объект ввода для командлета. Введите переменную, содержащую объе
        кты, либо получающую их команду или выражение.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Variable <string>
        Присваивает ссылку на объекты ввода указанной переменной.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Объекты для перенаправления можно передать командлету Tee-Object по кон
        вейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Командлет Tee-Object возвращает перенаправляемый им объект.
    
    
ПРИМЕЧАНИЯ
    
    
        Кроме того, можно использовать командлет Out-File или оператор перенапр
        авления, которые позволяют сохранить вывод в файле, но не позволяют пер
        едать его по конвейеру.
        
        При записи в файл командлет Tee-Object использует кодировку Юникод. В р
        езультате вывод может быть неправильно отформатирован в файлах с другой
         кодировкой. Для указания кодировки используйте командлет Out-File.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-process | tee-object -filepath C:\Test1\testfile2.txt 
    
    Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)    Id ProcessName
    -------  ------    -----      ----- -----   ------    -- -----------
       83       4     2300       4520    39     0.30    4032 00THotkey
      272       6     1400       3944    34     0.06    3088 alg
       81       3      804       3284    21     2.45     148 ApntEx
       81       4     2008       5808    38     0.75    3684 Apoint
    ...
    
    
    Описание
    -----------
    Эта команда получает список выполняемых на компьютере процессов и отправляе
    т результат в файл. Поскольку второй путь не указан, результат будет выведе
    н на консоль.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-process notepad | tee-object -variable proc | select-object proce
    ssname,handles 
    
    ProcessName                              Handles
    -----------                              -------
    notepad                                  43
    notepad                                  37
    notepad                                  38
    notepad                                  38
    
    
    Описание
    -----------
    Эта команда получает список выполняемых на компьютере процессов и сохраняет
     результат в переменной "proc". После этого полученные объекты передаются п
    о конвейеру командлету Select-Object, который выбирает свойства ProcessName
     и Handles. Обратите внимание, что переменная $proc включает сведения по ум
    олчанию, возвращенные командлетом Get-Process.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113417
    about_Redirection 
    Select-Object 



Test-ComputerSecureChannel

ИМЯ
    Test-ComputerSecureChannel
    
ОПИСАНИЕ
    Проверяет и исправляет безопасный канал между локальным компьютером и его д
    оменом.
    
СИНТАКСИС
    Test-ComputerSecureChannel [-Repair] [-Server <string>] [-Confirm] [-WhatIf
    ] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Test-ComputerSecureChannel проверяет, правильно ли функционирует 
    защищенный канал между локальным компьютером и его доменом, путем проверки 
    состояния его отношений доверия. Если произошел сбой подключения, можно поп
    ытаться восстановить его с помощью параметра Repair. 
    
    Командлет Test-ComputerSecureChannel возвращает значение "True", если безоп
    асный канал функционирует правильно, и значение "False" в противном случае.
     Это позволяет использовать командлет в условных операторах в функциях и ск
    риптах. Для получения более подробных результатов проверки используйте пара
    метр Verbose.
    
    Этот командлет работает во многом подобно программе NetDom.exe. И NetDom, и
     Test-ComputerSecureChannel используют для выполнения операций службу NetLo
    gon.
    
ПАРАМЕТРЫ
    -Repair [<SwitchParameter>]
        Удаляет и затем снова создает безопасный канал, установленный службой N
        etLogon. С помощью этого параметра можно попытаться восстановить соедин
        ение, которое не прошло проверку (возвратило значение "False".)
        
        Для использования этого параметра текущий пользователь должен быть член
        ом группы "Администраторы" на локальном компьютере.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Server <string>
        Использует для выполнения команды указанный контроллер домена. Если это
        т параметр опущен, Test-ComputerSecureChannel выбирает для операции кон
        троллер домена по умолчанию.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Boolean
        Командлет возвращает значение "True", если соединение функционирует пра
        вильно, и "False" в противном случае.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать командлет Test-ComputerSecureChannel в Windows Vista
         и более поздних версиях Windows, необходимо запускать Windows PowerShe
        ll командой "Запуск от имени администратора".
        
        Командлет Test-ComputerSecureChannel реализован с использованием функци
        и I_NetLogonControl2, управляющей различными аспектами службы Netlogon.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>test-computersecurechannel
    
    True
    
    
    Описание
    -----------
    Эта команда проверяет безопасный канал между локальным компьютером и домено
    м, к которому он присоединен.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>test-computersecurechannel -server DCName.fabrikam.com
    
    True
    
    
    Описание
    -----------
    Эта команда задает предпочтительный контроллер домена для проверки.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>Test-ComputerSecureChannel -repair
    
    True
    
    
    Описание
    -----------
    Эта команда восстанавливает безопасный канал между локальным компьютером и 
    его доменом.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>test-computerSecureChannel -verbose
    
    VERBOSE: Performing operation "Test-ComputerSecureChannel" on Target "SERVE
    R01".
    True
    VERBOSE: "The secure channel between 'SERVER01' and 'net.fabrikam.com' is a
    live and working correctly."
    
    
    Описание
    -----------
    В этой команде используется общий параметр Verbose для запроса подробных со
    общений о выполняемой операции. Дополнительные сведения о параметре Verbose
     см. в разделе about_CommonParameters.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>set-alias tcsc test-computersecurechannel 
    
    if ((tcsc)) 
         {write-host "Connection failed. Reconnect and retry."}
    else { &(.\get-servers.ps1) }
    
    
    Описание
    -----------
    В этом примере показано, как с помощью командлета Test-ComputerSecureChanne
    l проверить соединение, прежде чем выполнять скрипт, которому требуется сое
    динение.
    
    Первая команда с помощью командлета Set-Alias создает псевдоним для имени к
    омандлета. Это экономит место и позволяет избежать опечаток.
    
    Инструкция IF проверяет возвращенное командлетом Test-ComputerSecureChannel
     значение, прежде чем выполнить скрипт.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=137749
    Checkpoint-Computer 
    Restart-Computer 
    Stop-Computer 
    Reset-ComputerMachinePassword 



Test-Connection

ИМЯ
    Test-Connection
    
ОПИСАНИЕ
    Отправляет пакеты эхо-запросов ICMP (запросы проверки связи) одному или нес
    кольким компьютерам.
    
СИНТАКСИС
    Test-Connection [-ComputerName] <string[]> [[-Source] <string[]>] [-AsJob] 
    [-Authentication {Default | None | Connect | Call | Packet | PacketIntegrit
    y | PacketPrivacy | Unchanged}] [-BufferSize <int>] [-Count <int>] [-Creden
    tial <PSCredential>] [-Delay <int>] [-Impersonation {Default | Anonymous | 
    Identify | Impersonate | Delegate}] [-Quiet] [-ThrottleLimit <int>] [-TimeT
    oLive <int>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Test-Connection отправляет пакеты эхо-запросов по протоколу ICMP 
    (запросы проверки связи) одному или нескольким компьютерам и возвращает эхо
    -ответы. С помощью этого командлета можно определить, можно ли связаться с 
    определенным компьютером по сети IP. 
    
    С помощью параметров командлета Test-Connection можно задавать компьютер-от
    правитель и компьютер-получатель, выполнять команду в качестве фонового зад
    ания, задавать время ожидания и количество запросов, а также настраивать со
    единение и проверку подлинности. 
    
    В отличие от стандартной команды "ping", командлет Test-Connection возвраща
    ет объект Win32_PingStatus, который можно изучить в Windows PowerShell, при
     этом можно использовать параметр Quiet, чтобы возвращалось только логическ
    ое значение.
    
ПАРАМЕТРЫ
    -AsJob [<SwitchParameter>]
        Запускает команду в качестве фонового задания.
        
        Примечание. Чтобы использовать этот параметр, локальный и удаленный ком
        пьютер должны быть настроены на удаленное взаимодействие, и запуск Wind
        ows PowerShell под управлением Windows Vista и более поздних версий Win
        dows должен выполняться командой "Запуск от имени администратора". Допо
        лнительные сведения см. в разделе about_Remote_Requirements.
        
        При использовании параметра AsJob команда немедленно возвращает объект,
         представляющий фоновое задание. Можно продолжить работу в рамках данно
        го сеанса, пока задание завершается. Задание создается на локальном ком
        пьютере, и результаты с удаленных компьютеров автоматически возвращаютс
        я на локальный компьютер. Чтобы получить результаты задания, используйт
        е командлет Receive-Job.
        
        Дополнительные сведения о фоновых заданиях в Windows PowerShell см. в р
        азделах about_Jobs и about_Remote_Jobs.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Authentication <AuthenticationLevel>
        Задает уровень проверки подлинности, используемый для WMI-соединения. (
        Командлет Test-Connection использует WMI.)
        
        Допустимые значения:
        
        Unchanged:       уровень проверки подлинности такой же, как и у предыду
        щей команды.
        Default:         проверка подлинности Windows.
        None:            проверка подлинности COM не используется.
        Connect:         проверка подлинности COM уровня соединения.
        Call:            проверка подлинности COM уровня вызова.
        Packet:          проверка подлинности COM уровня пакета.
        PacketIntegrity: проверка подлинности COM уровня целостности пакета.
        PacketPrivacy:   проверка подлинности COM уровня конфиденциальности пак
        ета.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                4
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -BufferSize <int>
        Задает размер в байтах буфера, отправляемого с данной командой. По умол
        чанию используется значение 32.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                32
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string[]>
        Задает компьютеры, на которые отправляются запросы проверки связи. Введ
        ите имена компьютеров или введите IP-адреса в формате IPv4 или IPv6. По
        дстановочные знаки запрещены. Это обязательный параметр.
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName можно использовать, даже если компьютер не наст
        роен на выполнение удаленных команд.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Count <int>
        Задает количество отправляемых эхо-запросов. По умолчанию используется 
        значение 4.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                4
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. Введите имя пользователя, например "User01"
         или "Domain01\User01", или введите объект PSCredential, например объек
        т, возвращаемый командлетом Get-Credential.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Текущий пользователь
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Delay <int>
        Задает интервал между запросами в секундах.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                1 (секунда)
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Impersonation <ImpersonationLevel>
        Задает уровень олицетворения при вызове WMI. (Командлет Test-Connection
         использует WMI.) По умолчанию используется значение "Impersonate".
        
        Допустимые значения:
        
        Default:      олицетворение по умолчанию.
        Anonymous:    скрывает идентификатор вызывающего.
        Identify:     позволяет объектам запрашивать учетные данные вызывающего
        .
        Impersonate:  позволяет объектам использовать учетные данные вызывающег
        о.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                3
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Quiet [<SwitchParameter>]
        Подавляет все ошибки и возвращает значение $True, если хотя бы одна поп
        ытка проверки связи (ping) успешно завершается, и значение $False, если
         все попытки проверки связи завершились неудачно.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                False
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Source <string[]>
        Задает имена компьютеров, с которых отправляются запросы проверки связи
        . Введите список имен компьютеров, разделенных запятыми. По умолчанию и
        спользуется значение "Локальный компьютер".
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                Локальный компьютер
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ThrottleLimit <int>
        Задает максимальное количество одновременных соединений, которые могут 
        быть установлены для выполнения данной команды. Если этот параметр не з
        адан или для него введено значение 0, используется значение по умолчани
        ю 32.
        
        Ограничение скорости относится только к текущей команде, но не к сеансу
         или компьютеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                32
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -TimeToLive <int>
        Задает максимальное время активности каждого пакета эхо-запроса (запрос
        а проверки связи) в секундах. По умолчанию используется значение 80 (се
        кунд). Псевдоним параметра TimeToLive —TTL.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                80
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.ManagementObject#root\cimv2\Win32_PingStatus, System.Mana
    gement.Automation.RemotingJob, System.Boolean
        Если задан параметр AsJob, командлет возвращает объект задания. При исп
        ользовании параметра Quiet возвращается логическое значение. В противно
        м случае этот командлет возвращает объект Win32_PingStatus для каждой к
        оманды проверки связи (ping).
    
    
ПРИМЕЧАНИЯ
    
    
        Этот командлет использует класс Win32_PingStatus. Команда "get-wmiojbec
        t win32_pingstatus" эквивалентна команде Test-Connection.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>test-connection server01
    
    Source        Destination     IPV4Address     IPV6Address  Bytes    Time(ms
    )
    ------        -----------     -----------     -----------  -----    -------
    -
    ADMIN1        Server01        157.59.137.44                32       0
    ADMIN1        Server01        157.59.137.44                32       0
    ADMIN1        Server01        157.59.137.44                32       0
    ADMIN1        Server01        157.59.137.44                32       1
    
    
    Описание
    -----------
    Эта команда отправляет пакеты эхо-запросов (запросы проверки связи) с локал
    ьного компьютера компьютеру Server01. В команде используется параметр Compu
    terName для задания компьютера Server01, однако необязательное имя параметр
    а в данном случае опущено.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>test-connection -computername server01, server02, server12 -credentia
    l domain01\user01
    
    
    Описание
    -----------
    Эта команда отправляет запросы проверки связи с локального компьютера неско
    льким удаленным компьютерам. В ней используется параметр Credential для ука
    зания учетной записи пользователя, который располагает разрешениями для про
    верки связи со всеми удаленными компьютерами.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>test-connection -source Server02, Server 12, localhost -computername 
    Server01
    
    
    Описание
    -----------
    Эта команда отправляет запросы проверки связи (ping) от различных компьютер
    ов-источников одному удаленному компьютеру Server01. Данный формат команды 
    можно использовать для проверки задержки соединений из нескольких точек.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>test-connection -computername Server01 -count 3 -delay 2 -TTL 256 -bu
    ffersize 256 -throttle 32
    
    
    Описание
    -----------
    Эта команда отправляет три запроса проверки связи с локального компьютера к
    омпьютеру Server01. Для настройки команды используются параметры командлета
     Test-Connection.
    
    Данный формат команды можно использовать, когда ожидается, что получение от
    ветов на запросы проверки связи займет дольше, чем обычно — либо из-за боль
    шого количества прыжков, либо из-за интенсивности трафика в сети.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>$job = test-connection -computername (get-content servers.txt) -asjob
    
    C:\PS> if ($job.jobstateinfo.state -ne "Running") {$results = receive-job $
    job}
    
    
    Описание
    -----------
    В этом примере показано, как выполнить команду Test-Connection в качестве ф
    онового задания Windows PowerShell. 
    
    Первая команда использует командлет Test-Connection для проверки связи с не
    сколькими компьютерами предприятия. Значением параметра ComputerName являет
    ся команда Get-Content, которая считывает список имен компьютеров из файла 
    Servers.txt. Параметр AsJob используется для выполнения команды в качестве 
    фонового задания.
    
    Вторая команда проверяет, не завершилось ли еще задание и, если оно заверши
    лось, с помощью команды Receive-Job получает результаты и сохраняет их в пе
    ременной $results.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>test-connection Server55 -credential domain55\user01 -impersonation I
    dentify
    
    
    Описание
    -----------
    В этой команде используется командлет Test-Connection для проверки связи с 
    удаленным компьютером. Параметр Credential используется для задания учетной
     записи пользователя, располагающего разрешениями для проверки связи с удал
    енным компьютером, а параметр Impersonation — для изменения уровня олицетво
    рения на "Identify".
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>if (test-connection -computername Server01 -quiet) {new-pssession Ser
    ver01}
    
    
    Описание
    -----------
    Эта команда создает сеанс PSSession на компьютере Server01, только если хот
    я бы одна попытка проверки связи завершается успешно.
    
    Эта команда использует командлет Test-Connection для проверки связи с компь
    ютером Server01. В команде используется параметр Quiet, возвращающий логиче
    ское значение вместо объекта Win32_PingStatus. Значение $True возвращается,
     если любая из четырех попыток проверки связи завершается успешно, в против
    ном случае возвращается значение $False.
    
    Если команда Test-Connection возвращает значение $True, создается сеанс PSS
    ession при помощи командлета New-PSSession.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135266
    Add-Computer 
    Restart-Computer 
    Stop-Computer 



Test-ModuleManifest

ИМЯ
    Test-ModuleManifest
    
ОПИСАНИЕ
    Проверяет, что файл манифеста модуля точно описывает содержимое модуля.
    
СИНТАКСИС
    Test-ModuleManifest [-Path] <string> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Test-ModuleManifest проверяет, что файлы, указанные в файле маниф
    еста модуля (PSD1), действительно существуют по указанным путям. 
    
    Этот командлет помогает разработчикам модулей тестировать файлы манифестов.
     Пользователи модуля также могут использовать этот командлет в скриптах и к
    омандах для выявления ошибок до выполнения скриптов, зависящих от модуля.
    
    Командлет Test-ModuleManifest возвращает объект, представляющий модуль (так
    ого же типа, что и объект, возвращаемый командлетом Get-Module). Если какой
    -либо файл отсутствует в местоположении, указанном в манифесте, выдается ош
    ибка для каждого отсутствующего файла.
    
ПАРАМЕТРЫ
    -Path <string>
        Задает путь к файлу манифеста модуля. Укажите путь (необязательно) и им
        я файла манифеста модуля с расширением PSM1. Местоположением по умолчан
        ию является текущий каталог. Это обязательный параметр. Имя параметра (
        "Path") указывать необязательно. Кроме того, путь можно передать команд
        лету Test-ModuleManifest по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Путь к манифесту модуля можно передать командлету Test-ModuleManifest п
        о конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSModuleInfo
        Test-ModuleManifest возвращает объект PSModuleInfo, представляющий моду
        ль. Объект возвращается даже при наличии ошибок в манифесте.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>test-ModuleManifest -path $pshome\Modules\TestModule.psd1
    
    
    Описание
    -----------
    Эта команда проверяет файл манифеста модуля TestModule.psd1.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>"$pshome\Modules\TestModule.psd1" | test-modulemanifest
    
    Test-ModuleManifest : The specified type data file 'C:\Windows\System32\Wi
    ndowsPowerShell\v1.0\Modules\TestModule\TestTypes.ps1xml' could not be pro
    cessed because the file was not found. Please correct the path and try aga
    in.
    At line:1 char:34
    + "$pshome\Modules\TestModule.psd1" | test-modulemanifest 
        + CategoryInfo          : ResourceUnavailable: (C:\Windows\System32\Win
    dowsPowerShell\v1.0\Modules\TestModule\TestTypes.ps1xml:String) [Test-Modul
    eManifest], FileNotFoundException
        + FullyQualifiedErrorId : Modules_TypeDataFileNotFound,Microsoft.
    PowerShell.Commands.TestModuleManifestCommandName
    
    
    Name              : TestModule
    Path              : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Test
    Module\TestModule.psd1
    Description       :
    Guid              : 6f0f1387-cd25-4902-b7b4-22cff6aefa7b
    Version           : 1.0
    ModuleBase        : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Test
    Module
    ModuleType        : Manifest
    PrivateData       :
    AccessMode        : ReadWrite
    ExportedAliases   : {}
    ExportedCmdlets   : {}
    ExportedFunctions : {}
    ExportedVariables : {}
    NestedModules     : {}
    
    
    Описание
    -----------
    Эта команда передает строку пути командлету Test-ModuleManifest с помощью о
    ператора конвейера (|). 
    
    Результат выполнения команды показывает, что тест закончился ошибкой, поско
    льку не найден файл TestTypes.ps1xml, указанный в манифесте.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>function Bool-ModuleManifest ($path)
        {$a = dir $path | test-modulemanifest -erroraction SilentlyContinue; $?
    }
    
    
    Описание
    -----------
    Эта функция аналогична Test-ModuleManifest, но возвращает логическое значен
    ие: "True" в случае успешного теста, "False" — в противном случае.
    
    Функция использует командлет Get-ChildItem (псевдоним "dir") для получения 
    манифеста модуля, указанного в переменной $path. Объект файла передается ко
    мандлету Test-ModuleManifest с помощью оператора конвейера (|).
    
    Команда Test-ModuleManifest использует общий параметр ErrorAction со значен
    ием SilentlyContinue для отключения вывода сообщений об ошибках, создаваемы
    х командой. Кроме того, команда сохраняет в переменной $a объект PSModuleIn
    fo, возвращенный командлетом Test-ModuleManifest, поэтому этот объект не от
    ображается. 
    
    Затем другая команда (разделителем команд служит точка с запятой [;]) отобр
    ажает значение автоматической переменной $?, которая возвращает значение "T
    rue", если предыдущая команда не создала ошибок, либо значение "False" в пр
    отивном случае.
    
    Эту функцию можно использовать в условных операторах, например операторах п
    еред командой Import-Module или командой, использующей модуль.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=141557
    Import-Module 
    Get-Module 
    New-Module 
    Remove-Module 
    Export-ModuleMember 
    New-ModuleManifest 
    about_Modules 



Test-Path

ИМЯ
    Test-Path
    
ОПИСАНИЕ
    Проверяет, существуют ли все элементы пути.
    
СИНТАКСИС
    Test-Path [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Exclude 
    <string[]>] [-Filter <string>] [-Include <string[]>] [-IsValid] [-PathType 
    {Any | Container | Leaf}] [-UseTransaction] [<CommonParameters>]
    
    Test-Path [-Path] <string[]> [-Credential <PSCredential>] [-Exclude <string
    []>] [-Filter <string>] [-Include <string[]>] [-IsValid] [-PathType {Any | 
    Container | Leaf}] [-UseTransaction] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Test-Path проверяет, существуют ли все элементы пути. Он возвраща
    ет значение TRUE ($true), если все элементы существуют, и значение FALSE ($
    false) в противном случае. Также он может определить, допустим ли синтаксис
     пути и на какой элемент указывает путь — контейнер или конечный элемент ("
    лист" дерева каталогов).
    
ПАРАМЕТРЫ
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". 
        
        Введите имя пользователя, например "User01" или "Domain01\User01". Или 
        укажите объект PSCredential, например один из объектов, созданных коман
        длетом Get-Credential. При вводе имени пользователя система запросит па
        роль.
        
        Этот параметр не поддерживается ни одним из установленных с Windows Pow
        erShell поставщиком.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Exclude <string[]>
        Исключает указанные элементы. Значение этого параметра определяет значе
        ние параметра Path. Введите элемент пути или шаблон, например "*.txt". 
        Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Filter <string>
        Задает фильтр с использованием формата или языка поставщика. Значение э
        того параметра определяет значение параметра Path. Синтаксис фильтра, в
         том числе использование подстановочных знаков, зависит от поставщика. 
        Фильтры эффективнее других параметров, потому что поставщик применяет и
        х при извлечении объектов (вместо использования Windows PowerShell для 
        фильтрации извлеченных объектов).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Include <string[]>
        Проверяет только указанные пути. Значение этого параметра определяет зн
        ачение параметра Path. Введите элемент пути или шаблон, например "*.txt
        ". Подстановочные знаки разрешены.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -IsValid [<SwitchParameter>]
        Определяет, допустим ли синтаксис пути, независимо от того, существуют 
        ли элементы пути. Этот параметр возвращает значение TRUE, если синтакси
        с пути допустим, и значение FALSE в противном случае.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LiteralPath <string[]>
        Задает путь, который нужно проверить. В отличие от параметра Path, знач
        ение параметра LiteralPath используется в том виде, в котором оно введе
        но. Никакие символы не интерпретируются как подстановочные знаки. Если 
        путь включает escape-символы, его нужно заключить в одиночные кавычки. 
        Одиночные кавычки указывают оболочке Windows PowerShell, что никакие си
        мволы не следует интерпретировать как escape-символы.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Path <string[]>
        Задает путь, который нужно проверить. Подстановочные знаки разрешены. П
        уть, содержащий пробелы, необходимо заключать в кавычки. Имя параметра 
        ("Path") указывать необязательно.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PathType <TestPathType>
        Сообщает, имеет ли последний элемент пути определенный тип. Этот параме
        тр возвращает значение TRUE, если элемент имеет указанный тип, и значен
        ие FALSE в противном случае.
        
        Допустимые значения:
        -- Container: элемент, содержащий другие элементы, такие как каталог ил
        и раздел реестра.
        
        -- Leaf: элемент, не содержащий других элементов, например файл.
        
        -- Any: либо контейнер, либо конечный элемент. Сообщает, имеет ли после
        дний элемент пути определенный тип. Возвращает TRUE, если элемент имеет
         указанный тип, и FALSE в противном случае.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую путь (но не литеральный путь), можно передать команд
        лету Test-Path по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Boolean
        Командлет возвращает значение "True", если путь существует, и "False" в
         противном случае.
    
    
ПРИМЕЧАНИЯ
    
    
        Командлеты, в именах которых содержится существительное Path (командлет
        ы Path), оперируют именами путей и возвращают эти имена в сокращенном ф
        ормате, который поддерживается всеми поставщиками Windows PowerShell. О
        ни предназначены для использования в программах и скриптах, в которых т
        ребуется отображать имя пути или его часть в конкретном формате. Исполь
        зуйте их аналогично другим командам для работы с путями, таким как Dirn
        ame, Normpath, Realpath и Join.
        
         Командлеты Path можно использовать с несколькими поставщиками, включая
         FileSystem, Registry и Certificate.
        
        Командлет Test-Path предназначен для работы с данными, предоставляемыми
         любым поставщиком. Чтобы получить список поставщиков, доступных в теку
        щем сеансе, введите команду "Get-PSProvider". Дополнительные сведения с
        м. в разделе About_Providers.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>test-path -path "C:\Documents and Settings\NicoleH"
    
    
    Описание
    -----------
    Эта команда сообщает, существуют ли все элементы пути, т. е. каталог C:, ка
    талог Documents and Settings и каталог NicoleH. Если какой-либо из элементо
    в отсутствует, командлет возвращает FALSE. В противном случае он возвращает
     TRUE.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>test-path -path $profile
    
    C:\PS>test-path -path $profile -IsValid
    
    
    Описание
    -----------
    Приведенные команды проверяют путь к профилю Windows PowerShell. 
    
    Первая команда проверяет, существуют ли все элементы пути. Вторая команда п
    роверяет правильность синтаксиса заданного пути. В данном случае путь задан
     неверно (FALSE), однако его синтаксис верен (TRUE). В приведенных командах
     используется автоматическая переменная $profile, указывающая местоположени
    е профиля (даже в том случае, когда его не существует).
    
    Дополнительные сведения об автоматических переменных см. в разделе about_Au
    tomatic_Variables.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>test-path -path "C:\CAD\Commercial Buildings\*" -exclude *.dwg
    
    
    Описание
    -----------
    Эта команда сообщает, имеются ли в каталоге Commercial Buildings какие-либо
     файлы, отличные от DWG-файлов. 
    
    Для задания пути используется параметр Path. Поскольку путь содержит пробел
    , он заключен в кавычки. Звездочка в конце пути указывает обозначает содерж
    имое каталога Commercial Buildings. (В случае длинного пути, такого как это
    т, введите первые несколько букв пути, а затем заполните путь с помощью кла
    виши TAB.)
    
    Параметр Exclude используется для задания файлов, исключаемых из проверки. 
    
    В данном случае, поскольку каталог содержит только DWG-файлы, результат вып
    олнения команды — FALSE.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>test-path -path $profile -pathtype leaf
    
    
    Описание
    -----------
    Эта команда сообщает, указывает ли хранящийся в переменной $profile путь на
     файл. В данном случае, поскольку профиль Windows PowerShell представляет с
    обой файл с расширением .ps1, командлет возвращает TRUE.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>test-path -path HKLM:\Software\Microsoft\PowerShell\1\ShellIds\Micros
    oft.PowerShell
    
    TRUE
    
    C:\PS> test-path -path HKLM:\Software\Microsoft\PowerShell\1\ShellIds\Micro
    soft.PowerShell\ExecutionPolicy
    FALSE
    
    
    Описание
    -----------
    На примере этих команд показано применение командлета Test-Path к поставщик
    у Registry Windows PowerShell. 
    
    Первая команда проверяет правильность пути к разделу реестра Microsoft.Powe
    rShell на компьютере. Если оболочка Windows PowerShell установлена правильн
    о, командлет возвратит TRUE.
    
    Командлет Test-Path корректно работает не со всеми поставщиками Windows Pow
    erShell. Например, Test-Path можно использовать для проверки пути к разделу
     реестра, однако при использовании его для проверки пути к записи реестра о
    н всегда будет возвращать FALSE, даже если запись присутствует.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113418
    about_Providers 
    Convert-Path 
    Split-Path 
    Resolve-Path 
    Join-Path 



Test-WSMan

ИМЯ
    Test-WSMan
    
ОПИСАНИЕ
    Проверяет, запущена ли служба WinRM на локальном или удаленном компьютере.
    
СИНТАКСИС
    Test-WSMan [[-ComputerName] <string>] [-Authentication <Authentication>] [-
    Credential <PSCredential>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Test-WSMan отправляет идентификационный запрос для проверки того,
     запущена ли служба WinRM на локальном или удаленном компьютере. Если служб
    а на проверяемом компьютере запущена, командлет отображает схему удостовере
    ний WS-Management, версию протокола, и поставщика и версию проверяемой служ
    бы.
    
ПАРАМЕТРЫ
    -Authentication <Authentication>
        Задает механизм проверки подлинности, используемый на сервере.  Возможн
        ые значения:
        - Basic: при использовании схемы Basic имя пользователя и пароль переда
        ются серверу или прокси-серверу открытым текстом.
        - Default: использовать метод проверки подлинности, реализованный прото
        колом WS-Management. 
        - Digest: при использовании схемы Digest проверка подлинности проводитс
        я по принципу "запрос-ответ". В качестве запроса поступает строка данны
        х, указанная сервером.
        - Kerberos: выполняется взаимная проверка подлинности компьютера и серв
        ера с использованием сертификатов Kerberos.
        - Negotiate: при использовании схемы Negotiate между компьютером и серв
        ером или прокси происходит обмен данными по принципу "запрос-ответ", в 
        ходе которого определяется схема, используемая для проверки подлинности
        . Например, это значение параметра разрешает согласование одного из дву
        х методов проверки подлинности: Kerberos или NTLM.
        - CredSSP: использовать проверку подлинности CredSSP (Credential Securi
        ty Service Provider), при которой пользователю разрешается делегировать
         учетные данные. Этот вариант предназначен для команд, которые запускаю
        тся на одном удаленном компьютере, но собирают данные с других удаленны
        х компьютеров или выполняют на них дополнительные команды. 
        
        Внимание При проверке подлинности CredSSP учетные данные пользователя 
        делегируются с локального компьютера на удаленный компьютер. Такой подх
        од повышает угрозы безопасности удаленных операций. Если безопасность у
        даленного компьютера нарушена, при передаче на него учетных данных эти 
        данные могут быть использованы для управления сетевым сеансом.
        
        Важно: если параметр проверки подлинности не указан, запрос командлета 
        Test-WSMan будет отправлен на удаленный компьютер анонимно (без проверк
        и подлинности).  Анонимные запросы Test-WSMan не возвращают никаких све
        дений, относящихся к версии операционной системы,  т. е. Test-WSMan ото
        бражает нулевые значения вместо версий операционной системы и пакета об
        новления (OS: 0.0.0 SP: 0.0).
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string>
        Задает компьютер, к которому требуется применить операцию управления. З
        начение может быть полным доменным именем, именем NetBIOS или IP-адресо
        м. Чтобы задать локальный компьютер, введите имя компьютера, "localhost
        " или точку (.). Локальный компьютер используется по умолчанию. Если по
        льзователь и удаленный компьютер находятся в разных доменах, необходимо
         использовать полное доменное имя.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                localhost
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Credential <PSCredential>
        Задает учетную запись пользователя, который располагает разрешением для
         выполнения этого действия. По умолчанию используется значение "Текущий
         пользователь". Введите имя пользователя, например "User01", "Domain01\
        User01" или "User@Domain.com". Или укажите объект PSCredential, наприме
        р возвращенный командлетом Get-Credential. При вводе имени пользователя
         появится приглашение ввести пароль.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не принимает никаких входных данных.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        По умолчанию командлет Test-WSMan отправляет запрос службе WinRM без пр
        оверки подлинности и не возвращает никаких сведений, относящихся к верс
        ии операционной системы, т. е. отображает нулевые значения вместо верси
        й операционной системы и пакета обновления (OS: 0.0.0 SP: 0.0).
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>test-wsman
    
    wsmid           : http://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidenti
    ty.xsd
    ProtocolVersion : http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd
    ProductVendor   : Microsoft Corporation
    ProductVersion  : OS: 0.0.0 SP: 0.0 Stack: 2.0
    
    
    Описание
    -----------
    Эта команда определяет, запущена ли служба WinRM на локальном компьютере ил
    и на удаленном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>test-wsman -computername server01
    
    wsmid           : http://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidenti
    ty.xsd
    ProtocolVersion : http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd
    ProductVendor   : Microsoft Corporation
    ProductVersion  : OS: 0.0.0 SP: 0.0 Stack: 2.0
    
    
    Описание
    -----------
    Эта команда определяет, запущена ли служба WinRM на компьютере с именем "se
    rver01".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>test-wsman -authentication default
    
    wsmid           : http://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidenti
    ty.xsd
    ProtocolVersion : http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd
    ProductVendor   : Microsoft Corporation
    ProductVersion  : OS: 6.0.6001 SP: 1.0 Stack: 2.0
    
    
    Описание
    -----------
    Эта команда проверяет, запущена ли служба WS-Management (WinRM) на локально
    м компьютере, с использованием параметра проверки подлинности.
    
    Использование параметра проверки подлинности позволяет командлету Test-WSMa
    n возвратить версию операционной системы.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>test-wsman -computername server01 -authentication default
    
    wsmid           : http://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidenti
    ty.xsd
    ProtocolVersion : http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd
    ProductVendor   : Microsoft Corporation
    ProductVersion  : OS: 6.1.7021 SP: 0.0 Stack: 2.0
    
    
    Описание
    -----------
    Эта команда проверяет, запущена ли служба WS-Management (WinRM) на локально
    м компьютере с именем "server01", с использованием параметра проверки подли
    нности.
    
    Использование параметра проверки подлинности позволяет командлету Test-WSMa
    n возвратить версию операционной системы.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkId=141464
    Connect-WSMan 
    Disable-WSManCredSSP 
    Disconnect-WSMan 
    Enable-WSManCredSSP 
    Get-WSManCredSSP 
    Get-WSManInstance 
    Invoke-WSManAction 
    New-WSManInstance 
    New-WSManSessionOption 
    Remove-WSManInstance 
    Set-WSManInstance 
    Set-WSManQuickConfig 



Trace-Command

ИМЯ
    Trace-Command
    
ОПИСАНИЕ
    Настраивает и запускает трассировку указанного выражения или команды.
    
СИНТАКСИС
    Trace-Command [-Command] <string> [-ArgumentList <Object[]>] [-Name] <strin
    g[]> [[-Option] {None | Constructor | Dispose | Finalizer | Method | Proper
    ty | Delegates | Events | Exception | Lock | Error | Errors | Warning | Ver
    bose | WriteLine | Data | Scope | ExecutionFlow | Assert | All}] [-Debugger
    ] [-FilePath <string>] [-Force] [-InputObject <psobject>] [-ListenerOption 
    {None | LogicalOperationStack | DateTime | Timestamp | ProcessId | ThreadId
     | Callstack}] [-PSHost] [<CommonParameters>]
    
    Trace-Command [-Expression] <scriptblock> [-Name] <string[]> [[-Option] {No
    ne | Constructor | Dispose | Finalizer | Method | Property | Delegates | Ev
    ents | Exception | Lock | Error | Errors | Warning | Verbose | WriteLine | 
    Data | Scope | ExecutionFlow | Assert | All}] [-Debugger] [-FilePath <strin
    g>] [-Force] [-InputObject <psobject>] [-ListenerOption {None | LogicalOper
    ationStack | DateTime | Timestamp | ProcessId | ThreadId | Callstack}] [-PS
    Host] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Trace-Command настраивает и запускает трассировку указанного выра
    жения или команды. Он аналогичен командлету Set-TraceSource за исключением 
    того, что его действие распространяется только на указанную команду.
    
ПАРАМЕТРЫ
    -ArgumentList <Object[]>
        Указывает параметры и значения параметров для трассируемой команды. Псе
        вдоним ArgumentList — Args. Эта функция особенно полезна для отладки ди
        намических параметров.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Command <string>
        Указывает команду, обрабатываемую во время трассировки.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Debugger [<SwitchParameter>]
        Отправляет выходные данные трассировки в отладчик. Выходные данные можн
        о просмотреть в любом отладчике, работающем в пользовательском режиме и
        ли режиме ядра, или в Visual Studio. Данный параметр также задает просл
        ушиватель трассировки по умолчанию.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Expression <scriptblock>
        Указывает выражение, обрабатываемое во время трассировки. Заключайте вы
        ражение в фигурные скобки ({}).
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -FilePath <string>
        Записывает выходные данные трассировки в указанный файл. Данный парамет
        р также выбирает прослушиватель трассировки файла.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Force [<SwitchParameter>]
        Позволяет командлету добавлять данные трассировки в файл, доступный тол
        ько для чтения. Используется с параметром FilePath. Даже при использова
        нии параметра Force командлет не может переопределить ограничения безоп
        асности.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Указывает ввод для выражения, обрабатываемого во время трассировки. 
        
        Можно ввести переменную, которая представляет ввод, принимаемый выражен
        ием, или передать объект по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -ListenerOption <TraceOptions>
        Добавляет необязательные данные в префикс каждого сообщения трассировки
        . Допустимые значения: None, LogicalOperationStack, DateTime, Timestamp
        , ProcessId, ThreadId и Callstack. По умолчанию используется "None".
        
        Чтобы указать несколько параметров, разделите их запятыми без пробелов 
        и заключите их в кавычки, например так: "ProcessID,ThreadID".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Определяет компоненты Windows PowerShell для трассировки. Введите имя о
        бъекта трассировки для каждого компонента. Подстановочные знаки разреше
        ны. Чтобы найти источники трассировки на компьютере, введите команду "G
        et-TraceSource".
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Option <PSTraceSourceOptions>
        Определяет тип трассируемых событий. 
        
        Список допустимых значений: None, Constructor, Dispose, Finalizer, Meth
        od, Property, Delegates, Events, Exception, Lock, Error, Errors, Warnin
        g, Verbose, WriteLine, Data, Scope, ExecutionFlow, Assert и All. По умо
        лчанию используется "All". 
        
        Следующие значения являются комбинацией других значений:
        
        -- ExecutionFlow: (Constructor, Dispose, Finalizer, Method, Delegates, 
        Events и Scope)
        
        -- Data: (Constructor, Dispose, Finalizer, Property, Verbose и WriteLin
        e)
        
        -- Errors: (Error и Exception).
        
        Чтобы указать несколько параметров, разделите их запятыми без пробелов 
        и заключите их в кавычки, например так: "Constructor,Dispose".
        
        Требуется?                    false
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PSHost [<SwitchParameter>]
        Отправляет выходные данные трассировки в основное приложение Windows Po
        werShell. Данный параметр также задает прослушиватель трассировки PSHos
        t.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Объекты, представляющие ввод выражения можно передавать командлету Trac
        e-Command по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Возвращает трассировку команды в потоке отладки.
    
    
ПРИМЕЧАНИЯ
    
    
        Трассировка — это метод, используемый разработчиками для отладки и изме
        нения программы. Во время трассировки программа формирует подробные соо
        бщения о каждом шаге внутренней обработки. 
        
        Командлеты трассировки Windows PowerShell созданы для разработчиков Win
        dows PowerShell, но доступны всем пользователям. Они позволяют отслежив
        ать практически все аспекты функциональности оболочки. 
        
        Чтобы найти компоненты Windows PowerShell, поддерживающие трассировку, 
        введите команду Get-Help Get-TraceSource.
        
        "Источник трассировки" является частью каждого компонента Windows Power
        Shell, который управляет трассировкой и формирует сообщения трассировки
         для компонента. Чтобы выполнить трассировку компонента, нужно определи
        ть его источник трассировки.
        
        "Прослушиватель трассировки" получает выходные данные трассировки и пок
        азывает их пользователю. Трассировочные данные можно отправить отладчик
        у, работающему в пользовательском режиме или режиме ядра, главному прил
        ожению, на консоль, в файл или пользовательскому прослушивателю, произв
        одному от класса System.Diagnostics.TraceListener.
        
        Если указан параметр Command, оболочка Windows PowerShell обрабатывает 
        эту команду так же, как если бы она входила в состав конвейера. Наприме
        р, обнаружение команды не повторяется для каждого поступающего объекта.
        
        Имена параметров Name, Expression, Option и Command указывать необязате
        льно. Если в команде отсутствуют имена параметров, безымянные значения 
        параметров необходимо указывать в следующем порядке: Name, Expression, 
        Option или Name, Command,-Option. При указании имен параметры могут сле
        довать в любом порядке.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>trace-command -name metadata,parameterbinding,cmdlet -expression {get
    -process notepad} -pshost
    
    
    Описание
    -----------
    Эта команда инициирует трассировку обработки метаданных, привязки параметро
    в, создания командлетов и уничтожения выражения "get-process notepad". Пара
    метр Name используется в ней для указания источников трассировки, параметр 
    Expression — для указания команды, а параметр PSHost — для отправления выво
    да на консоль. Так как никакие параметры трассировки и прослушивателя в это
    й команде не указаны, используются значения этих параметров по умолчанию: "
    All" и "None" соответственно.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>trace-command -name commandprocessor,pipelineprocessor -command get-a
    lias -argumentlist "ghy" -option executionflow -listenerOption "timestamp,c
    allstack" -filepath c:\test\debug.txt
    
    
    Описание
    -----------
    Эта команда запускает трассировку обработчика команд и обработчика конвейер
    а при обработке команды "get-alias cd". 
    
    Параметр Name указывает в ней источники трассировки, Command — команду, Arg
    umentList — параметры команды Get-Alias, Option — параметры трассировки, а 
    ListenerOption — поля в префиксе сообщения трассировки. Параметр FilePath п
    ередает вывод в файл C:\Test\Debug.txt.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$a = "i*"
    
    C:\PS> trace-command parameterbinding {get-alias $input} -pshost -inputobje
    ct $a
    
    
    Описание
    -----------
    Эта команда выполняет трассировку действий операций ParameterBinding оболоч
    ки Windows PowerShell при обработке выражения Get-Alias, принимающего ввод 
    по конвейеру.
    
    В команде Trace-Command параметр InputObject передает объект выражению, обр
    абатываемому во время трассировки. 
    
    Первая команда сохраняет строку "i*" в переменной $a. Во второй команде исп
    ользуется командлет Trace-Command с источником трассировки ParameterBinding
    . Параметр PSHost отправляет вывод на консоль. 
    
    Обрабатываемым выражением является "get-alias $input", в котором переменная
     $input связана с параметром InputObject. Параметр InputObject передает это
    му выражению переменную $a. В результате во время трассировки обрабатываетс
    я команда "get-alias -inputobject $a" или "$a | get-alias".
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113419
    Get-TraceSource 
    Set-TraceSource 



Undo-Transaction

ИМЯ
    Undo-Transaction
    
ОПИСАНИЕ
    Откатывает активную транзакцию.
    
СИНТАКСИС
    Undo-Transaction [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Undo-Transaction откатывает активную транзакцию. При откате транз
    акции изменения, внесенные командами в транзакции, отменяются, и данные вос
    станавливаются в своем исходном виде.
    
    Если в транзакции участвует несколько подписчиков, команда Undo-Transaction
     откатывает всю транзакцию для всех подписчиков.
    
    По умолчанию транзакции откатываются автоматически, если какая-либо из кома
    нд в транзакции выдает ошибку. Тем не менее, можно запускать транзакции с д
    ругим значением параметра RollbackPreference и с помощью этого командлета о
    ткатывать активную транзакцию в любой момент. 
    
    Командлет Undo-Transaction входит в набор командлетов, поддерживающих обраб
    отку транзакций в Windows PowerShell. Дополнительные сведения см. в разделе
     about_Transactions.
    
ПАРАМЕТРЫ
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Откатить транзакцию, которая была зафиксирована, невозможно.
        
        Откатить можно только активную транзакцию. Чтобы откатить другую незави
        симую транзакцию, необходимо сначала зафиксировать или откатить активну
        ю транзакцию.
        
        При выполнении отката транзакция заканчивается. Чтобы снова использоват
        ь транзакцию, необходимо запустить новую транзакцию.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>undo-transaction
    
    
    Описание
    -----------
    Эта команда откатывает текущую (активную) транзакцию.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>cd hkcu:\software
    
    PS HKCU:\Software> start-transaction
    PS HKCU:\Software> new-item MyCompany -usetransaction
    PS HKCU:\Software> undo-transaction
    
    
    Описание
    -----------
    Эта команда запускает транзакцию и затем откатывает ее. В результате никаки
    е изменения в реестр не вносятся.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>cd hkcu:\software
    
    PS HKCU:\Software> start-transaction
    PS HKCU:\Software> new-item MyCompany -usetransaction
    PS HKCU:\Software> get-transaction
    
    
    RollbackPreference   SubscriberCount   Status
    ------------------   ---------------   -----
    Error                1                 Active
    
    
    PS HKCU:\Software> start-transaction
    PS HKCU:\Software> get-transaction
    
    RollbackPreference   SubscriberCount   Status
    ------------------   ---------------   -----
    Error                2                 Active
    
    PS HKCU:\Software> undo-transaction
    PS HKCU:\Software> get-transaction
    
    RollbackPreference   SubscriberCount   Status
    ------------------   ---------------   -----
    Error                0                 RolledBack
    
    
    Описание
    -----------
    Этот пример показывает, что при откате транзакции каким-либо из подписчиков
     происходит откат всей транзакции для всех подписчиков.
    
    Первая команда изменяет текущее местоположение на раздел реестра HKCU:\Soft
    ware. 
    
    Вторая команда запускает транзакцию. 
    
    Третья команда с помощью командлета New-Item создает новый раздел реестра. 
    В ней используется параметр UseTransaction для включения изменения в транза
    кцию.
    
    Четвертая команда с помощью командлета Get-Transaction получает активную тр
    анзакцию. Обратите внимание, что состояние транзакции — активное (Status = 
    Active), а количество подписчиков равно 1.
    
    В пятой команде снова используется командлет Start-Transaction. Как правило
    , 
    запуск транзакции во время выполнения другой транзакции происходит в случая
    х, когда используемый в главной транзакции скрипт предполагает завершение с
    обственной входящей в него транзакции. (Этот пример выполняется в интеракти
    вном режиме, чтобы можно было рассмотреть его поэтапно).
    
    При вводе команды Start-Transaction во время выполнения другой транзакции к
    оманды присоединяются к существующей транзакции в качестве нового "подписчи
    ка", и количество подписчиков увеличивается.
    
    Шестая команда с помощью командлета Get-Transaction получает активную транз
    акцию. Обратите внимание, что количество подписчиков теперь равно 2.
      
    Седьмая команда с помощью командлета Undo-Transaction откатывает транзакцию
    . Эта команда не возвращает никаких объектов.
    
    Последняя команда — это команда Get-Transaction, которая получает активную 
    (в данном случае — последнюю из активных) транзакцию. Из результатов видно,
     что выполнен откат транзакции и что количество подписчиков равно 0, т. е. 
    откат транзакции выполнен для всех подписчиков.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135268
    about_Transactions 
    about_Providers 
    Start-Transaction 
    Get-Transaction 
    Complete-Transaction 
    Use-Transaction 



Unregister-Event

ИМЯ
    Unregister-Event
    
ОПИСАНИЕ
    Отменяет подписку на событие.
    
СИНТАКСИС
    Unregister-Event [-SubscriptionId] <int> [-Force] [-Confirm] [-WhatIf] [<Co
    mmonParameters>]
    
    Unregister-Event [-SourceIdentifier] <string> [-Force] [-Confirm] [-WhatIf]
     [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Unregister-Event отменяет подписку на событие, созданную с помощь
    ю командлета Register-EngineEvent, Register-ObjectEvent или Register-WmiEve
    nt.
    
    При отмене подписки на событие подписчик удаляется из сеанса, а соответству
    ющие события больше не добавляются в очередь событий. Если отменить подписк
    у на событие, созданную с помощью командлета New-Event, новое событие также
     удаляется из сеанса. 
    
    Командлет Unregister-Event не удаляет события из очереди событий. Для удале
    ния событий используется командлет Remove-Event.
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Отменяет все подписки, включая подписки, которые были скрыты с помощью 
        параметра SupportEvent командлетов Register-ObjectEvent, Register-WmiEv
        ent и Register-EngineEvent.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SourceIdentifier <string>
        Отменяет подписки на события, имеющие заданный идентификатор источника.
         
        
        В каждую команду необходимо включать параметр SourceIdentifier или Subs
        criptionId.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -SubscriptionId <int>
        Отменяет подписки на события, имеющие заданный идентификатор подписки.
        
        В каждую команду необходимо включать параметр SourceIdentifier или Subs
        criptionId.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSEventSubscriber
        Выходные данные командлета Get-EventSubscriber можно передать командлет
        у Unregister-Event по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        События, подписки на события и очередь событий существуют только в рамк
        ах текущего сеанса. Если завершить текущий сеанс, очередь событий будет
         очищена и подписка на события будет отменена.
        
        Командлет Unregister-Event не позволяет удалять события, созданные с по
        мощью командлета New-Event, если только подписка на событие не была соз
        дана с помощью командлета Register-EngineEvent. Чтобы удалить из сеанса
         пользовательское событие, необходимо удалить его программным путем или
         закрыть сеанс.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>unregister-event -sourceIdentifier ProcessStarted
    
    
    Описание
    -----------
    Эта команда отменяет подписку на событие, имеющее идентификатор источника "
    ProcessStarted".
    
    Чтобы определить идентификатор источника события, используйте командлет Get
    -Event. Чтобы определить идентификатор подписки на событие, используйте ком
    андлет Get-EventSubscriber.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>unregister-event -subscriptionId 2
    
    
    Описание
    -----------
    Эта команда отменяет подписку на событие, имеющее идентификатор подписки, р
    авный 2.
    
    Чтобы определить идентификатор подписки на событие, используйте командлет G
    et-EventSubscriber.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-eventsubscriber -force | unregister-event -force
    
    
    Описание
    -----------
    Эта команда отменяет все подписки в сеансе. 
    
    Эта команда использует командлет Get-EventSubscriber, чтобы получить все об
    ъекты подписчиков на события в сеансе, включая подписчики, которые были скр
    ыты с помощью параметра SupportEvent командлетов регистрации событий. 
    
    С помощью оператора конвейера (|) объекты подписок передаются командлету Un
    register-Event, который удаляет их из сеанса. Для завершения процедуры кома
    ндлет Unregister-Event необходимо указывать с параметром Force.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135269
    Register-ObjectEvent 
    Register-EngineEvent 
    Register-WmiEvent 
    Unregister-Event 
    Get-Event 
    New-Event 
    Remove-Event 
    Wait-Event 
    Get-EventSubscriber 



Unregister-PSSessionConfiguration

ИМЯ
    Unregister-PSSessionConfiguration
    
ОПИСАНИЕ
    Удаляет зарегистрированные конфигурации сеанса с компьютера.
    
СИНТАКСИС
    Unregister-PSSessionConfiguration [-Name] <string> [-Force] [-NoServiceRest
    art] [-Confirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Unregister-PSSessionConfiguration удаляет зарегистрированные конф
    игурации сеанса с компьютера. Этот расширенный командлет предназначен для и
    спользования системными администраторами и позволяет управлять конфигурация
    ми сеансов для пользователей.
    
    Если по ошибке были удалены конфигурации сеанса по умолчанию Microsoft.Powe
    rShell или Microsoft.PowerShell32, для их восстановления воспользуйтесь ком
    андлетом Enable-PSRemoting.
    
ПАРАМЕТРЫ
    -Force [<SwitchParameter>]
        Подавляет все запросы пользователю и перезапускает службу WinRM без зап
        роса подтверждения. Перезапуск службы обеспечивает вступление изменений
         конфигурации в силу.
        
        Чтобы предотвратить перезапуск и подавить запрос на перезапуск, использ
        уйте параметр NoServiceRestart.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Name <string>
        Задает имена удаляемых конфигураций сеансов. Введите одно или несколько
         имен конфигурации. Подстановочные знаки разрешены. Это обязательный па
        раметр.
                                 
        Кроме того, можно передать объект конфигурации сеанса командлету Unregi
        ster-PSSessionConfiguration по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -NoServiceRestart [<SwitchParameter>]
        Не перезапускает службу WinRM и подавляет запрос на перезапуск службы.
        
        По умолчанию при вводе команды Unregister-PSSessionConfiguration предла
        гается перезапустить службу WinRM, чтобы изменения вступили в силу. Пок
        а служба WinRM не будет перезапущена, пользователи все равно могут испо
        льзовать незарегистрированную конфигурацию сеанса, хотя командлет Get-P
        SSessionConfiguration не находит ее.
        
        Чтобы перезапустить службу WinRM без запроса подтверждения, используйте
         параметр Force. Чтобы перезапустить службу WinRM вручную, используйте 
        командлет Restart-Service.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Microsoft.PowerShell.Commands.PSSessionConfigurationCommands#PSSessionConfi
    guration
        Объект конфигурации сеанса можно передать по конвейеру от командлета Ge
        t-PSSessionConfiguration командлету Unregister-PSSessionConfiguration.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать этот командлет в Windows Vista, Windows Server 2008 
        и более поздних версиях Windows, необходимо запускать Windows PowerShel
        l командой "Запуск от имени администратора".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>unregister-pssessionconfiguration -name MaintenanceShell
    
    
    Описание
    -----------
    Эта команда удаляет с компьютера конфигурацию сеанса MaintenanceShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>unregister-pssessionconfiguration -maintenanceShell -force
    
    
    Описание
    -----------
    Эта команда удаляет с компьютера конфигурацию сеанса MaintenanceShell. В ко
    манде используется параметр Force, чтобы подавить все сообщения пользовател
    ю и перезапустить службу WinRM без запроса подтверждения.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>unregister-pssessionconfiguration -name *
    
    C:\PS> get-pssessionconfiguration -name * | unregister-pssessionconfigurati
    on
    
    
    Описание
    -----------
    Эти команды удаляют с компьютера все конфигурации сеансов. Эти команды взаи
    мозаменяемы, и их выполнение приводит к одинаковым результатам.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>unregister-pssessionconfiguration -name maintenanceShell -noServiceRe
    start
    
    C:\PS> get-pssessionconfiguration -name maintenanceShell
    
    Get-PSSessionConfiguration -name maintenanceShell : No Session Configuratio
    n matches criteria "maintenanceShell".
        + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorEx
    ception
        + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorExcep
    tion
    
    C:\PS> new-pssession -configurationName MaintenanceShell
    
     Id Name      ComputerName    State    Configuration         Availability
     -- ----      ------------    -----    -------------         ------------
      1 Session1  localhost       Opened   MaintenanceShell      Available
    
    C:\PS> restart-service winrm
    
    C:\PS> new-pssession -configurationName MaintenanceShell
    [localhost] Connecting to remote server failed with the following error mes
    sage : The WS-Management service cannot process the request. The resource
    URI (http://schemas.microsoft.com/powershell/MaintenanceShell) was not foun
    d in the WS-Management catalog. The catalog contains the metadata that desc
    ribes resour
    ces, or logical endpoints. For more information, see the about_Remote_Troub
    leshooting Help topic.
        + CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace
    :RemoteRunspace) [], PSRemotingTransportException
        + FullyQualifiedErrorId : PSSessionOpenFailed
    
    
    Описание
    -----------
    В этом примере показан результат использования параметра NoServiceRestart к
    омандлета Unregister-PSSessionConfiguration. Этот параметр предназначен для
     предотвращения перезапуска службы, который мог бы нарушить работу каких-ли
    бо служб на компьютере.
    
    Первая команда удаляет конфигурацию сеанса MaintenanceShell с помощью коман
    длета Unregister-PSSessionConfiguration. Однако так как в команде используе
    тся параметр NoServiceRestart, служба WinRM не перезапускается и изменения 
    не полностью вводятся в действие.
    
    Вторая команда получает сеанс MaintenanceShell с помощью командлета Get-PSS
    essionConfiguration. Так как сеанс был удален из таблицы ресурсов WS-Manage
    ment, командлет Get-PSSession не может вернуть его.
    
    Третья команда использует командлет New-PSSession для создания на локальном
     компьютере сеанса, который использует конфигурацию MaintenanceShell. Коман
    да выполняется успешно.
    
    Четвертая команда с помощью командлета Restart-Service перезапускает службу
     WinRM. 
    
    Пятая команда снова использует командлет New-PSSession для создания сеанса,
     который использует конфигурацию MaintenanceShell. На этот раз сеанс дает с
    бой, так как конфигурация MaintenanceShell была удалена.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=144308
    about_Session_Configurations 
    Disable-PSSessionConfiguration 
    Enable-PSSessionConfiguration 
    Get-PSSessionConfiguration 
    Register-PSSessionConfiguration 
    Set-PSSessionConfiguration 
    WS-Management Provider 



Update-FormatData

ИМЯ
    Update-FormatData
    
ОПИСАНИЕ
    Обновляет данные форматирования для текущего сеанса.
    
СИНТАКСИС
    Update-FormatData [[-AppendPath] <string[]>] [-PrependPath <string[]>] [-Co
    nfirm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Update-FormatData перезагружает данные форматирования из файлов ф
    орматирования в текущий сеанс. Этот командлет позволяет обновить данные фор
    матирования без перезапуска Windows PowerShell.
    
    Без параметров командлет Update-FormatData перезагружает файлы форматирован
    ия, которые он загрузил перед этим. С помощью параметров командлета Update-
    FormatData можно добавлять в сеанс новые файлы форматирования. 
    
    Файлы форматирования представляют собой текстовые файлы в формате XML с рас
    ширением имени файла format.ps1xml. Данные форматирования в этих файлах опр
    еделяют отображение объектов Microsoft .NET Framework в сеансе. 
    
    При запуске оболочки Windows PowerShell она загружает в сеанс данные формат
    ирования из файлов форматирования из каталога установки Windows PowerShell 
    ($pshome). С помощью командлета Update-FormatData можно перезагрузить данны
    е форматирования в текущий сеанс без перезапуска Windows PowerShell. Это бы
    вает удобно, если файл форматирования был добавлен или изменен, а прерывать
     сеанс нежелательно.
    
    Дополнительные сведения о файлах форматирования в Windows PowerShell см. в 
    разделе about_Format.ps1xml.
    
ПАРАМЕТРЫ
    -AppendPath <string[]>
        Добавляет в сеанс указанные файлы форматирования. Эти файлы загружаются
         после того, как Windows PowerShell загрузит встроенные файлы форматиро
        вания.
        
        При форматировании объектов .NET оболочка Windows PowerShell использует
         для каждого из типов .NET первое найденное для него определение формат
        ирования. Если используется параметр AppendPath, оболочка Windows Power
        Shell ищет данные во встроенных файлах, а лишь затем в добавляемых файл
        ах форматирования.
        
        Этот параметр служит для добавления файла, определяющего форматирование
         объектов .NET, которые не указаны во встроенных файлах форматирования.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PrependPath <string[]>
        Добавляет в сеанс указанные файлы форматирования. Эти файлы загружаются
         до того, как Windows PowerShell загрузит встроенные файлы форматирован
        ия.
        
        При форматировании объектов .NET оболочка Windows PowerShell использует
         для каждого из типов .NET первое найденное для него определение формат
        ирования. Если используется параметр PrependPath, оболочка Windows Powe
        rShell ищет данные в добавляемых файлах, а лишь затем во встроенных фай
        лах форматирования.
        
        Этот параметр служит для добавления файла, определяющего форматирование
         объектов .NET, которые также указаны во встроенных файлах форматирован
        ия.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую добавляемый путь, можно передать командлету Update-F
        ormatData по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        Кроме того, командлет Update-FormatData обновляет данные форматирования
         для команд в сеансе, которые не были импортированы из модулей. При изм
        енении файла форматирования для модуля можно выполнить команду Update-F
        ormatData, чтобы обновить данные форматирования для импортированных ком
        анд. Импортировать модуль повторно не требуется.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>update-formatdata
    
    
    Описание
    -----------
    Эта команда перезагружает файлы форматирования, которые были загружены ране
    е.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>update-formatdata -appendpath trace.format.ps1xml, log.format.ps1xml
    
    
    Описание
    -----------
    Эта команда перезагружает в сеанс файлы форматирования, в том числе два нов
    ых файла: Trace.format.ps1xml и Log.format.ps1xml. 
    
    Поскольку в команде используется параметр AppendPath, данные форматирования
     из новых файлов загружаются после данных форматирования из встроенных файл
    ов. 
    
    Параметр AppendPath используется потому, что новые файлы содержат данные фо
    рматирования для объектов, не указанных во встроенных файлах.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>update-formatdata -prependPath c:\test\NewFiles.format.ps1xml
    
    # Edit the NewFiles.format.ps1 file.
    
    C:\PS> update-formatdata
    
    
    Описание
    -----------
    В этом примере показано, как перезагрузить файл форматирования после его из
    менения.
    
    Первая команда добавляет в сеанс файл NewFiles.format.ps1xml. В ней использ
    уется параметр PrependPath, поскольку файл содержит данные форматирования д
    ля объектов, указанных во встроенных файлах.
    
    После добавления файла NewFiles.format.ps1xml и его тестирования в сеансе а
    втор изменяет файл.
    
    Вторая команда с помощью командлета Update-FormatData перезагружает файлы ф
    орматирования. Поскольку ранее был загружен файл NewFiles.format.ps1xml, ко
    мандлет Update-FormatData автоматически перезагружает его без каких-либо па
    раметров.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113420



Update-List

ИМЯ
    Update-List
    
ОПИСАНИЕ
    Добавляет и удаляет элементы в значении свойства, содержащего коллекцию объ
    ектов.
    
СИНТАКСИС
    Update-List [-Add <Object[]>] [-Remove <Object[]>] [[-Property] <string>] [
    -InputObject <psobject>] [<CommonParameters>]
    
    Update-List -Replace <Object[]> [[-Property] <string>] [-InputObject <psobj
    ect>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Update-List добавляет и удаляет элементы в значении свойства объе
    кта, а затем возвращает измененный объект. Этот командлет предназначен для 
    использования со свойствами, которые содержат коллекции объектов.
    
    Параметры Add и Remove позволяют добавлять и удалять отдельные элементы кол
    лекции. Параметр Replace служит для замены всей коллекции.
    
    Если в команде не указать свойство, то командлет Update-List вместо обновле
    ния объекта вернет объект, описывающий обновление. Объект обновления можно 
    передавать командлетам, которые изменяют объекты, например командлетам Set-
    *. 
    
    Этот командлет работает только в том случае, если обновляемое свойство подд
    ерживает интерфейс IList, используемый командлетом Update-List. Кроме того,
     интерфейс IList должны поддерживать все командлеты Set-*, принимающие обно
    вление. Базовые командлеты, устанавливаемые вместе с Windows PowerShell, не
     поддерживают этого интерфейса. Чтобы определить, поддерживает ли командлет
     использование командлета Update-List, обратитесь к справке по соответствую
    щему командлету.
    
ПАРАМЕТРЫ
    -Add <Object[]>
        Задает значения свойств, которые необходимо добавить в коллекцию. Введи
        те значения свойств в том порядке, в котором они должны располагаться в
         коллекции.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Задает объекты для обновления. Кроме того, объекты для обновления можно
         передавать командлету Update-List по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Property <string>
        Определяет свойство, которое содержит обновляемую коллекцию. Если опуст
        ить этот параметр, командлет Update-List вместо изменения объекта верне
        т объект, представляющий изменение.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Remove <Object[]>
        Задает значения свойств, которые необходимо удалить из коллекции.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Replace <Object[]>
        Задает новую коллекцию. Этот параметр заменяет все элементы в исходной 
        коллекции новыми элементами, которые определяются этим параметром.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Объекты для обновления можно передавать командлету Update-List по конве
        йеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Objects или System.Management.Automation.PSListModifier
        Командлет Update-List возвращает обновленный объект или объект, который
         представляет обновление.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-mailbox | update-list -Property aliases -Add "A","B" -Remove "X",
    "Y" | set-mailbox
    
    
    Описание
    -----------
    Эта команда добавляет A и B и удаляет X и Y из свойства Aliases почтового я
    щика. 
    
    Команда использует для получения почтового ящика сервера Microsoft Exchange
     Server командлет Get-MailBox. Оператор конвейера передает объект почтового
     ящика командлету Update-List. 
    
    Команда Update-List использует параметр Property, чтобы показать, что обнов
    ляется свойство Aliases, и параметры Add и Remove, чтобы задать элементы, к
    оторые добавляются в коллекцию и удаляются из нее. Свойство Aliases удовлет
    воряет условиям применения командлета Update-List, поскольку оно содержит к
    оллекцию объектов Microsoft .NET Framework и имеет методы Add и Remove.
    
    Командлет Update-List возвращает обновленный почтовый ящик, который по конв
    ейеру передается командлету Set-MailBox, изменяющему почтовый ящик.
    
    Дополнительные сведения о командлете Get-Mailbox см. в разделе http://go.mi
    crosoft.com/fwlink/?LinkId=111536.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$m = get-mailbox
    
    C:\PS> update-list -InputObject $m -Property aliases -Add "A","B" -Remove "
    X", "Y" | set-mailbox
    
    
    Описание
    -----------
    Эта команда добавляет A и B в значение свойства Aliases почтового ящика и у
    даляет оттуда элементы X и Y. Результат выполнения этой команды совпадает с
     результатом предыдущей команды, однако она имеет несколько иной формат.
    
    Команда с помощью командлета Get-MailBox получает почтовый ящик и сохраняет
     его в переменной $m. Для задания почтового ящика эта команда использует па
    раметр InputObject командлета Update-List. Значением параметра InputObject 
    является почтовый ящик из переменной $m. Команда использует параметр Proper
    ty, чтобы показать, что обновляется свойство Aliases, и параметры Add и Rem
    ove, чтобы задать элементы, которые добавляются в свойство Aliases и удаляю
    тся из него.
    
    Команда использует оператор (|), чтобы передать обновленный объект почтовог
    о ящика командлету Set-Mailbox, изменяющему почтовый ящик.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-mailbox | set-mailbox -alias (update-list -Add "A", "B" -Remove "
    X","Y")
    
    
    Описание
    -----------
    Эта команда добавляет A и B в значение свойства Aliases почтового ящика и у
    даляет оттуда элементы X и Y. Результат выполнения этой команды совпадает с
     результатом двух предыдущих команд, однако она использует для решения этой
     задачи другую процедуру. 
    
    Вместо обновления свойства Aliases почтового ящика перед его отправкой кома
    ндлету Set-Mailbox эта команда использует командлет Update-List, чтобы созд
    ать объект, представляющий изменение. Затем она передает изменение параметр
    а Alias командлету Set-Mailbox.
    
    Команда использует для получения почтового ящика командлет Get-MailBox. С п
    омощью оператора конвейера объект почтового ящика передается командлету Set
    -Mailbox, изменяющему почтовые ящики. 
    
    Для изменения свойства Aliases объекта почтового ящика команда использует п
    араметр Alias командлета Set-Mailbox. Значением параметра Alias является ко
    манда Update-List, создающая объект, который представляет обновление. Коман
    да Update-List заключена в круглые скобки, чтобы обеспечить ее выполнение д
    о определения значения параметра Alias. Почтовый ящик изменяется после заве
    ршения работы команды Set-Mailbox.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>update-list -InputObject $a -Property aliases -replace "A", "B" | set
    -mailbox
    
    
    Описание
    -----------
    Эта команда использует оператор Replace командлета Update-List, чтобы замен
    ить коллекцию в свойстве Aliases объекта в переменной $a новой коллекцией.
    
    Эта команда использует параметр InputObject, который в данном случае эквива
    лентен использованию конвейера для передачи переменной $a командлету Update
    -List.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113447
    Select-Object 



Update-TypeData

ИМЯ
    Update-TypeData
    
ОПИСАНИЕ
    Обновляет текущую расширенную конфигурацию типов, перезагружая файлы *.type
    s.ps1xml в память.
    
СИНТАКСИС
    Update-TypeData [[-AppendPath] <string[]>] [-PrependPath <string[]>] [-Conf
    irm] [-WhatIf] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Update-TypeData обновляет текущую расширенную конфигурацию типов,
     перезагружая файлы *.types.ps1xml в память. Обычно расширенные сведения о 
    типах загружаются тогда, когда они требуется оболочке Windows PowerShell. К
    омандлет Update-TypeData можно использовать для предварительной загрузки вс
    ех сведений о типах. Это особенно полезно при разработке собственных типов,
     когда нужно загрузить их с целью тестирования.
    
    Дополнительные сведения о файлах *types.ps1xml в Windows PowerShell см. в р
    азделе about_Types.ps1xml.
    
ПАРАМЕТРЫ
    -AppendPath <string[]>
        Задает путь к необязательным файлам PS1XML, которые будут включены в сп
        исок загружаемых файлов. Они обрабатываются после того, как будут загру
        жены встроенные файлы.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -PrependPath <string[]>
        Задает путь к необязательным файлам PS1XML, которые будут включены в сп
        исок загружаемых файлов. Однако эти файлы обрабатываются в том порядке,
         в котором они указаны, и перед загрузкой встроенных файлов.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Confirm [<SwitchParameter>]
        Запрашивает подтверждение перед выполнением команды.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -WhatIf [<SwitchParameter>]
        Описывает, что произойдет при выполнении команды, без ее фактического в
        ыполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую добавляемый путь, можно передать командлету Update-T
        ypeData по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>update-typedata
    
    
    Описание
    -----------
    Этот пример обновляет расширенную конфигурацию типов, используя сведения из
     файлов *.types.ps1xml.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>update-typedata -prependpath typesA.types.Ps1xml, typesB.types.Ps1xml
    
    
    Описание
    -----------
    Этот пример обновляет расширенную конфигурацию типов с использованием сведе
    ний из файлов *.types.ps1xml, обрабатывая в первую очередь файлы typesA и t
    ypesB.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113421



Use-Transaction

ИМЯ
    Use-Transaction
    
ОПИСАНИЕ
    Добавляет блок скрипта в активную транзакцию.
    
СИНТАКСИС
    Use-Transaction [-TransactedScript] <scriptblock> [-UseTransaction] [<Commo
    nParameters>]
    
    
ОПИСАНИЕ
    Командлет Use-Transaction добавляет блок скрипта в активную транзакцию. Это
     позволяет выполнять в рамках транзакций скрипты с использованием объектов 
    Microsoft .NET Framework, поддерживающих транзакции. Блок скрипта может сод
    ержать только объекты .NET, поддерживающие транзакции, такие как экземпляры
     класса Microsoft.PowerShell.Commands.Management.TransactedString.
    
    Параметр UseTransaction, необязательный для большинства командлетов, при ис
    пользовании этого командлета является обязательным.
    
    Командлет Use-Transaction входит в набор командлетов, поддерживающих обрабо
    тку транзакций в Windows PowerShell. Дополнительные сведения см. в разделе 
    about_Transactions.
    
ПАРАМЕТРЫ
    -TransactedScript <scriptblock>
        Задает блок скрипта, выполняемый в транзакции. Введите любой допустимый
         блок скрипта, заключив его в фигурные скобки ( { } ). Это обязательный
         параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -UseTransaction [<SwitchParameter>]
        Включает команду в активную транзакцию. Этот параметр допустим, только 
        если транзакция выполняется. Дополнительные сведения см. в разделе abou
        t_Transactions.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    PSObject
        Командлет Use-Transaction возвращает результат транзакции.
    
    
ПРИМЕЧАНИЯ
    
    
        Параметр Use-Transaction включает команду в активную транзакцию. Поскол
        ьку командлет Use-Transaction всегда используется в транзакциях, этот п
        араметр необходим в любой команде Use-Transaction, чтобы она имела дейс
        твие.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>start-transaction
    
    C:\PS> $transactedString = New-Object Microsoft.PowerShell.Commands.Managem
    ent.TransactedString
    
    C:\PS> $transactedString.Append("Hello")
    C:\PS> use-transaction -TransactedScript { $transactedString.Append(", Worl
    d") } -UseTransaction
    
    C:\PS> $transactedString.ToString()
    Hello
     
    C:\PS> use-transaction -transactedScript { $transactedString.ToString() } -
    UseTransaction
    Hello, World
    
    C:\PS> complete-transaction
    C:\PS> $transactedString.ToString()
    Hello, World
    
    
    Описание
    -----------
    В этом примере показано, как использовать командлет Use-Transaction для вып
    олнения скрипта над поддерживающим транзакции объектом .NET Framework. В да
    нном случае объект представляет собой объект класса TransactedString. 
    
    Первая команда с помощью командлета Start-Transaction запускает транзакцию.
     
    
    Вторая команда с помощью командлета New-Object создает объект TransactedStr
    ing. Этот объект сохраняется в переменной $TransactedString.
    
    Третья и четвертая команды с помощью метода Append объекта TransactedString
     добавляют текст к значению переменной $TransactedString. Одна команда явля
    ется частью транзакции, другая нет.
    
    В третьей команде с помощью метода Append для строки, над которой выполняет
    ся транзакция, к значению переменной $TransactedString добавляется слово "H
    ello". Поскольку команда не является частью транзакции, изменение применяет
    ся немедленно.
    
    Четвертая команда с помощью командлета Use-Transaction добавляет текст к ст
    роке в рамках транзакции. С помощью метода Append к значению переменной $tr
    ansactedString добавляется текст ", World". Команда заключена в фигурные ск
    обки ( {} ), что превращает ее в блок скрипта. Параметр UseTransaction в эт
    ой команде является обязательным.
    
    Пятая и шестая команды с помощью метода ToString объекта TransactedString о
    тображают значение переменной $TransactedString в виде строки. Снова-таки, 
    одна команда является частью транзакции, другая нет.
    
    Пятая команда с помощью метода ToString отображает текущее значение перемен
    ной $TransactedString. Поскольку она не является частью транзакции, отображ
    ается только текущее состояние строки.
    
    В шестой команде с помощью командлета Use-Transaction та же самая команда в
    ыполняется в рамках транзакции. Поскольку команда является частью транзакци
    и, отображается текущее значение строки в рамках транзакции, подобно предва
    рительному просмотру вносимых транзакцией изменений.
    
    Седьмая команда с помощью командлета Complete-Transaction фиксирует транзак
    цию.
    
    Последняя команда с помощью метода ToString отображает полученное значение 
    переменной в виде строки.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>start-transaction
    
    C:\PS> $transactedString = New-Object Microsoft.PowerShell.Commands.Managem
    ent.TransactedString
    
    C:\PS> $transactedString.Append("Hello")
    C:\PS> use-transaction -TransactedScript { $transactedString.Append(", Worl
    d") } -UseTransaction
    
    C:\PS> undo-transaction
    
    C:\PS> $transactedString.ToString()
    Hello
    
    
    Описание
    -----------
    В этом примере показан результат отката транзакции, которая включает команд
    ы Use-Transaction. Как и со всеми командами в транзакции, при откате транза
    кции вносимые транзакцией изменения отменяются, и данные остаются неизменны
    ми.
    
    Первая команда с помощью командлета Start-Transaction запускает транзакцию.
     
    
    Вторая команда с помощью командлета New-Object создает объект TransactedStr
    ing. Этот объект сохраняется в переменной $TransactedString.
    
    Третья команда, которая не является частью транзакции, с помощью метода App
    end добавляет слово "Hello" к значению переменной $TransactedString. 
    
    В четвертой команде с помощью командлета Use-Transaction в пределах транзак
    ции выполняется другая команда, в которой используется метод Append. С помо
    щью метода Append к значению переменной $transactedString добавляется текст
     ", World". 
    
    Пятая команда с помощью командлета Undo-Transaction откатывает транзакцию. 
    В результате все команды, выполненные в рамках транзакции, аннулируются.
    
    Последняя команда с помощью метода ToString отображает полученное значение 
    переменной $TransactedString в виде строки. Из результатов видно, что к объ
    екту применены только те изменения, которые были внесены за рамками транзак
    ции.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135271
    about_Transactions 
    Start-Transaction 
    Get-Transaction 
    Complete-Transaction 
    Undo-Transaction 



Variable

ИМЯ ПОСТАВЩИКА
    Variable
    
ДИСКИ
    Variable:
    
ОПИСАНИЕ
    Предоставляет доступ к переменным Windows PowerShell и их значениям.
    
ОПИСАНИЕ
    Поставщик Windows PowerShell Variable позволяет извлекать, добавлять, измен
    ять, очищать и удалять переменные Windows PowerShell в текущей консоли.
    
    Поставщик Windows PowerShell Variable поддерживает переменные, которые созд
    ает оболочка Windows PowerShell, включая автоматические переменные, привиле
    гированные переменные, а также переменные, создаваемые пользователем.
    
    Поставщик Variable представляет собой плоское пространство имен, содержащее
     только объекты переменных. У данных переменных нет дочерних элементов.
    
    Большая часть переменных являются экземплярами класса System.Management.Aut
    omation.PSVariable. Однако есть и исключения. Например, переменная "?" явля
    ется членом класса QuestionMarkVariable, а переменная "MaximumVariableCount
    " является членом класса SessionStateCapacityVariable.
    
    Поставщик Variable отображает свое хранилище данных как диск Variable:. Для
     работы с переменными можно перейти на диск Variable: ("set-location variab
    le:") или работать с любого другого диска Windows PowerShell. Для ссылки на
     переменную из другого положения следует использовать в пути имя диска (Var
    iable:). 
    
    Windows PowerShell включает набор командлетов, специально предназначенных д
    ля просмотра и изменения переменных:
    
    -- Get-Variable
    -- New-Variable
    -- Set-Variable
    -- Remove-Variable
    -- Clear-Variable
    
    При использовании этих командлетов не нужно указывать диск "Variable:" в им
    ени.
    
    Поставщик Variable поддерживает все командлеты, в именах которых содержится
     существительное Item (командлеты Item), кроме Invoke-Item. Поставщик Varia
    ble поддерживает командлеты Get-Content и Set-Content. Однако он не поддерж
    ивает командлеты, в именах которых содержится существительное ItemProperty 
    (командлеты ItemProperty), и не поддерживает параметр Filter в любом команд
    лете. 
    
    Для создания, просмотра и изменения значений переменных без использования к
    омандлетов можно также использовать средство синтаксического анализа выраже
    ний оболочки Windows PowerShell. При непосредственной работе с переменными 
    используйте знак доллара ($), чтобы определить имя как переменную, а также 
    оператор назначения (=) для присвоения и изменения значений переменных. Нап
    ример, команда "$p = get-process" создает переменную "p" и сохраняет в ней 
    результаты работы команды "get-process".
    
    Все изменения в переменных затрагивают только текущий сеанс. Чтобы сохранит
    ь изменения, добавьте их в профиль Windows PowerShell или воспользуйтесь ко
    мандлетом Export-Console для сохранения текущей консоли.
    
ВОЗМОЖНОСТИ
    
    
ЗАДАЧИ
    ЗАДАЧА: Обращение к диску Variable:
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда меняет текущее положение на диск Variable:. Эту команду мож
        но использовать с любого диска в оболочке Windows PowerShell. Чтобы вер
        нуться к диску файловой системы, введите имя диска. Например, введите к
        оманду "set-location c:".
        
        set-location variable:
        
        
        
        
        
    ЗАДАЧА: Отображение значений переменных
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда возвращает список всех переменных в текущем сеансе. Эту ком
        анду можно использовать с любого диска Windows PowerShell.
        
        get-childitem -path variable:
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда получает переменные с именами, которые начинаются на "max".
         Эту команду можно использовать с любого диска Windows PowerShell.
        
        get-childitem -path variable:max*
        
        
        Если диск Variable: уже открыт, имя этого диска в пути можно не указыва
        ть.
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда возвращает значение переменной WhatIfPreference, если набра
        ть ее в командной строке.
        
        Имя переменной предваряется знаком доллара ($) для указания того, что э
        то переменная. Имя диска Variable: не указано.
        
        $WhatIfPreference
        
        
        
        -------------------------- ПРИМЕР 4 --------------------------
        
        Эта команда использует параметр LiteralPath командлета Get-ChildItem дл
        я получения значения переменной "?" с диска Variable:. Командлет Get-Ch
        ildItem не пытается разрешить никакие подстановочные знаки в значениях 
        параметра LiteralPath.
        
        get-childitem -literalpath ?
        
        
        Для отображения значения переменной с именем, содержащим специальные зн
        аки, без использования командлета, наберите знак доллара ($) и имя пере
        менной. Например, для отображения значения переменной "?" наберите "$?"
        .
        -------------------------- ПРИМЕР 5 --------------------------
        
        Эта команда возвращает переменные, свойство Options которых имеет значе
        ние "ReadOnly" или "Constant".
        
        get-childitem -path variable: | where-object {$_.options -match "Consta
        nt" -or $_.options -match "ReadOnly"} | format-list -property name, val
        ue, options
        
        
        
        
        
    ЗАДАЧА: Создание новой переменной
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда создает переменную "services" и сохраняет в ней результаты,
         возвращенные командлетом Get-Service. Так как текущим местоположением 
        является диск Variable:, значение параметра Path — точка (.), которая о
        значает текущее размещение.
        
        Круглые скобки вокруг команды Get-Service гарантируют, что команда буде
        т выполнена до создания переменной. Если круглые скобки не указаны, зна
        чением новой переменной станет строка "Get-Service".
        
        new-item -path . -name services -value (Get-Service)
        
        
        Если текущим положением не является диск Variable:, включите имя диска 
        Variable: в путь.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда создает переменную "services" и сохраняет в ней результат, 
        возвращенный командой Get-Service. 
        
        Команда использует знак доллара ($) для определения переменной и операт
        ор присваивания (=) для присваивания результата работы команды Get-Serv
        ice значению только что созданной переменной.
        
        $services = Get-Service
        
        
        Чтобы создать переменную без значения, опустите оператор присваивания.
        
        
    ЗАДАЧА: Отображение свойств и методов переменных
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда использует командлет Get-Item для получения всех переменных
        . Результаты с помощью оператора конвейера (|) передаются командлету Ge
        t-Member, который отображает методы и свойства объекта.
        
        get-item -path variable:* | get-member
        
        
        При передаче коллекции объектов (например, коллекции переменных на диск
        е Variable:) по конвейеру командлету Get-Member командлет Get-Member пр
        оводит оценку каждого объекта коллекции по отдельности и выводит сведен
        ия о каждом найденном типе объектов. 
        
        Для получения сведений о коллекции объектов на диске Variable: использу
        йте параметр InputObject командлета Get-Member, например "get-member -i
        nputobject (get-item variable:*)". При использовании параметра InputObj
        ect командлет Get-Member выполняет оценку всей коллекции, а не отдельны
        х объектов из нее.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда перечисляет значения свойств переменной "home". Она использ
        ует командлет Get-Item для получения объекта, представляющего переменну
        ю "home". Оператор конвейера (|) передает результаты команде Format-Lis
        t. Команда Format-List использует параметр Property с подстановочным зн
        аком (*) для форматирования и отображения значений всех свойств перемен
        ной "home".
        
        get-item variable:home | format-list -property *
        
        
        
        
        
    ЗАДАЧА: Изменение свойств переменной
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда использует командлет Rename-Item для изменения имени переме
        нной "a" на "processes".
        
        rename-item -path variable:a -newname processes
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда использует командлет Set-Item для задания переменной ErrorA
        ctionPreference значения "Stop".
        
        set-item -path variable:ErrorActionPreference -value Stop
        
        
        
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда изменяет значение переменной ErrorActionPreference на "Stop
        ".
        
        Она использует знак доллара ($) для определения переменной и оператор н
        азначения (=) для присвоения значения.
        
        $ErrorActionPreference = Stop
        
        
        
        
        
    ЗАДАЧА: Копирование переменной
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда использует командлет Copy-Item для копирования переменной "
        processes" в "old_processes". При этом создается новая переменная с име
        нем "old_processes", которая содержит то же значение, что и переменная 
        "processes".
        
        copy-item -path variable:processes -destination variable:old_processes
        
        
        Если команда вводится при открытом диске Variable:, можно не указывать 
        имя диска в значении параметра Path.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда копирует переменную "processes" в "old_processes" без испол
        ьзования командлета. Она использует знак доллара ($) для определения пе
        ременной и оператор назначения для присвоения переменной old_processes 
        значения переменной $processes.
        
        $old_processes = $processes
        
        
        
        
        
    ЗАДАЧА: Удаление переменной
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда удаляет переменную "serv" из текущего сеанса. Эту команду м
        ожно использовать на любом диске Windows PowerShell.
        
        remove-variable -path variable:serv
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда удаляет все переменные из текущего сеанса, кроме переменных
        , в свойстве Options которых содержится значение Constant. Если не зада
        н параметр Force, команда не удаляет переменные со значением ReadOnly с
        войства Options.
        
        remove-item variable:* -force
        
        
        
        
        
    ЗАДАЧА: Задание переменной значения NULL
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда использует командлет Clear-Item, чтобы изменить значение пе
        ременной "processes" на NULL.
        
        clear-item -path variable:processes
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда очищает значение переменной "processes", назначая ей значен
        ие NULL. Она использует автоматическую переменную $null, представляющую
         значение NULL.
        
        $processes = $null
        
        
        
        
        
    
    
ДИНАМИЧЕСКИЕ ПАРАМЕТРЫ
    
ПРИМЕЧАНИЯ
    Поставщик Variable не поддерживает динамические параметры.
ССЫЛКИ ПО ТЕМЕ
    about_Variables 
    about_Automatic_Variables 
    about_Providers 



Wait-Event

ИМЯ
    Wait-Event
    
ОПИСАНИЕ
    Ожидает определенного события, прежде чем продолжить выполнение.
    
СИНТАКСИС
    Wait-Event [[-SourceIdentifier] <string>] [-Timeout <int>] [<CommonParamete
    rs>]
    
    
ОПИСАНИЕ
    Командлет Wait-Event приостанавливает выполнение скрипта или функции до воз
    никновения заданного события. Выполнение возобновляется, когда будет зафикс
    ировано данное событие. Чтобы отменить ожидание, нажмите сочетание клавиш C
    TRL+C. 
    
    Эта функция является альтернативным способом запроса события. Кроме того, о
    на позволяет определить реакцию на событие двумя различными способами: с по
    мощью параметра Action подписки на событие и путем ожидания события с после
    дующим выполнением действия в ответ на событие.
    
ПАРАМЕТРЫ
    -SourceIdentifier <string>
        Ожидает только события с указанным идентификатором источника. По умолча
        нию командлет Wait-Event ожидает любое событие.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                Все события
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Timeout <int>
        Определяет максимальное время (в секундах), в течение которого командле
        т Wait-Event ожидает события. Значение по умолчанию — -1, ждать бесконе
        чно. Отсчет времени начинается с отправки команды Wait-Event.
        
        Если указанное время истекло, цикл ожидания заканчивается и окно команд
        ной строки становится активным, даже если событие еще не произошло. Соо
        бщение об ошибке не отображается.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.String
        
    
    
ПРИМЕЧАНИЯ
    
    
        События, подписки на события и очередь событий существуют только в рамк
        ах текущего сеанса. Если завершить текущий сеанс, очередь событий будет
         очищена и подписка на события будет отменена.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>wait-event
    
    
    Описание
    -----------
    Эта команда ожидает ближайшего события.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>wait-event -sourceIdentifier "ProcessStarted"
    
    
    Описание
    -----------
    Эта команда ожидает ближайшего события с идентификатором источника "Process
    Started".
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$timer.Interval = 2000 
    C:\PS> $timer.Autoreset = $false 
    C:\PS> $timer.Enabled = $true; Wait-Event Timer.Elapsed
    
    # After 2 seconds 
    
    EventIdentifier  : 12 
    Sender           : System.Timers.Timer 
    SourceEventArgs  : System.Timers.ElapsedEventArgs 
    SourceArgs       : {System.Timers.Timer, System.Timers.ElapsedEventArgs} 
    SourceIdentifier : Timer.Elapsed 
    TimeGenerated    : 6/10/2008 3:24:18 PM 
    MessageData      : 
    ForwardEvent     : False
    
    
    Описание
    -----------
    Эта команда использует командлет Wait-Event для ожидания события таймера, у
    становленного на 2000 миллисекунд.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>wait-event -sourceIdentifier "ProcessStarted" -timeout 90
    
    
    Описание
    -----------
    Эта команда ожидает в течение 90 секунд очередного события с идентификаторо
    м источника "ProcessStarted". По истечении указанного времени ожидание прек
    ращается.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135276
    Register-ObjectEvent 
    Register-EngineEvent 
    Register-WmiEvent 
    Unregister-Event 
    Get-Event 
    New-Event 
    Remove-Event 
    Wait-Event 
    Get-EventSubscriber 



Wait-Job

ИМЯ
    Wait-Job
    
ОПИСАНИЕ
    Отключает командную строку до завершения выполнения одного или нескольких ф
    оновых заданий Windows PowerShell, запущенных в этом сеансе.
    
СИНТАКСИС
    Wait-Job [[-InstanceId] <Guid[]>] [-Any] [-Timeout <int>] [<CommonParameter
    s>]
    
    Wait-Job [-Job] <Job[]> [-Any] [-Timeout <int>] [<CommonParameters>]
    
    Wait-Job [[-Name] <string[]>] [-Any] [-Timeout <int>] [<CommonParameters>]
    
    Wait-Job [-Id] <Int32[]> [-Any] [-Timeout <int>] [<CommonParameters>]
    
    Wait-Job [-State {NotStarted | Running | Completed | Failed | Stopped | Blo
    cked}] [-Any] [-Timeout <int>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    До отображения командной строки командлет Wait-Job ожидает завершения фонов
    ых заданий Windows PowerShell. Можно ожидать завершения одного или всех фон
    овых заданий и задать максимальное время ожидания. 
    
    Командлет Wait-Job можно использовать для получения фоновых заданий, запуще
    нных с использованием командлета Start-Job или параметра AsJob командлета I
    nvoke-Command.
    
    После завершения команд задания командлет Wait-Job отображает командную стр
    оку и возвращает объект задания, который можно по конвейеру передать другой
     команде.
    
ПАРАМЕТРЫ
    -Any [<SwitchParameter>]
        Отображает командную строку (и возвращает объект задания) по завершении
         любого задания. По умолчанию командлет Wait-Job ожидает завершения все
        х указанных заданий перед отображением приглашения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Id <Int32[]>
        Ожидает завершения заданий с указанными идентификаторами.
        
        ID — это целое значение, которое однозначно определяет задание в предел
        ах текущего сеанса. Это значение проще запомнить и ввести, чем Instance
        Id, но оно уникально только в рамках текущего сеанса. Можно ввести один
         или несколько идентификаторов (разделенных запятыми). Чтобы найти знач
        ение идентификатора задания, введите "Get-Job" без параметров.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -InstanceId <Guid[]>
        Ожидает завершения заданий с указанными идентификаторами экземпляров. П
        о умолчанию возвращаются все задания.
        
        Идентификатор экземпляра — это GUID, который однозначно определяет зада
        ние на компьютере. Чтобы найти значение идентификатора экземпляра задан
        ия, воспользуйтесь командлетом Get-Job.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Job <Job[]>
        Ожидает завершения указанных заданий. Укажите переменную, содержащую об
        ъекты заданий, либо введите команду, получающую их. Для передачи объект
        ов заданий в командлет Wait-Job можно также использовать оператор конве
        йера. По умолчанию командлет Wait-Job ожидает завершения всех заданий, 
        созданных в текущем сеансе.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue, ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Ожидает завершения заданий с указанным понятным именем.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -State <JobState>
        Ожидает завершения заданий с указанным состоянием. Допустимые значения:
         "NotStarted", "Running", "Completed", "Stopped", "Failed" и "Blocked".
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Timeout <int>
        Определяет максимальное время ожидания для фонового задания в секундах.
         В случае значения по умолчанию (-1) ожидается завершение задания, неза
        висимо от того, как долго оно будет выполняться. Отсчет времени начинае
        тся с отправки команды Wait-Job, а не команды Start-Job. 
        
        Если указанное время истекло, цикл ожидания заканчивается и окно команд
        ной строки становится активным, даже если задание все еще активно. Сооб
        щение об ошибке не отображается.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.RemotingJob
        Объект задания можно передать командлету Wait-Job по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.RemotingJob
        Командлет Wait-Job возвращает объекты заданий, представляющие завершенн
        ые задания. Если цикл ожидания заканчивается вследствие превышения врем
        ени Timeout, командлет Wait-Job не возвращает никаких объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-job | wait-job
    
    
    Описание
    -----------
    Эта команда ожидает завершения всех фоновых заданий, запущенных в текущем с
    еансе.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$s = new-pssession server01, server02, server03
    
    C:\PS> invoke-command -session $s -scriptblock {start-job -name Date1 -scri
    ptblock {get-date}}
    
    C:\PS> $done = invoke-command -session $s -command {wait-job -name Date1}
    
    C:\PS> $done.count
    3
    
    
    Описание
    -----------
    В этом примере показано, как использовать командлет Wait-Job для заданий, з
    апущенных на удаленных компьютерах с помощью командлета Start-Job. Обе кома
    нды Start-Job и Wait-Job передаются на удаленный компьютер с помощью команд
    лета Invoke-Command.
    
    В этом примере команда Wait-Job используется для того, чтобы узнать, заверш
    ена ли команда Get-Date, выполняющаяся в виде фонового задания на трех разн
    ых компьютерах. 
    
    Первая команда создает сеанс Windows PowerShell (PSSession) на каждом из тр
    ех удаленных компьютеров и сохраняет их в переменной $s. 
    
    Вторая команда использует командлет Invoke-Command для выполнения команды S
    tart-Job в каждом из трех сеансов, заданных в переменной $s. Все задания им
    еют имя Date1.
    
    Третья команда использует командлет Invoke-Command для выполнения команды W
    ait-Job. Эта команда ожидает завершения заданий Date1, запущенных на каждом
     из компьютеров. Конечная коллекция (массив) объектов заданий сохраняется в
     переменной $done. 
    
    Четвертая команда использует свойство Count массива объектов заданий, сохра
    ненного в переменной $done, для определения количества завершенных заданий.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$s = new-pssession (get-content machines.txt)  
    
    C:\PS> $c = 'get-eventlog -log system | where {$_.EntryType -eq "error" -an
    d $_.Source -eq "LSASRV"} | out-file errors.txt'
    
    C:\PS> invoke-command -session $s -scriptblock {param($c)start-job -scriptb
    lock {$c}} -ArgumentList $c
    
    C:\PS> invoke-command -session $s -scriptblock {wait-job -any}
    
    
    Описание
    -----------
    В этом примере параметр Any команды Wait-Job используется для того, чтобы у
    знать, когда завершается первое из нескольких фоновых заданий, выполняющихс
    я в текущем сеансе. Кроме того, здесь показано, как использовать командлет 
    Wait-Job для ожидания завершения удаленных заданий. 
    
    Первая команда создает сеанс PSSession на каждом из компьютеров, указанных 
    в файле Machines.txt, и сохраняет эти сеансы в переменной $s. Для получения
     содержимого файла в этой команде используется командлет Get-Content. Коман
    да Get-Content заключена в круглые скобки, чтобы обеспечить ее выполнение д
    о команды New-PSSession.
    
    Вторая команда сохраняет строку команды Get-EventLog (в кавычках) в перемен
    ной $c.
    
    Третья команда использует командлет Invoke-Command для выполнения команды S
    tart-Job в каждом из сеансов, указанных в переменной $s. Команда Start-Job 
    запускает фоновое задание, которое выполняет команду, указанную в переменно
    й $c. 
    
    Поскольку переменная $c является локальной, команда использует ключевое сло
    во "param" для объявления локальных переменных в команде и параметр Argumen
    tList для задания значений этих переменных.
    
    Четвертая команда использует командлет Invoke-Command для выполнения команд
    ы Wait-Job в рамках этих сеансов. Она использует командлет Wait-Job для ожи
    дания завершения первого задания на удаленных компьютерах.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>$s = new-pssession Server01, Server02, Server03 
    
    C:\PS> $jobs = invoke-command -session $s -scriptblock {start-job -script {
    get-date}}
    
    C:\PS> $done = invoke-command -session $s -scriptblock {wait-job -timeout 3
    0}
    
    
    Описание
    -----------
    В этом примере показано, как использовать параметр Timeout командлета Wait-
    Job для задания максимального времени ожидания для заданий, запущенных на у
    даленных компьютерах. 
    
    Первая команда создает сеанс PSSession на каждом из трех удаленных компьюте
    ров (Server01, Server02 и Server03) и сохраняет сеансы в переменной $s. 
    
    Вторая команда использует командлет Invoke-Command для выполнения команды S
    tart-Job в каждом из сеансов, указанных в переменной $s. Она сохраняет коне
    чные объекты заданий в переменной $jobs.
    
    Третья команда использует командлет Invoke-Command для выполнения команды W
    ait-Job в каждом из сеансов PSSession, указанных в переменной $s. Команда W
    ait-Job проверяет, все ли команды были завершены в течение 30 секунд. В ней
     используется параметр Timeout со значением 30 (секунд) для задания максима
    льного времени. Команда сохраняет результаты выполнения команды в переменно
    й $done. 
    
    В данном случае по истечении 30 секунд была завершена только команда на ком
    пьютере Server02. Команда Wait-Job заканчивает цикл ожидания, отображает ко
    мандную строку и возвращает объект, представляющий завершенное задание. 
    
    Переменная $done содержит объект задания, представляющий задание, выполнявш
    ееся на компьютере Server02.
    
    
    
    
    
    -------------------------- ПРИМЕР 5 --------------------------
    
    C:\PS>wait-job -id 1,2,5 -any
    
    
    Описание
    -----------
    Эта команда определяет три задания с помощью их идентификаторов и дожидаетс
    я завершения любого из этих заданий. Командная строка отображается по завер
    шении любого задания.
    
    
    
    
    
    -------------------------- ПРИМЕР 6 --------------------------
    
    C:\PS>wait-job -name DailyLog -timeout 120
    
    
    Описание
    -----------
    Эта команда ожидает завершения задания DailyLog в течение 120 секунд (две м
    инуты). Если задание не завершается в течение двух минут, в любом случае от
    ображается командная строка, а задание продолжает выполняться в фоновом реж
    име.
    
    
    
    
    
    -------------------------- ПРИМЕР 7 --------------------------
    
    C:\PS>wait-job -name Job3
    
    
    Описание
    -----------
    В этой команде Wait-Job для указания задания, завершение которого ожидается
    , используется имя задания.
    
    
    
    
    
    -------------------------- ПРИМЕР 8 --------------------------
    
    C:\PS>C:\PS> $j = start-job -script {get-childitem *.ps1| where {$_lastwrit
    etime -gt ((get-date) - (new-timespan -days 7))}}
    
    C:\PS> $j | wait-job
    
    
    Описание
    -----------
    В этом примере показано, как использовать командлет Wait-Job для заданий, з
    апущенных на локальном компьютере с помощью командлета Start-Job.
    
    Эти команды запускают задание, которое получает список файлов скриптов Wind
    ows PowerShell, добавленных или измененных в течение последней недели.
    
    Первая команда запускает фоновое задание на локальном компьютере с использо
    ванием командлета Start-Job. Задание выполняет команду Get-ChildItem, котор
    ая получает список всех файлов с расширением PS1, добавленных или измененны
    х в течение последней недели.
    
    Третья команда использует командлет Wait-Job для ожидания завершения задани
    я. По завершении задания команда отображает объект задания, содержащий свед
    ения о задании.
    
    
    
    
    
    -------------------------- ПРИМЕР 9 --------------------------
    
    C:\PS>$s = new-pssession Server01, Server02, Server03
    
    C:\PS> $j = invoke-command -session $s -scriptblock {get-process} -asjob
    
    C:\PS> $j | wait-job
    
    
    Описание
    -----------
    В этом примере показано, как использовать командлет Wait-Job для заданий, з
    апущенных на удаленных компьютерах с помощью параметра AsJob командлета Inv
    oke-Command. При использовании параметра AsJob задание создается на локальн
    ом компьютере, и результаты задания автоматически возвращаются на локальный
     компьютер, хотя само задание выполняется на удаленных компьютерах.
    
    В этом примере команда Wait-Job используется для того, чтобы узнать, заверш
    ена ли команда Get-Process, выполняющаяся в сеансах на трех удаленных компь
    ютерах. 
    
    Первая команда создает сеансы PSSession на трех компьютерах и сохраняет эти
     сеансы в переменной $s. 
    
    Вторая команда использует командлет Invoke-Command для выполнения команды G
    et-Process в каждом из трех сеансов PSSession, заданных в переменной $s. В 
    команде используется параметр AsJob для асинхронного выполнения команды в в
    иде фонового задания. Команда возвращает объект задания точно так же, как и
     для заданий, запущенных с использованием команды Start-Job, а объект задан
    ия сохраняется в переменной $j.
    
    Третья команда передает объект задания, содержащийся в переменной $j, в ком
    андлет Wait-Job с помощью оператора конвейера (|). Обратите внимание, что в
     этом случае не требуется использовать команду Invoke-Command, поскольку за
    дание находится на локальном компьютере.
    
    
    
    
    
    -------------------------- ПРИМЕР 10 --------------------------
    
    C:\PS>get-job
    
    Id   Name     State      HasMoreData     Location             Command
    --   ----     -----      -----------     --------             -------
    1    Job1     Completed  True            localhost,server01.. get-service
    4    Job4     Completed  True            localhost            dir | where
    
    C:\PS> wait-job -id 1
    
    
    Описание
    -----------
    Эта команда ожидает завершения задания с идентификатором 1.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113422
    about_Jobs 
    about_Job_Details 
    about_Remote_Jobs 
    Start-Job 
    Get-Job 
    Receive-Job 
    Stop-Job 
    Remove-Job 
    Invoke-Command 



Wait-Process

ИМЯ
    Wait-Process
    
ОПИСАНИЕ
    Ожидает остановки процессов, прежде чем принимать следующий ввод.
    
СИНТАКСИС
    Wait-Process [-Id] <Int32[]> [[-Timeout] <int>] [<CommonParameters>]
    
    Wait-Process -InputObject <Process[]> [[-Timeout] <int>] [<CommonParameters
    >]
    
    Wait-Process [-Name] <string[]> [[-Timeout] <int>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Wait-Process ожидает остановки одного или нескольких выполняющихс
    я процессов, прежде чем принимать следующий ввод.  Этот командлет отключает
     командную строку консоли Windows PowerShell до тех пор, пока процессы не б
    удут остановлены. Процесс можно задать с помощью его имени или идентификато
    ра (PID). Также можно передать объект процесса командлету Wait-Process по к
    онвейеру. 
    
    Командлет Wait-Process работает только с процессами, выполняющимися на лока
    льном компьютере.
    
ПАРАМЕТРЫ
    -Id <Int32[]>
        Задает идентификаторы процессов. При вводе нескольких идентификаторов н
        еобходимо разделять их запятыми. Чтобы определить идентификатор процесс
        а, введите команду get-process. Имя параметра ("Id") указывать необязат
        ельно.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -InputObject <Process[]>
        Задает процессы путем передачи объектов процессов. Введите переменную, 
        содержащую объекты-процессы, либо команду или выражение, получающие объ
        екты процессов, например Get-Process.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Name <string[]>
        Задает имена процессов. При вводе нескольких имен необходимо разделять 
        их запятыми.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByPropertyName)
        Принимать подстановочные знаки?  false
        
    -Timeout <int>
        Определяет максимальное время (в секундах), в течение которого командле
        т Wait-Process ожидает остановки указанных процессов. По истечении этог
        о времени команда выводит непрерывающую ошибку с перечнем процессов, ко
        торые еще выполняются, и завершает ожидание.
        
        Требуется?                    false
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Diagnostics.Process
        Объект процесса можно передать командлету Wait-Process по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Этот командлет не формирует никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        В этом командлете используется метод WaitForExit класса System.Diagnost
        ics.Process. Дополнительные сведения об этом методе см. в документации 
        пакета SDK Microsoft .NET Framework.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$nid = (get-process notepad).id
    
    C:\PS> stop-process -id $nid
    
    C:\PS> wait-process -id $nid
    
    
    Описание
    -----------
    Приведенные команды останавливают процесс Notepad и затем ожидают, пока про
    цесс остановится, прежде чем переходить к выполнению следующей команды.
    
    Первая команда с помощью командлета Get-Process получает идентификатор проц
    есса Notepad. Идентификатор сохраняется в переменной $nid.
    
    Вторая команда с помощью командлета Stop-Process останавливает процесс с ид
    ентификатором, сохраненным в переменной $nid.
    
    Третья команда использует командлет Wait-Process для ожидания остановки про
    цесса Notepad. Для идентификации процесса используется параметр ID командле
    та Wait-Process.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$p = get-process notepad
    
    C:\PS> wait-process -id $p.id
    
    C:\PS> wait-process -name notepad
    
    C:\PS> wait-process -inputobject $p
    
    
    Описание
    -----------
    На примере приведенных команд показаны три различных способа задания процес
    са для командлета Wait-Process. Первая команда получает процесс Notepad и с
    охраняет его в переменной $p.
    
    Во второй команде используется параметр ID, в третьей — параметр Name, а в 
    четвертой — параметр InputObject. 
    
    Эти команды возвращают одинаковые результаты, и их можно использовать на ра
    вных основаниях.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>wait-process -name outlook, winword -timeout 30
    
    
    Описание
    -----------
    Эта команда ожидает остановки процессов Outlook и Winword в течение 30 секу
    нд. Если ни один из процессов не будет остановлен в течение этого времени, 
    командлет отобразит непрерывающую ошибку и командную строку.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135277
    Get-Process 
    Start-Process 
    Stop-Process 
    Wait-Process 
    Debug-Process 



Where-Object

ИМЯ
    Where-Object
    
ОПИСАНИЕ
    Создает фильтр, который определяет, какие объекты будут переданы по командн
    ому конвейеру.
    
СИНТАКСИС
    Where-Object [-FilterScript] <scriptblock> [-InputObject <psobject>] [<Comm
    onParameters>]
    
    
ОПИСАНИЕ
    Командлет Where-Object выбирает объекты из переданного ему набора объектов.
     Он использует блок скрипта как фильтр и выполняет блок скрипта для каждого
     объекта. Если в результате выполнения получается значение True, этот объек
    т возвращается. Если в результате выполнения не получается значение True, э
    тот объект игнорируется.
    
ПАРАМЕТРЫ
    -FilterScript <scriptblock>
        Указывает блок скрипта, используемый для фильтрации объектов. Заключайт
        е блок скрипта в фигурные скобки ( {} ).
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -InputObject <psobject>
        Указывает объекты, которые необходимо отфильтровать. Кроме того, можно 
        передать объекты командлету Where-Object по конвейеру.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Объекты для фильтрации можно передавать командлету Where-Object по конв
        ейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    
        
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-service | where-object {$_.Status -eq "Stopped"}
    
    
    Описание
    -----------
    Эта команда возвращает список всех служб, которые в данный момент остановле
    ны. Символ "$" представляет каждый объект, переданный командлету Where-Obje
    ct.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>get-process | where-object {$_.workingset -gt 25000*1024}
    
    
    Описание
    -----------
    Эта команда возвращает список процессов, размер рабочего множества которых 
    превышает 25 000 КБ. Так как значение свойства WorkingSet хранится в байтах
    , значение 25 000 умножено на 1 024.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>get-process | where-object { $_.ProcessName -match "^p.*" }
    
    
    Описание
    -----------
    Эта команда получает процессы, свойство ProcessName которых начинаются на б
    укву "p". Оператор match позволяет использовать в предложении Where регуляр
    ные выражения.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>get-process -name svchost | where-object {$True}
    
    
    Описание
    -----------
    Эта команда перечисляет все процессы по имени "svchost". 
    
    Командлет Where-Object выполняет блок скрипта, который обычно включает ссыл
    ку на текущий объект в конвейере ($_), и приводит результат к логическому т
    ипу: True или False. В случае результата True объект возвращается. В против
    ном случае он отбрасывается. 
    
    В данном случае блок скрипта просто возвращает True, поэтому все объекты во
    звращаются.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113423



Write-Debug

ИМЯ
    Write-Debug
    
ОПИСАНИЕ
    Выводит сообщение отладки на консоль.
    
СИНТАКСИС
    Write-Debug [-Message] <string> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Write-Debug выводит на консоль сообщения отладки из скрипта или к
    оманды. 
    
    По умолчанию сообщения отладки не отображаются на консоли, но их можно выве
    сти с помощью параметра Debug или переменной $DebugPreference.
    
ПАРАМЕТРЫ
    -Message <string>
        Задает сообщение отладки для отправки на консоль.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую сообщение отладки, можно передать командлету Write-D
        ebug по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет Write-Debug осуществляет запись только в поток отладки. Он не
         возвращает никаких выходных данных.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Write-Debug "Cannot open file."
    
    
    Описание
    -----------
    Эта команда выводит сообщение отладки. Поскольку переменная $DebugPreferenc
    e имеет значение "SilentlyContinue", на консоли сообщение не отображается.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$DebugPreference
    
    SilentlyContinue
    
    C:\PS> Write-Debug "Cannot open file."
    C:\PS>
    
    C:\PS> Write-Debug "Cannot open file." -debug
    DEBUG: Cannot open file.
    
    
    Описание
    -----------
    В этом примере показано, как с помощью общего параметра Debug переопределят
    ь значение переменной $DebugPreference для конкретной команды. 
    
    Первая команда выводит значение переменной $DebugPreference, которое по умо
    лчанию равно "SilentlyContinue".
    
    Вторая команда записывает сообщение отладки, но из-за значения переменной $
    DebugPreference оно не появляется. 
    
    Третья команда выводит сообщение отладки. Она использует общий параметр Deb
    ug, чтобы переопределить значение $DebugPreference и вывести сообщение отла
    дки, выдаваемое этой командой.
    
    В результате сообщение отладки отображается, несмотря на то что переменная 
    $DebugPreference имеет значение "SilentlyContinue".
    
    
    Дополнительные сведения об общем параметре Debug см. в разделе about_Common
    Parameters.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$DebugPreference
    
    SilentlyContinue
    
    C:\PS> Write-Debug "Cannot open file."
    C:\PS>
    
    C:\PS> $DebugPreference = "Continue"
    
    C:\PS> Write-Debug "Cannot open file."
    DEBUG: Cannot open file.
    
    
    Описание
    -----------
    В этой команде показано, как изменение значения переменной $DebugPreference
     влияет на отображение сообщений отладки.
    
    Первая команда выводит значение переменной $DebugPreference, которое по умо
    лчанию равно "SilentlyContinue".
    
    Вторая команда записывает сообщение отладки, но из-за значения переменной $
    DebugPreference оно не появляется. 
    
    Третья команда присваивает переменной $DebugPreference значение "Continue".
    
    Четвертая команда записывает сообщение отладки, которое отображается на кон
    соли.
    
    Дополнительные сведения о переменной $DebugPreference см. в разделе about_P
    reference_Variables.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113424
    Write-Verbose 
    Write-Error 
    Write-Host 
    Write-Progress 
    Write-Output 
    Write-Warning 



Write-Error

ИМЯ
    Write-Error
    
ОПИСАНИЕ
    Записывает объект в поток ошибок.
    
СИНТАКСИС
    Write-Error -ErrorRecord <ErrorRecord> [-CategoryActivity <string>] [-Categ
    oryReason <string>] [-CategoryTargetName <string>] [-CategoryTargetType <st
    ring>] [-RecommendedAction <string>] [<CommonParameters>]
    
    Write-Error [-Message] <string> [-Category {NotSpecified | OpenError | Clos
    eError | DeviceError | DeadlockDetected | InvalidArgument | InvalidData | I
    nvalidOperation | InvalidResult | InvalidType | MetadataError | NotImplemen
    ted | NotInstalled | ObjectNotFound | OperationStopped | OperationTimeout |
     SyntaxError | ParserError | PermissionDenied | ResourceBusy | ResourceExis
    ts | ResourceUnavailable | ReadError | WriteError | FromStdErr | SecurityEr
    ror}] [-ErrorId <string>] [-TargetObject <Object>] [-CategoryActivity <stri
    ng>] [-CategoryReason <string>] [-CategoryTargetName <string>] [-CategoryTa
    rgetType <string>] [-RecommendedAction <string>] [<CommonParameters>]
    
    Write-Error -Exception <Exception> [-Category {NotSpecified | OpenError | C
    loseError | DeviceError | DeadlockDetected | InvalidArgument | InvalidData 
    | InvalidOperation | InvalidResult | InvalidType | MetadataError | NotImple
    mented | NotInstalled | ObjectNotFound | OperationStopped | OperationTimeou
    t | SyntaxError | ParserError | PermissionDenied | ResourceBusy | ResourceE
    xists | ResourceUnavailable | ReadError | WriteError | FromStdErr | Securit
    yError}] [-ErrorId <string>] [-Message <string>] [-TargetObject <Object>] [
    -CategoryActivity <string>] [-CategoryReason <string>] [-CategoryTargetName
     <string>] [-CategoryTargetType <string>] [-RecommendedAction <string>] [
    ommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Write-Error записывает ошибку в поток ошибок Windows PowerShell. 
    По умолчанию ошибки отправляются в основную программу для отображения вмест
    е с выводом.
    
    Ошибку можно записать путем отправки строки сообщения об ошибки, объекта Er
    rorRecord или объекта Exception.  С помощью других параметров командлета Wr
    ite-Error сформируйте запись об ошибке.
    
ПАРАМЕТРЫ
    -Category <ErrorCategory>
        Задает категорию ошибки.  По умолчанию используется значение "NotSpecif
        ied".
        
        Дополнительные сведения о категориях ошибок см. в разделе "Перечисление
         ErrorCategory" библиотеки MSDN (Microsoft Developer Network) по адресу
         http://go.microsoft.com/fwlink/?LinkId=143600.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                NotSpecified
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CategoryActivity <string>
        Описывает действие, вызвавшее ошибку.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CategoryReason <string>
        Описывает, каким образом или почему операция вызвала ошибку.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CategoryTargetName <string>
        Задает имя объекта, который обрабатывался во время возникновения ошибки
        .
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CategoryTargetType <string>
        Задает тип .NET объекта, который обрабатывался во время возникновения о
        шибки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ErrorId <string>
        Задает идентификатор строки для идентификации ошибки. Эта строка должна
         быть уникальной для конкретной ошибки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ErrorRecord <ErrorRecord>
        Задает объект записи об ошибке, которые включает свойства и описание ош
        ибки. 
        
        Чтобы получить объект записи об ошибке, используйте командлет New-Objec
        t или воспользуйтесь объектом записи об ошибке из массива, хранящегося 
        в автоматической переменной $Error.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Exception <Exception>
        Задает исключение, представляющее ошибку. 
        
        Вместо указания текста сообщения или записи об исключении можно использ
        овать исключение.
        
        Требуется?                    true
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Message <string>
        Задает текст сообщения об ошибке.  Если текст содержит пробелы или спец
        иальные символы, его нужно заключить в кавычки. Кроме того, строку сооб
        щения можно передать командлету Write-Error по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -RecommendedAction <string>
        Описывает действие, которое пользователь должен выполнить, чтобы устран
        ить или предотвратить ошибку.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -TargetObject <Object>
        Задает объект, который обрабатывался во время возникновения ошибки. Ука
        жите объект (например строку), переменную, содержащую объект, либо кома
        нду, которая получает этот объект.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую сообщение об ошибке, можно передать командлету Write
        -Error по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Объект ошибки
        Командлет Write-Error осуществляет запись только в поток ошибок. Он не 
        возвращает никаких объектов.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>get-childitem | foreach-object { if ($_.gettype().tostring() -eq "Mic
    rosoft.Win32.RegistryKey") {write-error "Out-of-band object" -errorID B1 -t
    argetobject $_ } else {$_ } }
    
    
    Описание
    -----------
    Эта команда записывает ошибку, если командлет Get-ChildItem возвращает объе
    кт типа Microsoft.Win32.RegistryKey, такой как объекты на дисках HKLM и HKC
    U поставщика реестра Windows PowerShell.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>write-error  "Access denied."
    
    
    Описание
    -----------
    Эта команда записывает ошибку "Отказано в доступе". В команде используется 
    параметр Message для задания сообщения, однако необязательное имя параметра
     Message в данном случае опущено.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>write-error -message "Error: Too many input values." -category Invali
    dArgument
    
    
    Описание
    -----------
    Эта команда записывает ошибку и указывает категорию ошибки.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113425
    Write-Debug 
    Write-Verbose 
    Write-Output 
    Write-Host 
    Write-Progress 
    Write-Warning 



Write-EventLog

ИМЯ
    Write-EventLog
    
ОПИСАНИЕ
    Записывает событие в журнал событий.
    
СИНТАКСИС
    Write-EventLog [-LogName] <string> [-Source] <string> [-EventID] <int> [-Me
    ssage] <string> [[-EntryType] {Error | Warning | Information | SuccessAudit
     | FailureAudit}] [-Category <Int16>] [-ComputerName <string>] [-RawData <B
    yte[]>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет записывает Write-EventLog событие в журнал событий.
    
    Чтобы событие можно было записать в журнал событий, журнал событий должен с
    уществовать на компьютере, и для этого журнала событий должен быть зарегист
    рирован источник. 
    
    Командлеты, в имени которых содержится существительное EventLog (командлеты
     EventLog) работают только с классическими журналами событий. Чтобы получат
    ь события из журналов, основанных на технологии журнала событий Windows (в 
    Windows Vista и более поздних версиях Windows), используйте командлет Get-W
    inEvent.
    
ПАРАМЕТРЫ
    -Category <Int16>
        Задает категорию задачи для события. Введите целочисленное значение, св
        язанное со строками в файле сообщений категорий для журнала событий.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                1
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ComputerName <string>
        Задает удаленный компьютер. По умолчанию используется значение "Локальн
        ый компьютер".
        
        Введите имя NetBIOS, IP-адрес или полное доменное имя удаленного компью
        тера. 
        
        Этот параметр не использует удаленное взаимодействие Windows PowerShell
        . Параметр ComputerName командлета Get-EventLog можно использовать, даж
        е если компьютер не настроен на выполнение удаленных команд.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -EntryType <EventLogEntryType>
        Задает тип записи события.  Допустимые значения: Error, Warning, Inform
        ation, SuccessAudit и FailureAudit. По умолчанию используется значение 
        "Information".
        
        Описание значений см. в разделе System.Diagnostics.EventLogEntryType в 
        библиотеке MSDN (Microsoft Developer Network) по адресу http://go.micro
        soft.com/fwlink/?LinkId=143599.
        
        Требуется?                    false
        Позиция?                    4
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -EventID <int>
        Задает идентификатор события. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -LogName <string>
        Задает имя журнала, в который записывается событие. Введите имя журнала
         (значение свойства Log, а не свойства LogDisplayName). Подстановочные 
        знаки запрещены. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Message <string>
        Задает сообщение о событии. Это обязательный параметр.
        
        Требуется?                    true
        Позиция?                    5
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -RawData <Byte[]>
        Задает двоичные данные, связанные с событием, в байтах.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Source <string>
        Задает источник событий; как правило, это имя приложения, которое запис
        ывает события в журнал.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Diagnostics.EventLogEntry
        Командлет Write-EventLog возвращает объекты, представляющие события в ж
        урналах.
    
    
ПРИМЕЧАНИЯ
    
    
        Чтобы использовать командлет Write-EventLog в Windows Vista и более поз
        дних версиях Windows, необходимо запускать Windows PowerShell командой 
        "Запуск от имени администратора".
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>write-eventlog -logname Application -source MyApp -eventID 3001 -entr
    ytype Information -message "MyApp added a user-requested feature to the dis
    play." -category 1 -rawdata 10,20
    
    
    Описание
    -----------
    Эта команда записывает событие из источника MyApp в журнал событий Applicat
    ion.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>write-eventlog -computername Server01 -logname Application -source My
    App -eventID 3001 -message "MyApp added a user-requested feature to the dis
    play."
    
    
    Описание
    -----------
    Эта команда записывает событие из источника MyApp в журнал событий Applicat
    ion на удаленном компьютере Server01.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=135281
    Clear-EventLog 
    Get-EventLog 
    Limit-EventLog 
    New-EventLog 
    Remove-EventLog 
    Show-EventLog 
    Write-EventLog 
    Get-WinEvent 



Write-Host

ИМЯ
    Write-Host
    
ОПИСАНИЕ
    Записывает в основную программу пользовательский вывод.
    
СИНТАКСИС
    Write-Host [[-Object] <Object>] [-BackgroundColor {Black | DarkBlue | DarkG
    reen | DarkCyan | DarkRed | DarkMagenta | DarkYellow | Gray | DarkGray | Bl
    ue | Green | Cyan | Red | Magenta | Yellow | White}] [-ForegroundColor {Bla
    ck | DarkBlue | DarkGreen | DarkCyan | DarkRed | DarkMagenta | DarkYellow |
     Gray | DarkGray | Blue | Green | Cyan | Red | Magenta | Yellow | White}] [
    -NoNewline] [-Separator <Object>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Write-Host позволяет управлять выводом. Можно указать цвет текста
     с помощью параметра ForegroundColor, а также фоновый цвет, используя парам
    етр BackgroundColor. Параметр Separator позволяет указать строку, которая б
    удет использоваться для разделения отображаемых объектов. Конкретный резуль
    тат зависит от основной программы, из которой запускается Windows PowerShel
    l.
    
ПАРАМЕТРЫ
    -BackgroundColor <ConsoleColor>
        Задает цвет фона. Значение по умолчанию отсутствует.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ForegroundColor <ConsoleColor>
        Задает цвет текста. Значение по умолчанию отсутствует.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -NoNewline [<SwitchParameter>]
        Указывает, что содержимое, отображаемое в консоли, не заканчивается зна
        ком новой строки.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Object <Object>
        Объекты, отображаемые в консоли.
        
        Требуется?                    false
        Позиция?                    1
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    -Separator <Object>
        Строка для вывода между объектами, отображаемыми на консоли.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                Нет
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Object
        Объекты, записываемые в основной программе, можно передавать по конвейе
        ру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет Write-Host отправляет объекты основной программе. Он не возвр
        ащает никаких объектов. Однако основная программа может отобразить полу
        ченные с помощью командлета Write-Host объекты.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>write-host "no newline test " -nonewline
    
    no newline test C:\PS>
    
    
    Описание
    -----------
    Эта команда отображает вывод на консоли, но из-за наличия параметра NoNewli
    ne за выводом сразу же следует приглашение командной строки.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>write-host (2,4,6,8,10,12) -Separator ", +2= "
    
    2, +2= 4, +2= 6, +2= 8, +2= 10, +2= 12
    
    
    Описание
    -----------
    Эта команда отображает четные числа от 2 до 12. Параметр Separator использу
    ется для добавления строки ", +2= " (запятая, пробел, +, 2, =, пробел).
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>write-host (2,4,6,8,10,12) -Separator ", -> " -foregroundcolor DarkGr
    een -backgroundcolor white
    
    
    Описание
    -----------
    Эта команда отображает четные числа от 2 до 12. Параметр ForegroundColor оп
    ределяет темно-зеленый цвет выводимого текста, а параметр BackgroundColor —
     белый фон.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>write-host "Red on white text." -ForegroundColor red -BackgroundColor
     white
    
    Red on white text.
    
    
    Описание
    -----------
    Эта команда отображает строку "Red on white text.". Текст отображается крас
    ным в соответствии со значением параметра ForegroundColor. Фон отображается
     белым в соответствии со значением параметра BackgroundColor.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113426
    Write-Verbose 
    Write-Error 
    Write-Progress 
    Write-Debug 
    Write-Output 
    Write-Warning 
    Out-Host 



Write-Output

ИМЯ
    Write-Output
    
ОПИСАНИЕ
    Отправляет заданные объекты очередной команде в конвейере. Если команда явл
    яется последней командой в конвейере, объекты отображаются на консоли.
    
СИНТАКСИС
    Write-Output [-InputObject] <PSObject[]> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Write-Output отправляет заданный объект очередной команде в конве
    йере. Если команда является последней командой в конвейере, то объект отобр
    ажается на консоли.
    
    Командлет Write-Output передает объекты по основному конвейеру, который так
    же называют "потоком вывода" или "конвейером успешного выполнения". Чтобы п
    ередать объекты ошибок по конвейеру ошибок, используйте командлет Write-Err
    or.
    
    Этот командлет обычно используется в скриптах для вывода на консоль строк и
     других объектов. Но поскольку по умолчанию последние объекты конвейера обы
    чно выводятся на экран, чаще всего необходимость в использовании этого кома
    ндлета отсутствует. Например, команда "get-process | write-output" эквивале
    нтна команде "get-process".
    
ПАРАМЕТРЫ
    -InputObject <PSObject[]>
        Задает объекты, передаваемые по конвейеру. Введите переменную, содержащ
        ую объекты, либо команду или выражение для получения объектов.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Объекты можно передать командлету Write-Output по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    System.Management.Automation.PSObject
        Командлет Write-Output возвращает объекты, переданные ему на вход.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>$p = get-process
    
    c:\PS> write-output $p
    
    c:\PS> $p
    
    
    Описание
    -----------
    Первая команда получает объекты, которые представляют выполняющиеся на комп
    ьютере процессы, и отображает эти объекты на консоли.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>write-output "test output" | get-member
    
    
    Описание
    -----------
    Эта команда по конвейеру передает строку "test output" командлету Get-Membe
    r, который отображает элементы класса String, демонстрируя, что строка была
     передана по конвейеру.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113427
    Write-Debug 
    Write-Verbose 
    Write-Error 
    Write-Progress 
    Write-Host 
    Write-Warning 
    Tee-Object 



Write-Progress

ИМЯ
    Write-Progress
    
ОПИСАНИЕ
    Отображает индикатор выполнения в командном окне Windows PowerShell.
    
СИНТАКСИС
    Write-Progress [-Activity] <string> [-Status] <string> [[-Id] <int>] [-Comp
    leted] [-CurrentOperation <string>] [-ParentId <int>] [-PercentComplete <in
    t>] [-SecondsRemaining <int>] [-SourceId <int>] [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Write-Progress отображает в командном окне Windows PowerShell инд
    икатор выполнения, который показывает состояние выполнения команды или скри
    пта. Можно выбирать показатели, отображаемые индикатором, а также текст, ко
    торый отображается до и после индикатора выполнения.
    
ПАРАМЕТРЫ
    -Activity <string>
        Задает первую строку текста в заголовке над индикатором состояния. Этот
         текст описывает действие, выполнение которого отслеживается.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Completed [<SwitchParameter>]
        Определяет, видим ли индикатор выполнения. Если пропустить этот парамет
        р, командлет Write-Progress отобразит сведения о ходе выполнения.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -CurrentOperation <string>
        Задает строку текста, отображаемую под индикатором выполнения. Этот тек
        ст описывает текущую операцию.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Id <int>
        Задает идентификатор, который позволяет отличать данный индикатор выпол
        нения от других. Используйте этот параметр при создании в одной команде
         нескольких индикаторов выполнения. Если у индикаторов выполнения не бу
        дет различающихся идентификаторов, то они будут накладываться друг на д
        руга, а не отображаться последовательно.
        
        Требуется?                    false
        Позиция?                    3
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -ParentId <int>
        Определяет родительское действие текущего действия. Используйте значени
        е -1, если у текущего действия нет родительского действия.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -PercentComplete <int>
        Задает процент выполнения операции. Используйте значение -1, если проце
        нт выполнения неизвестен или неприменим.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SecondsRemaining <int>
        Задает предполагаемое число секунд, оставшихся до завершения действия. 
        Используйте значение -1, если оставшееся число секунд неизвестно или не
        применимо.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -SourceId <int>
        Определяет источник записи.
        
        Требуется?                    false
        Позиция?                    named
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    -Status <string>
        Задает вторую строку текста в заголовке над индикатором состояния. Этот
         текст описывает текущее состояние действия.
        
        Требуется?                    true
        Позиция?                    2
        Значение по умолчанию                
        Принимать входные данные конвейера?  false
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    Нет
        Передать входные данные этому командлету по конвейеру невозможно.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет Write-Progress не формирует никакого вывода.
    
    
ПРИМЕЧАНИЯ
    
    
        Если индикатор выполнения не появляется, проверьте значение переменной 
        $ProgressPreference. Если она имеет значение SilentlyContinue, индикато
        р выполнения на экране не отображается. Дополнительные сведения о парам
        етрах Windows PowerShell см. в разделе about_Preference_Variables.
        
        Параметры этого командлета соответствуют свойствам класса ProgressRecor
        d (System.Management.Automation.ProgressRecord). Дополнительные сведени
        я см. в разделе ProgressRecord пакета средств разработки программного о
        беспечения (SDK) Windows PowerShell.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>for ($i = 1; $i -lt 101; $i++ ) 
    {for ($j=0;$j -lt 10000;$j++) {} write-progress -activity "Search in Progre
    ss" -status "% Complete:" -percentcomplete $i;}
    
    
    Описание
    -----------
    Эта команда отображает сведения о ходе выполнения двух вложенных циклов For
    . Число итераций первого цикла равно 100. В рамках каждой итерации этого ци
    кла второй цикл выполняется 10000 раз.
    Команда Write-Progress включает заголовок панели состояния ("activity"), ст
    року состояния и переменную $i (счетчик цикла For), которая позволяет получ
    ить сведения о степени завершенности задания.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>for($i = 1; $i -lt 101; $i++ ) {write-progress -activity Updating -st
    atus progress-> -percentcomplete $i -currentOperation OuterLoop} for($i = 1
    ; $i -lt 101; $i++ ) {write-progress -activity Updating -status progress -p
    ercentcomplete $i -id  1 -currentOperation InnerLoop}
    
    Updating 
       progress ->
       [oooooooooooooooooo                                                   ]
    
       OutsideLoop
    
    Updating
      progress  
      [oooooooooooooooooo                                                    ]
    
      InnerLoop
    
    
    Описание
    -----------
    В этом примере показан ход выполнения двух вложенных циклов For, каждый из 
    которых представлен индикатором выполнения.
    
    Команда Write-Progress для второго индикатора выполнения включает параметр 
    Id, который позволяет отличать этот индикатор от первого индикатора выполне
    ния. Без параметра Id индикаторы выполнения накладывались бы друг на друга,
     а не располагались бы один под другим.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$events = get-eventlog -logname system
    
    C:\PS> $events | foreach-object -begin {clear-host;$i=0;$out=""} `
    -process {if($_.message -like "*bios*") {$out=$out + $_.Message};
    $i = $i+1;`
    write-progress -activity "Searching Events" `
    -status "Progress:" -percentcomplete ($i/$events.count*100)} `
    -end {$out}
    
    
    Описание
    -----------
    Эта команда отображает сведения о ходе выполнения команды, ищущей строку "b
    ios" в журнале событий "Система". 
    
    В первой строке команды командлет Get-EventLog получает события из журнала 
    "Система" и сохраняет их в переменной $events. 
    
    Во второй строке события передаются по конвейеру командлету ForEach-Object.
     Перед началом обработки командлет Clear-Host очищает экран; переменной-сче
    тчику $i присваивается значение 0, а переменной вывода $out — пустая строка
    . 
    
    
    В третьей строке, которая представляет собой блок скрипта Process командлет
    а ForEach-Object, командлет ищет слово "bios" в свойстве message каждого из
     объектов на входе. Если такая строка найдена, соответствующее сообщение до
    бавляется в переменную $out. 
    
    В четвертой строке увеличивается переменная-счетчик $i. Это показывает, что
     проверено еще одно событие. 
    
    В пятой строке используется командлет Write-Progress со значениями текстовы
    х полей Activity и Status, которые формируют соответственно первую и вторую
     строки заголовка индикатора выполнения. Для вычисления значения параметра 
    PercentComplete число обработанных событий ($i) делится на общее число полу
    ченных событий ($events.count), а результат умножается на 100. 
    
    В последней строке параметр End командлета ForEach-Object используется для 
    отображения сообщений, которые были сохранены в переменной $out.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113428
    Write-Verbose 
    Write-Error 
    Write-Host 
    Write-Debug 
    Write-Output 
    Write-Warning 



Write-Verbose

ИМЯ
    Write-Verbose
    
ОПИСАНИЕ
    Записывает текст в поток подробных сообщений.
    
СИНТАКСИС
    Write-Verbose [-Message] <string> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Write-Verbose записывает текст в поток подробных сообщений Window
    s PowerShell. Обычно поток подробных сообщений используется для передачи св
    едений об обработке команд при отладке этих команд. 
    
    По умолчанию поток подробных сообщений не отображается, однако его можно от
    образить, изменив значение переменной $VerbosePreference или с помощью обще
    го параметра Verbose любой из команд.
    
ПАРАМЕТРЫ
    -Message <string>
        Задает отображаемое сообщение. Это обязательный параметр. Кроме того, с
        троку сообщения можно передать командлету Verbose-Message по конвейеру.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую сообщение, можно передать командлету Write-Verbose п
        о конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет Write-Verbose осуществляет запись только в поток подробных со
        общений.
    
    
ПРИМЕЧАНИЯ
    
    
        
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>Write-Verbose -message "Searching the Application Event Log."
    
    C:\PS> Write-Verbose -message "Searching the Application Event Log." -verbo
    se
    
    
    Описание
    -----------
    Эти команды используют для отображения сообщения состояния командлет Write-
    Verbose. По умолчанию сообщение не отображается.
    
    Вторая команда использует общий параметр Verbose, который отображает подроб
    ные сообщения независимо от значения переменной $VerbosePreference.
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$VerbosePreference = "Continue"
    
    C:\PS> Write-Verbose "Copying file $filename"
    
    
    Описание
    -----------
    Эти команды используют для отображения сообщения состояния командлет Write-
    Verbose. По умолчанию сообщение не отображается.
    
    Первая команда присваивает переменной $VerbosePreference preference значени
    е "Continue". Значение по умолчанию ("SilentlyContinue") подавляет подробны
    е сообщения.
    
    Вторая команда записывает подробное сообщение.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113429
    Write-Error 
    Write-Warning 
    about_Preference_Variables 



Write-Warning

ИМЯ
    Write-Warning
    
ОПИСАНИЕ
    Записывает предупреждающее сообщение.
    
СИНТАКСИС
    Write-Warning [-Message] <string> [<CommonParameters>]
    
    
ОПИСАНИЕ
    Командлет Write-Warning записывает предупреждающее сообщение в основную про
    грамму Windows PowerShell. Реакция на предупреждение зависит от установленн
    ого пользователем значения переменной $WarningPreference и общего параметра
     WarningAction.
    
ПАРАМЕТРЫ
    -Message <string>
        Задает предупреждающее сообщение.
        
        Требуется?                    true
        Позиция?                    1
        Значение по умолчанию                
        Принимать входные данные конвейера?  true (ByValue)
        Принимать подстановочные знаки?  false
        
    <CommonParameters>
        Данный командлет поддерживает общие параметры: Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable,
        OutBuffer и OutVariable. Для получения дополнительных сведений введите
        "get-help about_commonparameters".
    
ВХОДНЫЕ ДАННЫЕ
    System.String
        Строку, содержащую предупреждение, можно передать командлету Write-Warn
        ing по конвейеру.
    
    
ВЫХОДНЫЕ ДАННЫЕ
    Нет
        Командлет Write-Warning осуществляет запись только в поток предупрежден
        ий. Он не формирует никакого другого вывода.
    
    
ПРИМЕЧАНИЯ
    
    
        По умолчанию переменная $WarningPreference имеет значение "Continue", ч
        то означает, что предупреждение отображается, после чего продолжается в
        ыполнение команды. Для определения допустимых значений привилегированно
        й переменной, такой как $WarningPreference, присвойте ей строку из случ
        айного набора знаков, например "abc". Допустимые значения будут выведен
        ы в сообщении об ошибке.
        
    
    -------------------------- ПРИМЕР 1 --------------------------
    
    C:\PS>write-warning "This is only a test warning."
    
    
    Описание
    -----------
    Эта команда выводит сообщение "ПРЕДУПРЕЖДЕНИЕ: This is only a test warning"
    .
    
    
    
    
    
    -------------------------- ПРИМЕР 2 --------------------------
    
    C:\PS>$w = "This is only a test warning."
    
    C:\PS> $w | write-warning
    
    
    Описание
    -----------
    В этом примере показано, что для передачи строки командлету Write-Warning м
    ожно использовать оператор конвейера (|). Строку можно сохранить в переменн
    ой, как показано в данной команде, либо передать непосредственно командлету
     Write-Warning по конвейеру.
    
    
    
    
    
    -------------------------- ПРИМЕР 3 --------------------------
    
    C:\PS>$warningpreference
    
    Continue
    
    C:\PS> write-warning "This is only a test warning."
    This is only a test warning.
    
    C:\PS> $warningpreference = "SilentlyContinue"
    
    C:\PS> write-warning "This is only a test warning."
    C:\PS>
    
    C:\PS> $warningpreference = "Stop"
    
    C:\PS> write-warning "This is only a test warning."
    WARNING: This is only a test message.
    Write-Warning : Command execution stopped because the shell variable "Warni
    ngPreference" is set to Stop.
    At line:1 char:14
    + write-warning <  "This is only a test message."
    
    
    Описание
    -----------
    В этом примере показано, как изменение значения переменной $WarningPreferen
    ce влияет на результат выполнения команды Write-Warning.
    
    Первая команда выводит значение переменной $WarningPreference по умолчанию,
     которое равно "Continue". В результате при записи предупреждения сообщение
     о предупреждении выводится и продолжается выполнение.
    
    В случае изменения значения переменной $WarningPreference результат выполне
    ния команды Write-Warning снова изменяется. Значение "SilentlyContinue" под
    авляет появление предупреждения. Значение "Stop" отображает предупреждение,
     после чего прекращает выполнение команды.
    
    Дополнительные сведения о переменной $WarningPreference см. в разделе about
    _Preference_Variables.
    
    
    
    
    
    -------------------------- ПРИМЕР 4 --------------------------
    
    C:\PS>write-warning "This is only a test warning." -warningaction Inquire
    
    WARNING: This is only a test warning.
    
    Confirm
    Continue with this operation?
    [Y] Yes  [A] Yes to All  [H] Halt Command  [S] Suspend  [?] Help (default i
    s "Y"):
    
    
    Описание
    -----------
    В этом примере показано, как изменение значения общего параметра WarningAct
    ion влияет на результат выполнения команды Write-Warning. Общий параметр Wa
    rningAction можно использовать с любым командлетом, чтобы определить, каким
     образом Windows PowerShell реагирует на создаваемые этим командлетом преду
    преждения. Общий параметр WarningAction переопределяет значение переменной 
    $WarningPreference только для данной конкретной команды.
    
    В этой команде командлет Write-Warning используется для отображения предупр
    еждения. Значение Inquire параметра WarningAction указывает на то, что сист
    ема должна выдать пользователю приглашение, когда команда выведет предупреж
    дение.
    
    Дополнительные сведения об общем параметре WarningAction см. в разделе abou
    t_CommonParameters.
    
    
    
    
    
    
ССЫЛКИ ПО ТЕМЕ
    Online version: http://go.microsoft.com/fwlink/?LinkID=113430
    about_Preference_Variables 
    about_CommonParameters 
    Write-Debug 
    Write-Error 
    Write-Host 
    Write-Output 
    Write-Progress 
    Write-Verbose 



WSMan

ИМЯ ПОСТАВЩИКА
    WSMan
    
ДИСКИ
    WSMan
    
ОПИСАНИЕ
    Обеспечивает доступ к конфигурационной информации веб-служб WS-Management.
    
ОПИСАНИЕ
    Поставщик WS-Management для Windows PowerShell позволяет добавлять, изменят
    ь, очищать и удалять конфигурационные данные WS-Management на локальном или
     удаленных компьютерах.
    
    Поставщик WS-Management открывает доступ к диску Windows PowerShell со стру
    ктурой каталогов, соответствующей логическим группам параметров конфигураци
    и WS-Management. Эти группы называются контейнерами.  
    
    -- Client
    Позволяет настроить различные аспекты клиента WS-Management. Конфигурационн
    ая информация сохраняется в реестре.
    
    -- Service 
    Позволяет настроить различные аспекты службы WS-Management. Конфигурационна
    я информация сохраняется в реестре. 
    Примечание. Конфигурация службы иногда называется конфигурацией сервера.
    
    -- Shell
    Позволяет настроить различные аспекты оболочки WS-Management, например, раз
    решить удаленный доступ к оболочке (параметр AllowRemoteShellAccess) и зада
    ть максимально допустимое количество одновременных пользователей (параметр 
    MaxConcurrentUsers).
    
    -- Listener
    Позволяет создать и настроить прослушиватель. Прослушиватель — это служба у
    правления, реализующая протокол WS-Management для отправки и получения сооб
    щений. 
     
    -- Plugin   
    Подключаемые модули загружаются и используются службой WS-Management для об
    еспечения различных функций. По умолчанию в Windows PowerShell предусмотрен
    о три подключаемых модуля: подключаемый модуль Event Forwarding, подключаем
    ый модуль Microsoft.PowerShell и подключаемый модуль поставщика инструмента
    рия управления Windows (WMI). Эти три подключаемых модуля поддерживают пере
    направление событий, настройку и доступ к WMI. 
    
    -- ClientCertificate
    Позволяет создать и настроить сертификат клиента. Сертификат клиента исполь
    зуется, когда клиент WS-Management настроен на проверку подлинности с помощ
    ью сертификата. 
    
    Иерархия каталогов поставщика WS-Management
    ---------------
    Иерархия каталогов поставщика WS-Management для локального компьютера выгля
    дит следующим образом.
    
    WSMan:\localhost
    --- Client
    --- Service
    --- Shell
    --- Listener
    ------ <конкретный_слушатель>
    --- Plugin
    ------ Event Forwarding Plugin
    --------- InitializationParameters
    --------- Resources
    ------------ Security
    ------ Microsoft.Powershell
    --------- InitializationParameters
    --------- Resources
    ------------ Security
    ------ WMI Provider
    --------- InitializationParameters
    --------- Resources
    ------------ Security
    --- ClientCertificate
    
    Иерархия каталогов поставщика WS-Management для удаленного компьютера анало
    гична иерархии каталогов для локального компьютера. Однако для доступа к па
    раметрам конфигурации удаленного компьютера необходимо установить подключен
    ие к удаленному компьютеру с помощью командлета Connect-WSMan. После устано
    вления подключения к удаленному компьютеру имя удаленного компьютера появля
    ется в поставщике. 
    
    WSMan:\<имя_удаленного_компьютера>
    --- Client
    --- Service
    --- Shell
    --- Listener
    ------ <конкретный_слушатель>
    --- Plugin
    ------ Event Forwarding Plugin
    --------- InitializationParameters
    --------- Resources
    ------------ Security
    ------ Microsoft.Powershell
    --------- InitializationParameters
    --------- Resources
    ------------ Security
    ------ WMI Provider
    --------- InitializationParameters
    --------- Resources
    ------------ Security
    --- ClientCertificate
    
    
    Справка по поставщикам
    --------------------
    Для каталогов поставщика Listener, Plugin (IntitializationParameters, Resou
    rces, Security) и ClientCertificate предусмотрены специальные справочные св
    едения по командлету New-Item.  Находясь в том или ином каталоге, введите "
    get-help New-Item", чтобы получить справку по созданию новых элементов в эт
    ом каталоге.
    
ВОЗМОЖНОСТИ
    
    
ЗАДАЧИ
    ЗАДАЧА: Перемещение по диску WSMan:
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда с помощью командлета Set-Location меняет текущее местополож
        ение на диск WSMan:.
        
        Set-Location WSMan:
        
        
        
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда с помощью командлета Set-Location меняет текущее местополож
        ение на корневой каталог в хранилище Localhost.  Чтобы указать уровень 
        иерархии на диске WSMan:, используйте обратную косую черту (\) или косу
        ю черту (/).
        
        Set-Location -Path Localhost
        
        
        Если текущим местоположением является другой диск (не WSMan:), начинайт
        е путь с имени диска.
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда с помощью командлета Set-Location меняет текущее местополож
        ение на корневой каталог в хранилище удаленного компьютера.  Чтобы указ
        ать уровень иерархии на диске WSMan:, используйте обратную косую черту 
        (\) или косую черту (/).
        
        Set-Location -Path  WSMan:\SERVER01
        
        
        Если текущим местоположением является другой диск (не WSMan:), начинайт
        е путь с имени диска.
        
        Приведенная выше команда предполагает наличие подключения к удаленному 
        компьютеру.  Если подключение к удаленному компьютеру еще не установлен
        о, можно установить его непосредственно перед переходом к корневому кат
        алогу в хранилище на удаленном компьютере. Пример:
        
          WSMan-Connect SERVER01
          Set-Location -Path  WSMan:\SERVER01
        -------------------------- ПРИМЕР 4 --------------------------
        
        Эта команда с помощью командлета Set-Location меняет текущее местополож
        ение на каталог Client в хранилище Localhost.  Чтобы указать уровень ие
        рархии на диске WSMan:, используйте обратную косую черту (\) или косую 
        черту (/).
        
        Set-Location -Path Localhost\Client
        
        
        Если текущим местоположением является другой диск (не WSMan:), начинайт
        е путь с имени диска.
        
        
    ЗАДАЧА: Отображение содержимого диска WSMan:
    
        
        
        
        -------------------------- ПРИМЕР 1 --------------------------
        
        Эта команда с помощью командлета Get-Childitem отображает хранилища WS-
        Management в хранилище Localhost.
        
        get-childitem -path WSMan:\Localhost
        
        
        Если текущим местоположением является диск WSMan:, имя диска можно не у
        казывать.
        -------------------------- ПРИМЕР 2 --------------------------
        
        Эта команда с помощью командлета Get-Childitem отображает хранилища WS-
        Management в хранилище удаленного компьютера (SERVER01).
        
        get-childitem -path WSMan:\SERVER01
        
        
        Если текущим местоположением является диск WSMan:, имя диска можно не у
        казывать.
        
        Приведенная выше команда предполагает наличие подключения к удаленному 
        компьютеру.  Если подключение к удаленному компьютеру еще не установлен
        о, можно установить его непосредственно перед отображением свойств и ко
        нтейнеров в хранилище на удаленном компьютере. Пример:
        
          WSMan-Connect SERVER01
          get-childitem -path WSMan:\SERVER01
        -------------------------- ПРИМЕР 3 --------------------------
        
        Эта команда с помощью командлета Get-Childitem отображает текущие подкл
        ючения WS-Management.
        
        get-childitem -path WSMan:\
        
        
        Если текущим местоположением является диск WSMan:, имя диска можно не у
        казывать.
        -------------------------- ПРИМЕР 4 --------------------------
        
        Эта команда с помощью командлета Get-Item получает свойства и контейнер
        ы в текущем хранилище.
        
        Get-Childitem
        
        
        Приведенная выше команда возвращает список свойств и контейнеров.  Прим
        ер:
        PS WSMan:\localhost> get-childitem
        
           WSManConfig: Microsoft.WSMan.Management\WSMan::localhost
        Name                   Value          Type
        ----                             -----          ----
        MaxEnvelopeSizekb      150            System.String
        MaxTimeoutms           60000          System.String
        MaxBatchItems          32000          System.String
        MaxProviderRequests    4294967295     System.String
        Client                                Container
        Service                               Container
        Shell                                 Container
        Listener                              Container
        Plugin                                Container
        ClientCertificate                     Container
        
        
    
    
ДИНАМИЧЕСКИЕ ПАРАМЕТРЫ
    -Address <String>
        Задает адрес, для которого создан данный прослушиватель. Ниже перечисле
        ны возможные значения.
        
        -- Символьная строка "*". (Подстановочный знак (*) дает команде указани
        е привязать все IP-адреса на всех сетевых картах.)
        
        -- Символьная строка "IP:" и допустимый IP-адрес в формате IPv4 (десяти
        чная запись) или в формате IPv6 (шестнадцатеричная запись).
        
        -- Символьная строка "MAC:" и MAC-адрес сетевой карты. Пример: MAC:32-a
        3-58-90-be-cc.
        
        Примечание. Значение параметра Address задается при создании прослушива
        теля.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item
        
    -AllowRemoteShellAccess <Boolean>
        Разрешает доступ к удаленным оболочкам. Если присвоить этому параметру 
        значение False, новые удаленные подключения к оболочкам будут отклонять
        ся сервером. Значение по умолчанию — True.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -AllowUnEncrypted <Boolean>
        Позволяет клиентскому компьютеру запрашивать передачу данных в незашифр
        ованном виде. По умолчанию клиентский компьютер требует зашифрованного 
        сетевого трафика.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Arguments <String>
        Задает строку аргументов и аргументы командной строки, которые нужно пе
        редать пользовательской оболочке. Это необязательный параметр.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Basic <Boolean>
        Позволяет клиентскому компьютеру использовать проверку подлинности по с
        хеме Basic (обычную проверку подлинности). При использовании обычной пр
        оверки подлинности имя пользователя и пароль передаются серверу или про
        кси-серверу открытым текстом. Эта схема является наименее безопасным ме
        тодом проверки подлинности.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Capability <Enumeration>
        Задает операцию, поддерживаемую для данного универсального идентификато
        ра ресурса (URI). Необходимо создать по одной записи для каждого типа о
        перации, поддерживаемого URI. Допустимые значения:
        
        -- Create: для URI поддерживаются операции создания. Атрибут SupportFra
        gment используется, если операция Create поддерживает данную концепцию.
         Атрибут SupportFiltering является недопустимым, и для него следует зад
        ать значение False. Эта операция не допустима для URI, если поддерживаю
        тся операции Shell.
        
        -- Delete: для URI поддерживаются операции удаления. Атрибут SupportFra
        gment используется, если операция Delete поддерживает данную концепцию.
         Атрибут SupportFiltering является недопустимым, и для него следует зад
        ать значение False. Эта операция не допустима для URI, если поддерживаю
        тся операции Shell.
        
        -- Enumerate: для URI поддерживаются операции перечисления. Атрибут Sup
        portFragment не поддерживается операциями Enumerate, и для него следует
         задать значение False. Атрибут SupportFiltering является допустимым, и
         если подключаемый модуль поддерживает фильтрацию, для этого атрибута с
        ледует задать значение True. Эта операция не допустима для URI, если по
        ддерживаются операции Shell.
        
        -- Get: для URI поддерживаются операции получения. Атрибут SupportFragm
        ent используется, если операция Get поддерживает данную концепцию. Атри
        бут SupportFiltering является недопустимым, и для него следует задать з
        начение False. Эта операция не допустима для URI, если поддерживаются о
        перации Shell.
        
        -- Invoke: для URI поддерживаются операции вызова. Атрибут SupportFragm
        ent не поддерживается операциями Invoke, и для него следует задать знач
        ение False. Атрибут SupportFiltering является недопустимым, и для него 
        следует задать значение False. Эта операция не допустима для URI, если 
        поддерживаются операции Shell.
        
        -- Put: для URI поддерживаются операции добавления. Атрибут SupportFrag
        ment используется, если операция Put поддерживает данную концепцию. Атр
        ибут SupportFiltering является недопустимым, и для него следует задать 
        значение False. Эта операция не допустима для URI, если поддерживаются 
        операции Shell.
        
        -- Subscribe: для URI поддерживаются операции подписки. Атрибут Support
        Fragment не поддерживается операциями Subscribe, и для него следует зад
        ать значение False. Атрибут SupportFiltering является недопустимым, и д
        ля него следует задать значение False. Эта операция не допустима для UR
        I, если поддерживаются операции Shell.
        
        -- Shell: для URI поддерживаются операции оболочки. Атрибут SupportFrag
        ment не поддерживается операциями Shell, и для него следует задать знач
        ение False. Атрибут SupportFiltering является недопустимым, и для него 
        следует задать значение False. Эта операция не допустима для URI, если 
        поддерживается любая другая операция. Если для URI настроена операция S
        hell, операции Get, Put, Create, Delete, Invoke и Enumerate обрабатываю
        тся в рамках службы WS-Management (WinRM) для управления оболочками. В 
        результате подключаемый модуль не может обрабатывать операции.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, New-Item, Remove-Item, Set-Item
        
    -CbtHardeningLevel <String>
        Задает политику относительно необходимости токенов привязки канала в за
        просах проверки подлинности. Допустимые значения:
        
        -- Strict: все запросы, в которых отсутствует токен привязки канала, от
        клоняются. Это значение обеспечивает защиту всех подключений путем испо
        льзования токенов привязки канала.
        
        -- Relaxed: если в запросе присутствует токен привязки канала, подключе
        ние будет защищено.  Если токен привязки канала отсутствует, подключени
        е все равно будет принято, однако будет уязвимо к атакам, которые предо
        твращаются использованием токенов привязки канала.
        
        -- None: все предоставляемые токены привязки канала игнорируются.
        
        Значение этого параметра имеет силу только для подключений по протоколу
         HTTPS.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -CertificateThumbprint <String>
        Задает отпечаток сертификата службы.
        Это значение представляет собой состоящую из двузначных шестнадцатеричн
        ых значений строку в поле "Отпечаток" сертификата. Оно задает цифровой 
        сертификат с открытым ключом (X509) учетной записи пользователя, которы
        й располагает разрешением для выполнения этого действия. Сертификаты ис
        пользуются при проверке подлинности на основе сертификата клиента. Они 
        могут быть сопоставлены только с учетными записями локальных пользовате
        лей; с учетными записями доменов они не работают. Чтобы получить отпеча
        ток сертификата, воспользуйтесь командлетом Get-Item или Get-ChildItem 
        в Windows PowerShell на диске Cert:.
        
            
                
                
        
        Поддерживаемые командлеты: Clear-Item, Get-Item, Set-Item
        
    -Certificate <Boolean>
        Позволяет использовать клиент для проверки подлинности с помощью сертиф
        иката. Клиент WS-Management пытается найти сертификат в хранилище компь
        ютера. Если найти сертификат в хранилище компьютера не удается, клиент 
        пытается найти его в хранилище текущего пользователя. Если подходящий с
        ертификат не найден, пользователь получает сообщение об ошибке.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -CredSSP <Boolean>
        Позволяет клиенту использовать проверку подлинности поставщика услуг бе
        зопасности CredSSP. 
        
        При проверке подлинности CredSSP пользователю разрешается делегировать 
        учетные данные. Этот вариант предназначен для команд, которые запускают
        ся на одном удаленном компьютере, но собирают данные с других удаленных
         компьютеров или выполняют на них дополнительные команды.
        
        Внимание При проверке подлинности CredSSP учетные данные пользователя 
        делегируются с локального компьютера на удаленный компьютер. Такой подх
        од повышает угрозы безопасности удаленных операций. Если безопасность у
        даленного компьютера нарушена, при передаче на него учетных данных эти 
        данные могут быть использованы для управления сетевым сеансом.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -HTTP <Unsigned Short Integer>
        Задает порт, используемый клиентом для подключений по протоколу HTTP. П
        о умолчанию для HTTP-подключений используется порт 80. Можно указать лю
        бое значение от 1 до 65535.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -HTTPS <Unsigned Short Integer>
        Задает порт, используемый клиентом для подключений по протоколу HTTPS. 
        По умолчанию для HTTPS-подключений используется порт 443. Можно указать
         любое значение от 1 до 65535.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Digest <Boolean>
        Позволяет клиентскому компьютеру использовать проверку подлинности по с
        хеме Digest (дайджест-проверку подлинности). Дайджест-проверка подлинно
        сти проводится по принципу "запрос-ответ". В качестве запроса поступает
         строка данных, указанная сервером.  Инициировать запрос дайджест-прове
        рки подлинности может только клиентский компьютер. Клиентский компьютер
         отправляет серверу запрос на проверку подлинности и получает от сервер
        а строку токена. Затем клиентский компьютер отправляет запрос на ресурс
        , включающий имя пользователя и криптографический хэш пароля в сочетани
        и со строкой токена. Дайджест-проверка подлинности по схеме Digest подд
        ерживается для HTTP и для HTTPS. Клиентские скрипты оболочки WinRM и пр
        иложения могут запрашивать дайджест-проверку подлинности, однако служба
         WS-Management не принимает дайджест-проверку подлинности.
        
        Примечание. Дайджест-проверка подлинности по протоколу HTTP не считаетс
        я безопасной.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Enabled <Boolean>
        Указывает, включен или отключен прослушиватель. Значение по умолчанию —
         True.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -ExactMatch <Boolean>
        Задает правила использования параметров безопасности, заданных параметр
        ом Sddl. Если параметр ExactMatch имеет значение True, параметры безопа
        сности в параметре Sddl используются только для авторизации попыток дос
        тупа к URI, в точности соответствующему заданному параметром URI. Если 
        параметр If ExactMatch имеет значение False, параметры безопасности в п
        араметре Sddl используются для авторизации доступа к URI, которые начин
        аются со строки, заданной параметром URI.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -FileName <String>
        Задает входной файл для обновления ресурса управления, заданного параме
        трами ResourceURI и SelectorSet.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -FileName (Plugin) <String>
        Задает имя файла подключаемого модуля операций. Любые переменные среды,
         добавленные в эту запись, при получении запроса будут расширены на кон
        текст пользователя. Поскольку у разных пользователей могут быть разные 
        версии одной и той же переменной среды, у разных пользователей могут бы
        ть разные подключаемые модули. Эта запись не может быть пустой и должна
         указывать на допустимый подключаемый модуль.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -HostName <String>
        Задает имя компьютера, на котором запущена служба WS-Management (WinRM)
        .
        Значение должно быть полным доменным именем, символьной строкой IPv4 ил
        и IPv6 или подстановочным знаком.
        
            
                
                
        
        Поддерживаемые командлеты: Clear-Item, Get-Item, Set-Item
        
    -IdleTimeOut <Unsigned Long Integer>
        Задает максимальное время в миллисекундах, в течение которого удаленная
         оболочка будет оставаться открытой при отсутствии в ней пользовательск
        ой активности. По истечении заданного времени удаленная оболочка автома
        тически удаляется. Можно указать любое значение от 0 до 2147483647. 0 о
        значает бесконечное время ожидания. Значение по умолчанию — 900000 (15 
        минут).
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -IPv4Filter <String>
        Задает IPv4-адреса, которые могут использоваться прослушивателями. Допу
        стимые значения:
        
        -- Если оставить параметр пустым, нельзя будет использовать никакие IPv
        4-адреса.
        
        -- Если ввести подстановочный знак (*), можно будет использовать любой 
        IPv4-адрес.
        
        -- Если ввести список IP-адресов, можно будет использовать любой IP-адр
        ес в заданных диапазонах. Разделяйте диапазоны запятой (,) и указывайте
         каждый диапазон в виде пары IPv4-адресов в десятичном формате, разделе
        нных дефисом (-). На первом месте в паре должно стоять меньшее число. Д
        иапазоны рассматриваются как включительные.
        
        Примечание. Символьная строка IPv4 состоит из четырех разделенных точка
        ми десятичных чисел, каждое из которых лежит в диапазоне от 0 до 255. П
        ример: 192.168.0.0.
        
            
                
                
        
        Поддерживаемые командлеты: Clear-Item, Get-Item, Set-Item
        
    -IPv6Filter <String>
        Задает IPv6-адреса, которые могут использоваться прослушивателями. Допу
        стимые значения:
        
        -- Если оставить параметр пустым, нельзя будет использовать никакие IPv
        6-адреса.
        
        -- Если ввести подстановочный знак (*), можно будет использовать любой 
        IPv6-адрес.
        
        -- Если ввести список IP-адресов, можно будет использовать любой IP-адр
        ес в заданных диапазонах. Разделяйте диапазоны запятой (,) и указывайте
         каждый диапазон в виде пары IPv6-адресов в шестнадцатеричном формате, 
        разделенных дефисом (-). На первом месте в паре должно стоять меньшее ч
        исло.  Диапазоны рассматриваются как включительные.
        
        Примечание. Символьная строка IPv6 заключается в квадратные скобки и со
        держит шестнадцатеричные числа, разделенные двоеточиями. Пример: [::1] 
        или [3ffe:ffff::6ECB:0101].
        
            
                
                
        
        Поддерживаемые командлеты: Clear-Item, Get-Item, Set-Item
        
    -Issuer <String>
        Задает имя центра сертификации, выдавшего сертификат.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Kerberos <Boolean>
        Позволяет клиентскому компьютеру использовать проверку подлинности Kerb
        eros. Проверка подлинности Kerberos подразумевает взаимную проверку под
        линности клиента и сервера с использованием сертификатов Kerberos.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -ListeningOn <String>
        Задает IP-адрес или все IP-адреса, по которым служба фактически ожидает
         передачи данных. Это значение выводится из элемента Address на основан
        ии фактических IP-адресов, связанных с прослушивателем. Значение IP-адр
        еса должно быть записано в десятичном формате IPv4 или в шестнадцатерич
        ном формате IPv6. Существует несколько записей ListeningOn; каждая запи
        сь начинается с " ListeningOn_". Пример:
           ListeningOn_1201550598
           ListeningOn_1973755898
           ListeningOn_1508953035
           ListeningOn_1560839940
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item
        
    -MaxBatchItems <Unsigned Long Integer>
        Задает максимальное количество элементов, которое может быть использова
        но в ответе Pull. Можно указать любое значение от 1 до 4294967295.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -MaxConcurrentUsers <Unsigned Long Integer>
        Задает максимальное количество пользователей, могущих одновременно выпо
        лнять удаленные операции на одном и том же компьютере через удаленную о
        болочку. По достижении заданного предела новые подключения к оболочке б
        удут отклоняться. Можно указать любое значение от 1 до 100.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -MaxEnvelopeSizekb <Unsigned Long Integer>
        Задает максимальный размер данных SOAP в килобайтах. Можно указать любо
        е значение от 32 до 4294967295.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -MaxMemoryPerShellMB <Unsigned Long Integer>
        Задает максимальный общий объем памяти, который может быть выделен акти
        вной удаленной оболочке и всем ее дочерним процессам. Можно задать любо
        е значение от 0 до 2147483647. 0 означает, что объем выделяемой удаленн
        ыми операциями памяти ограничен только доступной виртуальной памятью. З
        начение по умолчанию — 0.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -MaxProcessesPerShell <Unsigned Long Integer>
        Задает максимальное количество процессов, которое разрешается запускать
         любой операции оболочки. Можно указать любое значение от 0 до 21474836
        47. 0 означает неограниченное количество процессов. По умолчанию ограни
        чение составляет пять процессов на оболочку.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -MaxProviderRequests <Unsigned Long Integer>
        Задает максимальное количество одновременных запросов, допускаемое служ
        бой. Можно указать любое значение от 1 до 4294967295. Ограничение приме
        няется по поставщику.
        
        Примечание. Это значение считается устаревшим, и использовать его не сл
        едует.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item
        
    -MaxShellsPerUser <Unsigned Long Integer>
        Задает максимальное количество оболочек, которое любой пользователь мож
        ет одновременно удаленно открыть на одном компьютере. Если этот парамет
        р политики включен, по достижении заданного предела пользователь не смо
        жет открывать новые удаленные оболочки. Если этот параметр политики отк
        лючен или не задан, по умолчанию ограничение составляет две удаленных о
        болочки на пользователя. Можно указать любое значение от 0 до 214748364
        7. 0 означает неограниченное количество оболочек.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -MaxTimeoutMs <Unsigned Long Integer>
        Задает максимальное время ожидания в миллисекундах, которое может испол
        ьзоваться для любого запроса, за исключением запросов Pull. Можно указа
        ть любое значение от 500 до 4294967295.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Name <String>
        Задает отображаемое имя для сеанса WS-Management. Это имя можно использ
        овать для идентификации сеанса при использовании других командлетов, на
        пример Get-PSSession или Enter-PSSession. Имя не обязательно должно быт
        ь уникальным в рамках компьютера или текущего сеанса.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Name (Plugin) <String>
        Задает отображаемое имя для подключаемого модуля. Если подключаемый мод
        уль возвратит ошибку, отображаемое имя будет включено в XML-данные об о
        шибке, возвращаемые клиентскому приложению. Имя не зависит от локали.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Negotiate <Boolean>
        Позволяет клиентскому компьютеру использовать проверку подлинности по с
        хеме Negotiate (проверка подлинности с согласованием). При проверке под
        линности с согласованием клиент отправляет серверу запрос на проверку п
        одлинности. Сервер определяет, какой протокол использовать — Kerberos и
        ли NTLM. Протокол Kerberos выбирается для проверки подлинности учетной 
        записи домена, а NTLM — для учетных записей локального компьютера. В сл
        учае пользователя домена имя пользователя должно быть указано в формате
         "домен\имя_пользователя". В случае локального пользователя на серверно
        м компьютере имя пользователя должно быть указано в формате "имя_сервер
        а\имя_пользователя".
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -NetworkDelayMs <Unsigned Long Integer>
        Задает дополнительное время ожидания клиента в миллисекундах для поправ
        ки на сетевую задержку. Можно указать любое значение от 500 до 42949672
        95.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Password <String>
        Задает пароль для локальной учетной записи или учетной записи домена. Э
        тот параметр не может иметь значение NULL.  
        
        Клиентский компьютер может указывать учетные данные, которые будут испо
        льзоваться при создании оболочки на компьютере. В случае пользователя д
        омена имя пользователя должно быть указано в формате "домен\имя_пользов
        ателя". В случае локального пользователя на серверном компьютере имя по
        льзователя должно быть указано в формате "имя_сервера\имя_пользователя"
        . 
        
        При использовании этой структуры должны быть заполнены и поле имени пол
        ьзователя, и поле пароля. Ее можно использовать в сочетании со схемами 
        проверки подлинности Basic (обычная), Digest (дайджест-), Negotiate (с 
        согласованием) и Kerberos. При использовании проверки подлинности по сх
        еме Basic или Digest клиент должен явно указывать учетные данные.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Plugin <>
        Подключаемые модули WS-Management представляют собой собственные библио
        теки динамической компоновки (DLL) для подключения к службам WS-Managem
        ent и расширения их функциональности. API подключаемых модулей WS-Manag
        ement предоставляет функциональность, позволяющую пользователю разрабат
        ывать подключаемые модули, путем реализации определенных API для поддер
        живаемых URI ресурсов и операций. После настройки подключаемых модулей 
        под службу WS-Management (WinRM) или службы IIS подключаемые модули заг
        ружаются на узел WS-Management или узел служб IIS соответственно. Удале
        нные запросы передаются входным точкам этих подключаемых модулей для вы
        полнения операций.
        
            
                
                
        
        Поддерживаемые командлеты: New-Item, Remove-Item
        
    -Port <Unsigned Short Integer>
        Задает TCP-порт, для которого создан данный прослушиватель. Можно указа
        ть любое значение от 1 до 65535.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Resource <String>
        Задает конечную точку, которая представляет определенный тип операции у
        правления или значение. Служба предоставляет один или несколько ресурсо
        в, и некоторые ресурсы могут иметь более одного экземпляра. Ресурс упра
        вления сходен с классом WMI или с таблицей базы данных, а экземпляр схо
        ден с экземпляром класса или со строкой в таблице. Например, класс Win3
        2_LogicalDisk представляет собой ресурс, а Win32_LogicalDisk="C:\" — ко
        нкретный экземпляр ресурса.
        
        Универсальный идентификатор ресурса (URI) состоит из префикса и пути к 
        ресурсу. Пример: 
        http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalD
        isk
        http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -ResourceURI <String>
        Задает универсальный идентификатор ресурса (URI), который идентифицируе
        т конкретный тип ресурса, например диск или процесс, на компьютере.
        
        URI состоит из префикса и пути к ресурсу. Пример: 
        http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalD
        isk
        http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item
        
    -RootSDDL <String>
        Задает строку в формате языка определения дескрипторов безопасности (SD
        DL) для записи управления доступом. Эта строка определяет параметры без
        опасности, используемые для авторизации доступа к заданному URI ресурса
        .
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -SDKVersion <String>
        Задает версию комплекта SDK подключаемых модулей WS-Management SDK.  Ед
        инственным допустимым значением является 1.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Shell <String>
        Задает строку процесса для пользовательской оболочки. Можно указывать п
        еременные среды.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -ShellTimeout <Unsigned Long Integer>
        Задает время до закрытия оболочки при отсутствии активности.  Укажите в
        ремя ожидания в миллисекундах.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Subject <String>
        Задает объект, идентифицируемый сертификатом.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item
        
    -SupportsOptions <Boolean>
        Указывает, поддерживает ли подключаемый модуль использование параметров
        , передаваемых в заголовке wsman:OptionSet сообщения запроса.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Transport <String>
        Задает протокол, используемый для отправки и получения запросов и ответ
        ов протокола WS-Management. Возможные значения — HTTP и HTTPS.
        
        Примечание. Значение параметра Transport задается при создании прослуши
        вателя.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item
        
    -TrustedHosts <String>
        Перечень удаленных компьютеров, подключенных к локальному компьютеру по
        средством доверительного сетевого соединения.  Разрешается отправлять з
        апросы на содержащиеся в этом списке компьютеры, когда используемые схе
        ма проверки подлинности и протокол не позволяют клиенту проверить подли
        нность службы (например, при проверке подлинности по схеме Basic по про
        токолу HTTP).
        
        Если сервер присутствует в списке TrustedHosts, клиент не проверяет под
        линность удостоверения сервера, что делает его уязвимым для атак "злоум
        ышленник в середине".  Вносить имена узлов в этот список следует только
         когда сетевое соединение защищено от пользователей-злоумышленников, на
        пример в среде домена.
        
        Указываемые имена узлов могут быть DNS-именами или IP-адресами. Допусти
        мы следующие значения.
        
        -- пустой список: доверенные узлы отсутствуют.
        
        -- Звездочка "*": все узлы являются доверенными.
        
        Список шаблонов имен узлов, разделенных запятыми (,). Шаблон имени узла
         должен иметь следующий формат:
        
        -- Строка, которая начинается с подстановочного знака (*). Строка должн
        а содержать не менее двух символов. Все узлы с заданным суффиксом являю
        тся доверенными.
        
        -- Строка, которая заканчивается подстановочным знаком (*). Строка долж
        на содержать не менее двух символов. Все узлы с заданным префиксом явля
        ются доверенными.
        
        -- Все доверенные имена NetBIOS (например, строки, не содержащие точки)
        .
        
        -- Строка без подстановочного знака (*): узел, имя которого совпадает с
        о строкой, является доверенным.
        
        Примечание. При задании значения параметра TrustedHosts с помощью коман
        длета Set-Item командлет Set-Item поддерживает дополнительный параметр 
        -Concatenate.  Приведенный ниже пример добавляет новое значение (*.doma
        in2.com) к старым значениям, сохраненным в параметре TrustedHost:
        
          Set-Item .\TrustedHosts *.domain2.com -Concatenate -Force
        
            
                
                
        
        Поддерживаемые командлеты: Clear-Item, Get-Item, Set-Item
        
    -URI <String>
        Определяет URI, доступ к которому авторизуется на основании значения па
        раметра Sddl.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item
        
    -URLPrefix <String>
        Префикс URL-адреса, по которому принимаются HTTP- или HTTPS-запросы. Пр
        едставляет собой строку, содержащую только символы a-z, A-Z, 9-0, знак 
        подчеркивания (_) и обратную косую черту (/). Строка не должна начинать
        ся с обратной косой черты (/) или заканчиваться ей. Например, если имя 
        компьютера — "SampleComputer", клиент WS-Management будет указывать в а
        дресе назначения http://SampleMachine/URLPrefix.
        
            
                
                
        
        Поддерживаемые командлеты: Clear-Item, Get-Item, Set-Item
        
    -UserName <String>
        Задает имя пользователя для локальной учетной записи или учетной записи
         домена. Этот параметр не может иметь значение NULL.  
        
        Клиент может указывать учетные данные, которые будут использоваться при
         создании оболочки на компьютере. В случае учетной записи домена имя по
        льзователя должно быть указано в формате "домен\имя_пользователя". В сл
        учае локальной учетной записи на серверном компьютере имя пользователя 
        должно быть указано в формате "имя_сервера\имя_пользователя".
        
        При использовании этой структуры должны быть заполнены и поле имени пол
        ьзователя, и поле пароля. Ее можно использовать в сочетании со схемами 
        проверки подлинности Basic (обычная), Digest (дайджест-), Negotiate (с 
        согласованием) и Kerberos. При использовании проверки подлинности по сх
        еме Basic или Digest клиент должен явно указывать учетные данные.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -Value <String>
        Задает значение параметра инициализации, который представляет собой пре
        дназначенное для данного подключаемого модуля значение, используемое дл
        я задания параметров конфигурации.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -XMLRenderingType <String>
        Задает формат, в котором XML-данные передаются подключаемым модулям пос
        редством объекта WSMAN_DATA. Допустимые значения: 
        
        Text: входящие XML-данные содержатся в структуре WSMAN_DATA_TYPE_TEXT, 
        которая представляет XML в виде буфера памяти PCWSTR.
        
        XMLReader: входящие XML-данные содержатся в структуре WSMAN_DATA_TYPE_W
        S_XML_READER, которая представляет XML в виде объекта XmlReader, опреде
        ленного в файле заголовка WebServices.h.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -xmlns <String>
        Строка, задающая унифицированное имя ресурса (URN), которое однозначно 
        определяет пространство имен.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -lang <String>
        Строка, задающая язык или язык и регион, где язык и регион разделены де
        фисом.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -HTTP <Short Integer>
        Задает порт, используемый клиентом для подключений по протоколу HTTP. П
        о умолчанию для HTTP-подключений используется порт 80. Можно указать лю
        бое значение от 1 до 65535.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -HTTPS <Short-Integer>
        Задает порт, используемый клиентом для подключений по протоколу HTTPS. 
        По умолчанию для HTTPS-подключений используется порт 443. Можно указать
         любое значение от 1 до 65535.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item, Set-Item
        
    -MaxShellRunTime <Unsigned Long Integer>
        Примечание. Это значение считается устаревшим и более не используется.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item
        
    -MaxShellRunTime <Unsigned Long Integer>
        Примечание. Это значение считается устаревшим, и использовать его не сл
        едует.
        
            
                
                
        
        Поддерживаемые командлеты: Get-Item
        
    
ПРИМЕЧАНИЯ
    
ССЫЛКИ ПО ТЕМЕ
    







about_aliases

РАЗДЕЛ
    about_aliases
КРАТКОЕ ОПИСАНИЕ
    Описывает использование альтернативных имен командлетов и команд 
    в Windows PowerShell. 
ПОЛНОЕ ОПИСАНИЕ
    Псевдоним представляет собой альтернативное имя командлета или 
    элемента команды, например, функции, скрипта, файла или 
    исполняемого файла. Псевдоним можно использовать вместо имени 
    команды в любых командах Windows PowerShell.
    
    Чтобы создать псевдоним, используйте командлет New-Alias. Например, 
    следующая команда создает псевдоним "gas" для командлета Get-
    AuthenticodeSignature:
        new-alias -name gas -value Get-AuthenticodeSignature
    После создания псевдонима командлета можно использовать этот псевдоним 
    вместо имени командлета. Например, для получения подписи Authenticode 
    для файла SqlScript.ps1 введите следующую команду:
        get-authenticodesignature sqlscript.ps1
    Также можно ввести следующую команду:
        gas sqlscript.ps1
	
    Если для Microsoft Office Word создать псевдоним "word", то можно 
    будет вводить слово "word" вместо следующей команды:
	
        "c:\program files\microsoft office\office11\winword.exe" 
ВСТРОЕННЫЕ ПСЕВДОНИМЫ
    В Windows PowerShell имеется набор встроенных псевдонимов, в том 
    числе "cd" и "chdir", которые являются псевдонимами командлета 
    Set-Location, а также "ls" и "dir" для командлета Get-ChildItem. 
    Для получения всех псевдонимов, доступных на компьютере, в том числе 
    встроенных, введите следующую команду:
        get-alias
КОМАНДЛЕТЫ ДЛЯ РАБОТЫ С ПСЕВДОНИМАМИ
    В Windows PowerShell имеются следующие командлеты, предназначенные для 
    работы с псевдонимами. 
        - Get-Alias. Получает все псевдонимы в текущем сеансе.	 
        - New-Alias. Создает новый псевдоним.
        - Set-Alias. Создает или изменяет существующий псевдоним.
        - Export-Alias. Экспортирует один или несколько псевдонимов в файл.
        - Import-Alias. Импортирует файл псевдонимов в Windows PowerShell. 
    Чтобы получить дополнительные сведения о командлетах, введите 
    следующую команду:
	get-help <имя_командлета> -detailed
    Например, введите следующую команду:
	
	get-help export-alias -detailed
СОЗДАНИЕ ПСЕВДОНИМА
    Чтобы создать новый псевдоним, используйте командлет New-Alias. 
    Например, чтобы создать псевдоним "gh" для командлета Get-Help, 
    введите следующую команду:
	new-alias -name gh -value get-help
    Этот псевдоним можно использовать в командах так же, как и полное имя 
    командлета; псевдоним также можно указываться с параметрами.
    Например, чтобы получить подробную справку о командлете Get-WmiObject, 
    введите следующую команду:
	get-help get-wmiobject -detailed
    Также можно ввести следующую команду:
	gh get-wmiobject -detailed
СОХРАНЕНИЕ ПСЕВДОНИМОВ
    Созданные псевдонимы сохраняются только в текущем сеансе. Для 
    использования псевдонимов в другом сеансе добавьте нужные 
    псевдонимы в свой профиль Windows PowerShell. Также можно 
    использовать командлет Export-Alias для сохранения псевдонимов в 
    файл. 
    
    Чтобы получить дополнительные сведения, введите следующую команду:
        get-help about_profile
ПОЛУЧЕНИЕ ПСЕВДОНИМОВ
    Для получения всех псевдонимов в текущем сеансе, включая встроенные 
    псевдонимы, псевдонимы в текущем пользовательском профиле Windows 
    PowerShell, а также псевдонимы, созданные в текущем сеансе, введите 
    следующую команду:
	get-alias
  
    Чтобы получить определенные псевдонимы, используйте параметр Name 
    командлета Get-Alias.
    Например, чтобы получить псевдонимы, которые начинаются с буквы 
    "p", введите следующую команду:
	get-alias -name p*
    Для получения псевдонимов определенного элемента, используйте параметр 
    Definition.
    Например, для получения псевдонимов командлета Get-ChildItem, введите 
    следующую команду:
	get-alias -definition Get-ChildItem
АЛЬТЕРНАТИВНЫЕ ИМЕНА КОМАНД С ПАРАМЕТРАМИ
    Псевдоним можно назначить командлету, скрипту, функции или 
    исполняемому файлу.
    Однако нельзя присвоить псевдоним команде и ее параметрам.
    Например, можно присвоить псевдоним командлету Get-EventLog, но 
    при этом нельзя присвоить псевдоним команде "get-eventlog 
    -logname system".
    Однако можно создать функцию, которая включает эту команду. Для 
    создания функции введите слово "function", а за ним - имя функции.
    Введите команду и заключите ее в фигурные скобки ({ }).
    Например, следующая команда создает функцию syslog. Эта функция 
    представляет команду "get-eventlog -logname system".
	function syslog {get-eventlog -logname system}
    Теперь вместо длинной команды можно вводить одно слово "syslog". 
    Кроме того, для функции syslog можно создавать псевдонимы.
    Чтобы получить дополнительные сведения о функциях, введите следующую 
    команду:
	get-help about_functions
ОБЪЕКТЫ ПСЕВДОНИМОВ
     Псевдонимы Windows PowerShell представлены объектами, которые 
     являются экземплярами класса System.Management.Automation.AliasInfo. 
     Дополнительные сведения об объектах этого типа см. в разделе "Класс 
     AliasInfo" в библиотеке MSDN по адресу 
     http://go.microsoft.com/fwlink/?LinkId=143644.
     Для просмотра свойств и методов объектов псевдонимов сначала получите 
     псевдонимы. Затем передайте их по конвейеру командлету Get-Member. Пример:
	get-alias | get-member
     Для просмотра значений свойств определенного псевдонима, 
     например "dir", получите псевдоним. Затем передайте его по конвейеру 
     командлету Format-List. Например, следующая команда получает 
     псевдоним "dir". Затем команда передает псевдоним по конвейеру командлету 
     Format-List. Наконец, команда использует параметр -property командлета 
     Format-List с подстановочным знаком (*) для отображения всех свойств 
     псевдонима "dir". Эти задачи выполняются с помощью следующей команды:
	get-alias -name dir | format-list -property *
ПОСТАВЩИК ПСЕВДОНИМОВ WINDOWS POWERSHELL
    В состав Windows PowerShell входит поставщик псевдонимов Alias. 
    Поставщик Alias позволяет просматривать псевдонимы Windows 
    PowerShell так, как если бы они находились на диске файловой системы. 
    Поставщик Alias открывает доступ к диску с именем "Alias:". Для 
    перехода на диск "Alias:" введите следующую команду:
	set-location alias:
    Для просмотра содержимого диска введите следующую команду:
	get-childitem
    Для просмотра содержимого другого диска Windows PowerShell 
    укажите в начале пути имя диска. Не забудьте поставить двоеточие 
    (:) после имени диска. Пример:
	get-childitem -path alias:
    Для получения сведений об определенном псевдониме введите имя 
    диска и имя псевдонима. Можно также указать шаблон имен. Например, для 
    получения всех псевдонимов, которые начинаются с буквы "p", введите 
    следующую команду:
	get-childitem -path alias:p*
    Чтобы получить дополнительные сведения о поставщике Alias Windows 
    PowerShell, введите следующую команду:
	
	get-help alias-psprovider
СМ. ТАКЖЕ
    new-alias
    get-alias
    set-alias
    export-alias
    import-alias
    get-psprovider
    get-psdrive
    about_functions
    about_profiles
    about_providers



about_Arithmetic_Operators

РАЗДЕЛ
    about_Arithmetic_Operators
КРАТКОЕ ОПИСАНИЕ
    Описание арифметических операторов, используемых в Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Арифметические операторы используются для вычисления числовых 
    значений. Можно использовать один или несколько арифметических 
    операторов для сложения, вычитания, умножения и деления значений, 
    а также для вычисления остатка при операции деления.
    Кроме того, оператор сложения (+) и оператор умножения (*) также 
    используются при работе со строками, массивами и хэш-таблицами. 
    Оператор сложения объединяет введенные данные. Оператор умножения 
    возвращает несколько копий входных данных. В арифметическом 
    операторе могут даже использоваться объекты различных типов.
    Метод, используемый для вычисления результата оператора, 
    определяется типом самого левого объекта в выражении.
    В Windows PowerShell поддерживаются следующие арифметические 
    операторы.
    Оператор  Описание                                Пример
    --------  -----------                             -------
    +         Сложение целых чисел; объединение       6+2  
              строк, массивов и хэш-таблиц.           "имя" + "файла"
    -         Вычитание одного значения               6-2 
              из другого.                             (get-date).date - 
    -         Смена знака числа.                      -6+2
                                                      -4
    *         Умножение целых чисел; копирование      6*2
              строк и массивов  указанное             "w" * 3
              количество раз.     
    /         Деление одного значения на другое.      6/2
    %         Возврат остатка при операции деления.   7%2
 
 
    ПРИОРИТЕТ ОПЕРАТОРОВ
    Windows PowerShell обрабатывает арифметические операторы в 
    следующем порядке.
        Скобки ()
        - (смена знака)
        *, /, %
        +, - (вычитание).
    Windows PowerShell обрабатывает выражения слева направо с учетом 
    правил приоритета. В следующих примерах показано влияние правил 
    приоритета на результат вычислений. 
        C:\PS> 3+6/3*4 
        11
        C:\PS> 10+4/2
        12
        C:\PS> (10+4)/2
        7
        C:\PS> (3+3)/ (1+1)
        3
 
    Порядок, в котором Windows PowerShell вычисляет результат 
    выражений, может отличаться от других языков программирования и языков 
    скриптов, с которыми вы работали. В следующем примере показан сложный 
оператор назначения.
        C:\PS> $a = 0
        C:\PS> $b = 1,2
        C:\PS> $c = -1,-2
        
        C:\PS> $b[$a] = $c[$a++]
        
        C:\PS> $b
        1
        -1
    В этом примере выражение $a++ вычисляется до выражения $c[$a++]. 
    При вычислении $a++ значение переменной $a изменяется. Переменная $a в 
    выражении $b[$a] равняет 1, а не 0, поэтому оператор назначает 
    значение $b[1], а не $b[0].
    СЛОЖЕНИЕ И УМНОЖЕНИЕ НЕЧИСЛОВЫХ ТИПОВ
    Можно складывать числа, строки, массивы и хэш-таблицы. Также 
    можно умножать числа, строки и массивы. Однако, хэш-таблицы не могут 
    использоваться в операторе умножения.
    При сложении строк, массивов или хэш-таблиц элементы объединяются. При 
    объединении коллекций, например массивов или хэш-таблиц, создается 
    новый объект, в котором содержатся объекты из обеих коллекций. 
    При попытке объединения хэш-таблиц, содержащих общий ключ, операция 
    завершается неудачей.
    Например, следующая команда создает два массива и выполняет их 
    сложение:
	C:\PS> $a = 1,2,3
	C:\PS> $b = "A","B,"C"
	C:\PS> $a + $b
	1
	2
	3
	A
	B
	C
 
    Можно также выполнять арифметические операции над объектами 
    различных типов. Операция, которую попытается выполнить Windows 
    PowerShell, определяется типом платформы Microsoft .NET Framework 
    самого левого объекта, участвующего в операции. Windows PowerShell 
    пытается преобразовать все объекты, участвующие в операции, в тип 
    платформы Microsoft .NET Framework первого объекта. Если 
    преобразование объектов завершается успешно, выполняется 
    операция, соответствующая типу платформы Microsoft .NET Framework 
    первого объекта. Если преобразовать любой из объектов не удается, 
    операция завершается неудачей. 
    В следующем примере показано использование операторов сложения и 
    умножения в операциях с объектами различных типов.
        C:\PS> "файл" + 16
        файл16
        C:\PS> $array = 1,2,3
        C:\PS> $array + 16
        1
        2
        3
        16
	C:\PS> $array + "файл"
        1
        2
        3
        файл
        C:\PS> "файл" * 3
        файлфайлфайл
 
    Поскольку метод, используемый для вычисления результата 
    оператора, определяется типом самого левого объекта в выражении, 
    сложение и умножение в Windows PowerShell не являются строго 
    коммутативными. Например, (a + b) не всегда равняется (b + a), а 
    (a * b) не всегда равняется (b * a).
    Этот принцип показан в следующем примере.
        C:\PS> "файл" + 2
        файл2
        C:\PS> 2 + "файл"
        Не удается преобразовать значение "файл" в тип "System.Int32".
        Ошибка: "Неверный формат строки ввода."
        В строке:1 знак:4
        + 2 + < "файл"
        C:\PS> "файл" * 3
        файлфайлфайл
        C:\PS> 3 * "файл"
        Не удается преобразовать значение "файл" в тип "System.Int32".
        Ошибка: "Неверный формат строки ввода."
        В строке:1 знак:4
        + 3 * < "файл"
 
    Обработка хэш-таблиц выполняется несколько по-другому. 
    Допускается сложение хэш-таблиц. Также можно добавить хэш-таблицу 
    к массиву. Тем не менее, нельзя добавить переменную любого 
    другого типа к хэш-таблице. 
    В следующих примерах показано сложение хэш-таблиц друг с другом и 
    с другими объектами.
        C:\PS> $hash1 = @{a=1; b=2; c=3}
        C:\PS> $hash2 = @{c1="Server01"; c2="Server02"}
        C:\PS> $hash1 + $hash2
        Имя                            Значение
        ----                           -----
        c2                             Server02 1
        b                              2
        c1                             Server01 3
        C:\PS> $hash1 + 2
        Можно добавить хеш-таблицу только к другой хеш-таблице.
        В строке:1 знак:9
        + $hash1 + < 2
        C:\PS> 2 + $hash1
        Не удается преобразовать "System.Collections.Hashtable" в 
        "System.Int32".
        В строке:1 знак:4
        + 2 + < $hash1
 
    В следующем примере показано, как добавить хэш-таблицу к массиву. 
    Вся хэш-таблица добавляется к массиву как один объект.
        C:\PS> $array = 1,2,3
        C:\PS> $array + $hash1
        1
        2
        3
        Имя                           Значение
        ----                           -----
        a                              1
        b                              2
        c                              3
        C:\PS> $sum = $array + $hash1
        C:\PS> $sum.count
        4
        C:\PS> $sum[3]
        Имя                           Значение
        ----                           -----
        a                              1
        b                              2
        c                              3
        PS C:\ps-test> $sum + $hash2
        1
        2
        3
        Имя                           Значение
        ----                           -----
        a                              1
        b                              2
        c                              3
        c2                             Server02 
    В следующем примере показано, что нельзя складывать хэш-таблицы, 
    содержащие общий ключ.
        C:\PS> $hash1 = @{a=1; b=2; c=3}
        C:\PS> $hash2 = @{c="red"}
        C:\PS> $hash1 + $hash2
        Неверный аргумент для оператора '+': Элемент уже был 
        добавлен. Ключ в словаре: 'c'  Добавляемый ключ: 'c'.
        В строке:1 знак:9
        + $hash1 + < $hash2
 
    Хотя операторы сложения очень удобны, используйте операторы 
    назначения для добавления элементов в хэш-таблицы и массивы. 
    Дополнительные сведения см. в разделе about_assignment_operators. 
    В следующих примерах показано использование оператора назначения 
    += для добавления элементов в массив:
        C:\PS> $array
        1
        2
        3
        C:\PS> $array + "файл"
        1
        2
        3
        файл
        C:\PS> $array
        1
        2
        3
        C:\PS> $array += "файл"
        C:\PS> $array
        1
        2
        3
        файл
        C:\PS> $hash1
        Имя                           Значение
        ----                           -----
        a                              1
        b                              2
        c                              3
        C:\PS> $hash1 += @{e = 5}
        C:\PS> $hash1
        Имя                           Значение
        ----                           -----
        a                              1
        b                              2
        e                              5
        c                              3
 
    Windows PowerShell автоматически выбирает числовой тип платформы .NET 
    Framework, который позволит оптимально представить результат без 
    снижения точности. Пример:
        C:\PS> 2 + 3.1
        5.1
        C:\PS> (2). GetType().FullName
        System.Int32
        C:\PS> (2 + 3.1).GetType().FullName
        System.Double
    Если результат операции оказывается слишком велик для 
    определенного типа, то тип результата расширяется для размещения 
    результата (см. следующий пример). 
        C:\PS> (512MB).GetType().FullName
        System.Int32
        C:\PS> (512MB * 512MB).GetType().FullName
        System.Double
    Тип результата не обязательно совпадает с типом одного из операндов. В 
    следующем примере невозможно преобразовать отрицательное значение в 
    целое без знака, а целое число без знака слишком велико, чтобы 
    преобразовать его в Int32.
        C:\PS> ([int32]::minvalue + [uint32]::maxvalue).gettype().fullname
        System.Int64
    В этом примере Int64 позволяет разместить значения обоих типов.
    Исключением является тип System.Decimal. Если любой из операндов 
    принадлежит к типу Decimal, результата также будет принадлежать к 
    типу Decimal. Если результат окажется слишком велик для типа 
    Decimal, он не будет преобразован в тип Double. Вместо этого 
    будет выдано сообщение об ошибке.
    
        C:\PS> [Decimal]::maxvalue
        79228162514264337593543950335
        C:\PS> [Decimal]::maxvalue + 1
        Значение слишком велико или слишком мало для типа Decimal.
        В строке:1 знак:22
        + [Decimal]::maxvalue + < 1
    АРИФМЕТИЧЕСКИЕ ОПЕРАТОРЫ И ПЕРЕМЕННЫЕ
    Арифметические операторы могут также использоваться с 
    переменными. Операторы используют значения переменных. В 
    следующих примерах показано использование арифметических операторов с 
    переменными.
        C:\PS> $intA = 6 
        C:\PS> $intB = 4 
        C:\PS> $intA + $intB 
        10 
        C:\PS> $a = "Windows " 
        C:\PS> $b = "PowerShell " 
        C:\PS> $c = 2 
	C:\PS> $a + $b + $c
        Windows PowerShell 2 
    АРИФМЕТИЧЕСКИЕ ОПЕРАТОРЫ И КОМАНДЫ
    Обычно арифметические операторы используются в выражениях с 
    числами, строками и массивами. Однако, арифметические операторы 
    могут также использоваться с объектами, возвращаемыми командами, 
    и со свойствами этих объектов.
    В следующих примерах показано, как использовать арифметические 
    операторы в выражениях с командами Windows PowerShell.
	C:\PS> get-date
	Среда, 02 января 2008 г., 13:28:42
	C:\PS> $day = new-timespan -day 1
	C:\PS> get-date + $day
	Четверг, 03 января 2008 г., 13:34:52
	C:\PS> get-process | where {($_.ws * 2) -gt 50mb}
	Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
	-------  ------    -----      ----- -----   ------     -- -----------
	   1896      39    50968      30620   264 1,572.55   1104 explorer
	  12802      78   188468      81032   753 3,676.39   5676 OUTLOOK
	    660       9    36168      26956   143    12.20    988 powershell
	    561      14     6592      28144   110 1,010.09    496 services
	   3476      80    34664      26092   234 ...45.69    876 svchost
	    967      30    58804      59496   416   930.97   2508 WINWORD
ПРИМЕРЫ
    В следующих примерах показано, как использовать арифметические 
    операторы в Windows PowerShell.
	C:\PS> 1 + 1
	2 
	C:\PS> 1 - 1 
	0 
	C:\PS> -(6 + 3) 
	-9 
	C:\PS> 6 * 2 
	12 
	C:\PS> 7 / 2 
	3.5 
	C:\PS> 7 % 2 
	1 
	C:\PS> w * 3 
	www 
	C:\PS> 3 * "w" 
	Не удается преобразовать значение "w" в тип "Systm.Int32". Ошибка: 
	"Неверный формат строки ввода." 
	В строке:1 знак:4 
	+ 3 * < "w" 
	PS C:\ps-test> "Windows" + " " + "PowerShell" 
	Windows PowerShell 
	PS C:\ps-test> $a = "Windows" + " " + "PowerShell" 
	PS C:\ps-test> $a 
	Windows PowerShell 
	C:\PS> $a[0] 
	W 
	C:\PS> $a = "TestFiles.txt" 
	C:\PS> $b = "C:\Logs\" 
	C:\PS> $b + $a 
	C:\Logs\TestFiles.txt 
	C:\PS> $a = 1,2,3 
	C:\PS> $a + 4 
	1 
	2 
	3 
	4 
	C:\PS> $servers = @{0 = "LocalHost"; 1 = "Server01"; 2 = "Server02"} 
	C:\PS> $servers + @{3 = "Server03"} 
	Имя Значение 
	---- ----- 
	3 Server03 
	2 Server02 
	1 Server01 
	0 LocalHost 
	C:\PS> $servers 
	Имя Значение 
	---- ----- 
	2 Server02 
	1 Server01 
	0 LocalHost 
	C:\PS> $servers += @{3 = "Server03"} #Используйте оператор назначения 
	C:\PS> $servers 
	Имя Значение 
	---- ----- 
	3 Server03 
	2 Server02 
	1 Server01 
	0 LocalHost 
СМ. ТАКЖЕ
    about_arrays
    about_assignment_operators
    about_comparison_operators
    about_hash_tables
    about_operators
    about_variables
    Get-Date
    New-TimeSpan



about_arrays

РАЗДЕЛ
    about_Arrays
КРАТКОЕ ОПИСАНИЕ
    Описание компактной структуры размещения элементов данных
ПОЛНОЕ ОПИСАНИЕ
    Массив представляет собой структуру данных для хранения набора 
    элементов данных одного типа. Оболочка Windows PowerShell 
    поддерживает такие элементы данных, как string, int (32-разрядное 
    целое число), long (64-разрядное целое число), bool (логическое 
    значение), byte, а также другие типы объектов платформы Microsoft .NET. 
СОЗДАНИЕ И ИНИЦИАЛИЗАЦИЯ МАССИВА
    Чтобы создать и инициализировать массив, присвойте несколько значений 
    переменной.
    Значения, хранящиеся в массиве, разделяются запятой и отделены от 
    имени переменной оператором присваивания (=). 
    Например, чтобы создать и инициализировать массив с именем $A, который 
    содержит семь числовых значений (типа int), 22, 5, 10, 8, 12, 9 и 80, 
    введите следующую команду:
        $A = 22,5,10,8,12,9,80
    Можно также создать и инициализировать массив, используя оператор 
    диапазона (..). Например, чтобы создать и инициализировать массив 
    с именем "$B", в котором содержатся значения от 5 до 8, введите 
    следующую команду:
        $B = 5..8
    В результате в массиве $B содержатся четыре значения: 5, 6, 7 и 8.
    Если тип данных не указан, то Windows PowerShell создает массив 
    как массив объектов (тип: object[]). Для определения типа данных 
    массива используйте метод GetType(). Например, чтобы определить 
    тип данных массива $a, введите следующую команду:
        $a.gettype()
    Для создания массива с жестко заданным типом, то есть такой массив, 
    в котором содержатся значения только определенного типа, приведите 
    переменную массива к типу, например, string[], long[] или int32[]. 
    Чтобы привести массив к типу, укажите перед именем переменной тип 
    массива в квадратных скобках. Например, чтобы создать массив 
    32-разрядных целых чисел с именем $ia, содержащий четыре числа 
    (1500, 2230, 3350 и 4000), введите следующую команду:
        [int32[]]$ia = 1500,2230,3350,4000
    В результате, в массиве $ia могут содержаться только 
    целочисленные значения.
    Можно создавать массивы, которые соответствуют любому типу, 
    поддерживаемому в платформе Microsoft .NET. Например, объекты, 
    которые извлекаются командлетом Get-Process и обозначают процессы, 
    принадлежат к типу System.Diagnostics.Process. Для создания массив 
    объектов процессов с жестко заданным типом, введите следующую команду:
        [Diagnostics.Process[]]$zz = Get-Process
    Для заполнения массива могут использоваться выходные данные 
    командлета, функции или инструкции. Например, следующая 
    инструкция создает массив, в котором содержатся запушенные на текущем 
    компьютере процессы, имена которых начинаются с букв "co".
        $LocalProcesses = get-process co*
    Если инструкция получает только один процесс, переменная 
    $LocalProcesses не будет являться массивом. Чтобы обеспечить создание 
    массива в результате выполнения команды, используйте оператор подвыражения 
    массива (@), как показано в следующем примере:
        $LocalProcesses = @(get-process co*)
    Даже если команда возвращает один процесс, переменная 
    $LocalProcesses будет являться массивом. Даже если в массиве 
    содержится только один член, его можно обрабатывать как любой 
    другой массив. Например, в массив можно добавлять другие объекты. 
    Дополнительные сведения см. в разделе about_Operators.
 
ЧТЕНИЕ МАССИВА
    Обращение к массиву происходит с помощью имени его переменной, 
    например, $A или $a. В оболочке Windows PowerShell регистр не 
    учитывается.
    Чтобы отобразить все элементы массива, введите его имя. Пример:
	$a
    Обращение к элементам массива происходит с помощью указания индекса 
    элемента, начиная с 0. Номер индекса заключается в квадратные скобки. 
    Например, чтобы отобразить первый элемент массива $a, введите 
    следующую команду:
        $a[0]
    Чтобы отобразить третий элемент массива $a, введите следующую команду:
        $a[2]
    Отрицательные величины обозначают отсчет с конца массива. 
    Например, индекс "-1" относится к последнему элементу массива. Чтобы 
    отобразить три последние элемента массива, введите следующую команду:
        $a[-3..-1]
    Однако при использовании такого обозначения необходимо соблюдать 
    осторожность.
        $a[0..-2]
    Эта команда не ссылается на все элементы массива кроме последнего.
    В этом примере задается обращение к первому, последнему и 
    предпоследнему элементу.
   
    Чтобы отобразить подмножество всех значений в массиве, можно 
    использовать оператор диапазона. Например, чтобы отобразить 
    элементы данных в позициях от 1 до 3, введите:
        $a[1..3]
    Чтобы скомбинировать обращение к диапазону элементов со списком 
    элементов массива, используйте оператор "+". Например, чтобы 
    отобразить элементы данных в позициях 0, 2, и от 4 до 6, введите 
    следующую команду:
        $a[0,2+4..6]
    Чтобы определить количество элементов в массиве, используйте диапазон 
    совместно со свойством массива lentgh. Например, чтобы отобразить элементы 
    массива от позиции 2 до конца массива, введите следующую команду:
        $a[2..($a.length-1)]
    Из длины массива вычитается единица, поскольку отсчет индекса 
    начинается с 0. Поэтому в массиве из трех элементов (1, 2 и 3) индекс 
    третьего элемента будет равен 2, что на единицу меньше, чем 
    фактическая длина массива.
    Для обращения к элементам массива можно также использовать циклические 
    конструкции, например, циклы Foreach, For и While. Например, чтобы 
    использовать цикл Foreach для отображения элементов массива $a, 
    введите следующую команду: 
        foreach ($element in $a) {$element}
    Цикл Foreach по очереди перебирает элементы массива и возвращает 
    их значения до тех пор, пока не дойдет до конца массива.
    Цикл For используется при увеличении счетчиков для анализа элементов 
    массива. Например, чтобы вывести все значения элементов массива с 
    помощью цикла For, введите следующую команду:
        for ($i = 0; $i -le ($a.length - 1); $i += 2) {$a[$i]}
    Цикл While используется для отображения элементов массива до тех 
    пор, пока истинно заданное условие. Например, чтобы отобразить 
    элементы массива $a, пока индекс массива меньше 4, введите следующую 
    команду:
        $i=0
        while($i -lt 4) {$a[$i]; $i++}
    Дополнительные сведения о свойствах и методах массива, например, 
    о свойстве Length и методе SetValue, используйте параметр InputObject 
    командлета Get-Member. При передаче массива по конвейеру командлету 
    Get-Member этот командлет выводит сведения об объектах, содержащихся 
    в массиве. При использовании параметра InputObject командлет выводит 
    сведения о массиве. 
    Для получения сведений о свойствах и методах массива $a введите 
    следующую команду:
	get-member -inputobject $a
ОПЕРАЦИИ С МАССИВОМ
    Можно изменять элементы массива, добавлять элемент к массиву, а также 
    объединять значения двух массивов в третьем массиве.
    Чтобы изменить значение конкретного элемента массива, укажите имя 
    массива и индекс элемента, который необходимо изменить, а затем 
    используйте оператор присваивания (=), чтобы указать новое значение 
    элемента. Например, чтобы установить 10 в качестве значения второго 
элемента массива $a (индекс 1), введите следующую команду:
        $a[1] = 10
    Чтобы изменить значение, можно также использовать метод массива 
    SetValue. В следующем примере второе значение массива $a (индекс 1) 
    изменяется на значение 500:
        $a.SetValue(500,1)
    Можно добавить элемент к существующему массиву с помощью 
    оператора "+=".
    С помощью этого оператора происходит добавление существующего 
    значения. Когда этот оператор используется по отношению к 
    элементу массива, он увеличивает значение элемента. Когда этот 
    оператор используется по отношению к самому массиву, то в массив 
    добавляется значение. Например, чтобы добавить элемент со 
    значением 200 в массив $a, введите следующую команду:
        $a += 200
    Удаление элементов из массива является непростой процедурой, 
    однако можно создать новый массив, который содержит только выбранные 
    элементы существующего массива. Например, чтобы создать массив $t, 
    содержащий все элементы массива $a кроме значения с индексом 2, 
    введите следующую команду:
        $t = $a[0,1 + 3..($a.length - 1)]
    Чтобы объединить два массива в один, используйте оператор "+". В 
    следующем примере создаются два массива; они объединяются, и затем 
    отображается результирующий объединенный массив:
        $x = 1,3
        $y = 5,9
        $z = $x + $y
    В результате массив $z содержит значения 1, 3, 5 и 9.
    Чтобы удалить массив, используйте командлет Remove-Item для удаления 
    переменной, которая содержит массив. Следующая команда указывает 
    элемент "a" на диске Variable:. 
        remove-item variable:a
    (Чтобы получить дополнительные сведения о диске Variable:, 
    см. раздел справки "Поставщик Variable".)
СМ. ТАКЖЕ
    about_Assignment_Operators
    about_Hash_Tables
    about_Operators
    about_For
    about_Foreach
    about_While



about_Assignment_Operators

РАЗДЕЛ
    about_assignment_operators
КРАТКОЕ ОПИСАНИЕ
    Описание использования операторов для присваивания значений 
    переменным.
ПОЛНОЕ ОПИСАНИЕ
    Операторы присваивания используются для назначения одного или 
    нескольких значений переменной. Они могут выполнять числовые 
    операции со значениями перед операцией назначения.
    Windows PowerShell поддерживает следующие операторы присваивания.
    Оператор  Описание  
    -------   -----------
    =         Назначает переменной указанное значение.
    +=        Увеличивает значение переменной на указанное значение или 
              добавляет указанное значение к текущему значению переменной.
 
    -=        Вычитает указанное значение из текущего значения переменной.
 
    *=        Умножает значение переменной на указанное значение или 
              добавляет указанное значение к текущему значению переменной.
 
    /=        Делит значение переменной на указанное значение.
 
    %=        Делит значение переменной на указанное значение и назначает 
              переменной остаток от деления (также известный как "модуль").
    ++        Увеличивает значение переменной, назначаемого свойства или 
              элемента массива на 1.
    --        Уменьшает значение переменной, назначаемого свойства 
              или элемента массива на 1.
 
  СИНТАКСИС
    Операторы присваивания используются со следующим синтаксисом:
        <выражение_назначения> <оператор_присваивания> <значение>
    В выражениях назначения могут использоваться переменные и свойства. В 
    качестве значения может использоваться одиночное значение, массив 
    значений, команда, выражение или инструкция.
    Операторы инкремента и декремента являются унарными операторами. 
    Для каждого из них предусмотрены префиксная и постфиксная версии.
        <выражение_назначения><оператор>
        <оператор><выражение_назначения>
    Выражение назначения должно быть числом или может быть преобразовано в 
    число.
  ПРИСВАИВАНИЕ ЗНАЧЕНИЙ
    Переменные представляют собой именованные области памяти, в 
    которых хранятся значения. Можно сохранять значения в переменных 
    с помощью оператора присваивания (=). Новое значение может 
    заменить текущее значение переменной или может быть добавлено к 
    текущему значению переменной.
    Базовым оператором присваивания является знак равенства (=)(ASCII 61). 
    Например, следующая инструкция присваивает значение "Windows PowerShell" 
    переменной $MyShell.
        $MyShell = "Windows PowerShell" 
    При попытке присвоить значение переменной Windows PowerShell, 
    которой пока не существует, переменная будет создана. Например, 
    первый из двух следующих операторов присваивания создает 
    переменную $a и присваивает ей значение 6. Второй оператор 
    присваивания присваивает переменной $a значение 12. Первая инструкция 
    создает новую переменную. Вторая инструкция только изменяет ее значение.
        $a = 6
        $a = 12
 
    Переменные Windows PowerShell не принадлежат к определенному типу 
    данных, если только они не были явно приведены к одному из типов 
    данных. Если в переменной содержится только один объект, переменная 
    принимает тип данных этого объекта. Если в переменной содержится 
    коллекция объектов, переменная принадлежит к типу данных System.Object. 
    Следовательно, в коллекцию можно добавлять объекты любого типа. В 
    следующем примере показано, что в переменную можно добавлять объекты 
    процессов, объекты служб, строки и целые числа, ошибки при этом не 
    возникнет. 
        $a = get-process
        $a += get-service
        $a += "string"
        $a += 12
 
    Поскольку оператор присваивания (=) обладает более низким 
    приоритетом, чем оператор конвейера (|), для присваивания результата 
    оператора конвейера переменной не требуются скобки. Например, 
    следующая команда выполняет сортировку служб на компьютере и затем 
    заносит список отсортированных служб в переменную $a.
        $a = get-service | sort name
    Кроме того, переменной можно присвоить значение, созданное в 
    результате выполнения инструкции, как показано в следующем примере. 
        $a = if ($b -lt 0) { 0 } else { $b }
    В этом примере переменной $a присваивается значение 0, если 
    значение $b меньше 0. Если значение $b не меньше нуля, переменной $a 
    присваивается значение переменной $b. 
 
  ОПЕРАТОР ПРИСВАИВАНИЯ (=)
    Оператор присваивания (=) используются для присваивания значений 
    переменным. Если у переменной уже есть значение, оператор 
    присваивания (=) заменяет текущее значение переменной без 
    предупреждения.
    Например, следующая инструкция присваивает переменной $a целочисленное 
    значение 6.
        $a = 6 
    Для присвоения переменной значения строки заключите значение строки в 
    двойные кавычки, как показано ниже.
        $a = "футбол" 
    Для присвоения переменной массива значений (нескольких значений) 
    разделите значения запятыми, как показано ниже.
        $a= "яблоко", "апельсин", "лимон", "виноград" 
    Для присвоения переменной значения хэш-таблицы используйте стандартный 
    синтаксис хэш-таблицы в Windows PowerShell. Введите знак (@), за 
    которым следуют пары "ключ-значение", разделенные точками с запятой (;) 
    и заключенные в фигурные скобки ({ }). Например, чтобы присвоить 
    переменной $a значение хэш-таблицы, введите следующую команду.
        $a = @{один=1; два=2; три=3} 
    Для присваивания переменной шестнадцатеричных значений укажите перед 
    значениями префикс "0x". Оболочка Windows PowerShell преобразует 
    шестнадцатеричное значение (0x10) в десятичное (в данном случае - 16) и 
    присваивает это значение переменной $a. Например, чтобы присвоить 
    переменной $a значение 0x10, введите следующую команду.
        $a = 0x10 
    Для присвоения переменной значения в экспоненциальной форме, укажите 
    мантиссу, букву "e", а далее степень, в которую нужно возвести 10. 
    Например, чтобы присвоить переменной $a значение 3,1415, умноженное 
    на 1 000, введите следующую команду.
        $a = 3.1415e3 
    Оболочка Windows PowerShell также может преобразовывать килобайты 
    (КБ), мегабайты (МБ) и гигабайты (ГБ) в байты. Например, чтобы 
    присвоить переменной $a значение 10 килобайт, введите следующую 
    команду.
        $a = 10kb
  ОПЕРАТОР СЛОЖЕНИЯ С ПРИСВАИВАНИЕМ (+=)
    Оператор сложения с присваиванием (+=) либо увеличивает значение 
    переменной, либо добавляет указанное значение к текущему значению 
    переменной. Действие зависит от того, принадлежит ли переменная к 
    числовому или строковому типу и содержит ли переменная скалярное 
    значение (одно значение) или коллекцию (несколько значений).
    Оператор += объединяет две операции. Сперва он выполняет операцию 
    сложения, а затем - операцию присваивания. Таким образом, следующие 
    инструкции будут эквивалентны.
        $a += 2
        $a = ($a + 2)
 
    Если переменная содержит одно числовое значение, оператор += 
    увеличивает текущее значение переменной на число, указанное справа от 
    оператора. Затем оператор присваивает переменной результирующее значение.
    В следующем примере показано, как использовать оператор += для 
    увеличения значения переменной.
        C:\PS> $a = 4
        C:\PS> $a += 2
        C:\PS> $a
        6
 
    Если переменная имеет строковое значение, значение, указанное 
    справа от оператора, будет добавлено к строке. 
        C:\PS> $a = "Windows"
        C:\PS> $a +- " PowerShell"
        C:\PS> $a
        Windows PowerShell 
    Если значением переменной является массив, значение, указанное 
    справа от оператора +=, будет добавлено в массив. Если тип 
    массива не указан явным образом с помощью операции приведения к 
    типу, можно добавлять в массив значения любого типа, например:
        C:\PS> $a = 1,2,3
        C:\PS> $a += 2
        C:\PS> $a
        1
        2
        3
        2
        C:\PS> $a += "String"
        C:\PS> $a
        1
        2
        3
        2
        String
 
    Если значением переменной является хэш-таблица, значение, 
    указанное справа от оператора +=, будет добавлено в хэш-таблицу. 
    Однако, поскольку единственным типом переменных, которые можно 
    добавлять к хэш-таблице, является другая хэш-таблица, попытки добавить 
    значения любого другого типа закончатся неудачей.
    Например, следующая команда присваивает переменной $a значение 
    хэш-таблицы.
    Затем для добавления другой хэш-таблицы к существующей хэш-таблице 
    используется оператор +=, в результате в существующую хэш-таблицу 
    добавляется новая пара "ключ-значение". Эта команда завершается 
    успешно, о чем свидетельствуют выходные данные.
        C:\PS> $a = @{a = 1; b = 2; c = 3}
        C:\PS> $a += @{mode = "write"}
        C:\PS> $a
        Имя                           Значение
        ----                           -----
        a                              1
        b                              2
        mode                           write
        c                              3
    Следующая команда пытается добавить целое число (1) к хэш-таблице в 
    переменной $a. Она завершается неудачей.
        C:\PS> $a = @{a = 1; b = 2; c = 3}
        C:\PS> $a += 1
        Можно добавить хеш-таблицу только к другой хеш-таблице.
        В строке:1 знак:6
        + $a += < 1
  ОПЕРАТОР ВЫЧИТАНИЯ С ПРИСВАИВАНИЕМ (-=)
    Оператор вычитания с присваиванием (-=) уменьшает значение 
    переменной на значение, указанное справа от оператора.
    Этот оператор не может использоваться со строковыми переменными, 
    он также не позволяет удалить элемент из коллекции.
    Оператор -= объединяет две операции. Сперва он выполняет операцию 
    вычитания, а затем - операцию присваивания. Таким образом, следующие 
    инструкции будут эквивалентны.
        $a -= 2
        $a = ($a - 2)
 
    В следующем примере показано, как использовать оператор -= для 
    уменьшения значения переменной.
        C:\PS> $a = 8
        C:\PS> $a -= 2
        C:\PS> $a
        6
 
    Оператор -= можно также использовать для уменьшения значения 
    члена числового массива. Для этого укажите индекс элемента 
    массива, значение которого нужно изменить. В следующем примере 
    значение третьего элемента массива (элемент 2) уменьшается на 1.
        C:\PS> $a = 1,2,3
        C:\PS> $a[2] -= 1.
        C:\PS> $a
        1
        2
        2
 
    Нельзя использовать оператор -= для удаления значений переменной. Для 
    удаления всех значений, присвоенных переменной, используйте 
    командлеты Clear-Item и Clear-Variable, которые присваивают 
    переменной значение $null или "".
        $a = $null 
    Для удаления определенного значения из массива используйте синтаксис 
    описания массива, чтобы присвоить значение $null определенному элементу. 
    Например, следующая инструкция удаляет второе значение (индекс = 1) 
    из массива.
        C:\PS> $a = 1,2,3
        C:\PS> $a
        1
        2
        3
        C:\PS> $a[1] = $null
        C:\PS> $a
        1
        3
 
    Для удаления переменной используйте командлет Remove-Variable. 
    Этот метод удобен, если переменная явно преобразована к 
    определенному типу данных, а вам требуется нетипизированная 
    переменная. Следующая команда удаляет переменную $a.
        remove-variable a
 
  ОПЕРАТОР УМНОЖЕНИЯ С ПРИСВАИВАНИЕМ (*=) 
    Оператор умножения с присваиванием (*=) умножает числовое значение 
    или создает указанное число копий значения строки в переменной. 
    Если переменная содержит одно числовое значение, это значение 
    умножается на число, указанное справа от оператора. В следующем 
    примере показано, как использовать оператор *= для умножения значения 
    переменной.
        C:\PS> $a = 3
        C:\PS> $a *= 4
        C:\PS> $a
        12
 
    В данном случае оператор *= объединяет две операции. Сперва он 
    выполняет операцию умножения, а затем - операцию присваивания. Таким 
    образом, следующие инструкции будут эквивалентны.
        $a *= 2
        $a = ($a * 2)
 
    Если переменная содержит строковое значение, оболочка Windows 
    PowerShell добавит к исходному значению указанное количество 
    исходных строк, как показано ниже.
        C:\PS> $a = "файл"
        C:\PS> $a *= 4 
        C:\PS> $a
        файлфайлфайлфайл
 
    Чтобы умножить один из элементов массива, используйте индекс для 
    указания элемента, который нужно умножить. Например, следующая команда 
    умножает первый элемент массива (индекс = 0) на 2.
        $a[0] *= 2
 
  ОПЕРАТОР ДЕЛЕНИЯ С ПРИСВАИВАНИЕМ (/=)
    Оператора деления с присваиванием (/=) делит числовое значение 
    переменной на число, указанное справа от оператора. Этот оператор 
    нельзя использовать со строковыми переменными.
    Оператор /= объединяет две операции. Сперва он выполняет операцию 
    деления, а затем - операцию присваивания. Таким образом, следующие две 
    инструкции будут эквивалентны.
        $a /= 2
        $a = ($a / 2)
 
    Например, в следующей команде оператор /= используется для 
    деления значения переменной.
        C:\PS> $a = 8
        C:\PS> $a /=2
        C:\PS> $a
        4
 
    Чтобы разделить один из элементов массива, используйте индекс для 
    указания элемента, значение которого нужно изменить. Например, 
    следующая команда делит второй элемент массива (индекс = 1) на 2.
        $a[1] /= 2
 
  ОПЕРАТОР ВЫЧИСЛЕНИЯ ОСТАТКА С ПРИСВАИВАНИЕМ (%=)
    Оператор вычисления остатка с присваиванием (%=) делит значение 
    переменной на значение, указанное справа от оператора. Затем 
    оператор %= присваивает переменной остаток от деления (известен как 
    "модуль"). Этот оператор можно использовать в том случае, если переменная 
    содержит одно числовое значение. Этот оператор нельзя использовать в 
    случае, если переменная содержит строку или массив.
    Оператор %= объединяет две операции. Сначала он выполняет 
    операцию деления и вычисления остатка от деления, а затем присваивает 
    полученный остаток переменной. Таким образом, следующие инструкции будут 
    эквивалентны.
        $a %= 2
        $a = ($a % 2)
 
    В следующем примере показано, как использовать оператор %= для 
    сохранения остатка от деления.
        C:\PS> $a = 7
        C:\PS> $a %= 4
        C:\PS> $a
        3
  ОПЕРАТОРЫ ИНКРЕМЕНТА И ДЕКРЕМЕНТА
    Оператор инкремента (++) увеличивает значение переменной на 1. При 
    использовании оператора инкремента в простой инструкции значение не 
    возвращается.
    Для просмотра результата операции выведите значение переменной, 
    как показано ниже.
        C:\PS> $a = 7
        C:\PS> ++$a
        C:\PS> $a
        8
    Для принудительного возврата значения заключите переменную и 
    оператор в двойные кавычки, как показано ниже.
        C:\PS> $a = 7
        C:\PS> (++$a)
        8
    Оператор инкремента можно размещать до (префиксная версия) или после 
    (постфиксная версия) переменной. Префиксная версия оператора увеличивает 
    значение переменной на 1 до того, как значение переменной будет 
    использоваться в инструкции, как показано ниже.
        C:\PS> $a = 7
        C:\PS> $c = ++$a
        C:\PS> $a
        8
        C:\PS> $c
        8
    Постфиксная версия оператора увеличивает значение переменной на 1 
    после того, как значение переменной будет использовано в инструкции. В 
    следующем примере значения переменных $c и $a отличаются, поскольку 
    значение присваивается $c до изменения значения $a.
        C:\PS> $a = 7
        C:\PS> $c = $a++
        C:\PS> $a
        8
        C:\PS> $c
        7
    Оператор декремента (--) уменьшает значение переменной на 1. Как и для 
    оператора инкремента, при использовании оператора декремента в простой 
    инструкции значение не возвращается. Для возврата значения необходимо 
    использовать скобки, как показано ниже.
        C:\PS> $a = 7
        C:\PS> --$a
        C:\PS> $a
        6
        C:\PS> (--$a)
        5
    Префиксная версия оператора уменьшает значение переменной на 1 до 
    того, как значение переменной будет использоваться в инструкции, как 
    показано ниже.
        C:\PS> $a = 7
        C:\PS> $c = --$a
        C:\PS> $a
        6
        C:\PS> $c
        6
    Постфиксная версия оператора уменьшает значение переменной на 1 
    после того, как значение переменной будет использовано в инструкции. В 
    следующем примере значения переменных $d и $a отличаются, поскольку 
    значение присваивается $d до изменения значения $a.
        C:\PS> $a = 7
        C:\PS> $d = $a--
        C:\PS> $a
        6
        C:\PS> $d
        7
  ТИПЫ ПЛАТФОРМЫ MICROSOFT .NET FRAMEWORK
    По умолчанию, если переменной присвоено только одно значение, это 
    значение определяет тип данных переменной. Например, следующая команда 
    создает переменную целочисленного типа (System.Int32):
        $a = 6 
    Для определения типа платформы .NET Framework переменной 
    используйте метод GetType и его свойство FullName, как показано 
    ниже. Не забудьте добавить скобки после имени метода GetType, 
    хотя у вызова метода нет аргументов.
        C:\PS> $a = 6 
        C:\PS> $a.gettype().fullname 
        System.Int32 
    Для создания переменной, содержащей строки, присвойте переменной 
    значение строки. Чтобы указать, что значение является строкой, 
    заключите его в двойные кавычки, как показано ниже.
        C:\PS> $a = "6"
        C:\PS> $a.gettype().fullname
        System.String
 
    Если первое присвоенное переменной значение является строкой, Windows 
    PowerShell рассматривает все операции как операции со строкой и 
    приводит новые значения к строковому типу. Это показано в приведенном 
    ниже примере.
        C:\PS> $a = "файл"
        C:\PS> $a += 3
        C:\PS> $a
        файл3
 
    Если первое присвоенное значение является целым числом, Windows 
    PowerShell рассматривает все операции как операции с целыми числами и 
    приводит новые значения к целочисленному типу. Это показано в 
    приведенном ниже примере.
        C:\PS> $a = 6
        C:\PS> $a += "3"
        C:\PS> $a
        9
 
    Можно привести новую скалярную переменную к любому типу данных 
    платформы .NET Framework, указав имя типа данных в квадратных 
    скобках перед именем переменной или первым присваиваемым значением. 
    Приведение переменной к типу позволяет определить, данные какого типа 
    можно хранить в переменной. Также можно определить поведение 
    переменной при выполнении с ней различных операций.
    Например, следующая команда приводит переменную к строковому типу:
        C:\PS> [string]$a = 27
        C:\PS> $a += 3
        C:\PS> $a
        273
 
    В следующем примере к типу приводится первое значение, а не 
    переменная.
        $a = [string]27
 
    При приведении переменной к определенному типу принято приводить саму 
    переменную, а не значение. Однако привести существующую переменную к 
    другому типу не удастся, если не удастся преобразовать ее значение к 
    новому типу данных. Чтобы изменить тип данных, необходимо изменить 
    значение переменной, как показано ниже.
        C:\PS> $a = "строка"
        C:\PS> [int]$a
        Не удается преобразовать значение "строка" в тип 
        "System.Int32". Ошибка: "Неверный формат строки ввода."
        В строке:1 знак:8
        + [int]$a 
        C:\PS> [int]$a =3
 
    Кроме того, указание типа данных перед именем переменной 
    блокирует тип этой переменной до тех пор, пока не будет явно указано 
    заменить его на другой тип данных. Если попытаться присвоить значение, 
    несовместимое с текущим типом и при этом явно не заменить тип, 
    оболочка Windows PowerShell выдаст ошибку, как показано в следующем 
    примере.
        C:\PS> $a = 3
        C:\PS> $a = "строка"
        C:\PS> [int]$a = 3
        C:\PS> $a = "строка"
        Не удается преобразовать значение "строка" в тип 
        "System.Int32". Ошибка: "Неверный формат строки ввода."
        В строке:1 знак :3
        + $a < = "строка"
        C:\PS> [string]$a = "строка"
 
    В оболочке Windows PowerShell типы данных переменных, содержащих 
    несколько элементов в массиве обрабатываются по-другому, чем типы 
    данных переменных, содержащих один элемент. Если тип данных переменной 
    массива не был указан явно, такая переменная всегда принадлежит к 
    типу данных System.Object []. Этот тип данных свойственен массивам.
    В некоторых случаях можно заменить тип по умолчанию, указав 
    другой тип. Например, следующая команда приводит переменную к 
    типу массива строк:
        [string []] $a = "один", "два", "три"
 
    Переменные Windows PowerShell могут принадлежать к любому типу данных 
    платформы .NET Framework. Кроме того, можно присвоить любой полный 
    тип данных платформы .NET Framework, доступный в текущем процессе. 
    Например, следующая команда указывает тип данных System.Datetime:
        [system.datetime]$a = "5/31/2005"
 
    Переменной будет присвоено значение, которое соответствует типу данных 
    System.Datetime. Переменная $a примет следующее значение:
        Вторник, 31 мая 2005 г., 0:00:00
  ПРИСВАИВАНИЕ ЗНАЧЕНИЙ НЕСКОЛЬКИМ ПЕРЕМЕННЫМ
    В оболочке Windows PowerShell можно присвоить значения нескольким 
    переменным с помощью одной команды. Первый элемент присваиваемого 
    значения будет присвоен первой переменной, второй элемент будет 
    присвоен второй переменной, третий элемент - третьей переменной и 
    т. д. Например, следующая команда присваивает переменной $a 
    значение 1, переменной $b - значение 2, а переменной $c - значение 3.
        C:\PS> $a, $b, $c = 1, 2, 3
 
    Если присваиваемое значение содержит больше элементов, чем 
    переменных, все оставшиеся значения будут присвоены последней 
    переменной. Например, следующая команда содержит три переменные и пять 
    значений:
        $a, $b, $c = 1, 2, 3, 4, 5
 
    При выполнении этой команды Windows PowerShell присвоит переменной $a 
    значение 1, а переменной $b - значение 2. Переменной $c будут 
    присвоены значения 3, 4 и 5. Чтобы присвоить значения переменной $c 
    трем другим переменным, используйте следующий формат:
        $d, $e, $f = $c
    Эта команда присваивает переменной $d значение 3, переменной $e - 
    значение 4, а переменной $f - значение 5.
    Также можно присвоить одно и то же значение нескольким переменным, 
    организовав цепочку. Например, следующая команда присваивает значение 
    "три" всем четырем переменным:
        $a = $b = $c = $d = "три"
    
  КОМАНДЛЕТЫ ДЛЯ РАБОТЫ С ПЕРЕМЕННЫМИ
    Для присвоения переменной значения, кроме операции присваивания, также 
    используется командлет Set-Variable. Например, в следующей команде 
    командлет Set-Variable используется для присвоения переменной $a в 
    качестве значения массива 1, 2, 3.
        Set-Variable -name a -value 1, 2, 3 
СМ. ТАКЖЕ
    about_Arrays
    about_Hash_Tables
    about_Variables
    Clear-Variable
    Remove-Variable
    Set-Variable



about_Automatic_Variables

РАЗДЕЛ
    about_Automatic_Variables
КРАТКОЕ ОПИСАНИЕ
    Описание переменных, в которых хранятся сведения о состоянии оболочки 
    Windows PowerShell.
    Эти переменные создаются и обрабатываются оболочкой Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Ниже представлен список автоматических переменных Windows PowerShell.
    
    
    $$
       Содержит последний токен последней строки, полученной сеансом.
    
    $? 
       Содержит состояние выполнения последней операции. TRUE, если 
       последняя операция завершилась успешно, FALSE, если она 
       завершилась с ошибкой.
    
    $^
       Содержит первый токен последней строки, полученной сеансом.
    
    $_
       Содержит текущий объект в объекте конвейера. Эту переменную можно 
       использовать в командах, которые должны выполнять действие с каждым 
объектом или с выбранными объектами в конвейере.
    
    $Args
       Содержит массив необъявленных параметров и (или) значений 
       параметров, которые передаются функции, скрипту или блоку скрипта.
       При создании функции можно объявить параметры с помощью 
       ключевого слова param или путем добавления списка параметров, 
       разделенных запятыми, в скобках после имени функции.
    $ConsoleFileName
       Содержит путь к файлу консоли (PSC1), использовавшемуся в 
       рамках сеанса последним. Значение этой переменной 
       устанавливается при запуске Windows PowerShell с параметром 
       PSConsoleFile или при использовании командлета Export-Console 
       для экспорта имен оснасток в файл консоли. 
       При использовании командлета Export-Console без параметров он 
       автоматически обновляет файл консоли, который использовался во время 
       текущего сеанса последним. Это автоматическую переменную можно 
       использовать для определения, какой файл будет обновляться.
    $Error
       Содержит массив объектов ошибок, представляющих последние 
       обнаруженные ошибки. Последняя ошибка - первый объект ошибки в 
       массиве ($Error[0]).
    $Event 
       Содержит объект PSEventArgs, представляющий обрабатываемое событие.
       Эта переменная заполняется только в пределах блока Action команды 
       регистрации события, например Register-ObjectEvent. Значением этой 
       переменной всегда является объект, возвращаемый командлетом Get-Event. 
       Следовательно, в блоке скрипта Action можно использовать свойства 
       переменной $Event, например $Event.TimeGenerated. 
    $EventSubscriber 
       Содержит объект PSEventSubscriber, представляющий подписчик на 
       обрабатываемое событие. Эта переменная заполняется только в пределах 
       блока Action команды регистрации события. Значением этой переменной 
       всегда является объект, возвращаемый командлетом Get-EventSubscriber.  
    $ExecutionContext
       Содержит объект EngineIntrinsics, который представляет контекст 
       выполнения основного приложения Windows PowerShell. Эту переменную можно
 
       использовать для поиска объектов выполнения, доступных командлетам.
    $False
       Содержит FALSE. Эту переменную можно использовать вместо 
       строки "false" для представления значения FALSE в командах и 
       скриптах. Строка может интерпретироваться как TRUE при 
       преобразовании в непустую строку или целое число, отличное от нуля.
    $ForEach
       Содержит перечислитель цикла ForEach-Object. Значение 
       переменной $ForEach позволяет использовать свойства и методы 
       перечислителей. Эта переменная существует только до тех пор, пока 
       выполняется цикл For. После окончания цикла переменная удаляется.
    
    $Home
       Содержит полный путь к домашнему каталогу пользователя. Эта 
       переменная эквивалентна сочетанию переменных среды 
       %homedrive%%homepath%, обычно C:\Documents and Settings\<пользо
       ватель>.
    $Host
       Содержит объект, представляющий текущее основное приложение Windows 
       PowerShell. Эту переменную можно использовать для представления текущего
 
       основного приложения в командах либо для отображения или изменения 
       свойств основного приложения, например $Host.version, 
       $Host.CurrentCulture или $host.ui.rawui.setbackgroundcolor("Red").
    $Input
       Перечислитель, содержащий переданные функции входные данные. 
       Переменная $Input обрабатывается с учетом регистра, она 
       доступна только в функциях и блоках скрипта. (Блоки скрипта - это 
       неименованные функции.) В блоке Process функции в переменной $Input 
       содержится объект, который в настоящее время находится в конвейере. 
       По завершении обработки блока Process для переменной $Input устанавливае
тся 
       значение NULL. Если в функции нет блока Process, значение переменной 
       $Input доступно до блока End, при этом в переменной хранятся все 
       входные данные, переданные функции.
    $LastExitCode
       Содержит код завершения последней выполненной программы Windows.
    $Matches
       Переменная $Matches используется при работе с операторами 
       совпадения -match и -notmatch.
       Если входные данные оператора -match или -nomatch являются 
       скаляром и любой из операторов обнаруживает совпадение, эти 
       операторы возвращают логическое значение и устанавливают в качестве 
       значения автоматической переменной $Match хэш-таблицу, в которую 
       заносятся все совпавшие строковые значения. Дополнительные сведения 
       об операторе -match см.в разделе about_comparison_operators.
    
    $MyInvocation
       Содержит объект со сведениями о текущей команде, включая 
       скрипт, функцию или блок скрипта. Сведения в объекте, например 
       путь и имя файла скрипта ($myinvocation.mycommand.path) или 
       имя функции ($myinvocation.mycommand.name) можно использовать для 
       идентификации текущей команды. Это особенно полезно при определении имен
и 
       выполняемого скрипта.
    $NestedPromptLevel
       Содержит текущий уровень обработки. Значение 0 указывает на 
       изначальный уровень запроса. Значение увеличивается на единицу при 
       запуске вложенного уровня обработки и уменьшается на единицу при 
       завершении уровня.
       Например, Windows PowerShell представляет вложенный уровень 
       обработки при использовании метода $Host.EnterNestedPrompt. Windows 
       PowerShell также представляет вложенный уровень обработки при 
       достижении точки останова в отладчике Windows PowerShell.
       При запуске вложенного уровня обработки Windows PowerShell 
       приостанавливает выполнение текущей команды, сохраняет контекст 
       выполнения и увеличивает на единицу значение переменной 
       $NestedPromptLevel. Для создания дополнительных уровней вложенной 
       обработки (до 128 уровней) или для возврата на изначальный уровень 
       обработки завершите выполнение команды или введите команду "exit". 
       Переменная $NestedPromptLevel позволяет контролировать уровень 
       вложенности. Также можно создать альтернативную командную строку Windows
 
       PowerShell, которая включает это значение для обеспечения постоянного 
       контроля уровня вложенности.
    $NULL
       Содержит константу NULL или пустое значение. Эту переменную можно 
       использовать вместо строки "NULL" для представления значения NULL в 
       командах и скриптах. Строка может интерпретироваться как TRUE при 
       преобразовании в непустую строку или целое число, отличное от нуля.
    $PID
       Содержит идентификатор процесса (PID) процесса, в рамках которого 
       выполняется текущий сеанс Windows PowerShell.
  
    $Profile
       Содержит полный путь к профилю Windows PowerShell текущего 
       пользователя и текущего основного приложения. Эту переменную можно 
       использовать для представления профиля в командах. Например, чтобы 
       определить, был ли создан профиль, можно ввести следующую команду:
           test-path $profile
       Также можно использовать эту переменную в команде для создания 
       профиля.
           new-item -type file -path $pshome -force
       Кроме того, эту переменную можно использовать в команде для 
       открытия профиля в Блокноте:
           notepad $profile
    $PSBoundParameters
       Содержит словарь активных параметров и их текущих значений. 
       Значение этой переменной действительно только в области объявления 
       параметров, включая скрипт или функцию. Можно использовать эту 
       переменную для отображения или изменения текущий значений параметров 
       или для передачи значений параметров другому скрипту или функции.
       Пример:
         function test {
            param($a, $b)
            
            # Отображение параметров в формате словаря.
            $psboundparameters
             
            # Вызов функции Test1 с $a и $b.
            test1 @psboundparameters   
         }
    $PsCmdlet
       Содержит объект, представляющий выполняемый командлет или 
       расширенную функцию. 
       Свойства и методы объекта могут использоваться в коде 
       командлета или функции для обработки условий использования. 
       Например, в свойстве ParameterSetName содержится имя 
       используемого набора параметров, а метод ShouldProcess динамически 
       добавляет к командлету параметры WhatIf и Confirm.
       Дополнительные сведения об автоматической переменной $PSCmdlet см.в 
       разделе about_Functions_Advanced.
    $PsCulture
       Содержит имя культуры, используемой в настоящее время в 
       операционной системе. Культура определяет формат отображения таких 
       элементов, как числа, денежные величины и даты. Это значение свойства 
       системы System.Globalization.CultureInfo.CurrentCulture.Name. Для 
       получения объекта System.Globalization.CultureInfo системы 
       используйте командлет Get-Culture.
    $PSDebugContext
       В процессе отладки в этой переменной хранятся сведения о среде 
       отладки. В противном случае переменная содержит значение NULL. 
       Таким образом, эта переменная может использоваться для 
       проверки, идет ли отладка. Если значение переменной определено, она 
       содержит объект PsDebugContext, у которого есть свойства Breakpoints и 
       InvocationInfo. У свойства InvocationInfo есть несколько полезных 
       свойств, включая свойство Location. В свойстве Location содержится 
       путь к отлаживаемому скрипту.
    $PsHome
       Содержит полный путь к каталогу установки Windows PowerShell, 
       обычно это %windir%\System32\WindowsPowerShell\v1.0. Эту 
       переменную можно использовать при формировании путей к файлам 
       Windows PowerShell. Например, следующая команда выполняет 
       поиск слова "variable" в концептуальных разделах справки: 
            select-string -pattern variable -path $pshome\*.txt
    $PSScriptRoot
       Содержит каталог, из которого выполняется модуль скрипта.
       Эта переменная позволяет скриптам использовать путь к модулю 
       для доступа к другим ресурсам.
    $PsUICulture
       Содержит имя культуры пользовательского интерфейса, используемой в 
       настоящее время в операционной системе. Культура пользовательского 
       интерфейса определяет строки, которые используются в качестве элементов 
       пользовательского интерфейса, например меню и сообщений. Это значение 
       свойства системы System.Globalization.CultureInfo.CurrentUICult
       ure.Name. Для получения объекта System.Globalization.CultureInf
       o системы используйте командлет Get-UICulture. 
    $PsVersionTable
        Содержит доступную только для чтения хэш-таблицу, в которой 
        представлены сведения о версии Windows PowerShell, используемой в 
        текущем сеансе.
        В таблице содержатся следующие элементы.
	    CLRVersion.            Версия среды CLR (общеязыковая среда 
	    выполнения).
	    BuildVersion.          Номер построения текущей версии.
    	    PSVersion.             Номер версии Windows PowerShell.
            WSManStackVersion.     Номер версии стека WS-Management.
	    PSCompatibleVersions.  Версии Windows PowerShell, совместимые с 
	    текущей версией.
            SerializationVersion.  Версия метода сериализации.
            PSRemotingProtocolVersion
                                   Версия протокола удаленного управления 
                                   Windows PowerShell.
    $Pwd
       Содержит объект пути, представляющий полный путь к текущему 
       каталогу. 
    $Sender 
       Содержит объект, создавший данное событие. Эта переменная заполняется 
       только в пределах блока Action команды регистрации события. Значение 
       этой переменной также можно определить с помощью свойства Sender 
       объекта PSEventArgs (System.Management.Automation.PSEventArgs), 
       возвращаемого командлетом Get-Event. 
    $ShellID
       Содержит идентификатор текущей оболочки.
    $SourceArgs 
       Содержит объекты, представляющие аргументы обрабатываемого события. 
       Эта переменная заполняется только в пределах блока Action команды 
       регистрации события.  Значение этой переменной также можно определить 
       с помощью свойства SourceArgs объекта PSEventArgs 
       (System.Management.Automation.PSEventArgs), возвращаемого 
       командлетом Get-Event. 
    $SourceEventArgs 
       Содержит объект, представляющий первый аргумент набора EventArgs 
       обрабатываемого события. Эта переменная заполняется только в пределах 
       блока Action команды регистрации события. Значение этой переменной также
 
       можно определить с помощью свойства SourceArgs объекта PSEventArgs 
       (System.Management.Automation.PSEventArgs), 
       возвращаемого командлетом Get-Event. 
    $This
        В блоке скрипта, который определяет свойство или метод скрипта, 
        переменная $This ссылается на расширяемый объект. 
    $True
       Содержит значение TRUE. Эту переменную можно использовать для 
       представления значения TRUE в командах и скриптах.
СМ. ТАКЖЕ
    about_Hash_Tables
    about_Preference_Variables
    about_Variables
      



about_Break

РАЗДЕЛ
    about_Break
КРАТКОЕ ОПИСАНИЕ
    Описывает инструкции, которые можно использовать для немедленного 
    завершения выполнения инструкций Foreach, For, While, Do и Switch.
ПОЛНОЕ ОПИСАНИЕ
    Если инструкция Break присутствует в цикле, например в цикле 
    Foreach, For, Switch или While, инструкция Break приводит к 
    немедленному завершению обработки цикла оболочкой Windows 
    PowerShell. В конструкции Switch, не являющейся циклом, 
    инструкция Break приводит к немедленному завершению обработки 
    блока кода Switch оболочкой Windows PowerShell.
 
 
    В инструкции Break может указываться метка, позволяющая выполнять 
    выход из вложенных циклов. Метка может указывать на любое 
    ключевое слово цикла, например Foreach, For или While, в скрипте. 
    Если в инструкции Break используется метка, то она обеспечивает 
    завершение обработки указанного цикла. Инструкция Break завершает 
    обработку указанного цикла независимо от того, в каком цикле 
    расположена сама инструкция Break.
    В следующем примере показано, как использовать инструкцию Break 
    для выхода из инструкции For:
        for($i=1; $i -le 10; $i++)
        {
            Write-Host $i
            break
        }
    В этом случае инструкция Break обеспечивает выход из цикла For, если 
    значение переменной $i равняется 1. Хотя значение инструкции For 
    истинно, пока значение $i больше 10, оболочка Windows PowerShell 
    выполняет инструкцию break при первом проходе по циклу For. 
    Инструкция Break чаще используется внутри цикла при выполнении 
    внутреннего условия. Рассмотрим следующий пример инструкции Foreach:
        $i=0
        $varB = 10,20,30,40
        foreach ($val in $varB)
        {  
            $i++
            if ($val -eq 30)
            {
                break
            }  
        }
        Write-Host "Значение 30 было найдено в позиции массива $i"
    В этом примере инструкция Foreach обеспечивает последовательную 
    обработку элементов массива $varB. При каждом выполнении блока 
    кода значение переменной $i увеличивается на 1. Условие в 
    инструкции If принимает значение False при первых двух проходах 
    по циклу. При третьем проходе по циклу значение переменной $i 
    равно 3, а переменной $val - 30, при этом выполняется инструкция 
    Break с выходом из цикла Foreach.
    Выход из других циклических инструкций осуществляется аналогично 
    выходу из цикла Foreach. В следующем примере инструкция Break 
    обеспечивает выход из инструкции While при перехвате исключения 
    DivideByZeroException с использованием инструкции Trap.
        $i = 3
        while ($true)
        {
            trap [DivideByZeroException] 
            {
                Write-Host "перехвачено исключение при делении на 
                ноль" break
            }
            1 / $i--
        }
    В инструкции Break может содержаться метка. При использовании 
    ключевого слова Break с меткой Windows PowerShell обеспечивает 
    выход из цикла, которому соответствует метка, а не из текущего 
    цикла. Для описания метки используется следующий синтаксис (в 
    этом примере показана метка для цикла While):
        :моя_метка while (<условие>) { <список_инструкций>}
    Метка представляет собой двоеточие за которым следует имя, 
    определяемое пользователем. Метка должна быть первым токеном в 
    инструкции, за меткой должно следовать ключевое слово инструкции 
    цикла, например While.
 
    В оболочке Windows PowerShell метки могут указываться только для 
    ключевых слов циклов, например Foreach, For и While.
    Инструкция Break обеспечивает прекращение обработки цикла с меткой. 
    Во вложенных циклах использование такой инструкции отличается от 
    использования ключевого слова Break без метки. В этом схематическом 
    примере представлена инструкция While с вложенным циклом For.
 
        :myLabel while (<условие_1>) 
        {
            for ($item in $items) 
            { 
                if (<условие_2>) { break myLabel } 
                $item = $x  # Инструкция в цикле For 
            }
        }
        $a = $c # Инструкция после цикла While с меткой
    Если условие 2 принимает значение True, в скрипте выполняется 
    переход на инструкцию после цикла с меткой. В этом примере обработка 
    продолжается с инструкции "$a = $c". 
    Допускается использование нескольких вложенных циклов с метками, как 
    показано в следующем примере:
        :red while (<условие_1>)
        {
            :yellow while (<условие_2>)
            {
                while (<условие_3>)
                {
                    if ($a) {break}
                    if ($b) {break red}
                    if ($c) {break yellow}
                }
                # После самого вложенного цикла
            }
                # После цикла с меткой "yellow"
        }
                # После цикла с меткой "red"
    Если переменная $b принимает значение True, в скрипте выполняется 
    переход на инструкцию после цикла с меткой "red". Если переменная $c 
    принимает значение True, в скрипте выполняется переход на инструкцию 
    после цикла с меткой "yellow".
    Если переменная $a принимает значение True, в скрипте выполняется 
    переход на инструкцию, следующую за самым вложенным циклом. Метка не 
    требуется.
    Оболочка Windows PowerShell не ограничивает расстояние между меткой и 
    инструкцией, которая будет обрабатываться при выходе из цикла. Метка может 
    использоваться для передачи управления через границы вызова скрипта 
    или функции.
    Ключевое слово Break используется для выхода из конструкции Switch. 
    Например, инструкция Break используется в следующей инструкции Switch 
    для поиска совпадения с наиболее конкретным условием:
        $var = "ассемблер"
        switch -regex ($var) 
        {
            "ассемблер" 
            {
                Write-Host "Точное совпадение" $_ 
                break
            } 
            "асс.*" 
            { 
                Write-Host "Соответствие по префиксу" $_ break
            }
            "а.*"
            {
                Write-Host "Соответствие по крайней мере по первому 
                символу" $_ break 
            }
            
            default
            {
                Write-Host "Не совпадает" $_
                break
            }
        }
    В этом примере создается переменная $var, которая инициализируется
    строковым значением "ассемблер". В инструкции Switch 
    используется класс Regex, позволяющий сопоставить значение 
    переменной с термином "ассемблер". (Класс Regex является классом для 
    обработки регулярных выражений платформы Microsoft .NET Framework.) 
    Поскольку значение переменной и результат первой проверки в 
    инструкции Switch совпадают, выполняется первый блок кода в 
    инструкции Switch.
    Когда оболочка Windows PowerShell достигает первой инструкции Break, 
    выполнение инструкции Switch завершается. Если удалить из данного 
    примера четыре инструкции Break, то были бы выполнены все четыре 
    условия. В этом примере инструкция break используется в примере для 
    отображения результатов при выполнении наиболее конкретного условия. 
СМ. ТАКЖЕ  
    about_Comparison_Operators
    about_For
    about_Foreach 
    about_Switch
    about_While



about_command_precedence

РАЗДЕЛ
    about_Command_Precedence
КРАТКОЕ ОПИСАНИЕ
    Описывает, как Windows PowerShell определяет выполняемую команду.
ПОЛНОЕ ОПИСАНИЕ
    В этом разделе описывается, как Windows PowerShell определяет 
    выполняемую команду, особенно если в сеансе содержится несколько 
    команд с одинаковым именем.
    Также демонстрируется способ выполнения команд, которые не 
    выполняются по умолчанию, а также способы предотвращения 
    конфликта имен в рамках сеанса.
 ПРИОРИТЕТ КОМАНД
    Если в сеансе существует несколько команд с одинаковыми именами, 
    Windows PowerShell руководствуется следующими правилами при 
    определении запускаемой команды.
    Эти правила приобретают особое значение при добавлении в сеанс 
    команд из модулей, оснасток и других сеансов.
    
    -- При указании пути к команде Windows PowerShell выполняет команду из 
       местоположения, указанного в пути. 
       Например, следующая команда запускает скрипт FindDocs.ps1, 
       расположенный в каталоге C:\TechDocs:
           C:\TechDocs\FindDocs.ps1
       В качестве меры безопасности Windows PowerShell не выполняет 
       исполняемые (естественные) команды, включая скрипты Windows 
       PowerShell, если команда не находится в каталоге, указанном в 
       переменной среды Path ($env:path) или если путь к скрипту не 
       указан в явном виде. 
       Для запуска скрипта, расположенного в текущем каталоге, 
       укажите полный путь или введите (.), чтобы указать на текущий 
       каталог.
       Например, чтобы запустить файл FindDocs.ps1 в текущем 
       каталоге, введите следующую команду:
           .\FindDocs.ps1
        
    -- Если путь не указан, среда Windows PowerShell использует 
       следующие правила приоритета при выполнении команд.
            1. Псевдоним
            2. Функция
            3. Командлет 
            4. Встроенные команды Windows
        Таким образом, при вводе команды "help" Windows PowerShell 
        сначала выполняет поиск псевдонима с именем "help", затем 
        функции с именем "help" и, наконец, командлета с именем 
        "help". Будет выполнен первый найденный элемент с именем "help".
        Например, если существует функция с именем Get-Map, и в сеанс 
        был добавлен или импортирован командлет с именем Get-Map, то 
        при вводе команды "Get-Map" по умолчанию Windows PowerShell 
        выполнит функцию.
    --	Если в сеансе содержатся элементы одного типа с одинаковыми 
      	именами, например два командлета с одинаковыми именами, 
      	Windows PowerShell выполнит элемент, добавленный в сеанс последним.
        Например, если существует командлет с именем Get-Date, и в 
        сеанс был импортирован командлет с именем Get-Date, то при 
        вводе команды "Get-Date" по умолчанию Windows PowerShell 
        выполнит импортированный командлет.
 СКРЫТЫЕ И ЗАМЕНЕННЫЕ ЭЛЕМЕНТЫ
    В результате использования таких правил элементы могут заменяться 
    или скрываться элементами с таким же именем. 
        --  Элементы "скрываются" или "затеняются", если доступ к 
            исходному элементу все же возможен, например путем 
            указания имени модуля или оснастки. 
            Например, при импорте функции, имя которой совпадает с 
            именем командлета, существующего в сеансе, командлет 
            скрывается, но не заменяется, поскольку он был 
            импортирован из оснастки или модуля.
            
        --  Элементы "заменяются" или "перезаписываются", если доступ 
            к исходному элементу становится невозможен.
            Например, при импорте переменной, имя которой совпадает с 
            именем переменной, существующей в сеансе, исходная 
            переменная заменяется и более недоступна. Нельзя получить 
            доступ к переменной, указав имя модуля.
           
            Кроме того, при вводе функции в командной строке и 
            последующем импорте функции с таким же именем исходная 
            функция заменяется и более недоступна.
 ВЫПОЛНЕНИЕ СКРЫТЫХ КОМАНД
    Некоторые команды можно выполнять, указывая свойства элемента, 
    которые отличают команду от других команд, имеющих то же имя. 
    Этот метод может использоваться для выполнения любых команд, но 
    он особенно удобен для запуска скрытых команд. 
    Используйте этот метод в качестве рекомендованного при написании 
    скриптов, которые должны получить широкое распространение, 
    поскольку невозможно предсказать, какие команды будет выполнены в 
    сеансе, в рамках которого должен запускаться скрипт.
    ПОЛНЫЕ ИМЕНА
        При запуске команд, которые были импортированы из оснастки 
        или модуля Windows PowerShell или из другого сеанса, можно 
        использовать полное имя команды, указав имя модуля или 
        оснастки, из которой добавлена команда. 
        Предусмотрена возможность формирования полных имен команд, но 
        для переменных или псевдонимов такой возможности нет.   
        Например, если командлет Get-Date из оснастки Microsoft.PowerS
        hell.Utility скрывается псевдонимом, функцией или командлетом 
        с таким же именем, можно выполнить исходный командлет, указав 
        его полное имя (с учетом оснастки).
            Microsoft.PowerShell.Utility\Get-Date
        Для запуска команды New-Map, добавленной в модуле 
        MapFunctions, можно использовать ее полное имя (с учетом 
        имени модуля):
            MapFunctions\New-Map
        Для поиска оснастки или модуля, из которого была импортирована 
        команда, используйте следующий формат команды Get-Command:
            get-command <имя_команды> | format-list -property Name, 
            PSSnapin, Module
        Например, для поиска источника командлета Get-Date введите 
        следующую команду:
            get-command get-date | format-list -property Name, 
            PSSnapin, Module
            Имя   : Get-Date
            PSSnapIn : Microsoft.PowerShell.Utility 
            Module  :
       
    ОПЕРАТОР ВЫЗОВА
        Кроме того, для выполнения любой команды, которую можно 
        получить с помощью команд Get-ChildItem (alias = dir), 
        Get-Command или Get-Module, можно использовать оператор 
        вызова (&). 
        Чтобы выполнить команду, заключите Get-Command в скобки и 
        используйте оператор вызова (&) для запуска команды.
            &(get-command ...) 
        - или:
            &(dir ... )
        Например, если существует функция Map, которая была скрыта 
        псевдонимом Map, используйте следующую команду для запуска 
        функции.
            &(get-command -name map -type function) 
        - или:
            &(dir function:\map)
        Для упрощения запуска скрытой команды можно также сохранить 
        ее в переменную.
        Например, следующая команда сохраняет функцию Map в 
        переменной $myMap и затем использует оператор вызова для 
        запуска команды.
            $myMap = (get-command -name map -type function)
            &($myMap)
        Если команда описана в модуле, можно использовать для ее 
        запуска следующий формат команды:
           & <PSModuleInfo-object> <команда>
        Например, для запуска командлета Add-File из модуля 
        FileCommands используйте следующую последовательность команд:
           
           $FileCommands = get-module -name FileCommands 
           & $FileCommands Add-File
        
   
 ЗАМЕНЕННЫЕ ЭЛЕМЕНТЫ
    Элементы, которые не были импортированы в сеанс из модуля или 
    оснастки, такие как функции, переменные и псевдонимы, созданные в 
    сеансе или добавленные из профиля, могут быть заменены командами 
    с такими же именами. При замене элементов доступ к ним невозможен.
    Переменные и псевдонимы заменяются всегда, даже если они были 
    импортированы из модуля или оснастки, поскольку доступ к ним с 
    использованием оператора вызова или полного имени невозможен.
    Например, если в сеансе была создана функция Get-Map, а затем 
    была импортирована функция с именем Get-Map, исходная функция 
    заменяется и доступ к ней в текущем сеансе невозможен.
   
 ПРЕДОТВРАЩЕНИЕ КОНФЛИКТОВ ИМЕН
    Лучшим способом обработки конфликтов имен является их 
    предотвращение. При создании имен команд используйте очень 
    конкретные имена, которые с высокой вероятностью будут 
    уникальными. Например, добавляйте в имена команд свои инициалы 
    или сокращенное название компании.
    Также при импорте команд в сеанс из модуля Windows PowerShell или 
    из другого сеанса используйте параметр Prefix командлета 
    Import-Module или Import-PSSession, чтобы добавить префикс к 
    именам команд.
    Например, следующая команда позволяет предотвратить конфликты 
    между командлетами Get-Date и Set-Date, поставляемыми с Windows 
    PowerShell, при импорте модуля DateFunctions.
        import-module -name DateFunctions -prefix ZZ
    Дополнительные сведения см. в Import-Module и Import-PSSession. 
СМ. ТАКЖЕ
    about_Path_Syntax
    about_Aliases
    about_Functions
    Alias (поставщик)
    Function (поставщик)
    Get-Command
    Import-Module
    Import-PSSession



about_Command_Syntax

РАЗДЕЛ
    about_Command_Syntax
КРАТКОЕ ОПИСАНИЕ
    Описывает синтаксис, используемый в справке для Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Командлет Get-Help отображает правила использования параметров 
    командлета. Командлет Get-Help использует следующие специальные 
    символы.
        Угловые скобки (<>) указывают на замещающий текст. 
        Квадратные скобки ([]) указывают на необязательные элементы. 
        Фигурные скобки ({}) указываются на возможность выбора значений.
    Некоторые командлеты поддерживают несколько наборов параметров. 
    При этом некоторые параметры могут использоваться в различных наборах 
    параметров. Командлет Get-Help отображает все наборы параметров 
    командлета.
    Дополнительные сведения о параметрах можно получить из описаний 
    параметров и таблицы атрибутов параметров. Для просмотра полной 
    информации о параметре используйте параметры Full или Parameter 
    командлета Get-Help.
  Синтаксис
      В справке для командлетов Windows PowerShell, разделах справки 
      и другой документации используется следующий формат описания 
      синтаксиса командлетов. 
          <имя_командлета> -<имя_обязательного параметра> 
                            <значение_обязательного параметра>
                          [-<имя_необязательного_параметра> 
                            <значение_необязательного_параметра>]
                          [-<необязательный_параметр-переключатель>]
                          [-<необязательное_имя_параметра>] 
                            <значение_обязательного_параметра>
      Ниже показан синтаксис для командлета New-Alias.
          New-Alias [-Force] [-PassThru] [-Scope <string>] 
              [-Option {None | ReadOnly | Constant | Private | AllScope}] 
              [-Description <string>] [-Name] <string> [-Value] <string> 
              [-confirm] [-whatif] [<CommonParameters>]
      Заглавные буквы добавлены в синтаксис для упрощения чтения, но 
      оболочка Windows PowerShell не учитывает регистр символов. 
      Параметры отображаются в установленном порядке. Порядок 
      параметров имеет значение, в то время как имена параметров являются 
      необязательными. Если не указать имена параметров при использовании 
      командлета, оболочка Windows PowerShell присвоит значения параметрам 
      по позиции и по типу. 
      Перед именами параметров вводится дефис (-). Параметры-переключатели 
      отображаются без указания типа значения. Для других параметров указываетс
я 
      требуемый тип значения (тип платформы Microsoft .NET Framework) или 
      перечисление возможных значений. Дополнительные сведения о типах 
      платформы .NET Framework см. на веб-странице 
      http://go.microsoft.com/fwlink/?LinkId=143682.
      Угловые скобки (<>) указывают на замещающий текст. Этот текст может 
      описывать тип элемента (например, строковый объект или объект процесса). 
      Замещающий текст также может замещать один или несколько общих параметров
.
      Квадратные скобки ([]) указывают на необязательные элементы. 
      Необязательным может быть параметр или имя обязательного параметра. 
      Параметры-переключатели всегда являются необязательными. 
      В фигурные скобки ({}) заключаются значения перечисления. В 
      примере с командлетом New-Alias параметр Option может принимать 
      любое из указанных значений.
  Необязательные элементы
      В квадратные скобки ([]) заключаются необязательные элементы. 
      Например, в описании синтаксиса командлета New-Alias параметр Scope 
      является необязательным. На это указывают квадратные скобки вокруг 
      имени и типа значения параметра:
          [-Scope <string>]
      Ниже представлены два примера допустимого использования 
      командлета New-Alias.
          New-Alias -Name utd -Value Update-TypeData New-Alias -Name 
          utd -Value Update-TypeData -Scope global
      Имя параметра может быть необязательным, даже если значение этого 
      параметра является обязательным. На это указывают квадратные скобки 
      вокруг имени параметра, но не вокруг типа значения параметра, как в 
      следующем примере из синтаксиса командлета New-Alias:
          [-Name] <string> [-Value] <string>
      В следующих командах командлет New-Alias используется 
      корректно. Результат выполнения команд будет одинаковым.
          New-Alias -Name utd -Value Update-TypeData New-Alias -Name 
          utd Update-TypeData
          New-Alias utd -Value Update-TypeData
          New-Alias utd Update-TypeData
      Если имя параметра не указано во введенной инструкции, оболочка 
      Windows PowerShell пытается использовать позицию аргументов для 
      присвоения значений параметрам.
      Следующий пример не является полным:
          New-Alias utd
      При использовании данного командлета необходимо указать значения 
      параметров Name и Value.
      В примерах синтаксиса квадратные скобки также используются при 
      указании и приведении к типам платформы .NET Framework. В этом 
      контексте квадратные скобки не указывают на необязательность 
      элемента.
  Аргументы массива 
      Квадратные скобки также используются в описаниях синтаксиса для 
      представления массива. В следующем примере показан синтаксис для 
      командлета Restart-Service.
          Restart-Service [-Name] <string[]> [-Include <string[]>] 
              [-Exclude <string[]>] [-Force] [-PassThru] [-Confirm] [-WhatIf] 
              [<CommonParameters>]
      Для параметра Name необходимо указать аргумент. Более конкретно, 
      необходимо указать имя перезапускаемой службы. Допускается 
      использование списка служб, разделенных запятыми, как в следующем примере
:
          Restart-Service RasAuto, RasMan, RemoteAccess
СМ. ТАКЖЕ
    Get-Help



about_Comment_Based_Help

РАЗДЕЛ
    about_Comment_Based_Help
КРАТКОЕ ОПИСАНИЕ
    Описание написания разделов справки на основе комментариев для 
    функций и скриптов.
ПОЛНОЕ ОПИСАНИЕ
    С помощью специальных ключевых слов комментариев справки можно 
    писать разделы справки на основе комментариев для функций и скриптов. 
    Командлет Get-Help отображает содержимое справки на основе 
    комментариев в том же формате, в котором отображаются разделы 
    справки для командлетов, созданные из XML-файлов. Для просмотра 
    справки для функции или скрипта пользователи могут использовать 
    все параметры командлета Get-Help: Detailed, Full, Example и Online.
    Также с помощью специальных ключевых слов комментариев справки 
    можно писать файлы справки на основе XML-файлов для функций и 
    скриптов и перенаправлять пользователей в другой файл справки. 
    В этом разделе описано, как писать разделы справки для функций и 
    скриптов. Сведения об отображении разделов справки для функций и 
    скриптов см. в разделе Get-Help.
 СИНТАКСИС ДЛЯ СПРАВКИ НА ОСНОВЕ КОММЕНТАРИЕВ
    Синтаксис для справки на основе комментариев имеет следующий вид.
        # .< ключевое_слово_справки>
        # <содержимое_справки>
 
    -или:
        <#
            .< ключевое_слово_справки>
            < содержимое_справки>
        #>
    Справка на основе комментариев пишется как набор комментариев. 
    Можно вводить символ комментария (#) перед каждой строкой 
    комментариев или использовать символы "<#" и "#>" для создания 
    блока комментариев. Все строки, входящие в блок комментариев, 
    воспринимаются как комментарии.
    Все строки в разделе справки на основе комментариев должно идти 
    непрерывно. Если раздел справки на основе комментариев следует за 
    комментарием, не являющимся частью раздела, между последней 
    строкой этого комментария и началом справки должна присутствовать 
    хотя бы одна пустая строка.
    Ключевые слова определяют разделы справки на основе комментариев. 
    Перед каждым ключевым словом справки на основе комментариев 
    вводится точка (.). Ключевые слова можно вводить в любом порядке. 
    В именах ключевых слов не учитывается регистр.
    Например, ключевое слово Description предшествует описанию 
    функции или скрипта.
        <#
	    .Description
            Get-Function отображает имя и синтаксис всех функций в 
            рамках сеанса.
        #>
    В блоке комментариев должно содержаться хотя бы одно ключевое 
    слово. Некоторые ключевые слова, например EXAMPLE, могут 
    встречаться несколько раз в рамках одного блока комментариев. 
    Содержимое справки для каждого ключевого слова начинается со 
    строки, следующей за ключевым словом, и может занимать несколько 
    строк. 
 СИНТАКСИС ДЛЯ СПРАВКИ НА ОСНОВЕ КОММЕНТАРИЕВ В ФУНКЦИЯХ
    Справка на основе комментариев для функции может размещаться в 
    одной из трех областей:
        -- В начале тела функции.
        -- В конце тела функции.
        -- Перед ключевым словом Function. Между последней строкой 
           справки для функции и ключевым словом Function не может 
           быть больше одной пустой строки. 
 
    Пример:
        function MyFunction 
        {
            <#
            .< ключевое_слово_справки>
            < содержимое_справки>
            #>
            <команды функции>
        }
    -или:
        function MyFunction 
        {
            <команды функции>
            <#
            .< ключевое_слово_справки>
            < содержимое_справки>
            #>
        }
    -или:
        <#
        .< ключевое_слово_справки>
        < содержимое_справки>
        #>
        function MyFunction { }
 СИНТАКСИС ДЛЯ СПРАВКИ НА ОСНОВЕ КОММЕНТАРИЕВ В СКРИПТАХ
    Справка на основе комментариев для скрипта может размещаться в 
    одной из двух областей скрипта.
    -- В начале файла скрипта. При таком размещении перед справкой 
       для скрипта могут указываться только комментарии и пустые строки. 
    -- Если первый элемент тела скрипта (после справки) является 
       объявлением функции, между последней строкой справки для 
       скрипта и объявлением функции должны присутствовать хотя бы 
       две пустых строки. В противном случае справка интерпретируется 
       как справка для функции, а не справка для скрипта.
    -- В конце файла скрипта.
    Пример:
        <#
        .< ключевое_слово_справки>
        < содержимое_справки>
        #>
        function MyFunction { }
    -или-
        function MyFunction { }
        <#
        .< ключевое_слово_справки>
        < содержимое_справки>
        #>
 КЛЮЧЕВЫЕ СЛОВА СПРАВКИ НА ОСНОВЕ КОММЕНТАРИЕВ
    Ниже перечислены действительные ключевые слова справки на основе 
    комментариев. Перечисленные выполнено в том порядке, в котором 
    ключевые слова обычно появляются в разделе справки, для всех 
    ключевых слов приведено краткое описание.
    Эти ключевые слова могут появляться в справке на основе 
    комментариев в любом порядке, регистр символов не имеет значения.
    .SYNOPSIS
        Краткое описание функции или скрипта. Это ключевое слово 
        может использоваться в каждом разделе только один раз.
    .DESCRIPTION
        Подробное описание функции или скрипта. Это ключевое слово 
        может использоваться в каждом разделе только один раз.
    .PARAMETER <имя_параметра>
        Описание параметра. Ключевое слово Parameter может 
        указываться для каждого из параметров функции или скрипта.
        Ключевые слова Parameter могут появляться в блоке 
        комментариев в произвольном порядке, однако порядок 
        отображения параметров (и их описаний) в разделе справки 
        определяется синтаксисом функции или скрипта. Для изменения 
        порядка отображения необходимо изменить синтаксис.
 
        Можно также указать описание параметра, разместив комментарий 
        в коде функции или скрипта сразу после имени переменной параметра.
        При использовании комментария в коде и ключевого слова 
        Parameter будет использоваться описание, связанное с ключевым 
        словом Parameter, комментарий в коде будет проигнорирован.
    .EXAMPLE
        Пример команды, в которой используется функция или скрипт, за 
        которым может следовать пример выходных данных и описание. 
        Это ключевое слово необходимо повторить для каждого примера.
    .INPUTS
        Типы данных объектов платформы Microsoft .NET , которые могут быть 
        переданы функции или скрипту по конвейеру. Можно также 
        включить описание входных объектов.
    .OUTPUTS
        Типы данных объектов платформы .NET, возвращаемых 
        командлетом. Можно также включить описание возвращаемых объектов.
    .NOTES
        Дополнительные сведения о функции или скрипте.
    .LINK
        Имя связанного раздела. Это ключевое слово необходимо 
        повторить для каждого связанного раздела.
        Это содержимое отображается в подразделе "Ссылки по теме" 
        раздела справки.
        В содержимом ключевого слова Link может указываться URI на 
        интернет-версию того же раздела справки. Интернет-
        версия открывается при использовании параметра Online 
        командлета Get-Help. URI должен начинаться с "http" или "https".
    .COMPONENT
        Технология или функциональная возможность, которая 
        используется функцией или скриптом либо с которой связана 
        функция или скрипт. Это содержимое отображается в случае, 
        если команда Get-Help включает параметр Component командлета 
        Get-Help.
    .ROLE
        Роль пользователя для раздела справки. Это содержимое 
        отображается в случае, если команда Get-Help включает 
        параметр Role командлета Get-Help.
    .FUNCTIONALITY
        Предполагаемое использование функции. Это содержимое 
        отображается в случае, если команда Get-Help включает 
        параметр Functionality командлета Get-Help.
    .FORWARDHELPTARGETNAME <имя_команды>
        Обеспечивает перенаправление в раздел справки для указанной 
        команды. Можно выполнять перенаправление пользователей в 
        любой раздел справки, включая разделы справки для функции, 
        скрипта, командлета или поставщика. 
    .FORWARDHELPCATEGORY <категория>
        Задает категорию справки элемента в ForwardHelpTargetName.
        Допустимыми значениями являются Alias, Cmdlet, HelpFile, 
        Function, Provider, General, FAQ, Glossary, ScriptCommand, 
        ExternalScript, Filter или All. Используйте это ключевое 
        слово для предотвращения конфликтов при появлении команд с 
        одинаковыми именами.
    .REMOTEHELPRUNSPACE <переменная_сеанса_PSSession>
        Задает сеанс, в котором содержится раздел справки. Введите 
        переменную, которая содержит сеанс PSSession. Это ключевое 
        слово используется командлетом Export-PSSession для поиска 
        разделов справки для экспортируемых команд.
    .EXTERNALHELP <путь_к_XML-файлу_справки>
        Задает путь к файлу справки на основе XML для скрипта или 
        функции. 
        При работе с операционной системой Windows Vista или более 
        поздними версиями Windows если указанный путь к XML-файлу 
        содержит подкаталоги, определяемые культурой пользовательского
         интерфейса, Get-Help выполняет рекурсивный поиск XML-файла с 
         именем скрипта или функции по подкаталогам в соответствии со 
         стандартами резервного языка, установленными для Windows 
         Vista, как это и происходит для всех разделов справки на 
         основе XML. 
        Дополнительные сведения о формате файлов справки для 
        командлетов на основе XML см. в разделе "How to Write Cmdlet 
        Help" (Как писать справку для командлетов) в библиотеке MSDN
        по адресу http://go.microsoft.com/fwlink/?LinkID=123415.
 АВТОМАТИЧЕСКИ СГЕНЕРИРОВАННОЕ СОДЕРЖИМОЕ
    Имя, синтаксис, список параметров, таблица атрибутов параметров, 
    общие параметры и примечания автоматически генерируются 
    командлетом Get-Help.
        Имя: 
            Подраздел "Имя" раздела справки для функции заполняется 
            именем функции из синтаксиса функции. Подраздел "Имя" 
            раздела справки для скрипта заполняется именем файла 
            скрипта. Для изменения имени или преобразования его в 
            верхний реестр измените синтаксис функции или имя файла 
            скрипта.
 
        Синтаксис: 
            Подраздел "Синтаксис" раздела справки для функции 
            генерируется в соответствии с информацией о синтаксисе 
            функции или скрипта. Чтобы добавить подробную информацию 
            в раздел справки "Синтаксис", например тип данных 
            платформы .NET параметра, добавьте эту информацию в 
            синтаксис. Если тип параметра не указан, по умолчанию 
            используется значение типа "Объект".
        Список параметров: 
            Список параметров в разделе справки генерируется на 
            основании синтаксиса функции или скрипта, а также 
            описаний, добавленных с помощью ключевых слов Parameter. 
            Параметры функции отображаются в подразделе параметров 
            раздела справки в том же порядке, в котором они указаны в 
            синтаксисе функции или скрипта. Написание и реестр 
            символов в именах параметров также основано на 
            синтаксисе; на них не воздействует имя параметра, 
            заданное ключевым словом Parameter. 
        Общие параметры: 
            Общие параметры добавляются в синтаксис и список 
            параметров в разделе справки даже в том случае, если они 
            не указывают никакого воздействия. Дополнительные 
            сведения о типовых параметрах см. в разделе 
            about_CommonParameters.
        Таблица атрибутов параметров: 
            Командлет Get-Help генерирует таблицу атрибутов 
            параметров, которая отображается при использовании 
            параметров Full или Parameter командлета Get-Help. 
            Значения атрибутов "Необходимый", "Позиция" и "Значение 
            по умолчанию" основаны на синтаксисе функции или скрипта. 
        Примечания: 
            Подраздел "Примечания" раздела справки для функции 
            автоматически генерируется в соответствии с именем 
            функции или скрипта. Невозможно изменить содержимое этого 
            раздела или воздействовать на него.
 ПРИМЕРЫ
    Пример 1. Справка для функции на основе комментариев
        В следующем примере в код функции включена справка на основе 
        комментариев.
            function Add-Extension 
            {
                param ([string]$Name,[string]$Extension = "txt") 
                $name = $name + "." + $extension $name
            <#
            .SYNOPSIS 
            Добавление расширения имени файла к переданному на вход имени.
            .DESCRIPTION
            Добавление расширения имени файла к переданному на вход 
            имени. Принимает любые строки в качестве имени файла или 
            расширения.
            .PARAMETER Name
            Задает имя файла.
            .PARAMETER Extension
            Задает расширение. По умолчанию используется расширение "Txt".
            .INPUTS
            Нет. Объекты не могут передаваться функции Add-Extension 
            по конвейеру.
            .OUTPUTS
            System.String. Функция Add-Extension возвращает строку с 
            расширением или именем файла.
            .ПРИМЕР
            C:\PS> extension -name "файл"
            файл.txt
            .ПРИМЕР
            C:\PS> extension -name "файл" -extension "doc"
            файл.doc
            .ПРИМЕР
            C:\PS> extension "файл" "doc"
            файл.doc
            .LINK
            Интернет-версия: http://www.fabrikam.com/extension.html
            .LINK
            Set-Item
            #>
            }
        Результаты выглядят следующим образом:
        C:\PS> get-help add-extension -full
        ИМЯ
            Add-Extension
    
        ОПИСАНИЕ
            Добавление расширения имени файла к переданному на вход имени.
    
        СИНТАКСИС
            Add-Extension [[-Name] <String>] [[-Extension] <String>] 
            [<CommonParameters>] 
        ОПИСАНИЕ
            Добавление расширения имени файла к переданному на вход 
            имени. Принимает любые строки в качестве имени файла или 
            расширения.
    
        ПАРАМЕТРЫ
           -Name
               Задает имя файла.
        
               Требуется?                    false
               Позиция?                      0
               Значение по умолчанию                
               Принимать входные 
               данные с конвейера?           false
               Принимать подстановочные знаки?    
        
           -Extension
               Задает расширение. По умолчанию используется 
               расширение "Txt".
        
               Требуется?                    false
               Позиция?                      1
               Значение по умолчанию                
               Принимать входные данные 
               с конвейера?                  false
               Принимать подстановочные знаки?    
        
            <CommonParameters>
               Данный командлет поддерживает общие параметры: 
               -Verbose, -Debug, ErrorAction, -ErrorVariable, 
               -WarningAction, -WarningVariable, OutBuffer и 
               -OutVariable. Чтобы получить дополнительные 
                сведения, введите команду "get-help 
                about_commonparameters".
    
        ВХОДНЫЕ ДАННЫЕ
            Нет. Объекты не могут передаваться функции Add-Extension 
            по конвейеру.
    
        ВЫХОДНЫЕ ДАННЫЕ
            System.String. Функция Add-Extension возвращает строку с 
            расширением или именем файла.
        
            -------------------------- ПРИМЕР 1 -------------------------- 
            C:\PS> extension -name "файл"
            файл.txt
    
            -------------------------- ПРИМЕР 2 -------------------------- 
            C:\PS> extension -name "файл" -extension "doc"
            файл.doc
    
            -------------------------- ПРИМЕР 3 -------------------------- 
            C:\PS> extension "файл" "doc"
            файл.doc
    
        ССЫЛКИ ПО ТЕМЕ
            Интернет-версия: http://www.fabrikam.com/extension.ht
            ml Set-Item
    Пример 2. Описание параметров в коде функции
        Этот пример похож на предыдущий за исключением того, что в 
        нем описания параметров вставлены в код функции. Такой формат 
        наиболее удобен при использовании кратких описаний. 
        function Add-Extension 
        {
            param 
            (
                [string]
                # Задает имя файла.
                $name,
                [string]
                # Задает расширение. По умолчанию используется 
                расширение "Txt".
                $extension = "txt"
            )
            $name = $name + "." + $extension
            $name
      
            <#
            .SYNOPSIS 
            Добавление расширения имени файла к переданному на вход имени.
            .DESCRIPTION
            Добавление расширения имени файла к переданному на вход 
            имени. Принимает любые строки в качестве имени файла или 
            расширения.
            .INPUTS
            Нет. Объекты не могут передаваться функции Add-Extension 
            по конвейеру.
            .OUTPUTS
            System.String. Функция Add-Extension возвращает строку с 
            расширением или именем файла.
            .EXAMPLE
            C:\PS> extension -name "файл"
            файл.txt
            .EXAMPLE
            C:\PS> extension -name "файл" -extension "doc"
            файл.doc
            .EXAMPLE
            C:\PS> extension "файл" "doc"
            файл.doc
 
            .LINK
            Интернет-версия: http://www.fabrikam.com/extension.html
            .LINK
            Set-Item
            #>
        }
    Пример 3. Справка для скрипта на основе комментариев
        В следующем примере в код скрипта включена справка на основе 
        комментариев. 
        Обратите внимание на пустые строки между закрывающим 
        элементом "#>" и оператором Param. Если в скрипте нет 
        оператора Param, между последней строкой последнего 
        комментария и первой строкой объявления первой функции должны 
        присутствовать хотя бы две пустых строки. Без этих пустых 
        строк Get-Help свяжет раздел справки с функцией, а не со скриптом.
           <#
           .SYNOPSIS 
           Выполняет ежемесячное обновление данных.
           .DESCRIPTION
           Скрипт Update-Month.ps1 обновляет реестр, дополняя его 
           новыми данными, созданными в течение прошедшего месяца, и 
           генерирует отчет.
    
           .PARAMETER InputPath
           Задает путь к входному CSV-файлу.
           .PARAMETER OutputPath
           Задает имя и путь к выходному CSV-файлу. По умолчанию 
           MonthlyUpdates.ps1 формирует имя в соответствии с датой и 
           временем запуска и сохраняет выходные данные в локальном 
           каталоге.
           .INPUTS
           Нет. Объекты не могут передаваться скрипту Update-Month.ps1
            по конвейеру.
           .OUTPUTS
           Нет. Update-Month.ps1 не формирует никаких выходных данных.
           .EXAMPLE
           C:\PS> .\Update-Month.ps1
           .EXAMPLE
           C:\PS> .\Update-Month.ps1 -inputpath C:\Data\January.csv
           .EXAMPLE
           C:\PS> .\Update-Month.ps1 -inputpath C:\Data\January.csv 
           -outputPath C:\Reports\2009\January.csv
           #>
           param ([string]$InputPath, [string]$OutPutPath)
           function Get-Data { }
           ...
        Следующая команда возвращает справку к скрипту. Поскольку 
        скрипт находится в каталоге, который не входит в переменную 
        среды Path, в команде Get-Help, которая возвращает справку к 
        скрипта, необходимо указать путь к скрипту.
            PS C:\ps-test> get-help .\update-month.ps1 -full
            NAME
                C:\ps-test\Update-Month.ps1
    
            SYNOPSIS
                Выполняет ежемесячное обновление данных.
    
            СИНТАКСИС
                C:\ps-test\Update-Month.ps1 [-InputPath] <String> 
                [[-OutputPath] ]<String>] [<CommonParameters>]
    
            ОПИСАНИЕ
                Скрипт Update-Month.ps1 обновляет реестр, дополняя 
                его новыми данными, созданными в течение прошедшего 
                месяца, и генерирует отчет.
    
            ПАРАМЕТРЫ
               -InputPath
                   Задает путь к входному CSV-файлу.
        
                   Требуется?                    true
                   Позиция?                      0
                   Значение по умолчанию                
                   Принимать входные данные 
                   с конвейера?                  false
                   Принимать подстановочные знаки?    
        
               -OutputPath
                   Задает имя и путь к выходному CSV-файлу. По умолчанию 
                   MonthlyUpdates.ps1 формирует имя в соответствии с датой 
                   и временем запуска и сохраняет выходные данные в 
                   локальном каталоге.
        
                   Требуется?                    false
                   Позиция?                      1
                   Значение по умолчанию                
                   Принимать входные данные 
                   с конвейера?                  false
                   Принимать подстановочные знаки?    
               <CommonParameters>
                   Данный командлет поддерживает общие параметры: 
                   -Verbose, -Debug, ErrorAction, -ErrorVariable, 
                   -WarningAction, -WarningVariable, OutBuffer и 
                   -OutVariable. Чтобы получить дополнительные 
                    сведения, введите команду "get-help 
                    about_commonparameters".
    
            ВХОДНЫЕ ДАННЫЕ
                   Нет. Объекты не могут передаваться скрипту 
                   Update-Month.ps1 по конвейеру.
    
            ВЫХОДНЫЕ ДАННЫЕ
                   Нет. Update-Month.ps1 не формирует никаких 
                   выходных данных.
    
    
            -------------------------- ПРИМЕР 1 -------------------------- 
 
            C:\PS> .\Update-Month.ps1
    
            -------------------------- ПРИМЕР 2 -------------------------- 
            C:\PS> .\Update-Month.ps1 -inputpath C:\Data\January.csv
    
            -------------------------- ПРИМЕР 3 -------------------------- 
            C:\PS> .\Update-Month.ps1 -inputpath C:\Data\January.csv 
            -outputPath 
            C:\Reports\2009\January.csv
        
            ССЫЛКИ ПО ТЕМЕ
    Пример 4. Перенаправление в XML-файл
        Для функций и скриптов можно писать разделы справки на основе 
        XML. Хотя справку на основе комментариев проще реализовывать, 
        справка на основе XML необходима, если требуется более четкий 
        контроль содержания справки или перевод разделов справки на 
        несколько языков. 
        В следующем примере показаны несколько первых строк скрипта 
        Update-Month.ps1. В скрипте используется ключевое слово 
        ExternalHelp, позволяющее указать путь к разделу справки для 
        скрипта на основе XML.
            # .ExternalHelp C:\MyScripts\Update-Month-Help.xml
            param ([string]$InputPath, [string]$OutPutPath)
            function Get-Data { }
            ...
       В следующем примере показано использование ключевого слова 
       ExternalHelp в функции.
            function Add-Extension 
            {
                param ([string] $name, [string]$extension = "txt") 
                $name = $name + "." + $extension $name
      
                # .ExternalHelp C:\ps-test\Add-Extension.xml 
            }
    Пример 5. Перенаправление в другой раздел справки
        Ниже представлен фрагмент кода, представляющий собой начало 
        встроенной функции Help в оболочке Windows PowerShell, 
        который обеспечивает постраничный вывод справки на экран. 
        Поскольку функция Help описывается в разделе справки для 
        командлета Get-Help, в этой функции используются ключевые слова 
        ForwardHelpTargetName и ForwardHelpCategory для перенаправления 
        пользователя в раздел справки для командлета Get-Help.
            function help 
            {
            <#
            .FORWARDHELPTARGETNAME Get-Help
            .FORWARDHELPCATEGORY Cmdlet
            #>
            [CmdletBinding(DefaultParameterSetName='AllUsersView')] param(
                [Parameter(Position=0, ValueFromPipelineByPropertyName
                =$true)] [System.String]
                ${Name},
                   ...
        Эта функция используется в следующей команде.
            C:\PS> get-help help
            ИМЯ
                Get-Help
            ОПИСАНИЕ
                Отображает сведения о командлетах и концепциях 
                Windows PowerShell.
            ...
СМ. ТАКЖЕ
    about_Functions
    about_Functions_Advanced_Parameters
    about_Scripts
    "Написание справки для командлетов" (http://go.microsoft.com/fwlink/?LinkID
=123415)



about_CommonParameters

РАЗДЕЛ
    about_CommonParameters
КРАТКОЕ ОПИСАНИЕ
    Описание параметров, которые могут использоваться с любым командлетом.
ПОЛНОЕ ОПИСАНИЕ
    Общие параметры - это набор параметров командлета, которые могут 
    использоваться с любым командлетом. Их обработка реализована 
    разработчиками Windows PowerShell, а не разработчиком командлета, 
    они автоматически доступны любому командлету.
    Общие параметры можно использовать с любым командлетом, но они могут 
    воздействовать не на все командлеты. Например, если командлет не 
    генерирует подробные выходные данные, использование параметра Verbose 
    никак не отразится на его работе.
    Некоторые общие параметры переопределяют системные значения по 
    умолчанию или настройки, установленные с помощью привилегированных 
    переменных. В отличие от привилегированных переменных общие параметры 
    воздействуют только на те команды, в которых они используются.
 
    
    В дополнение к общим параметрам многие командлеты поддерживают 
    параметры снижения риска WhatIf и Confirm. Эти параметры обычно 
    поддерживаются командлетами, которые подвергают риску системные 
    данные или данные пользователя.
    Общие параметры перечислены в следующей таблице.
       -Verbose
       -Debug
       -WarningAction
       -WarningVariable
       -ErrorAction
       -ErrorVariable
       -OutVariable
       -OutBuffer  
 
    Параметры снижения риска перечислены в следующей таблице.
       -WhatIf
       -Confirm
    Для получения дополнительной информации о привилегированных переменных 
    введите следующую команду.
  
       help about_preference_variables
  Описания общих параметров       
    -Verbose[:{$true | $false}]
        Отображает подробные сведения о действиях, выполняемых 
        командой. Эти сведения напоминают сведения в журнале 
        трассировки или журнале транзакций. Этот параметр будет 
        работать только с теми командами, которые генерируют подробные 
        сообщения. Например, этот параметр работает с командой, содержащей 
        командлет Write-Verbose.
        
        Параметр Verbose переопределяет значение переменной 
        $VerbosePreference для текущей команды. Поскольку по умолчанию для 
        переменной $VerbosePreference установлено значение SilentlyContinue, 
        подробные сообщения по умолчанию не отображаются.
        Допустимые значения:
            Значение $true (-Verbose:$true) равносильно использованию 
            параметра -Verbose без значения.
            Значение $false (-Verbose:$false) подавляет отображение 
            подробных сообщений. Используйте этот параметр, если значение 
            переменной $VerbosePreference отличается от SilentlyContinue 
            (установлено по умолчанию). 
    -Debug[:{$true | $false}]
        Отображает информацию о действиях, выполняемых командой, 
        которая может потребоваться программисту. Этот параметр будет 
        работать только с теми командами, которые генерируют 
        сообщения отладки. Например, этот параметр работает с командой, 
        содержащей командлет Write-Debug.
    
        Параметр Debug переопределяет значение переменной 
        $DebugPreference для текущей команды. Поскольку по умолчанию для 
        переменной $DebugPreference установлено значение SilentlyContinue, 
        сообщения отладки по умолчанию не отображаются.
       
        Допустимые значения:
            $true (-Debug:$true). Равносильно использованию параметра 
            -Debug.
            $false (-Debug:$false). Подавляет отображение сообщений 
            отладки, если для переменной $DebugPreference установлено 
            значение, отличное от SilentlyContinue (по умолчанию). 
    -WarningAction[:{SilentlyContinue | Continue | Inquire | Stop}]  
        Определяет реакцию командлета на возникновение предупреждения при 
        выполнении команды.
        По умолчанию используется значение "Continue". Этот параметр будет 
        работать только с теми командами, которые генерируют предупреждения. 
        Например, этот параметр работает с командой, содержащей командлет 
        Write-Warning.
        Параметр WarningAction переопределяет значение переменной 
        $WarningPreference для текущей команды. Поскольку по умолчанию для 
        переменной $WarningPreference установлено значение "Continue", если в 
        команде не используется параметр WarningAction, предупреждения 
        отображаются, а выполнение команды продолжается. 
         Допустимые значения:
            SilentlyContinue. Подавление предупреждений и продолжение 
            выполнения команды.
            Continue. Отображение предупреждения и продолжение выполнения 
            команды. По умолчанию используется значение "Continue".
 
            Inquire. Отображение предупреждения, запрос на продолжение 
            выполнения. Это значение используется редко.
            Stop. Отображение предупреждения, прекращение выполнения 
            команды.
    -WarningVariable [+]<имя_переменной>
        Сохраняет предупреждения о выполнении команды в указанной 
        переменной.
        Для добавления предупреждений к значениям переменной вместо замены 
        предупреждений, которые могли быть сохранены в переменной раньше, 
        введите знак "плюс" (+) перед именем переменной. 
        Например, следующая команда создает переменную $a и сохраняет 
        в ней все предупреждения.
            get-process -id 6 -WarningVariable a  
        Следующая команда добавляет все предупреждения в переменную $a.
            get-process -id 2 -WarningVariable +a 
        Следующая команда отображает содержимое переменной $a.
            $a                                     
        Этот параметр можно использовать для создания переменной, в 
        которой будут содержаться предупреждения о выполнении только 
        определенных команд. Для доступа к определенным предупреждениям, 
        хранящимся в переменной, можно использовать синтаксис работы 
        с массивами, например $a[0] или $warning[1,2].
    -ErrorAction[:{SilentlyContinue | Continue | Inquire | Stop)]  
        Определяет реакцию командлета на возникновение непрерывающей 
        ошибки при выполнении команды. Этот параметр будет работать 
        только с теми командами, которые генерируют сообщения 
        отладки. Например, этот параметр работает с командой, содержащей 
        командлет Write-Error.
        Параметр ErrorAction переопределяет значение переменной 
        $ErrorActionPreference для текущей команды. Поскольку по умолчанию для 
        переменной $ErrorActionPreference установлено значение "Continue", если
 
        в команде не используется параметр ErrorAction, сообщения об ошибках 
        отображаются, а выполнение команды продолжается. 
        Параметр ErrorAction не влияет на обработку прерывающих 
        ошибок (включая отсутствие данных, неверные параметры или 
        недостаточные полномочия), препятствующих успешному завершению 
        выполнения команды.
        Допустимые значения:
            SilentlyContinue. Подавление сообщений об ошибках и 
            продолжение выполнения команды.
            Continue. Отображение сообщений об ошибках, продолжение 
            выполнения команды. По умолчанию используется значение 
            "Continue".
 
            Inquire. Отображение сообщения об ошибке, запрос на 
            продолжение выполнения. Это значение используется редко.
            Stop. Отображение сообщения об ошибке и прекращение выполнения 
            команды.
            
    -ErrorVariable [+]<имя_переменной>
        Сохраняет сообщения об ошибках при выполнении команды в указанной 
        переменной и в автоматической переменной $Error. Чтобы получить 
        дополнительные сведения, введите следующую команду:
            get-help about_automatic_variables
        По умолчанию новые сообщения об ошибках перезапишут старые 
        сообщения об ошибках, уже хранящиеся в переменной. Для добавления 
        сообщения об ошибке к содержимому переменой введите знак "плюс" (+) 
        перед именем переменной. 
        Например, следующая команда создает переменную $a и сохраняет 
        в ней все сообщения об ошибках.
            get-process -id 6 -ErrorVariable a
        Следующая команда добавляет все сообщения об ошибках в 
        переменную a$.
            get-process -id 2 -ErrorVariable +a
        Следующая команда отображает содержимое переменной $a.
            $a                                     
        Этот параметр можно использовать для создания переменной, в 
        которой будут содержаться сообщения об ошибках при выполнении 
        только определенных команд. В автоматической переменной $Error 
        сохраняются сообщения об ошибках при выполнении всех команд в рамках 
        сеанса. Для доступа к определенным сообщениям об ошибках, хранящимся в 
        переменной, можно использовать синтаксис работы с массивами, например 
        $a[0] или $error[1,2].
    -OutVariable [+]<имя_переменной>
        Сохраняет объекты выходных данных команды в указанной переменной и 
        отображает их в командной строке.
        Для добавления выходных данных к значениям переменной вместо 
        замены выходных данных, которые могли быть сохранены в переменной 
        раньше, введите знак "плюс" (+) перед именем переменной. 
        Например, следующая команда создает переменную $out и 
        сохраняет в ней объект процесса.
            get-process powershell -OutVariable out   
        Следующая команда добавляет в переменную $out объект процесса.
            get-process iexplore -OutVariable +out 
        Следующая команда отображает содержимое переменной $out.
            $out                                         
    -OutBuffer <Int32>
        Определяет количество объектов, которое надо накопить в 
        буфере перед передачей объектов по конвейеру. Если этот 
        параметр не указан, объекты отправляются по мере создания. 
        Этот параметр управления ресурсами предназначен для опытных 
        пользователей.
        При использовании этого параметра оболочка Windows PowerShell не 
        вызывает следующий командлет в конвейере до тех пор, пока количество 
        созданных объектов не станет равно OutBuffer + 1. После этого 
        оболочка посылает все объекты по мере создания.
        
  Описания параметров управления рисками         
    -WhatIf[:{$true | $false}]
        Отображает сообщение, в котором описан результат выполнения 
        команды, без фактического ее выполнения.
        Параметр WhatIf переопределяет значение переменной 
        $WhatIfPreference для текущей команды. Поскольку по умолчанию для 
        переменной $WhatIfPreference установлено значение 0 (отключено), 
        функция WhatIf не используется, если в команде не указан параметр 
        WhatIf. Чтобы получить дополнительные сведения, введите следующую 
        команду:
            get-help about_preference_variables
        Допустимые значения:
            $true (-WhatIf:$true). Равносильно использованию параметра -
            WhatIf.           
            $false (-WhatIf:$false). Подавляет автоматическое 
            поведение WhatIf, которое наблюдается, если для переменной 
            $WhatIfPreference установлено значение 1. 
        Например, в следующей команде параметр WhatIf используется в 
        команде Remove-Item.
            PS> remove-item date.csv -whatif
        Вместо удаления элемента оболочка Windows PowerShell перечисляет 
        действия, которые могли бы быть предприняты, и затронутые элементы. 
        Эта команда выводит следующий текст:
            What if: Выполнение операции "Удаление файла" над целевым 
            объектом "C:\ps-test\date.csv".
        
    -Confirm[:{$true | $false}]
        Запрашивает подтверждение перед выполнением команды.
        Параметр Confirm переопределяет значение переменной 
        $ConfirmPreference для текущей команды. По умолчанию используется 
        значение High. Чтобы получить дополнительные сведения, введите 
        следующую команду:
            get-help about_preference_variables 
        Допустимые значения:
            $true (-WhatIf:$true). Равносильно использованию параметра -
            Confirm.          
            $false(-Confirm:$false). Подавляет автоматическое 
            подтверждение, которое происходит, если значение переменной 
            $ConfirmPreference меньше или равно оценке риска выполнения 
            командлета. 
        Например, в следующей команде параметр Confirm используется в 
        в команде Remove-Item. Перед удалением элемента оболочка 
        Windows PowerShell перечисляет действия, которые могли бы быть 
        предприняты, и затронутые элементы, а также запрашивает 
        подтверждение выполняемой операции.
            PS C:\ps-test> remove-item tmp*.txt -confirm
        Эта команда выводит следующий текст:
            Подтвердить
            Выполнить это действие?
            Выполнение операции "Удаление файла" над целевым объектом 
            " C:\ps-test\tmp1.txt [Y] Да [A] Да для всех [N] Нет [L] 
            Нет для всех [S] Приостановить  [?] Справка (по умолчанию 
            "Y"):
СМ. ТАКЖЕ
    about_Preference_Variables
    Write-Debug
    Write-Warning
    Write-Error
    Write-Verbose



about_Comparison_Operators

РАЗДЕЛ
    about_Comparison_Operators
КРАТКОЕ ОПИСАНИЕ
    Описание операторов сравнения, используемых в Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Операторы сравнения позволяют указать условия сравнения и включения, 
    удовлетворяющих указанным шаблонам. При использовании оператора сравнения 
    необходимо указать величины, которые требуется сравнивать, а также 
    оператор, который будет разделять эти величины.
    По умолчанию во всех операторах сравнения не учитывается реестр 
    символов. Для учета реестра символов в операторе сравнения 
    необходимо указать перед именем оператора букву "c".Например, 
    "-ceq" - это версия оператора "-eq", учитывающая реестр 
    символов. Чтобы отменить учет реестров символов в явном виде 
    укажите перед именем оператора букву "i". Например, "-ieq" - это 
    версия оператора "-eq", в которой явно отключен учет реестра символов.
    Все операторы сравнения, кроме операторов включения (-contains, 
    -notcontains) и операторов типа (-is, -isnot), возвращают 
    логическое значение, если в качестве входных данных оператора 
    (значение слева от оператора) используется одно значение 
    (скаляр). Если в качестве входных данных используется коллекция 
    значений, операторы включения и операторы типа возвращают 
    все соответствующие значения. Если в коллекции не найдено 
    соответствий, эти операторы не вернут ничего. Операторы 
    включения и типа всегда возвращают логическое значение.
    Оболочка Windows PowerShell поддерживает следующие операторы 
    сравнения.
    --eq
      Описание. Равенство. Распространяется на случай совпадения значений.
      Пример:
          C:\PS> "abc", "def" -eq "abc"
          abc
    -ne
      Описание. Неравенство. Распространяется на случай несовпадения значений.
      Пример:
          C:\PS> "abc", "def" -ne "abc"
          def
    -gt
      Описание. Больше.
      Пример:
          C:\PS> 8 -gt 6
          True
    -ge
      Описание. Больше или равно.
      Пример:
          C:\PS> 8 -ge 8
          True         
    -lt
      Описание. Меньше.
      Пример:
          C:\PS> 8 -lt 6
          False
    -le
      Описание. Меньше или равно.
      Пример:
          C:\PS> 6 -le 8
          True
 
    -like
      Описание. Соответствие с использованием подстановочного знака (*).
      Пример:
          C:\PS> "Windows PowerShell" -like "*shell"
          True
    -notlike
      Описание. Несоответствие с использованием подстановочного знака (*).
      Пример:
          C:\PS> "Windows PowerShell" -notlike "*shell"
          False
               
    -match 
      Описание. Соответствие строк с учетом регулярных выражений. 
      Если в качестве входных данных используется скалярное значение, 
      оператор заносит результат в автоматическую переменную 
      $Matches. Пример:
                                      
          C:\PS> "Sunday" -match "sun" 
          True 
          C:\PS> $matches 
          Имя  Значение 
          ---  -------- 
          0    sun
 
 
    -notmatch
      Описание. Несоответствие строк. Используются регулярные выражения.
                   Если в качестве входных данных используется 
                   скалярное значение, оператор заносит результат в 
                   автоматическую переменную $Matches. 
      Пример:
          C:\PS> "Sunday" -notmatch "sun"
          False
          C:\PS> $matches 
          Имя   Значение 
          ---   -------- 
          0     sun
 
    -contains
      Описание. Оператор включения. Распространяется на случай 
      совпадения значений, которые не являются фрагментом значения. 
      Всегда возвращает логическое значение.
      Пример:
          C:PS> "abc", "def" -contains "def"
          True
    -notcontains
      Описание. Оператор включения. Не распространяется на случай 
      совпадения значений. Всегда возвращает логическое значение.
      Пример:
          C:PS> "Windows", "PowerShell" -notcontains "Shell"
          True
 
    -replace
      Описание. Оператор замены. Изменяет указанные элементы значения.
      Пример:
          C:\PS> "Get-Process" -replace "Get", "Stop"
          Stop-Process
               
  Операторы равенства
      Операторы равенства (-eq, -ne) возвращают значение TRUE или 
      соответствующие элементы, если одно или несколько входных 
      значений совпадают с указанным шаблоном. Весь шаблон должен 
      соответствовать всему значению.
      В следующих примерах показано функционирование оператора равенства.
          C:PS> 1,2,3 -eq 2
          2
          C:PS> "PowerShell" -eq "Shell"
          False
          C:PS> "Windows", "PowerShell" -eq "Shell"
          C:PS> 
          C:\PS> "abc", "def", "123" -eq "def"
          def
 
  Операторы включения
      Операторы включения (-contains и -notcontains) сходны с операторами 
      равенства. Однако операторы включения всегда возвращают логическое 
      значение, даже если в качестве входных данных использовалась коллекция. 
      Кроме того, в отличие от операторов равенства, операторы включения 
      возвращают значение при обнаружении первого совпадения. Операторы 
      равенства оценивают все входные данные и затем возвращают все совпадения 
      в коллекции. В следующих примерах показано функционирование оператора -co
ntains.
          C:PS> 1,2,3 -contains 2
          True
          C:PS> "PowerShell" -contains "Shell"
          False
          C:PS> "Windows", "PowerShell" -contains "Shell"
          False
          C:\PS> "abc", "def", "123" -contains "def"
          True
          C:\PS> "true", "blue", "six" -contains "true"
          True
 
      В следующем примере продемонстрировано отличие операторов 
      включения от оператора равенства. Операторы включения всегда 
      возвращают значение TRUE при первом совпадении.
 
          C:\PS> 1,2,3,4,5,4,3,2,1 -eq 2
          2
          2
          C:\PS> 1,2,3,4,5,4,3,2,1 -contains 2
          True
 
      
      При обработке коллекции очень большого объема оператор 
      -contains возвращает результаты быстрее, чем оператор равенства.
  Операторы совпадения
      Операторы совпадения (-match и -notmatch) выполняют поиск 
      элементов, которые соответствуют или не соответствуют 
      указанному шаблону при использовании регулярных выражений. 
      Синтаксис:
          <string[]> -match <регулярное_выражение>
          <string[]> -notmatch <регулярное_выражение>
      Ниже показаны примеры использования оператора -match.
          C:\PS> "Windows", "PowerShell" -match ".shell"
          PowerShell
          C:\PS> (get-command get-member -syntax) -match "-view"
          True
          C:\PS> (get-command get-member -syntax) -notmatch "-path"
          True
          C:\PS> (get-content servers.txt) -match "^Server\d\d"
          Server01
          Server02
         
      Операторы совпадения выполняют поиск только по строкам. Они не могут 
      выполнять поиск по массивам целых чисел и другим объектам. 
      Операторы -match и -nomatch заполняют автоматическую переменную 
      $Matches, если входные данные (аргумент с левой стороны) оператора 
      представляют собой один скалярный объект. Если входные данные 
      являются скаляром, операторы -match и -nomatch возвращают логическое 
      значение и устанавливают в качестве значения автоматической 
      переменной $Match совпавшие компоненты аргумента.
      Если входные данные являются коллекцией, операторы -match и -nomatch 
      возвращают соответствующие элементы коллекции, но не изменяют значение 
      автоматической переменной $Match.
      Например, следующая команда отправляет коллекцию строк в 
      оператор -match. Оператор -match возвращает элементы коллекции, 
      которые соответствуют шаблону. При этом значение автоматической 
      переменной $Matches не изменяется.
          C:\PS> "Sunday", "Monday", "Tuesday" -match "sun"
          Sunday
          C:\PS> $matches
          C:\PS>
      Напротив, следующая команда отправляет в оператор -match одну 
      строку. Оператор -match возвращает логическое значение и 
      изменяет значение автоматической переменной $Matches.
          C:\PS> "Sunday" -match "sun"
          True
          C:\PS> $matches
          Имя                            Значение
          ---                            --------
          0                              Sun
      Оператор -nomatch устанавливает значение автоматической 
      переменной $Matches, если входные данные являются скаляром, а 
      результат выполнения оператора равняется False, т. е. при 
      обнаружении совпадения.
          C:\PS> "Sunday" -notmatch "rain"
          True
          C:\PS> $matches
          C:\PS>
          
          C:\PS> "Sunday" -notmatch "day"
          False
          C:\PS> $matches
          C:\PS>
          Имя                           Значение
          ---                           --------
          0                             day
        
  Оператор замены
      Оператор -replace заменяет часть исходного значения или все 
      значение целиком на указанное значение с использованием 
      регулярных выражений. Оператор -replace может оказаться полезным при 
      выполнении многих административных задач, например при переименовании 
      файлов. Например, следующая команда изменяет расширения всех файлов 
      GIF на JPG.
 
          Get-ChildItem | Rename-Item -NewName { $_ -replace 
          '.gif$','.jpg$' }
 
      Ниже описан синтаксис оператора -replace, при этому <оригинал> 
      соответствует символам, которые необходимо заменить, а <замена> 
      - символам, которыми необходимо заменить оригинал.
          <входные_данные> <оператор> <оригинал>, 
      По умолчанию оператор замены не учитывает регистр символов. 
      Для учета регистра символов используйте -creplace. Для явного 
      отключения учета регистра символов используйте -ireplace. 
      Рассмотрим следующие примеры.
          C:\PS> "book" -replace "B", "C"
          Cook
          C:\PS> "book" -ireplace "B", "C" 
          Cook
          C:\PS> "book" -creplace "B", "C"
          book
 
  Побитовые операторы
      Оболочка Windows PowerShell поддерживает стандартные побитовые 
      операторы, включая побитовое И (-band), побитовое ИЛИ и побитовое 
      исключающее ИЛИ (-bor и -bxor). Начиная с версии Windows PowerShell 
      2.0, все побитовые операторы работают с 64-разрядными целыми числами.
      Windows PowerShell поддерживает следующие побитовые операторы:
      Оператор  Описание                      Пример  
      --------  --------------------------    -------------------
      -band     Побитовое И                   C:\PS> 10 -band 3
                                              2
 
      -bor      Побитовое ИЛИ (включающее)    C:\PS> 10 -bor 3
                                              11    
      -bxor     Побитовое ИЛИ (исключающее)   C:\PS> 10 -bxor 3
                                              9
 
      Побитовые операторы используют двоичный формат значений. 
      Например, для числа 10 используется битовая структура 00001010 
      (с учетом 1 байта), а для числа 3 - 00000011. При использовании 
      побитового оператора для сравнения 10 и 3 выполняется сравнение 
      отдельных битов в каждом байте.
 
      При операции побитового И результирующий бит устанавливается в 
      1 только в том случае, если оба входных бита равняются 1.
          00001010   (10)
          00000011   ( 3)
          ------------------ bAND
          00000010   ( 2)
 
      При операции побитового ИЛИ (включающего) результирующий бит 
      устанавливается в 1, если любой из входных битов или они оба 
      равняются 1. Результирующий бит устанавливается в 0 только в 
      том случае, если оба входных бита равняются 0.
          00001010   (10)
          00000011   ( 3)
          ---------------- bOR (включающее ИЛИ)
          00001011   (11)
      При операции побитового ИЛИ (исключающего) результирующий бит 
      устанавливается в 1 только в том случае, если один из входных 
      битов равняется 1.
          00001010   (10)
          00000011   ( 3)
          ---------------- bXOR (исключающее)
          00001001   ( 9)
 
СМ. ТАКЖЕ
    about_Operators
    about_Regular_Expressions
    about_Wildcards
    Compare-Object



about_Continue

РАЗДЕЛ
    about_Continue
КРАТКОЕ ОПИСАНИЕ
    Описывает использование инструкции Continue для немедленного перехода 
    программного потока в начало цикла программы.
ПОЛНОЕ ОПИСАНИЕ
    Инструкция Continue в скрипте вызывает немедленный возврат 
    программного потока в начало самого внутреннего цикла, управляемого 
    любой из следующих инструкций: For, Foreach и While.
    
    
    Ключевое слово Continue поддерживает метки. Метка - это имя, 
    присвоенное инструкции в скрипте. Дополнительные сведения о 
    метках см. в разделе about_Break.
    
    
    В следующем примере программный поток возвращается в начало цикла 
    While, если значение переменной $ctr равняется 5. В результате 
    отображаются все числа от 1 до 10, за исключением 5.
    
        while ($ctr -lt 10)
             {
               $ctr +=1 
               if ($ctr -eq 5) {continue}
               Write-Host $ctr
             }
    
    
    Обратите внимание, что в цикле For выполнение продолжается с 
    первой строки цикла. Если аргументы инструкции For проверяют 
    значение, изменяемое инструкцией For, в результате может 
    образоваться бесконечный цикл.
    
СМ. ТАКЖЕ
    about_Comparison_Operators



about_Core_Commands

РАЗДЕЛ
    about_Core_Commands
КРАТКОЕ ОПИСАНИЕ
    Выводит список командлетов, предназначенных для работы с поставщиками 
    Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    В состав оболочки Windows PowerShell входит набор командлетов, которые 
    специально предназначены для управления элементами в хранилищах данных, 
    предоставленных поставщиками Windows PowerShell. Эти командлеты можно 
    использовать для единообразного управления различными типами данных, 
    предоставляемых поставщиками. Чтобы получить дополнительные сведения 
    о поставщиках, введите команду "get-help about_providers".
    Например, командлет Get-ChildItem можно использовать для вывода списка 
    файлов в каталоге файловой системы, ключей в разделе реестра или 
    элементов, предоставленных поставщиком, который написан или загружен 
    пользователем.
    Ниже представлен список командлетов Windows PowerShell, предназначенных 
    для работы с поставщиками.
    
  Командлеты для работы с дочерними элементами
      Get-ChildItem
  Командлеты для работы с содержимым
      Add-Content
      Clear-Content
      Get-Content
      Set-Content
  Командлеты для работы с элементами
      Clear-Item
      Copy-Item
      Get-Item
      Invoke-Item
      Move-Item
      New-Item
      Remove-Item
      Rename-Item
      Set-Item
  Командлеты для работы со свойствами элементов
      Clear-ItemProperty
      Copy-ItemProperty
      Get-ItemProperty
      Move-ItemProperty
      New-ItemProperty
      Remove-ItemProperty
      Rename-ItemProperty
      Set-ItemProperty
  Командлеты для работы с расположением
      Get-Location
      Pop-Location
      Push-Location
      Set-Location
  Командлеты для работы с путями
      Join-Path
      Convert-Path
      Split-Path
      Resolve-Path
      Test-Path
  Командлеты для работы с дисками PowerShell
      Get-PSDrive
      New-PSDrive
      Remove-PSDrive
  Командлеты для работы с поставщиками PowerShell
      Get-PSProvider
    Чтобы получить дополнительные сведения о командлете, 
    введите команду "get-help <имя_командлета>". 
СМ. ТАКЖЕ
    about_Providers



about_data_sections

РАЗДЕЛ
    about_Data_Sections
КРАТКОЕ ОПИСАНИЕ
    Описывает разделы Data, позволяющие отделить текстовые строки и 
    другие данные, предназначенные только для чтения, от логики скрипта.
ПОЛНОЕ ОПИСАНИЕ
    Скрипты, предназначенные для Windows PowerShell, могут содержать 
    один или несколько разделов Data, в которых хранятся только 
    данные. Один или несколько разделов Data можно добавить в любой 
    скрипт, функцию или расширенную функцию. Содержимое раздела Data 
    ограничено определенным поднабором языка скриптов Windows PowerShell.
    Отделение данных от логики кода упрощает идентификацию и 
    управление как логикой, так и данными. Это разделение позволяет 
    создавать отдельные файлы строковых ресурсов для вывода текстовых 
    сообщений, например сообщений об ошибках и строк справки. Кроме 
    того, такой подход позволяет выделить логику кода, что упрощает 
    обеспечение безопасности и проведение тестирования. 
    Раздел Data используется в Windows PowerShell 2.0 для поддержки 
    перевода скрипта на различные языки. Разделы Data можно использовать 
    для упрощения отделения, обнаружения и обработки строк, которые 
    будут переведены на различные языки пользовательского интерфейса. 
    Раздел Data является функцией Windows PowerShell 2.0. Скрипты с 
    разделами Data не будут работать в Windows PowerShell 1.0, если 
    не внести в них изменения.
  Синтаксис
    Для раздела Data используется следующий синтаксис:
        DATA [-supportedCommand <имя_командлета>] {
            <Разрешенное_содержимое>
        }
    Ключевое слово Data является обязательным. Регистр символов не имеет 
    значения.
    Разрешенное содержимое ограничивается следующими элементами.
        - Все операторы Windows PowerShell, за исключением -match 	 
        - Инструкции If, Else и ElseIf
           
	- Следующие автоматические переменные: $PSCulture, $PSUICulture, $True, 
	  $False и $Null.
        - Комментарии
        - Конвейеры
        - Инструкции разделяются точкой с запятой (;).
        - Литералы, например следующие:
            a
            1
  
            1,2,3
	
            "Windows PowerShell 2.0"
            @( "red", "green", "blue" )
            @{ a = 0x1; b = "great"; c ="script" }
            [XML] @'
             <p> Hello, World </p>
            '@
        - Командлеты, которые могут использоваться в разделе Data. 
          По умолчанию допускается использование только командлета 
          ConvertFrom-StringData.
        - Командлеты, которые пользователь разрешил использовать в 
          разделе Data с использованием параметра SupportedCommand.
    Если командлет ConvertFrom-StringData используется в разделе 
    Data, можно заключать пары "ключ-значение" в строки или 
    автономные строки в одиночных или двойных кавычках. Однако строки, 
    содержащие переменные и подвыражения, должны заключаться в строки 
    или автономные строки в одиночных кавычках, чтобы вместо переменных 
    не подставлялись значения, а подвыражения не могли выполняться. 
  SupportedCommand
      Параметр SupportedCommand позволяет указать, что командлет или 
      функция только создает данные. Этот параметр позволяет пользователям 
      включать в раздел Data командлеты и функции, написанные или 
      протестированные пользователями.
      В качестве значения параметра SupportedCommand используется 
      разделенный запятыми список имен командлетов и функций.
      Например, в следующий раздел данных включен написанный пользователем 
      командлет, Format-XML, который форматирует данные в XML-файле.
	  DATA -supportedCommand Format-XML 
          {    
             Format-XML -strings string1, string2, string3
          }       
  Использование раздела Data
      Для использования содержимого раздела Data присвойте его 
      переменной и выполняйте доступ к содержимому с помощью 
      синтаксиса работы с переменными.
      Например, в следующем разделе данных содержится команда ConvertFrom-
      StringData, которая конвертирует автономную строку в хэш-таблицу. 
      Хэш-таблица сохраняется в переменной $TextMsgs. 
      Переменная $TextMsgs не является частью раздела данных.
 
          $TextMsgs = DATA {
              ConvertFrom-StringData -stringdata @'
                Text001 = Windows 7
                Text002 = Windows Server 2008 R2
          '@
          }
     
      Для доступа к ключам и значениям в хэш-таблице, сохраненной в 
      переменной $TextMsgs, используются следующие команды.
          $TextMsgs.Text001   
          $TextMsgs.Text002
ПРИМЕРЫ
    Простые строки данных.
        DATA {
            "Благодарю вас за использование моего скрипта Windows PowerShell Or
ganize.pst." 
            "Он бесплатно предоставляется всем желающим." 
            "Буду благодарен за отзывы и комментарии." 
        }
    Строки, содержащие разрешенные переменные..
        DATA {
            if ($null) {
	       "Для отображения справки для этого командлета введите команду get-
	       help new-dictionary." 
            }
        }	
		
    Автономная строка в одиночных кавычках, которая использует командлет 
    ConvertFrom-StringData:
        DATA {
          ConvertFrom-StringData -stringdata @' 
            Text001 = Windows 7
            Text002 = Windows Server 2008 R2
        '@
        }
    Автономная строка в двойных кавычках, которая использует командлет 
    ConvertFrom-StringData:
        DATA {
          ConvertFrom-StringData -stringdata @" 
            Msg1 = Для запуска нажмите любую клавишу.
            Msg2 = Для завершения работы введите "quit".
        "@
        }
    Раздел данных, содержащий написанный пользователем командлет, который 
    генерирует данные.
	DATA -supportedCommand Format-XML {    
           Format-XML -strings string1, string2, string3
        }
СМ. ТАКЖЕ
    about_Automatic_Variables
    about_Comparison_Operators
    about_Hash_Tables
    about_If
    about_Operators
    about_Quoting_Rules
    about_Script_Internationalization
    ConvertFrom-StringData
    Import-LocalizedData



about_debuggers

РАЗДЕЛ
    about_Debuggers
КРАТКОЕ ОПИСАНИЕ
    Описывает отладчик Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Отладка представляет собой процесс проверки скрипта во время его 
    выполнения с целью выявления и исправления ошибок в инструкциях 
    скрипта. Отладчик Windows PowerShell помогает выполнять проверку 
    и находить в скриптах ошибки и неэффективные фрагменты.
  
    Примечание. Отладчик Windows PowerShell не выполняется удаленно. Чтобы 
                отладить скрипт на удаленном компьютере, скопируйте его на 
                локальный компьютер.
    Функции отладчика Windows PowerShell позволяют проверять скрипты, 
    функции, команды и выражения Windows PowerShell во время их 
    выполнения. Отладчик Windows PowerShell включает набор командлетов, 
    позволяющих устанавливать точки останова, управлять ими, а также 
    просматривать стек вызова.
 
    В Windows PowerShell имеется несколько методов отладки скриптов, 
    функций и команд.
    Метод 1. Командлет Set-PsDebug реализует базовые функции отладки 
             скриптов, включая пошаговое выполнение и трассировку. 
             Чтобы получить дополнительные сведения, введите следующую 
             команду: "get-help set-psdebug".
    Метод 2. Командлет Set-StrictMode позволяет обнаруживать ссылки на 
             неинициализированные переменные, ссылки на несуществующие 
             свойства объектов, а также недопустимый синтаксис функций.
    Метод 3. В скрипт добавляются диагностические инструкции, например 
             инструкции, выводящие на экран значения переменных, считывающие 
             данные из командной строки или сообщающие об инструкции, которая 
             выполняется в текущий момент. Для этого следует использовать 
             командлеты, содержащие слово Write, например Write-Host, Write-Deb
ug, 
             Write-Warning или Write-Verbose.
    Метод 4. Для отладки скрипта используется отладчик Windows 
             PowerShell. Либо с помощью отладчика можно выполнять отладку 
             функции или блока скрипта, введенных в командной строке. Можно 
             задавать точки останова, выполнять скрипты по шагам, проверять 
             значения переменных, выполнять команды диагностики и ведения 
             журнала, а также отображать содержимое стека вызова. 
    
  Командлеты отладчика
      Отладчик Windows PowerShell включает следующий набор командлетов:
          Set-PsBreakpoint:       устанавливает точки останова на строках, 
                                  переменных и командах. 
          Get-PsBreakpoint:       получает точки останова в текущем сеансе.
          Disable-PsBreakpoint:   отключает точки останова в текущем сеансе.
          Enable-PsBreakpoint:    заново включает точки останова в текущем сеан
се.
          Remove-PsBreakpoint:    удаляет точки останова из текущего сеанса.
          Get-PsCallStack:        отображает текущий стек вызова. 
  Запуск и остановка отладчика
      Чтобы запустить отладчик, установите одну или несколько точек 
      останова. После этого выполните скрипт, команду или функцию, 
      которые требуется отладить. 
      При достижении точки останова выполнение останавливается, 
      а управление передается отладчику.
      Чтобы остановить отладчик, выполните скрипт, команду или 
      функцию до конца. Либо введите команду "stop" или "t". 
  
  Команды отладчика
      При использовании отладчика в консоли Windows PowerShell управление 
      выполнением осуществляется с помощью следующих команд.
    
      Примечание. Дополнительные сведения об использовании отладчика 
      в других ведущих приложениях см. в документации по конкретному 
      ведущему приложению.
 	s, Step-into        Выполняет следующую инструкцию и останавливается.
 	v, Step-over        Выполняет следующую инструкцию, но пропускает 
                            функции и вызовы. Пропущенные инструкции выполняютс
я, 
                            но в них отладчик не останавливается.
 	o, Step-out         Выходит из текущей функции; на один уровень 
                            вверх, если функция является вложенной. Если управл
ение 
                            находится в теле главной функции, выполнение продол
жается 
                            до конца функции или до очередной точки останова. П
ропущенные 
                            инструкции выполняются, но в них отладчик не остана
вливается.
 	c, Continue         Продолжает выполнение до завершения 
 	                    скрипта или до достижения очередной точки 
                            останова. Пропущенные инструкции выполняются, 
                            но в них отладчик не останавливается.
        l, List             Отображает выполняющуюся часть скрипта. По 
                            умолчанию отображается текущая строка, пять 
                            предыдущих и десять следующих строк. Чтобы 
                            продолжить вывод скрипта, нажмите клавишу ВВОД.
                        
        l <m>, List         Отображает 16 строк скрипта, начиная со строки, 
                            которая задается значением <m>.                    
       
        l <m> <n>, List     Отображает <n> строк скрипта, начиная со строки, 
                            которая задается значением <m>.                    
       
        q, Stop             Останавливает выполнение скрипта и закрывает отладч
ик.
        k, Get-PsCallStack  Отображает текущий стек вызова.
	<Ввод>             Повторение последней команды, если это была команда (s), 
                           Step-over (v) или List (l). В противном случае выпол
няет 
	                   действие отправки. 
                           
	?, h               Отображает команду Help отладчика.
      Чтобы выйти из отладчика, воспользуйтесь командой Stop (q).
      Находясь в режиме отладчика, можно также вводить команды, отображать 
      значения переменных, использовать командлеты и выполнять скрипты.
      Используя эти команды отладчика, можно выполнять скрипты, 
      останавливаться в сомнительных местах, проверять значения 
      переменных и состояние системы, а также продолжать выполнение 
      скриптов, пока не будут найдены неполадки. 
  Среда отладчика
      При достижении точки останова происходит вход в среду 
      отладчика. Командная строка изменяется и начинается с "[DBG]:". 
      Командную строку можно настраивать.
     
      Кроме того, в некоторых приложениях, например в консоли Windows 
      PowerShell (но не в интегрированной среде скриптов Windows 
      PowerShell), для отладки открывается вложенная командная 
      строка. Вложенная командная строка отличается повторяющимися знаками 
      "больше" (код ASCII 62).
      Например, ниже показана командная строка по умолчанию в консоли 
      Windows PowerShell:
          [DBG]: PS (get-location)>>>
      Уровень вложенности можно определить с помощью автоматической 
      переменной $NestedPromptLevel.
      Кроме того, в локальной области определена автоматическая переменная 
      $PSDebugContext. По наличию переменной можно $PsDebugContext можно 
      определить, что включен отладчик.
      Пример:
 
          if ($psdebugcontext) {"Debugging"} else {"Not Debugging"}
      Значение переменной $PSDebugContext можно использовать при отладке.
	[DBG]: PS>>> $psdebugcontext.invocationinfo
        Name   CommandLineParameters  UnboundArguments  Location
        ----   ---------------------  ----------------  --------
        =      {}                     {}                C:\ps-test\vote.ps1 (1)
  Отладка и область
      Запуск отладчика не изменяет текущую рабочую область, однако при 
      достижении точки останова в скрипте происходит переход в область скрипта.
 
      Область скрипта является дочерней для области, в которой запущен отладчик
.
      Чтобы найти переменные и псевдонимы, определенные в области скрипта, 
      следует использовать параметр Scope командлетов Get-Alias or Get-Variable
.
      Например, следующая команда получает переменные в локальной области 
      (области скрипта):
	  get-variable -scope 0
      Эту команду можно сократить следующим образом:
	gv -s 0
      Это удобный способ, позволяющий видеть только переменные, 
      определенные в скрипте и определенные во время отладки.
  Отладка в командной строке
      Точки останова переменной или команды можно устанавливать 
      только в файле скрипта. Однако по умолчанию точка останова 
      устанавливается в любом выполняемом в текущем сеансе компоненте. 
      Например, если установить точку останова на переменной $name, 
      отладчик остановит выполнение на любой переменной $name в любом 
      выполняемом скрипте, команде, функции, командлете скрипта или 
      выражении, если не отключить или удалить эту точку останова.
      Это позволяет отлаживать скрипты в более реалистичном 
      контексте, когда на них могут оказывать влияние другие функции, 
      переменные и скрипты из сеанса и профиля пользователя.
      Точки останова строк связаны с конкретными файлами скриптов, 
      поэтому они задаются только в файлах скриптов. 
  Отладка функций
      При установке точки останова на функции, имеющей разделы Begin, 
      Process и End, отладчик будет останавливать выполнение на 
      первой строке каждого из разделов.
      Пример:
              function test-cmdlet
              {
                  begin
                  {
                      write-output "Begin"
                  }
                  process
                  {
                      write-output "Process"
                  }
                  end
                  {
                      write-output "End"
                  }
              }
        
          C:\PS> set-psbreakpoint -command test-cmdlet
          C:\PS> test-cmdlet
    
          Begin
          Выполняется запуск в режиме отладки. Введите "h" или "?" 
          для получения справки.
          Выполнение Точка останова команды на "prompt:test-cmdlet"
          test-cmdlet
          [DBG]: C:\PS> c
          Process
          Выполняется запуск в режиме отладки. Введите "h" или "?" 
          для получения справки.
          Выполнение Точка останова команды на "prompt:test-cmdlet"
          test-cmdlet
          [DBG]: C:\PS> c
          End
          Выполняется запуск в режиме отладки. Введите "h" или "?" 
          для получения справки.
          Выполнение Точка останова команды на "prompt:test-cmdlet"
          test-cmdlet
          [DBG]: C:\PS> 
  Отладка удаленных скриптов
      Отладчик Windows PowerShell нельзя запускать в удаленных 
      сеансах. Чтобы отладить скрипт на удаленном компьютере, 
      скопируйте его на локальный компьютер.
      Следующая команда копирует скрипт Test.ps1 с удаленного компьютера 
      Server01 на локальный компьютер: 
          invoke-command -computername Server01 ` 
          {get-content c:\ps-test\test.ps1} | set-location c:\ps-test\test.ps1
  Примеры
      Этот тестовый скрипт определяет версию операционной системы и 
      отображает сообщение, соответствующее конкретной системе. Он 
      включает функцию, вызов функции и переменную. 
      Следующая команда отображает содержимое файла тестового скрипта:
	
	  c:>\PS-test> get-content test.ps1
	  function psversion {
             "Windows Powershell " + $psversiontable.psversion
              if ($psversiontable.psversion.major -lt 2) {
                  "Upgrade to Windows PowerShell 2.0"
              }
              else {
                  "Have you run a background job today (start-job)?"
              }
          }
	  $scriptname = $MyInvocation.MyCommand.Path
	  psversion
	  "Done $scriptname."
      Сначала установите точку останова в нужном месте скрипта, 
      например на строке, команде, переменной или функции.
 
      Начните с создания точки останова строки на первой строке 
      скрипта Test.ps1 в текущем каталоге.
          PS C:\ps-test> set-psbreakpoint -line 1 -script test.ps1 
      Эту команду можно сократить следующим образом:
          PS C:\ps-test> spb 1 -s test.ps1
        
      Эта команда возвращает объект точки останова строки 
      (System.Management.Automation.LineBreakpoint).
  	    Column     : 0
            Line       : 1
            Action     :
            Enabled    : True
            HitCount   : 0
            Id         : 0
            Script     : C:\ps-test\test.ps1
            ScriptName : C:\ps-test\test.ps1
	
      Теперь запустите скрипт.
	  PS C:\ps-test> .\test.ps1
      Когда выполнение скрипта дойдет до первой точки останова, 
      сообщение точки останова покажет, что работает отладчик. 
      Сообщение будет содержать описание точки останова и предварительный 
      просмотр первой строки скрипта, которая представляет собой объявление 
      функции. Кроме того, изменится командная строка, что будет указывать 
      на то, что управление находится у отладчика.
      Строка предварительного просмотра будет включать имя скрипта и номер 
      строки с показываемой командой.
          Выполняется запуск в режиме отладки. Введите "h" или "?" 
          для получения справки.
          Выполнение Точка останова строки на "C:\ps-test\test.ps1:1"
          test.ps1:1  function psversion {
          DBG>
      Воспользуйтесь командой Step (s), чтобы выполнить первую инструкцию 
      скрипта и увидеть следующую инструкцию. В следующей инструкции 
      используется автоматическая переменная $MyInvocation, позволяющая 
      присвоить переменной $ScriptName путь и имя файла скрипта.
          DBG> s
          test.ps1:11 $scriptname = $MyInvocation.MyCommand.Path
      В этот момент значение переменной $ScriptName не присваивается; 
      значение переменной можно проверить, отобразив его. В данном случае 
      переменная имеет значение $null.
          DBG> $scriptname
          DBG>
    
      С помощью еще одной команды Step (s) выполните текущую инструкцию и 
      отобразите следующую инструкцию скрипта. Следующая инструкция 
      вызывает функцию PsVersion.
	  DBG> s
	  test.ps1:12 psversion
      В этот момент переменной $ScriptName присваивается значение, и 
      его можно проверить, отобразив. Теперь оно имеет значение пути 
      к скрипту.
          DBG> $scriptname
          C:\ps-test\test.ps1
   
      Воспользуйтесь еще одной командой Step, чтобы выполнить вызов 
      функции. Чтобы выполнить команду Step, нажмите клавишу ВВОД или 
      введите "s".
	  DBG> s
	  test.ps1:2       "Windows Powershell " + $psversiontable.psversion
      Сообщение отладки включает предварительный просмотр инструкции 
      в функции. Чтобы выполнить эту инструкцию и увидеть следующую 
      инструкцию в функции, можно использовать команду Step. Но в данном 
      случае воспользуйтесь командой Step-Out (o). Она завершит выполнение 
      функции (если не будет достигнута точка останова) и перейдет к следующей 
      инструкции в скрипте.
	  DBG> o
	  Windows Powershell 2.0
	  Have you run a background job today (start-job)?
	  test.ps1:13 "Done $scriptname"
      Поскольку достигнута последняя инструкция в скрипте, результат 
      выполнения команд Step, Step-Out и Continue одинаков. В данном 
      случае воспользуйтесь командой Step-Out (o). 
	  Done C:\ps-test\test.ps1
	  PS C:\ps-test>
      Командлет Step-Out выполняет последнюю команду. Стандартный вид 
      командной строки указывает на то, что работа отладчика завершена, а 
      управление передано обработчику команд.
      Снова запустите отладчик. Сначала удалите текущую точку останова 
      (воспользуйтесь командлетами Get-PsBreakpoint и Remove-PsBreakpoint).
      (Если эта точка останова может понадобиться позже, вместо командлета 
      Remove-PsBreakpoint используйте командлет Disable-PsBreakpoint.)
	  PS C:\ps-test> Get-PsBreakpoint | Remove-PSBreakpoint
      Эту команду можно сократить следующим образом:
	  PS C:\ps-test> gbp | rbp
      Либо выполните команду, написав функцию, например следующим образом:
	  function delbr { gbp | rbp }
      После этого создайте точку останова на переменной $scriptname. 
	  PS C:\ps-test> set-psbreakpoint -variable scriptname -script test.ps1
      Эту команду можно сократить следующим образом: 
	  PS C:\ps-test> sbp -v scriptname -s test.ps1
      Теперь запустите скрипт. Скрипт достигнет точки останова 
      переменной. По умолчанию используется режим Write, поэтому 
      выполнение будет остановлено непосредственно перед тем, как 
      инструкция изменит значение переменной.
	  PS C:\ps-test> .\test.ps1
	  Выполнение Точка останова переменной на "C:\ps-
	  test\test.ps1:$scriptname" (доступ к Write)
	  test.ps1:11 $scriptname = $MyInvocation.mycommand.path 
          DBG>
      Отобразите текущее значение переменной $scriptname, которое 
      равняется $null.
          DBG> $scriptname
          DBG>
      Воспользуйтесь командой Step (s), чтобы выполнить инструкцию, 
      которая присваивает значение переменной. Затем выведите новое 
      значение переменной $scriptname.
	  DBG> $scriptname
	  C:\ps-test\test.ps1
      Воспользуйтесь командой Step (s), чтобы увидеть следующую 
      инструкцию в скрипте.
	  DBG> s
	  test.ps1:12 psversion
   
      Следующая инструкция представляет собой вызов функции 
      PsVersion. Чтобы пропустить функцию, но выполнить ее, воспользуйтесь 
      командой Step-Over (v). Если во время использования команды Step-Over 
      функция уже выполняется, она не действует. Вызов функции 
      отображается, но она не выполняется.
	
	  DBG> v
	  Windows Powershell 2.0
	  Have you run a background job today (start-job)?
	  test.ps1:13 "Done $scriptname"  
      Команда Step-Over выполняет функцию и выводит предварительный 
      просмотр следующей инструкции скрипта, которая выводит 
      последнюю строку.
      Чтобы выйти из отладчика, воспользуйтесь командой Stop (t). 
      Командная строка снова примет стандартный вид.
	  C:\ps-test>
      Чтобы удалить точки останова, воспользуйтесь командлетами 
      Get-PsBreakpoint и Remove-PsBreakpoint.
	  PS C:\ps-test> Get-PsBreakpoint | Remove-PSBreakpoint
      Создайте новую точку останова команды на функции PsVersion.
          PS C:\ps-test> Set-PsBreakpoint -command psversion -script test.ps1 
      Эту команду можно сократить следующим образом:
          PS C:\ps-test> sbp -c psversion -s test.ps1 
      Теперь выполните скрипт.	
          PS C:\ps-test> .\test.ps1
          Выполнение Точка останова команды на "C:\ps-test\test.ps1:psversion"
          test.ps1:12 psversion
          DBG>
      Скрипт достигает точки останова на вызове функции. В этот 
      момент функция еще не была вызвана. Это позволяет воспользоваться 
      параметром Action команды Set-PsBreakpoint, чтобы задать условия 
      выполнения точки останова или выполнить подготовительные или 
      диагностические задачи, например запустить ведение журнала или 
      вызвать скрипт диагностики или обеспечения безопасности.
      Для задания действия воспользуйтесь командой Continue (c), 
      чтобы выйти из скрипта, и командой Remove-PsBreakpoint, чтобы 
      удалить текущую точку останова. (Точки останова доступны только для 
      чтения, поэтому добавить действие в текущую точку останова невозможно.)
	  DBG> c
	  Windows PowerShell 2.0
	  Have you run a background job today (start-job)?
	  Done C:\ps-test\test.ps1
	  PS C:\ps-test> get-psbreakpoint | remove-psbreakpoint
	  PS C:\ps-test>
      После этого создайте новую точку останова команды с действием. 
      Следующая команда устанавливает точку останова команды с действием, 
      которое при вызове функции записывает в журнал значение переменной 
      $scriptname. Поскольку в действии не используется ключевое слово Break, 
      выполнение не останавливается. (Обратный апостроф (`) является знаком 
      продолжения строки.)
         PS C:\ps-test> set-psbreakpoint -command psversion -script test.ps1  `
         -action { add-content "The value of `$scriptname is $scriptname." `
         -path action.log}
      Кроме того, можно добавлять действия, которые задают условия 
      для точки останова. В следующей команде точка останова команды 
      выполняется только в том случае, если задана политика выполнения 
      RemoteSigned - наиболее строгая политика, которая позволяет выполнять 
      скрипты. (Обратный апостроф (`) является знаком продолжения строки.)  
          PS C:\ps-test> set-psbreakpoint -script test.ps1 -command psversion `
          -action { if ((get-executionpolicy) -eq "RemoteSigned") { break }}
      Ключевое слово Break в действии указывает отладчику, что необходимо 
      выполнить точку останова. Кроме того, можно воспользоваться ключевым 
      словом Continue, чтобы отладчик выполнялся без останова. Поскольку по 
      умолчанию используется ключевое слово Continue, чтобы остановить 
      выполнение, необходимо задать ключевое слово Break.
      Теперь выполните скрипт.
	  PS C:\ps-test> .\test.ps1
	  Выполнение Точка останова команды на "C:\ps-test\test.ps1:psversion"
	  test.ps1:12 psversion
    
      Поскольку задана политика выполнения RemoteSigned, выполнение 
      останавливается на вызове функции. 
      На этом этапе может потребоваться проверить стек вызова. 
      Воспользуйтесь командлетом Get-PsCallStack или командой 
      отладчика Get-PsCallStack (k). Следующая команда возвращает 
      текущий стек вызова.
	  DBG> k
	  2: prompt
	  1: .\test.ps1: $args=[]
	  0: prompt: $args=[]
      Этот пример демонстрирует лишь один из множества способов 
      использования отладчика Windows PowerShell. 
      Чтобы получить дополнительные сведения о командлетах отладчика, 
      введите следующую команду:
          help <cmdlet-name> -full
      Например, введите следующую команду:
          help set-psbreakpoint -full
СМ. ТАКЖЕ
    Disable-PsBreakpoint
    Get-PsBreakpoint  
    Remove-PsBreakpoint
    Set-PsBreakpoint 
    Set-PsDebug
    Set-Strictmode
    Write-Debug
    Write-Verbose  
    Enable-PsBreakpoint
    Get-PsCallStack



about_do

РАЗДЕЛ
    about_Do
КРАТКОЕ ОПИСАНИЕ
    Выполняет список инструкций один или несколько раз в зависимости 
    от условия While или Until.
ПОЛНОЕ ОПИСАНИЕ
    Ключевое слово Do используется совместно с ключевым словом 
    While или Until, чтобы инструкции в блоке скрипта выполнялись в 
    зависимости от условия. В отличие от цикла While, блок скрипта в 
    цикле Do всегда выполняется по крайней мере один раз.
    Цикл Do-While представляет собой разновидность цикла While. 
    В цикле Do-While условие проверяется после выполнения блока 
    скрипта. Как и в цикле While, блок скрипта повторяется до тех 
    пор, пока условие остается истинным. 
    Как и цикл Do-While, цикл Do-Until всегда выполняется по крайней 
    мере один раз, прежде чем будет проверено условие. Однако блок 
    скрипта выполняется только в том случае, если условие ложно. 
    В циклах Do-While и Do-Until можно использовать ключевые слова 
    управления потоком выполнения Continue и Break. 
  Синтаксис
      Ниже показан синтаксис инструкции Do-While:
          do {<список_инструкций>} while (<условие>)
      Ниже показан синтаксис инструкции Do-Until:
          do {<список_инструкций>} until (<условие>)
      Список инструкций содержит одну или несколько инструкций, которые 
      выполняются каждый раз при входе в цикл и его повторении.
      Условие в инструкции принимает значение true или false. 
  Пример
      В следующем примере инструкция Do подсчитывает число элементов 
      в массиве, пока не будет достигнуто значение 0.
          C:\PS> $x = 1,2,78,0
          C:\PS> do { $count++; $a++; } while ($x[$a] -ne 0) 
          C:\PS> $count
          3
      В следующем примере кода используется ключевое слово Until. Обратите 
      внимание, что оператор "не равно" (-ne) заменен оператором "равно" (-eq).
          C:\PS> $x = 1,2,78,0
          C:\PS> do { $count++; $a++; } until ($x[$a] -eq 0) 
          C:\PS> $count
          3
      В следующем примере выводятся все значения в массиве, кроме 
      значений, которые меньше нуля.
          do
          {
              if ($x[$a] -lt 0) { continue }
              Write-Host $x[$a]
          } 
          while (++$a -lt 10)
СМ. ТАКЖЕ
    about_While
    about_Operators
    about_Assignment_Operators
    about_Comparison_Operators
    about_Break
    about_Continue



about_environment_variables

РАЗДЕЛ
    about_Environment_Variables
КРАТКОЕ ОПИСАНИЕ
    Описывает, как обращаться к переменным среды Windows из Windows 
    PowerShell. 
    
ПОЛНОЕ ОПИСАНИЕ
    Переменные среды хранят сведения о среде операционной системы. 
    Эти сведения включают в себя такие данные, как путь операционной 
    системы, количество процессоров, используемых операционной 
    системой, а также местонахождение временных папок. 
    В переменных среды хранятся данные, используемые операционной 
    системой и другими программами. Например, переменная среды WINDIR 
    содержит местоположение каталога установки Windows. Программы 
    могут запрашивать значение этой переменной, чтобы определить, 
    где находятся файлы операционной системы Windows.
    Windows PowerShell позволяет просматривать и изменять значения 
    переменных среды Windows, в том числе переменных, заданных в 
    реестре и заданных для конкретного сеанса. Поставщик среды 
    Windows PowerShell упрощает процесс просмотра и изменения 
    переменных среды.
    
    В отличие от переменных других типов в Windows PowerShell, 
    переменные среды и их значения наследуются в дочерних сеансах, 
    например в локальных фоновых заданиях и сеансах, в которых 
    выполняются модули. Поэтому переменные среды хорошо подходят для 
    хранения значений, которые требуются как в родительских, так и в 
    дочерних сеансах.
   
  Поставщик среды Windows PowerShell
      Поставщик среды Windows PowerShell позволяет обращаться к 
      переменным среды Windows из Windows PowerShell на диске Windows 
      PowerShell (диск Env:). Этот диск очень похож на диски файловой 
      системы. Чтобы перейти к диску Env:, введите:
	  set-location env:
      Затем, чтобы отобразить содержимое диска Env:, введите:
	  get-childitem
      Переменные среды на диске Env: можно просматривать с любого 
      другого диска Windows PowerShell; кроме того, можно войти на 
      диск Env:, чтобы просматривать и изменять переменные среды.
  Объекты переменных среды  
      В Windows PowerShell каждая переменная среды представляется 
      объектом, который является экземпляром класса System.Collections. 
      DictionaryEntry.
	
      В каждом объекте DictionaryEntry имя переменной среды является 
      ключом словаря. Значение переменной является значением словаря.
      Для отображения переменной среды в Windows PowerShell 
      необходимо получить объект, представляющий переменную, а затем 
      отобразить значения свойств объекта. При изменении переменной 
      среды в Windows PowerShell следует использовать методы, 
      связанные с объектом DictionaryEntry.
      Для отображения свойств и методов объекта, представляющего 
      переменную среды в Windows PowerShell, следует использовать 
      командлет Get-Member. Например, для отображения методов и 
      свойств всех объектов на диске Env: введите:
	  get-item -path env:* | get-member
  Отображение переменных среды
      Для отображения и изменения значений переменных среды, можно 
      использовать командлеты, содержащие слово Item (командлеты 
      Item). Поскольку у переменных среды нет дочерних элементов, 
      выходные данные командлетов Get-Item и Get-ChildItem одинаковы.
      При обращении к переменной среды введите имя диска Env: и имя 
      переменной. Например, для отображения значения переменной среды 
      COMPUTERNAME введите:
	  get-childitem env:computername
      Для отображения значений всех переменных среды введите:
	  get-childitem env:
      По умолчанию в Windows PowerShell перемененные отображаются в 
      том порядке, в котором они извлекаются. Чтобы отсортировать 
      список переменных среды по имени переменной, необходимо 
      передать выходные данные команды Get-ChildItem по конвейеру 
      командлету Sort-Object. Например, из любого диска Windows 
      PowerShell введите:
	  get-childitem env: | sort name
      Кроме того, к диску Env: можно перейти с помощью командлета 
      Set-Location:
	  set-location env:
      Если диск Env: уже открыт, имя диска Env: в пути можно не 
      указывать. Например, для отображения всех переменных среды введите:
	  get-childitem
      Чтобы отобразить значение переменной COMPUTERNAME, находясь на 
      диске Env:, введите:
	  get-childitem computername
      Отображать и изменять значения переменных среды можно также без 
      использования командлета при помощи синтаксического анализатора 
      выражений в Windows PowerShell. Для отображения значения 
      переменной среды используется следующий синтаксис:
	  $env:<имя_переменной>
      Например, чтобы отобразить значение переменной среды WINDIR, 
      введите в командную строку Windows PowerShell следующую команду:
	  $env:windir
      В этом выражении знак доллара ($) обозначает переменную, а имя 
      диска указывает, что используется переменная среды.
  Изменение переменных среды
      Чтобы сохранить изменение переменной среды, необходимо 
      воспользоваться компонентом "Система" в "Панели управления" (вкладка 
      "Дополнительно" или пункт "Дополнительные параметры системы") и 
      сохранить изменение в реестре.
      При изменении переменных среды в Windows PowerShell эти 
      изменения распространяются только на текущий сеанс. Это похоже 
      на применение команды Set в средах на базе Windows и команды 
      Setenv в средах на базе UNIX. 
      Необходимо также иметь разрешение на изменение значений 
      переменных. При попытке изменения значения без необходимого 
      разрешения команду выполнить не удается, и в Windows PowerShell 
      появляется сообщение об ошибке.
      Значения переменных можно изменять без применения командлета, 
      используя следующий синтаксис:
          $env:<имя_переменной> = "<новое_значение>"
      Например, чтобы добавить к переменной среды Path фрагмент 
      ";c:\temp", следует воспользоваться следующим выражением:
	  $env:path = $env:path + ";c:\temp"
	
      Для изменения значений переменных среды могут использоваться 
      также командлеты Item, такие как Set-Item, Remove-Item и 
      Copy-Item. Например, чтобы добавить к переменной среды Path 
      фрагмент ";c:\temp" с помощью командлета Set-Item, следует 
      воспользоваться следующим выражением:
          set-item -path env:path -value ($env:path + ";c:\temp")
	
      В этой команде значение, заключенное в круглые скобки, 
      интерпретируется как единое выражение.
  Сохранение изменений переменных среды
      Чтобы создать или изменить значение переменной среды во всех 
      сеансах Windows PowerShell, необходимо добавить изменение в 
      профиль Windows PowerShell.
      Например, чтобы добавить каталог C:\Temp в переменную среды 
      Path во всех сеансах Windows PowerShell, необходимо добавить в 
      профиль Windows PowerShell следующую команду.
	  $env:path = $env:path + ";c:\temp"
      Чтобы добавить команду в существующий профиль, например в профиль 
      CurrentUser,AllHosts, введите:
	  add-content -path $profile.CurrentUserAllHosts -value '$env:path = $env:path
 + ";c:\temp"' 
  Переменные среды, в которых хранятся параметры
      Компоненты Windows PowerShell могут использовать переменные 
      среды для хранения пользовательских параметров. Эти переменные 
      ведут себя как привилегированные переменные, но наследуются 
      дочерними сеансами тех сеансов, в которых они были созданы. 
      Дополнительные сведения о привилегированных переменных см. 
      в разделе about_preference_variables.
      Переменные среды, в которых хранятся параметры, включают:
        PSModulePath
            Хранит пути к каталогам модулей по умолчанию. Если полный 
            путь к модулю не задан, среда Windows PowerShell ищет 
            модули в указанных каталогах.
            По умолчанию переменная $env:PSModulePath имеет следующее 
            значение:
                $home\Documents\WindowsPowerShell\Modules; $pshome\Modules 
            Среда Windows PowerShell устанавливает значение 
            "$pshome\Modules" в реестре. Значение 
            "$home\Documents\WindowsPowerShell\Modules" 
            устанавливается при каждом запуске Windows PowerShell. 
            Кроме того, программы установки, которые устанавливают 
            модули в другие каталоги, например в каталог Program 
            Files, добавляют соответствующие местоположения в 
            значение переменной PSModulePath. 
            Чтобы изменить каталоги модулей по умолчанию, измените 
            значение переменной среды PSModulePath.
            Например, чтобы добавить в значение переменной среды 
            PSModulePath каталог "C:\ps-test\Modules", введите:
                $env:PSModulePath = $env:PSModulePath + ";c:\ps-test\Modules"
            Точка с запятой (;) в этой команде отделяет новый путь от 
            предыдущего пути в списке.
            Изменения распространяются только на текущий сеанс, если 
            только не добавляется команда, которая изменяет значение 
            в профиле, или не используется элемент "Система" в 
            "Панели управления", с помощью которого значение 
            переменной среды PSModulePath изменяется в реестре.
            
            Дополнительные сведения см. в разделе about_Modules.
СМ. ТАКЖЕ
    Поставщик среды



about_escape_characters

РАЗДЕЛ
    about_Escape_Characters
КРАТКОЕ ОПИСАНИЕ
    Представляет escape-символы Windows PowerShell и их назначение.
ПОЛНОЕ ОПИСАНИЕ
    Escape-символы служат для задания особых функций для указанных 
    после них знаков.
    В Windows PowerShell escape-символом является обратный апостроф 
    (`), также называемый грависом (код ASCII 96). Escape-символ можно 
    использовать для обозначения литерала, продолжения строки или 
    специального знака.
  Обозначение литерала
      Если escape-символ помещается перед переменной, он не позволяет 
      подставить вместо переменной ее значение. Если escape-символ 
      помещается перед двойной кавычкой, среда Windows PowerShell 
      интерпретирует двойную кавычку в качестве символа, а на 
      разделителя строк.
      Пример:
          C:\>$a = 5
          C:\>"Значение хранится в переменной $a."
          Значение хранится в переменной 5.
          C:\>$a = 5
          C:\>"Значение хранится в переменной `$a."
          Значение хранится в переменной $a.
          C:\> "Используйте двойные кавычки (") для обозначения строки."
          Неожиданный токен ")" в выражении или инструкции.
          В строке:1 знак:25
          + "Используйте двойные кавычки (") < для обозначения строки."
          C:\> "Используйте двойные кавычки (`")для обозначения строки."
          Используйте двойные кавычки (")для обозначения строки.
  
  Обозначение продолжения строки
      Escape-символ указывает среде Windows PowerShell, что 
      продолжение команды находится на следующей строке.
    
      Пример:
          C:\> get-process `
          >> powershell
          Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
          -------  ------    -----      ----- -----   ------     -- -----------
              340       8    34556      31864   149     0.98   2036 powershell 
  
  Обозначение специальных знаков
      При использовании с кавычками escape-символы обозначают 
      специальные знаки, которые являются инструкциями для синтаксического 
      анализатора команд.
        
      В Windows PowerShell распознаются следующие специальные символы:
    
          `0  Null
          `a  Предупреждение
          `b  Возврат курсора
          `f  Перевод страницы
          `n  Новая строка
          `r  Возврат каретки
          `t  Горизонтальная табуляция
          `v  Вертикальная табуляция
      Пример:
          C:\> "12345678123456781`nCol1`tColumn2`tCol3"
          12345678123456781
          Col1  Column2 Col3
    
      Чтобы получить дополнительные сведения, введите следующую команду:
          get-help about_special_characters   
СМ. ТАКЖЕ
    about_Quoting_Rules



about_eventlogs

РАЗДЕЛ
    about_EventLogs
КРАТКОЕ ОПИСАНИЕ
    Windows PowerShell создает журнал событий Windows с именем "Windows 
    PowerShell" для записи событий Windows PowerShell. Этот журнал можно 
    просматривать в средстве просмотра событий или с помощью командлетов, 
    получающих события, например командлета Get-EventLog. По умолчанию в 
    журнал событий записываются события обработчика и поставщика Windows 
    PowerShell, однако с помощью привилегированных переменных журнал 
    событий можно настраивать. Например, можно добавить в него события, 
    связанные с командами Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    В журнал событий Windows PowerShell записываются сведения об операциях 
    Windows PowerShell, например о запуске и остановке обработчика 
    программы и о запуске и остановке поставщиков Windows PowerShell. 
    Кроме того, в журнал можно записывать сведения о командах Windows 
    PowerShell.
    В Windows Vista и более поздних версиях Windows журнал событий Windows 
    PowerShell находится в группе журналов приложений и служб. Журнал Windows 
    PowerShell является классическим журналом событий, не использующим 
    технологию обработки событий Windows. Для просмотра журнала используются 
    командлеты, предназначенные для классических журналов событий, 
    например Get-EventLog.
  Просмотр журнала событий Windows PowerShell
      Журнал событий Windows PowerShell можно просматривать с помощью 
      средства просмотра событий или командлетов Get-EventLog и 
      Get-WmiObject. Для просмотра содержимого журнала Windows 
      PowerShell введите следующую команду:
	  get-eventlog -logname "Windows PowerShell"
   
      Для просмотра событий и их свойств следует использовать 
      командлет Sort-Object, командлет Group-Object и командлеты, 
      содержащие слово Format (командлеты the Format).
      Например, для просмотра событий в журнале событий, сгруппированных 
      по идентификатору события, введите следующую команду:
	  get-eventlog "Windows PowerShell" | format-table -groupby eventid
      Также можно ввести команду:
	  get-eventlog "Windows PowerShell" | sort-object eventid `
            | group-object eventid
      Для просмотра классических журналов событий введите следующую 
      команду:
	  get-eventlog -list
    
      Кроме того, можно воспользоваться командлетом Get-WmiObject, чтобы 
      использовать для просмотра журнала событий классы инструментария WMI.
      Например, для просмотра всех свойств файла журнала событий введите 
      следующую команду:
	  get-wmiobject win32_nteventlogfile | where `
            {$_.logfilename -eq "Windows PowerShell"} | format-list -property *
 
      Чтобы найти классы WMI, связанные с событием Win32, введите 
      следующую команду:
	get-wmiobject -list | where {$_.name -like "win32*event*"}
      Чтобы получить дополнительные сведения, введите команды get-help get-
      eventlog и get-help get-wmiobject.
  Выбор событий для журнала событий Windows PowerShell
      Привилегированные переменные журнала событий позволяют 
      определять, какие события записываются в журнал событий Windows 
      PowerShell. 
      Имеется шесть привилегированных переменных журнала событий - по 
      одной для каждого из компонентов ведения журнала: обработчика 
      (программы Windows PowerShell), поставщиков и команд. Переменные 
      LifeCycleEvent отвечают за ведение журнала стандартных событий запуска и 
      остановки. Переменные Health отвечают за ведение журнала ошибок.
      В следующей таблице перечислены привилегированные переменные журнала 
      событий.
          Переменная                   Описание 
          --------------------------   ----------------------------------------
	  $LogEngineLifeCycleEvent     Запись в журнал событий запуска и 
                                       завершения Windows PowerShell.
	  $LogEngineHealthEvent        Запись в журнал ошибок программы 
	                               Windows PowerShell.
	  $LogProviderLifecycleEvent   Запись в журнал событий запуска и 
	                               завершения поставщиков Windows PowerShell.
	  $LogProviderHealthEvent      Запись в журнал ошибок поставщиков 
                                       Windows PowerShell.
	  $LogCommandLifeCycleEvent    Запись в журнал событий запуска и 
                                       завершения команд.
	  $LogCommandHealthEvent       Запись в журнал ошибок команд.
	
      (Чтобы получить дополнительные сведения о поставщиках Windows 
      PowerShell, введите команду get-help about_providers.)
      По умолчанию включена регистрация в журнале событий только следующих 
      типов:
	  $LogEngineLifeCycleEvent
	  $LogEngineHealthEvent
	  $LogProviderLifecycleEvent
	  $LogProviderHealthEvent
	
      Чтобы включить тип событий, установите для привилегированной 
      переменной для этого типа значение $true. Например, чтобы 
      включить события жизненного цикла команд, введите следующую команду:
	  $LogCommandLifeCycleEvent
	
      Также можно ввести следующую команду:
	  $LogCommandLifeCycleEvent = $true
      Чтобы отключить тип событий, установите для привилегированной 
      переменной для этого типа значение $false. Например, чтобы отключить 
      события жизненного цикла команд, введите следующую команду:
	  $LogProviderLifeCycleEvent = $false
	
    
      Действие этих переменных распространяется только на текущий 
      сеанс Windows PowerShell. Чтобы применить их ко всем сеансам 
      Windows PowerShell, добавьте их в профиль Windows PowerShell.
  Безопасность и аудит
      Журнал событий Windows PowerShell предназначен для регистрации 
      операций и сохранения сведений, необходимых для устранения 
      неполадок. 
      Но, как и большинство журналов событий приложений на базе 
      Windows, журнал событий небезопасен. Его не следует использовать для 
      аудита системы безопасности или записи конфиденциальных сведений или 
      сведений, представляющих интеллектуальную собственность.
      Журналы событий разработаны таким образом, чтобы они были 
      удобны и понятны пользователям. Пользователи могут выполнять 
      запись и чтение в журналах. Злоумышленник может прочитать 
      журнал событий на локальном или удаленном компьютере, записать 
      поддельные данные или препятствовать ведению журнала операций.
СМ. ТАКЖЕ
    Get-EventLog
    Get-WmiObject
    about_Preference_Variables



about_execution_policies

РАЗДЕЛ
    about_Execution_Policies
КРАТКОЕ ОПИСАНИЕ
    Описывает политики выполнения Windows PowerShell и способы 
    управления ими.
ПОЛНОЕ ОПИСАНИЕ
    Политики выполнения Windows PowerShell позволяют определять 
    условия, при которых среда Windows PowerShell загружает файлы 
    конфигурации и выполняет скрипты.
    Политику выполнения можно задать для локального компьютера, текущего 
    пользователя или конкретного сеанса. Для задания политик выполнения для 
    пользователей и компьютеров можно использовать параметры групповой 
    политики.
    Политики выполнения для локального компьютера и текущего пользователя 
    хранятся в реестре. Политики выполнения не требуется задавать в 
    профиле Windows PowerShell. Политика выполнения для конкретного 
    сеанса хранится только в памяти и теряется после закрытия сеанса.
    Политика выполнения не является механизмом обеспечения безопасности, 
    который ограничивает действия пользователей. Например, пользователи могут 
    обходить политику путем ввода содержимого скрипта в командной строке, если 
    выполнить скрипт не удается. Вместо этого политика выполнения помогает 
    пользователям задавать базовые правила и не позволяет непреднамеренно наруш
ать их.
 ПОЛИТИКИ ВЫПОЛНЕНИЯ WINDOWS POWERSHELL
 -------------------------------------
    Существуют следующие политики выполнения Windows PowerShell.
    Restricted - политика по умолчанию.
        Restricted
            - Политика выполнения по умолчанию.
            - Допускает отдельные команды, но скрипты выполнять нельзя. 
            - Препятствует выполнению всех файлов скриптов, включая файлы 
              форматирования и конфигурации (PS1XML), файлы скриптов модулей 
              (PSM1) и профили Windows PowerShell (PS1). 
    
        AllSigned
            - Выполнение скриптов разрешено.
            - Требует, чтобы все скрипты и файлы конфигурации были 
              подписаны надежным издателем, в том числе скрипты, 
              подготовленные на локальном компьютере.
    	    - Перед выполнением скриптов издателей, для которых еще не 
    	      определено, являются ли они надежными, выводятся 
    	      предупреждения.
            - Имеется риск выполнения неподписанных скриптов из 
              источников, отличных от Интернета, а также подписанных, но 
              вредоносных скриптов.
      
        RemoteSigned
            - Выполнение скриптов разрешено.
            - Требует наличия цифровой подписи надежного издателя у 
              скриптов и файлов конфигурации, загружаемых из 
              Интернета (включая электронную почту и программы мгновенного 
              обмена сообщениями).
    	    - Не требует наличия цифровых подписей у скриптов, выполняемых и 
    	      написанных на локальном компьютере (не загруженных из Интернета).
            - Имеется риск выполнения подписанных, но вредоносных 
              скриптов.
        Unrestricted
            - Могут выполняться неподписанные скрипты. (Имеется риск 
              выполнения вредоносных скриптов.)
            - Предупреждает пользователя перед выполнением скриптов и 
              файлов конфигурации, загруженных из Интернета. 
        Bypass
            - Ничего не блокируется, и никакие предупреждения и запросы не 
              появляются.
            - Эта политика выполнения предназначена для конфигураций, 
              в которых скрипт Windows PowerShell встроен в более крупное 
              приложение, или для конфигураций, в которых Windows PowerShell 
              является платформой для программы, у которой имеется собственная 
              модель обеспечения безопасности.
        Undefined
            - В текущей области не задана политика выполнения.
            - Если политика выполнения во всех областях имеет значение 
              Undefined, действует политика выполнения Restricted, которая 
              является политикой выполнения по умолчанию.
    Примечание. В системах, которые не отличают UNC-пути от путей в 
                Интернете, выполнение скриптов, которые задаются UNC-путями, 
                может быть запрещено, если включена политика выполнения RemoteS
igned. 
 
 ОБЛАСТЬ ПОЛИТИКИ ВЫПОЛНЕНИЯ
 ---------------------------
    Можно задать политику выполнения, которая действует только в 
    конкретной области. 
    Допустимые значения параметра Scope - Process, CurrentUser и 
    LocalMachine. При задании политики выполнения по умолчанию 
    используется значение LocalMachine. 
    Значения Scope перечислены в порядке приоритета.
        - Process 
             Действие политики выполнения распространяется только на 
             текущий сеанс (текущий процесс Windows PowerShell). Политика 
             выполнения хранится в переменной среды $PSExecutionPolicyPreferenc
e. 
             Это значение удаляется, когда сеанс, в котором задана политика, 
             закрывается.
        - CurrentUser 
             Действие политики выполнения распространяется только на 
             текущего пользователя. Она хранится в разделе реестра 
             HKEY_CURRENT_USER. 
        - LocalMachine
             Действие политики выполнения распространяется на всех 
             пользователей текущего компьютера. Она хранится в 
             разделе реестра HKEY_LOCAL_MACHINE.
    Политика, имеющая более высокий приоритет, действует в текущем 
    сеансе даже в том случае, если на более низком уровне приоритета 
    была задана более строгая политика.
    Дополнительные сведения см. в описании командлета Set-ExecutionPolicy.
 ПОЛУЧЕНИЕ ПОЛИТИКИ ВЫПОЛНЕНИЯ
 ------------------------------
    Чтобы получить политику выполнения Windows PowerShell, которая 
    действует в текущем сеансе, используется командлет Get-ExecutionPo
    licy. 
    Следующая команда получает текущую политику выполнения:
	get-executionpolicy  
    Чтобы получить все политики выполнения, влияющие на текущий сеанс и 
    отобразить их в порядке приоритета, введите:
        get-executionpolicy -list
    Выходные данные будут выглядеть примерно следующим образом:
                  Scope    ExecutionPolicy
                  -----    ---------------
          MachinePolicy          Undefined
             UserPolicy          Undefined
                Process          Undefined
            CurrentUser       RemoteSigned
           LocalMachine          AllSigned
     
    В этом случае действует политика выполнения RemoteSigned, 
    поскольку политика выполнения текущего пользователя имеет приоритет по 
    сравнению с политикой выполнения для локального компьютера.   
    
    Чтобы получить политику выполнения для конкретной области, следует 
    использовать параметр Scope командлета Get-ExecutionPolicy. 
    Например, следующая команда получает политику выполнения для области 
    текущего пользователя.
        get-executionpolicy -scope CurrentUser	 
 ИЗМЕНЕНИЕ ПОЛИТИКИ ВЫПОЛНЕНИЯ
 ------------------------------
    Чтобы изменить политику выполнения Windows PowerShell на 
    компьютере, следует использовать командлет Set-ExecutionPolicy. 
    Изменение вступает в силу немедленно; перезапускать оболочку Windows 
    PowerShell не требуется. 
    Если задать политику выполнения для локального компьютера (по 
    умолчанию) или текущего пользователя, изменение сохраняется в 
    реестре и остается в силе, пока политика не будет изменена снова.
    Если задать политику выполнения для текущего процесса, она не 
    сохраняется в реестре. Она сохраняется, пока текущий процесс и все его 
    дочерние процессы не будут закрыты. 
    
    Примечание. В Windows Vista и более поздних версиях Windows для 
                выполнения команд, которые изменяют политику выполнения 
                для локального компьютера (по умолчанию), запустите Windows 
                PowerShell командой "Запуск от имени администратора".
    
    Чтобы изменить политику выполнения, введите:
 
        Set-ExecutionPolicy <имя_политики>
    Пример: 
        Set-ExecutionPolicy RemoteSigned
    Чтобы задать политику выполнения в конкретной области, введите:
        Set-ExecutionPolicy <имя_политики> -scope <область>
    Пример: 
        Set-ExecutionPolicy RemoteSigned -scope CurrentUser
    Команда изменения политики выполнения может быть выполнена 
    успешно, но не изменить действующую политику выполнения.
    Например, команда, устанавливающая политику выполнения для локального 
    компьютера, может быть выполнена успешно, но она может быть переопределена 
    политикой выполнения для текущего пользователя.
    
 УДАЛЕНИЕ ПОЛИТИКИ ВЫПОЛНЕНИЯ
 ----------------------------
    Чтобы удалить политику выполнения для конкретной области, следует 
    задать для политики выполнения значение Undefined.
    Например, чтобы удалить политику выполнения для всех пользователей 
    локального компьютера, введите:
        set-executionpolicy Undefined
    Также можно ввести команду:
        set-executionpolicy Undefined -scope LocalMachine
    Если ни в одной из областей не задана ни одна политика 
    выполнения, будет действовать политика выполнения Restricted, которая 
    является политикой по умолчанию.  
 УСТАНОВКА ПОЛИТИКИ ВЫПОЛНЕНИЯ В POWERSHELL.EXE
 ----------------------------------------------
    С помощью параметра ExecutionPolicy программы PowerShell.exe 
    можно задать политику выполнения для нового сеанса Windows PowerShell.
    Действие политики распространяется только на текущий сеанс и его 
    дочерние сеансы.
    Чтобы задать политику выполнения для нового сеанса, запустите Windows 
    PowerShell в командной строке (например, Cmd.exe или Windows PowerShell), 
    а затем воспользуйтесь параметром ExecutionPolicy программы PowerShell.exe,
 
    чтобы задать политику выполнения.
    Пример:
	powershell.exe -executionpolicy -allsigned
    
    
    Задаваемая политика выполнения не сохраняется в реестре.
    Вместо этого она сохранятся в переменной среды $PSExecutionPolicyP
    reference. Переменная удаляется, когда сеанс, в котором задана 
    политика, закрывается.
     
    На протяжении сеанса политика выполнения, которая задана для 
    сеанса, имеет приоритет по сравнению с политикой выполнения, 
    заданной в реестре для локального компьютера или текущего 
    пользователя. Однако она не имеет приоритета по сравнению с 
    политикой выполнения, заданной с помощью групповой политики 
    (см. ниже).
    
           
 УПРАВЛЕНИЕ ПОЛИТИКАМИ ВЫПОЛНЕНИЯ С ПОМОЩЬЮ ГРУППОВОЙ ПОЛИТИКИ
 -------------------------------------------------------------
    С помощью параметра групповой политики "Включить выполнение 
    скриптов" можно управлять политикой выполнения компьютеров в 
    организации. Этот параметр групповой политики переопределяет 
    политики выполнения, заданные в Windows PowerShell во всех областях. 
    Параметр политики "Включить выполнение скриптов" работает 
    следующим образом.
    
    -- Если отключить параметр "Включить выполнение скриптов", скрипты 
       выполняться не будут. Это эквивалентно применению политики выполнения 
       Restricted.
    -- Если включить параметр "Включить выполнение скриптов", можно 
       выбрать политику выполнения. Параметры групповой политики 
       эквивалентны следующим политикам выполнения.
        Групповая политика          Политика выполнения  
        ----------------------      -------------------
        Разрешить все скрипты.      Unrestricted
        Разрешить локальные         RemoteSigned 
        скрипты и удаленные 
        подписанные скрипты.  
              
        Разрешить только            AllSigned
        подписанные скрипты.          
     -- Если параметр "Включить выполнение скриптов" не задан, он не 
        действует. Действует политика выполнения, заданная в Windows 
        PowerShell.
    Файл PowerShellExecutionPolicy.adm добавляет политику "Включить 
    выполнение скриптов" в узлы "Конфигурация компьютера" и "Конфигурация 
    пользователя" редактора групповой политики по следующим путям.
        В Windows XP и Windows Server 2003:
        Административные шаблоны\Компоненты Windows\Windows PowerShell
        В Windows Vista и более поздних версиях Windows:
        Административные шаблоны\Классические административные 
        шаблоны\Компоненты Windows\Windows PowerShell
    Политики в узле "Конфигурация компьютера" имеют приоритет по 
    сравнению с политиками в узле "Конфигурация пользователя".
    Файл PowerShellExecutionPolicy.adm можно загрузить из Центра загрузки 
    Майкрософт. Дополнительные сведения см. в разделе "Административные 
    шаблоны для Windows PowerShell" по адресу 
    http://go.microsoft.com/fwlink/?LinkId=131786.
    
 ПРИОРИТЕТ ПОЛИТИК ВЫПОЛНЕНИЯ
 ----------------------------
    При определении действующей политики выполнения для сеанса среда 
    Windows PowerShell вычисляет политики выполнения на основании 
    следующего порядка приоритетов.
        - Групповая политика: конфигурация компьютера
        - Групповая политика: конфигурация пользователя
        - Политика выполнения: Process (или PowerShell.exe 
        - ExecutionPolicy) Политика выполнения: CurrentUser
        - Политика выполнения: LocalMachine  
 УПРАВЛЕНИЕ ПОДПИСАННЫМИ И НЕПОДПИСАННЫМИ СКРИПТАМИ
 --------------------------------------------------
    Если в Windows PowerShell установлена политика выполнения 
    RemoteSigned, среда Windows PowerShell не будет выполнять 
    неподписанные скрипты, загружаемые из Интернета (включая 
    электронную почту и программы мгновенного обмена сообщениями).
 
    Можно подписать скрипт или выполнить неподписанный скрипт без 
    изменения политики выполнения.
    Дополнительные сведения см. в разделе about_Signing.
СМ. ТАКЖЕ
    Get-ExecutionPolicy
    Set-ExecutionPolicy
    about_Signing
    "Административные шаблоны для Windows PowerShell" 
        (http://go.microsoft.com/fwlink/?LinkId=131786)



about_For

РАЗДЕЛ
    about_For
КРАТКОЕ ОПИСАНИЕ
    Описывает команду языка, которую можно использовать для выполнения 
    инструкций в зависимости от условия.
ПОЛНОЕ ОПИСАНИЕ
    Инструкция For (называемая также циклом For) - это языковая 
    конструкция, которая служит для создания цикла, в котором блок 
    команд выполняется, пока заданное условие остается истинным. 
    Типичным применением цикла For является перебор массива значений и 
    выполнение действий на подмножестве этих значений. В большинстве 
    случаев, если необходимо перебрать все значения в массиве, имеет 
    смысл применять инструкцию Foreach.
  Синтаксис
      Ниже показан синтаксис инструкции For.
      
  
          for (<инициация>; <условие>; <повторение>) 
          {<список_инструкций>}
      
      Заполнитель <инициация> представляет одну или несколько разделяемых 
      запятыми команд, выполняемых перед началом цикла. Обычно элемент 
      инструкции <инициация> используется для создания переменной и 
      присвоения ей начального значения.
 
      Эта переменная затем будет использоваться для проверки условия 
      в следующей части инструкции For.
        
      Заполнитель <условие> представляет часть инструкции For, 
      которая принимает логическое значение true или false. Windows 
      PowerShell вычисляет условие при каждом выполнении цикла For. Если 
      результатом вычисления выражения является значение true, выполняется блок
 
      команд, а выражение вычисляется снова. Если условие по прежнему имеет 
      значение true, команды в списке инструкций выполняются снова. Цикл 
      повторяется, пока условие не примет значение false.
     
      Заполнитель <повторение> представляет одну или несколько команд, 
      разделенных запятыми, которые выполняются при каждом повторении цикла. 
      Обычно это используется для изменения переменной, проверяемой внутри 
      части <условие> инструкции.
      Заполнитель <список_инструкций> представляет одну или несколько 
      команд, выполняющихся при каждом входе в цикл или его повторении. 
      Содержимое списка инструкций заключается в фигурные скобки.
  Примеры
      Как минимум, для инструкции For необходимы круглые скобки, 
      заключающие блок <инициация>, <условие> и <повторение>, а также 
      заключенная в фигурные скобки команда в блоке <список_инструкций>. 
      Обратите внимание, что в приведенных ниже примерах намеренно 
      приводится код за пределами инструкции For. В следующих примерах код 
      помещен внутрь инструкции For.
      Например, следующая инструкция For будет постоянно отображать 
      значение переменной $i до тех пор, пока команда не будет 
      вручную прервана нажатием клавиш Ctrl+C. 
          $i = 1
          for (;;){Write-Host $i}
      В список инструкций можно добавить дополнительные команды, 
      чтобы значение переменной $i увеличивалось на 1 при каждом 
      выполнении цикла, как показано в следующем примере.
          for (;;){$i++; Write-Host $i}
      До тех пор, пока пользователь не прервет команду нажатием 
      клавиш CTRL+C, эта инструкция будет постоянно отображать значение 
      переменной $i, которое будет увеличиваться на 1 при каждом выполнении 
      цикла.
      Вместо изменения значения переменной в списке инструкций цикла 
      For можно воспользоваться блоком <повторение>, как показано ниже. 
          $i=1
          for (;;$i++){Write-Host $i}
      Эта инструкция по-прежнему будет повторяться бесконечно долго 
      или до тех пор, пока пользователь не прервет команду нажатием 
      клавиш CTRL+C.
      Задав соответствующее условие (с помощью блока <условие> 
      инструкции For), можно завершить цикл For, когда условие примет 
      значение false. В следующем примере цикл For выполняется, пока 
      значение переменной $i меньше или равно 10.
 
          $i=1
          for(;$i -le 10;$i++){Write-Host $i}
      Вместо создания и инициализации переменной за пределами 
      инструкции For то же самое можно сделать внутри цикла For с 
      помощью блока <инициация>.
          for($i=1; $i -le 10; $i++){Write-Host $i}
      В качестве разделителя в блоках <инициация>, <условие> и 
      <повторение> инструкции For вместо точки с запятой можно 
      использовать знаки возврата каретки. В следующем примере 
      показана эта альтернативная форма инструкции For.
        
            for (<инициация>
          <условие>
          <повторение>){
          <список_инструкций>
          }
      
      Такая альтернативная форма инструкции For используется в 
      файлах скриптов Windows PowerShell и в командной строке Windows 
      PowerShell. Но при вводе интерактивных команд с консоли удобнее 
      использовать синтаксис инструкции For с точкой с запятой. 
        
      Цикл For обладает большей гибкостью, чем цикл Foreach, поскольку он 
      позволяет увеличивать значения в массиве или в коллекции при помощи 
      шаблонов. В следующем примере переменная $i увеличивается на 2 в блоке 
      <повторение> инструкции For.
          for ($i = 0; $i -ile 20; $i += 2) {Write-Host $i}
СМ. ТАКЖЕ        
    about_Comparison_Operators
    about_Foreach



about_Foreach

РАЗДЕЛ
    about_Foreach
КРАТКОЕ ОПИСАНИЕ
    Описывает команду языка, позволяющую перебрать все элементы в 
    коллекции.
ПОЛНОЕ ОПИСАНИЕ
    Инструкция Foreach (называемая также циклом Foreach) является языковой 
    конструкцией для пошагового перемещения (итерации) по последовательности 
    значений в коллекции элементов. 
    Самым простым и наиболее часто используемым типом коллекции, по 
    которой производится перемещение, является массив. Обычно в цикле 
    Foreach одна или несколько команд выполняются на каждом элементе массива. 
  Синтаксис        
      Ниже показан синтаксис инструкции Foreach:
        
          foreach ($<элемент> in $<коллекция>){<список_инструкций>}
  Инструкция Foreach за пределами конвейера команд В заключаемой в круглые 
  скобки части инструкции Foreach указываются переменная и коллекция для перебо
ра. 
  При выполнении цикла Foreach среда Windows PowerShell автоматически создает п
еременную 
  ($<элемент>). Перед каждой итерацией в цикле переменной присваивается значени
е в коллекции. 
  Блок за инструкцией Foreach {<список_инструкций>} содержит набор команд, выпо
лняемых на 
  каждом элементе коллекции.
 
  Примеры
      Например, цикл Foreach в следующем примере отображает значения 
      в массиве $letterArray.
        
          $letterArray = "a","b","c","d"
          foreach ($letter in $letterArray)
          {
              Write-Host $letter
          }
      
      В этом примере создается массив $letterArray, который затем 
      инициализируется строковыми значениями "a", "b", "c" и "d". При первом 
      выполнении инструкции Foreach переменная $letter устанавливается 
      равной первому элементу в массиве $letterArray ("a"). Затем буква "a" 
      отображается с помощью командлета Write-Host. При следующей итерации цикл
а 
      переменной $letter присваивается значение "b" и т. д. После того как цикл
 
      Foreach отобразит букву "d", Windows PowerShell выходит из цикла.
      Инструкция Foreach должна представляться в одной строке 
      целиком, чтобы она выполнялась как команда в командной строке 
      Windows PowerShell. Инструкция Foreach не обязательно должна 
      представляться в одной строке целиком, если команда помещается 
      в файл скрипта PS1. 
      Инструкции Foreach могут также использоваться совместно с 
      командлетами, возвращающими коллекции элементов. В следующем примере 
      инструкция Foreach выполняет перебор элементов списка, возвращаемого 
      командлетом Get-ChildItem.
          foreach ($file in Get-ChildItem)
          {
              Write-Host $file
          }
      Пример может быть усовершенствован при помощи инструкции If для 
      ограничения возвращаемых результатов. В следующем примере инструкция 
      Foreach выполняет те же операции в цикле, что и в предыдущем примере, 
      но здесь добавлена инструкция If, ограничивающая результаты файлами, 
      размер которых превышает 100 килобайт (КБ).
          foreach ($file in Get-ChildItem)
          {
              if ($file.length -gt 100k) 
              {
                  Write-Host $file
              }
          }
      В этом примере цикл Foreach использует свойство переменной $file для 
      выполнения операции сравнения ($file.length -gt 100k). Переменная 
      $file содержит все свойства в объекте, возвращаемом командлетом 
      Get-ChildItem. Поэтому может возвращаться не только имя файла. 
      В следующем примере Windows PowerShell внутри списка инструкций 
      возвращает длину и время последнего обращения:
          foreach ($file in Get-ChildItem)
          {
              if ($file.length -gt 100k) 
              {
                  Write-Host $file
                  Write-Host $file.length
                  Write-Host $file.lastaccesstime }
          }
    
      В этом примере в списке инструкций не обязательно выполнять 
      только одну команду. 
      
      Кроме того, можно использовать переменную вне цикла Foreach и 
      увеличивать ее значение внутри цикла. Следующий пример 
      подсчитывает файлы, размер которых превышает 100 КБ: 
      
  
          $i = 0
          foreach ($file in Get-ChildItem)
          {
              if ($file.length -gt 100k) 
              {
                  Write-Host $file "file size:" ($file.length / 
          1024).ToString("F0") KB
                  $i = $i + 1
              }
          }
          if ($i -ne 0)
          {
              Write-Host
              Write-Host $i " file(s) over 100 KB in the current 
          directory."}
          else 
          {
              Write-Host "No files greater than 100 KB in the current 
          directory."
          }
      В предыдущем примере переменной $i присваивается значение 0 вне 
      цикла, а увеличение значения происходит внутри цикла для каждого 
      найденного файла размером больше 100 КБ. При выходе из цикла инструкция 
      If вычисляет значение переменной $i для отображения количества всех 
      файлов размером более 100 КБ. Либо отображается сообщение о том, 
      что ни одного файла размером более 100 КБ не найдено.
      Предыдущий пример также демонстрирует, как форматировать 
      результаты для длины:
          ($file.length / 1024).ToString("F0")
      Значение делится на 1024, чтобы показать результаты в 
      килобайтах, а не в байтах. Полученное значение далее 
      форматируется при помощи спецификатора формата с фиксированной 
      запятой для удаления из результата дробной части. Значение 0 
      спецификатора формата указывает, что дробная часть отображаться 
      не должна. 
  Инструкция Foreach внутри конвейера команд Когда инструкция Foreach 
  используется в конвейере команд, Windows PowerShell использует псевдоним 
  foreach, вызывающий команду ForEach-Object. При использовании псевдонима 
  foreach в конвейере команд не используется синтаксическая конструкция 
  ($<элемент> in $<коллекция>), как это делается с инструкцией Foreach. 
  Это является следствием того, что эти сведения предоставляет предыдущая 
  команда в конвейере. Синтаксис псевдонима foreach, применяемого в 
  конвейере команд, выглядит следующим образом:
        
          <команда> | foreach {<блок_команд>}
     
      Например, цикл Foreach в следующем конвейере команд отображает все 
      процессы, рабочий набор (использование памяти) которых превышает 20 
      мегабайт (МБ). Оболочка Windows PowerShell передает выходные данные 
      команды Get-Process по конвейеру псевдониму foreach. Внутри блока 
      команд псевдонима foreach переменная $_.WS содержит значение свойства 
      WS (рабочего набора), передаваемое ей командлетом Get-Process. 
      (Часть $_ объявления является автоматической переменной WSH, а часть 
      WS является свойством.) Инструкция If использует условное выражение для 
      определения того, превышает ли рабочий набор 20 МБ (20 000 000 байт). 
      Если превышает, то отображаются имя процесса, хранящееся в переменной 
      $_.name, и размер рабочего набора в мегабайтах. При отсутствии рабочего 
      набора процесса, размер которого превышает 20 МБ, ничего не отображается.
          Write-Host "Processes with working-sets greater than 20 MB"
          Get-Process | foreach { 
              if ($_.WS -gt 20m)
              {
                  Write-Host $_.name ": " 
          ($_.WS/1m).ToString("F0") MB -Separator ""
              }
          }
      Кроме того, псевдоним foreach поддерживает понятия начального блока 
      команд, среднего блока команд и конечного блока команд. Начальный и 
      конечный блоки команд выполняются один раз, а средний блок команд 
      выполняется каждый раз, когда цикл Foreach перемещается к очередному 
      элементу коллекции или массива. 
        
      Синтаксис псевдонима foreach, используемого в конвейере команд с 
      начальным, средним и конечным блоками команд выглядит следующим образом:
        
          <команда> | foreach {<начальный_блок_команд>}
          {<средний_блок_команд>}{<конечный_блок_команд>}
 
      В следующем примере демонстрируется использование начального, 
      среднего и конечного блоков команд. 
          Get-ChildItem | foreach {
          $fileCount = $directoryCount = 0}{
          if ($_.PsIsContainer) {$directoryCount++} else {$fileCount++}}{ 
          "$directoryCount directories and $fileCount files"}
      Начальный блок создает и инициализирует две переменных со 
      значением 0:
          {$fileCount = $directoryCount = 0}
 
      Средний блок проверят, является ли возвращаемый командлетом 
      Get-ChildItem элемент каталогом или файлом:
          {if ($_.PsIsContainer) {$directoryCount++} else {$fileCount++}}
      Если возвращаемый элемент является каталогом, значение переменной 
      $directoryCount увеличивается на 1. Если элемент не является 
      каталогом, на 1 увеличивается значение переменной $fileCount. 
      Конечный блок выполняется после того, как средний блок завершит 
      цикл и вернет результат операции: 
       
          {"$directoryCount directories and $fileCount files"}
      При помощи структуры начального, среднего и конечного блоков и 
      оператора конвейера можно переписать приведенный выше пример 
      поиска файлов размером более 100 КБ следующим образом:
          Get-ChildItem | foreach{
              $i = 0}{
              if ($_.length -gt 100k)
              {
                  Write-Host $_.name "file size:" ($_.length / 
          1024).ToString("F0") KB
                  $i++
              }
              }{
              if ($i -ne 0)
              {
                  Write-Host
                  Write-Host "$i file(s) over 100 KB in the current 
          directory."
              }
              else 
              {
              Write-Host "No files greater than 100 KB in the current 
          directory."}
              }
СМ. ТАКЖЕ
    about_Automatic_Variables
    about_If
    Foreach-Object



about_format.ps1xml

РАЗДЕЛ
    about_Format.ps1xml
КРАТКОЕ ОПИСАНИЕ
    Файлы Format.ps1xml в Windows PowerShell определяют формат по 
    умолчанию для отображения объектов в консоли Windows PowerShell. 
    Можно создавать собственные файлы Format.ps1xml, чтобы изменять 
    отображение объектов или определять форматы отображения по 
    умолчанию для новых объектов, создаваемых в Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Файлы Format.ps1xml в Windows PowerShell определяют формат по 
    умолчанию для отображения объектов в Windows PowerShell. Можно 
    создавать собственные файлы Format.ps1xml, чтобы изменять 
    отображение объектов или определять форматы отображения по 
    умолчанию для новых объектов, создаваемых в Windows PowerShell.
    Когда в Windows PowerShell отображается объект, для определения 
    формата отображения объекта по умолчанию используются данные, 
    структурированные в файлах форматирования. Данные в файлах 
    форматирования определяют, должен ли объект отображаться в виде 
    таблицы или списка, а также свойства, которые отображаются по 
    умолчанию. 
    Форматирование влияет только на отображение. Оно не влияет на то, 
    какие свойства объекта передаются по конвейеру и как они передаются.
    Windows PowerShell включает семь файлов форматирования. Эти файлы 
    расположены в каталоге установки ($pshome). Каждый файл 
    определяет отображение группы объектов Microsoft .NET Framework:
	Certificate.Format.ps1xml
            Объекты в хранилище сертификатов, например хранилища 
            сертификатов и сертификаты X.509.
	DotNetTypes.Format.ps1xml
            Другие типы .NET, например объекты CultureInfo, 
            FileVersionInfo и EventLogEntry.
	FileSystem.Format.ps1xml
            Объекты файловой системы, например файлы и каталоги.
	Help.Format.ps1xml
            Представления справки, например подробные и полные 
            представления, параметры и примеры.
	PowerShellCore.format.ps1xml
            Объекты, создаваемые базовыми командлетами Windows 
            PowerShell, такими как Get-Member и Get-History.
	PowerShellTrace.format.ps1xml
            Объекты трассировки, например объекты, создаваемые 
            командлетом Trace-Command.
	Registry.format.ps1xml 
            Объекты реестра, например разделы и записи.
    Файл форматирования может определять четыре различных 
    представления каждого из объектов: табличное, списочное, 
    широкое и комплексное. Например, когда выходные данные команды 
    Get-ChildItem передаются по конвейеру команде Format-List, 
    команда Format-List использует представление из файла 
    FileSystem.format.ps1xml, чтобы определить, как отображать 
    объекты файлов и папок в списке.
    В файле Format.ps1xml представление определяется при помощи 
    набора тегов XML, описывающих имя представления, тип объекта, к 
    которому оно может быть применено, заголовки столбцов, а также 
    свойства, отображаемые в теле представления. Формат из файлов 
    Format.ps1xml применяется непосредственно перед отображением 
    данных для пользователя. 
  Создание новых файлов Format.ps1xml
      Файлы PS1XML, устанавливаемые вместе с Windows PowerShell, 
      имеют цифровую подпись, защищающую их от искажения, поскольку 
      форматирование может включать блоки скриптов. Поэтому, чтобы 
      изменить формат отображения для существующего представления 
      объекта или добавить представления для новых объектов, следует 
      создавать собственные файлы Format.ps1xml, а затем добавлять их 
      в сеанс Windows PowerShell.
      Чтобы создать новый файл, скопируйте имеющийся файл 
      Format.ps1xml. Новый файл может иметь любое имя, но он должен 
      иметь расширение PS1XML. Новый файл можно поместить в любой 
      каталог, доступный оболочке Windows PowerShell, однако 
      рекомендуется помещать его в каталог установки Windows 
      PowerShell ($pshome) или в подкаталог каталога установки.
      Чтобы изменить форматирование текущего представления, найдите 
      это представление в файле форматирования, а затем измените его 
      с помощью тегов. Чтобы создать представление для нового типа 
      объектов, создайте новое представление или воспользуйтесь в 
      качестве шаблона имеющимся представлением. (Теги описаны в 
      следующем подразделе этого раздела.) Можно удалить все 
      остальные представления в файле, чтобы любому, кто 
      просматривает файл, было легко найти изменения.
      После сохранения изменений необходимо с помощью командлета 
      Update-FormatData добавить новый файл в сеанс Windows 
      PowerShell. Если представление должно иметь приоритет 
      относительно представления, определенного во встроенных файлах, 
      следует использовать параметр PrependData командлета 
      Update-FormatData. Действие командлета Update-FormatData 
      распространяется только на текущий сеанс. Чтобы изменение 
      распространялось на все будущие сеансы, следует добавить 
      команду Update-FormatData в профиль Windows PowerShell.
  Пример: добавление данных календаря в объекты культуры
      В этом примере показано, как изменить форматирование объектов 
      культуры (System.Globalization.CultureInfo), созданных 
      командлетом Get-Culture.
      Команды в этом примере добавляют свойство календаря в табличное 
      представление по умолчанию объектов культуры.
      Первый шаг - найти файл Format.ps1xml, который содержит текущее 
      представление объектов культуры. Следующая команда 
      Select-String находит этот файл:
	  select-string -path $pshome\*format.ps1xml `
              -pattern System.Globalization.CultureInfo
      В результате выполнения этой команды выясняется, что 
      определение хранится в файле DotNetTypes.Format.ps1xml.
      Следующая команда копирует содержимое файла в новый файл 
      MyDotNetTypes.Format.ps1xml.
	  copy-item DotNetTypes.Format.ps1xml MyDotNetTypes.Format.ps1xml
      Затем откройте файл MyDotNetTypes.Format.ps1xml в любом 
      редакторе XML или текста, например в "Блокноте". Найдите раздел 
      объекта System.Globalization.CultureInfo. Следующий XML-код 
      определяет представления объекта CultureInfo. У объекта есть 
      только одно представление TableControl.
 
      <View>
          <Name>System.Globalization.CultureInfo</Name>
          <ViewSelectedBy>
             <TypeName>Deserialized.System.Globalization.CultureInfo</TypeName>
             <TypeName>System.Globalization.CultureInfo</TypeName>
          </ViewSelectedBy>
          <TableControl>
              <TableHeaders>
                  <TableColumnHeader>
                      <Width>16</Width>
                  </TableColumnHeader>
                  <TableColumnHeader>
                      <Width>16</Width>
                  </TableColumnHeader>
                  <TableColumnHeader/>
              </TableHeaders>
              <TableRowEntries>
                  <TableRowEntry>
                      <TableColumnItems>
                          <TableColumnItem>
                              <PropertyName>LCID</PropertyName>
                          </TableColumnItem>
                          <TableColumnItem>
                              <PropertyName>Name</PropertyName>
                          </TableColumnItem>
                          <TableColumnItem>
                              <PropertyName>DisplayName</PropertyName>
                          </TableColumnItem>
                      </TableColumnItems>
                  </TableRowEntry>
               </TableRowEntries>
          </TableControl>
      </View>
      Удалите оставшуюся часть файла, кроме открывающих тегов <?XML>, 
      <Configuration> и <ViewDefinitions> и закрывающих тегов 
      <ViewDefintions> и <Configuration>. Кроме того необходимо удалить 
      цифровую подпись, если файл изменяется.
      <?xml version="1.0" encoding="utf-8" ?>
      <Configuration>
          <ViewDefinitions>
              <View>
                  <Name>System.Globalization.CultureInfo</Name>
                  <ViewSelectedBy>
                      <TypeName>Deserialized.System.Globalization.CultureInfo</
TypeName>
                      <TypeName>System.Globalization.CultureInfo</TypeName>
                  </ViewSelectedBy>
                  <TableControl>
                      <TableHeaders>
                          <TableColumnHeader>
                              <Width>16</Width>
                          </TableColumnHeader>
                          <TableColumnHeader>
                              <Width>16</Width>
                          </TableColumnHeader>
                          <TableColumnHeader/>
                      </TableHeaders>
                      <TableRowEntries>
                          <TableRowEntry>
                              <TableColumnItems>
                                  <TableColumnItem>
                                      <PropertyName>LCID</PropertyName>
                                  </TableColumnItem>
                                  <TableColumnItem>
                                      <PropertyName>Name</PropertyName>
                                  </TableColumnItem>
                                  <TableColumnItem>
                                      <PropertyName>DisplayName</PropertyName>
                                  </TableColumnItem>
                              </TableColumnItems>
                          </TableRowEntry>
                       </TableRowEntries>
                  </TableControl>
              </View>
          </ViewDefinitions>
      </Configuration>
      После этого создайте новый столбец для свойства Calendar, 
      добавив новый набор тегов <TableColumnHeader>. Значение 
      свойства Calendar может быть длинным, 
      поэтому используется значение 45 знаков, как показано ниже:
                <TableControl>
                    <TableHeaders>
                        <TableColumnHeader>
                            <Width>16</Width>
                        </TableColumnHeader>
                        <TableColumnHeader>
                            <Width>16</Width>
                        </TableColumnHeader>
                 
                        <TableColumnHeader>
                            <Width>45</Width>
                        </TableColumnHeader>
                        <TableColumnHeader/>
                    </TableHeaders> 
      После этого добавьте элемент нового столбца в строки таблицы, 
      как показано ниже:
                <TableRowEntries>
                    <TableRowEntry>
                        <TableColumnItems>
                            <TableColumnItem>
                                <PropertyName>LCID</PropertyName>
                            </TableColumnItem>
                            <TableColumnItem>
                                <PropertyName>Name</PropertyName>
                            </TableColumnItem>
                            <TableColumnItem>
                                <PropertyName>Calendar</PropertyName>
                            </TableColumnItem>
                            <TableColumnItem>
                                <PropertyName>DisplayName</PropertyName>
                            </TableColumnItem>
                        </TableColumnItems>
                    </TableRowEntry>
                 </TableRowEntries>
      После сохранения и закрытия файла с помощью команды 
      Update-FormatData, например приведенной ниже команды, добавьте 
      новый файл формата в текущий сеанс. В этой команде используется 
      параметр PrependData, чтобы задать для нового файла более 
      высокий приоритет по сравнению с исходным файлом. (Чтобы 
      получить дополнительные сведения о команде Update-FormatData, 
      введите команду get-help update-formatdata.)
	  update-formatdata -prependpath $pshome\MyDotNetTypes.format.ps1xml
      Чтобы проверить изменение, введите команду get-culture и 
      изучите выходные данные, которые теперь должны включать 
      свойство Calendar.
      C:\PS> get-culture
      LCID Name  Calendar                               DisplayName
      ---- ----  --------                               -----------
      1033 en-US System.Globalization.GregorianCalendar English (United States)
  XML-код в файлах Format.ps1xml
      Раздел ViewDefinitions каждого из файлов Format.ps1xml содержит 
      теги <View>, которые определяют каждое из представлений. Обычно 
      тег <View> содержит следующие теги:
    
          <Name>
              Тег <Name> определяет имя представления.
          <ViewSelectedBy>
              Тег <ViewSelectedBy> определяет тип или типы объектов, 
              к которым применимо представление.
    
          <GroupBy>
              Тег <GroupBy> определяет, каким образом элементы в 
              представлении объединяются в группы.
          <TableControl>
          <ListControl>
          <WideControl>
          <ComplexControl>
              Эти теги содержат теги, определяющие, каким образом 
              отображается тот или иной элемент.
    
      Тег <ViewSelectedBy> может содержать тег <TypeName> для каждого 
      типа объектов, к которым применяется представление. Либо он 
      может содержать тег <SelectionSetName>, который ссылается на 
      набор выбора, определенный в другом месте с помощью тега 
      <SelectionSet>.
      Тег <GroupBy> содержит тег <PropertyName>, задающий свойство 
      объекта, по которому должны группироваться элементы. Он также 
      содержит тег <Label>, задающий строку, которая должна 
      использоваться в качестве метки для каждой группы, или тег 
      <ComplexControlName>, ссылающийся на комплексный элемент 
      управления, определенный в другом месте при помощи тега 
      <Control>. Тег <Control> содержит теги <Name> и 
    
      Тег <TableControl> обычно содержит теги <TableHeaders> и 
      <TableRowEntries>, определяющие форматирование заголовков и 
      строк таблицы. Тег <TableHeaders> обычно содержит теги 
      <TableColumnHeader>, которые содержат теги <Label>, <Width> и 
      <Alignment>. Тег <TableRowEntries> содержит теги <TableRowEntry>
      для каждой строки таблицы. Обычно тег <TableRowEntry> содержит тег 
      <TableColumnItems>, который содержит тег <TableColumnItem> для 
      каждого столбца в строке. Обычно тег <TableColumnItem> содержит 
      либо тег <PropertyName>, идентифицирующий свойство объекта, которое 
      должно отображаться в определенном месте, либо тег <ScriptBlock>, 
      содержащий код скрипта, вычисляющего результат, который должен 
      отображаться в этом месте. 
      Примечание. В местах, в которых могут потребоваться вычисляемые 
                  результаты, могут также использоваться блоки скриптов. 
    
      Тег <TableColumnItem> может также содержать тег <FormatString>, 
      который определяет, как должно отображаться свойство или 
      вычисленные результаты.
    
      Тег <ListControl> обычно содержит тег <ListEntries>. Тег 
      <ListEntries> содержит тег <ListItems>. Тег <ListItems> 
      содержит теги <ListItem>, которые в свою очередь содержат теги 
      <PropertyName>. Теги <PropertyName> задают свойство объекта, 
      которое должно отображаться в указанной позиции списка. Если 
      выбор представления определяется при помощи набора выбора, тег 
      <ListControl> может также содержать тег <EntrySelectedBy>, 
      содержащий один или несколько тегов <TypeName>. Эти теги 
      <TypeName> определяют тип объекта, который должен отображаться 
      тегом <ListControl>.
    
      Тег <WideControl> обычно содержит тег <WideEntries>. Тег 
      <WideEntries> обычно содержит один или несколько тегов 
      <WideEntry>. Тег <WideEntry> обычно содержит тег <PropertyName>,
       задающий свойство, которое должно отображаться в указанном 
       месте в представлении. Тег <PropertyName> может содержать тег 
       <FormatString>, который определяет, как должно отображаться 
       свойство. 
    
      Тег <ComplexControl> содержит более сложные сочетания тегов по 
      сравнению с представлениями других типов. Тег <ComplexControl> 
      обычно содержит тег <ComplexEntries>. Тег <ComplexEntries> 
      содержит несколько тегов <ComplexEntry>. Тег <ComplexEntry> 
      обычно содержит тег <ComplexItem>. Этот тег, в свою очередь, 
      может содержать различные теги, задающие содержимое и 
      форматирование для указанного места в представлении, в том 
      числе теги <Text>, <Indentation>, <ExpressionBinding> и 
  Update-FormatData
      Чтобы загрузить файлы Format.ps1xml в сеанс Windows PowerShell, 
      используется командлет Update-FormatData. Если представление в 
      файле должно иметь приоритет относительно представлений во 
      встроенном файле Format.ps1xml, следует использовать параметр 
      PrependData командлета Update-FormatData. Действие командлета 
      Update-FormatData распространяется только на текущий сеанс. 
      Чтобы изменение распространялось на все будущие сеансы, следует 
      добавить команду Update-FormatData в профиль Windows PowerShell.
  Представление по умолчанию в Types.ps1xml
      В файле Types.ps1xml из каталога $pshome определено 
      представление по умолчанию для некоторых базовых типов 
      объектов. Узлы имеют имена PsStandardMembers, а вложенные 
      узлы обозначаются одним из следующих тегов:
          <DefaultDisplayProperty>
          <DefaultDisplayPropertySet>
          <DefaultKeyPropertySet>
      Чтобы получить дополнительные сведения, введите следующую команду:
	  get-help about_types.ps1xml
 
  Трассировка использования файлов Format.ps1xml
      Чтобы определить ошибки при загрузке или применении файлов 
      Format.ps1xml, следует использовать командлет Trace-Command и 
      указать при этом в качестве значения параметра Name любой из 
      следующих компонентов формата:
	  FormatFileLoading
          UpdateFormatData
          FormatViewBinding
      Чтобы получить дополнительные сведения, введите следующие команды:
          get-help trace-command
          get-help get-tracesource   
  Подписание файлов Format.ps1xml
      Чтобы защитить пользователей файла Format.ps1xml, его 
      необходимо подписать с помощью цифровой подписи. Чтобы получить 
      дополнительные сведения, введите следующую команду:
          get-help about_signing
СМ. ТАКЖЕ
    Update-FormatData
    Trace-Command
    Get-TraceSource



about_functions

РАЗДЕЛ
    about_Functions
КРАТКОЕ ОПИСАНИЕ
    Описывает, как создавать и использовать функции в Windows PowerShell. 
ПОЛНОЕ ОПИСАНИЕ
    Функция представляет собой список инструкций и имеет имя, выбираемое 
    пользователем. Для выполнения функции вводится ее имя. Инструкции в списке 
    выполняются так, как если бы они были введены в командную строку. 
    Как и у командлетов, у функций могут быть параметры. Это могут 
    быть именованные, позиционные и динамические параметры, а также 
    параметры-переключатели. Параметры функций могут считываться из 
    командной строки или из конвейера. 
    Функции могут возвращать значения, которые затем могут отображаться, 
    присваиваться переменным или передаваться другим функциям и командлетам. 
    Список инструкций функции может содержать списки инструкций 
    различных типов с ключевыми словами Begin, Process и End. Эти 
    списки инструкций по-разному обрабатывают поступающий через 
    конвейер ввод.
    Фильтр представляет собой функцию особого типа, использующую 
    ключевое слово Filter. 
    Функции могут также выступать в роли командлетов. Можно создать 
    функцию, которая работает как командлет, без программирования на 
    языке C#. Дополнительные сведения см. в разделе about_Functions_Ad
    vanced.
  Синтаксис
      Ниже показан синтаксис функции:
          function [<область:>]<имя> [([тип]$parameter1[,[тип]$parameter2])] 
          {
              param([тип]$parameter1 [,[тип]$parameter2])
              dynamicparam {<список_инструкций>}
  
              begin {<список_инструкций>}
              process {<список_инструкций>}
              end {<список_инструкций>}
          }
      Функция включает один из следующих элементов:
          - ключевое слово Function;
          - область (необязательно);
          - выбранное пользователем имя;
          - произвольное число именованных параметров (необязательно);
          - одну или несколько команд Windows PowerShell, заключенных 
            в фигурные скобки ({}). 
      Дополнительные сведения о ключевом слове Dynamicparam и динамических 
      параметрах в функциях см. в разделе about_Functions_Advanced_Parameters.
  Простые функции
      Чтобы функции были полезными, они не обязательно должны быть 
      сложными. Показанная ниже функция получает переменные среды, 
      которые не относятся к учетной записи System текущей системы: 
          function other_env 
          { 
             get-wmiObject win32_environment | 
                where {$_.username -ne "<System>"}
          }
      Чтобы выполнить эту функцию, введите "other_env". 
      Можно создать набор из небольших полезных функций и добавить 
      эти функции в профиль Windows PowerShell, как описано в разделе 
      about_Profiles и далее в этом разделе.
  Функции с параметрами
      С функциями можно использовать параметры, в том числе 
      именованные, позиционные и динамические параметры, а также параметры-
      переключатели. Дополнительные сведения о динамических параметрах в 
      функциях см. в разделе about_Functions_Advanced_Parameters.
  Именованные параметры
      Можно определить произвольное число именованных параметров. Для 
      именованных параметров можно задать значение по умолчанию, как 
      показано далее в этом разделе.
      Параметры можно определить внутри фигурных скобок, используя 
      ключевое слово Param, как показано в следующем примере.
    
          function <name> { 
               param ([type]$parameter1[,[type]$parameter2])
               <statement list> 
          }
      Кроме того, параметры можно определять вне фигурных скобок без 
      ключевого слова Param, как показано в следующем примере.
          function <имя> [([тип]$parameter1[,[тип]$parameter2])] { 
              <список_инструкций> 
          }
      Эти два подхода абсолютно равноправны. Можно использовать любой 
      предпочтительный подход.
      При выполнении функции значение, заданное в качестве параметра, 
      присваивается переменной, которая содержит имя параметра. 
      Значение этой переменной можно использовать в функции. 
      Ниже приведен пример функции с именем Small_files. У этой 
      функции имеется параметр $size. Функция отображает все файлы, 
      размер которых меньше значения параметра, и исключает каталоги.
          function small_files {
              param ($size)
              Get-ChildItem c:\ | where {
                  $_.length -lt $size -and $_.PSIsContainer} 
          }
      В этой функции можно использовать переменную $size, которая 
      представляет собой имя, определенное для параметра.
      Чтобы использовать эту функцию, введите следующую команду:
 
          C:\PS> function small_files -size 50
      Кроме того, значение именованного параметра можно задать без 
      указания имени параметра. Например, результат выполнения 
      следующей команды не отличается от результата выполнения 
      команды с именем параметра size:
          C:\PS> function small_files 50
      Чтобы задать для параметра значение по умолчанию, после имени 
      параметра введите знак равенства и значение, как показано в 
      следующей версии функции Small_files:
          function small_files ($size = 100) {
              Get-ChildItem c:\ | where {
                  $_.length -lt $size -and $_.PSIsContainer} 
          }
      Если ввести имя функции "small_files" без значения, то 
      переменной $size будет присвоено значение 100. Если указать 
      значение, функция будет использовать это значение.
  Позиционные параметры
      Позиционный параметр - это параметр без имени. Чтобы связать 
      значение параметра с параметром в функции, в Windows PowerShell 
      используется порядок следования значений параметров. 
      При использовании позиционных параметров необходимо ввести одно 
      или несколько значений после имени функции. Значения 
      позиционных параметров присваиваются массиву $args. Значение, 
      указанное непосредственно после имени функции, присваивается 
      первому элементу массива $args ($args[0]). 
      Приведенная ниже функция Extension добавляет к задаваемому 
      имени файла расширение ".txt":
          function extension {
              $name = $args[0] + ".txt"
              $name
          }
          C:\PS> extension myTextFile
          myTextFile.txt
   
      Функция может принимать несколько позиционных параметров. В 
      следующем примере отображаются все значения, введенные после 
      имени функции.
          function repeat { foreach ($arg in $args) { "The input is 
          $arg" } }
          C:\PS>repeat one 
          The input is one
          C:\PS> repeat one two three
          The input is one
          The input is two 
          The input is three
      Эту функцию можно использовать с произвольным числом значений. 
      Данная функция присваивает каждое значение элементу массива $args.
  Параметры-переключатели
      Переключатель - это параметр, которому не требуется значение. 
      Имя параметра-переключателя просто указывается после имени функции.
      Чтобы определить параметр-переключатель, укажите перед именем 
      параметра тип [switch], как показано в следующем примере:
          function switchExample {
              param ([switch]$on)
              if ($on) { "Switch on" }
              else { "Switch off" }
          }
      Если после имени функции ввести параметр-переключатель On, 
      функция выведет текст "Switch on". Без параметра-переключателя 
      будет выведен текст "Switch off".
          C:\PS> SwitchExample -on
          Switch on
          C:\PS> SwitchExample
          Switch off
      Кроме того, при выполнении функции можно присвоить 
      переключателю логическое значение, как показано в следующем примере:
          C:\PS> SwitchExample -on:$true
          Switch on
          C:\PS> SwitchExample -on:$false
          Switch off
  Передача объектов в функции по конвейеру
      Все функции могут принимать входные данные с помощью конвейера. 
      Управление обработкой поступающих через конвейер входных данных 
      осуществляется в функции с помощью ключевых слов Begin, Process 
      и End. В следующем примере показаны три ключевых слова:
          function <имя> { 
              begin {<список_инструкций>}
              process {<список_инструкций>}
              end {<список_инструкций>}
          }
      Список инструкций Begin выполняется только один раз в начале функции. 
      Список инструкций Process выполняется по одному разу для 
      каждого из объектов в конвейере. Пока выполняется блок Process, 
      каждый объект из конвейера присваивается автоматической переменной 
      $_, по одному объекту за раз. 
      После того как функция получит все объекты в конвейере, один 
      раз выполняется список инструкций из блока End. Если ключевые 
      слова Begin, Process и End не используются, все инструкции 
      выполняются так, как если бы они находились в блоке End.
      В следующей функции используется ключевое слово Process. 
      Функция отображает примеры из конвейера:
          function pipelineFunction 
          { 
              process {"The value is: $_"} 
          }
      Чтобы продемонстрировать эту функцию, введите массив 
      разделенных запятыми чисел, как показано в следующем примере:
          C:\PS> 1,2,4 | pipelineFunction
          The value is: 1
          The value is: 2
          The value is: 4
      При использовании функции в конвейере направляемые в функцию объекты 
      присваиваются автоматической переменной $input. Функция выполняет 
      инструкции с ключевым словом Begin, прежде чем будут получены объекты 
      из конвейера. Функция выполняет инструкции в блоке End после 
      получения из конвейера всех объектов.
      В следующем примере показано использование автоматической 
      переменной $input с ключевыми словами Begin и End.
          function PipelineBeginEnd 
          {
              begin {"Begin: The input is $input"}
              end {"End:   The input is $input" }
          }
      Если выполнить эту функцию с использованием конвейера, будут 
      выведены следующие результаты:
          C:\PS> 1,2,4 | PipelineBeginEnd
          Begin: The input is 
          End:  The input is 1 2 4
      Когда выполняется инструкция Begin, у функции еще нет входных 
      данных из конвейера. Инструкция End выполняется после получения 
      значений функцией.
      Если функция содержит ключевое слово Process, то она считывает 
      данные в переменную $input. Ниже показан пример списка 
      инструкций Process:
          function PipelineInput
          {
              process {"Processing:  $_ " }
              end {"End:   The input is: $input" }
          } 
      В этом примере каждый объект, направляемый в функцию по 
      конвейеру, передается в список инструкций Process. Инструкции в 
      блоке Process выполняются для каждого объекта по очереди. Когда 
      функция достигает ключевого слова End, автоматическая 
      переменная $input пуста.
          C:\PS> 1,2,4 | PipelineInput
          Processing:  1 
          Processing:  2 
          Processing:  4 
          End:  The input is:
  Фильтры
      Фильтр - этот тип функции, которая выполняется для каждого объекта в 
      конвейере. Фильтр напоминает функцию, все инструкции которой 
      находятся в блоке Process.
      Синтаксис фильтра имеет следующий вид: 
          filter [<область:>]<имя> {<список_инструкций>}
      Следующий фильтр принимает из конвейера записи журнала и 
      отображает либо всю запись, либо только сообщение из записи:
          filter ErrorLog ([switch]$message)
          {
              if ($message) { out-host -inputobject $_.Message }
              else { $_ }   
          }
  Область функции
      Функция существует в пределах области, в которой она была создана. 
      Если функция является частью скрипта, эта функция доступна в 
      инструкциях в этом скрипте. По умолчанию функции в скрипте не 
      доступны в командной строке. 
      Область функции можно задать. Например, в следующем примере функция 
      добавляется в глобальную область: 
 
          function global:get-dependentsvs { get-service |
             where {$_.dependentservices} }
      Если функция принадлежит к глобальной области, ее можно 
      использовать в скриптах, в функциях и в командной строке.
      Обычно функции образуют собственную область. Элементы, 
      создаваемые внутри функции, например переменные, существуют 
      только в пределах области этой функции.
      Дополнительные сведения об областях в Windows PowerShell см в 
      разделе about_Scope.
        
  Поиск функций и управление ими с помощью диска Function: Все 
  функции и фильтры в Windows PowerShell автоматически сохраняются на 
  диске Function:. Этот диск предоставляется поставщиком функций 
  Windows PowerShell.
      При обращении к диску Function: необходимо ставить двоеточие 
      после слова Function, как это происходит при обращении к диску 
      C или D компьютера.
      Следующая команда отображает все функции в текущем сеансе 
      Windows PowerShell:
          C:\PS>  dir function:
      Команды в функции хранятся в виде блока скрипта в свойстве 
      definition функции. Например, чтобы отобразить команды в 
      функции Help, входящей в состав Windows PowerShell, введите:
          (dir function:help).definition
      Дополнительные сведения о диске Function: см. в разделе Function.
  Повторное использование функций в новых сеансах
      При вводе функции в командной строке Windows PowerShell функция 
      становится частью текущего сеанса. Она доступна до завершения 
      сеанса. 
      Чтобы использовать функцию во всех сеансах Windows PowerShell, 
      добавьте функцию в профиль Windows PowerShell. Дополнительные 
      сведения о профилях см. в разделе about_Profiles.
      Кроме того, функцию можно сохранить в файле скрипта Windows 
      PowerShell. Введите функцию в текстовый файл и сохраните файл с 
      расширением PS1.
  Создание справки для функций
    Командлет Get-Help возвращает справку для функций, а также для 
    командлетов, поставщиков и скриптов. Чтобы получить справку для 
    функции, введите командлет Get-Help и имя функции.
    Например, чтобы получить справку для функции MyDisks, введите:
        get-help MyDisks
    Имеется два способа написания справки для функции.
    --  Справка для функции на основе комментариев
        Темы справки создаются посредством использования в 
        комментариях специальных ключевых слов. Чтобы создать для 
        функции справку на основе комментариев, комментарии 
        необходимо поместить в начало или конец тела функции или в строки, 
        предшествующие ключевому слову function. Дополнительные сведения о 
        справке на основе комментариев см. в разделе about_Comment_Based_Help.
    --  Справка для функции на основе XML
        Создайте раздел справки XML подобно тому, как это делается 
        для командлетов. Справка на основе XML нужна в том случае, 
        если разделы справки локализуются для различных языков. 
        Чтобы связать функцию с разделом справки XML, воспользуйтесь 
        ключевым словом комментариев справки .ExternalHelp. 
        Дополнительные сведения о ключевом слове ExternalHelp см. в 
        разделе about_Comment_Based_Help. Дополнительные сведения о 
        справке на основе XML см. в разделе "How to Write Cmdlet 
        Help" (Как писать справку для командлетов) в библиотеке MSDN.
СМ. ТАКЖЕ 
    about_Automatic_Variables 
    about_Comment_Based_Help
    about_Functions_Advanced 
    about_Functions_CmdletBindingAttribute
    about_Parameters
    about_Profiles
    about_Scopes
    about_Script_Blocks
    Function (поставщик)



about_functions_advanced

РАЗДЕЛ
    about_Functions_Advanced
КРАТКОЕ ОПИСАНИЕ
    Представляет расширенные функции, которые работают подобно 
    командлетам.
ПОЛНОЕ ОПИСАНИЕ
    Расширенные функции позволяют писать функции, которые выполняют 
    операции, похожие на операции, выполняемые с помощью командлетов. 
    Расширенные функции удобно использовать, если нужно быстро написать 
    функцию. В этом случае можно обойтись без написания скомпилированного 
    командлета на одном из языков Microsoft .NET Framework. Кроме того, 
    они могут оказаться полезными, если требуется ограничить функциональность 
    скомпилированного командлета или если нужно написать функцию, похожую на 
    скомпилированный командлет.
 
    Существует различие между созданием скомпилированных командлетов и 
    расширенных функций. Скомпилированные командлеты представляют собой 
    классы .NET Framework, которые следует писать с использованием языка 
    .NET Framework, например C#. В свою очередь расширенные функции 
    разрабатываются на языке скриптов Windows PowerShell, как это происходит 
    в случае других функций или блоков скриптов.
    Расширенные функции используют атрибут CmdletBinding, чтобы 
    идентифицировать их в качестве функций, действующих подобно 
    командлетам. Атрибут CmdletBinding похож на командлет Cmdlet, 
    который используется в классах скомпилированных командлетов, чтобы 
    идентифицировать эти классы в качестве командлетов. Дополнительные 
    сведения об этом атрибуте см. в разделе about_Functions_CmdletBindingA
    ttribute.
    В следующем примере показана функция, которая принимает имя, а 
    затем выводит приветствие, используя указанное имя. Кроме того, 
    обратите внимание, что эта функция имеет имя, включающее глагол 
    (Send) и существительное (Greeting), как это обычно происходит в 
    случае скомпилированных командлетов. Но функции не обязательно 
    должны иметь имя в формате "глагол-существительное". 
        function Send-Greeting
        {
          [CmdletBinding()]
          Param(
              [Parameter(Mandatory=$true)]
              [string] $Name
          )
          Process
          {
            write-host ("Hello " + $Name + "") }
        }
    Параметры функции объявляются с помощью атрибута Parameter. Этот 
    атрибут можно использовать отдельно или объединять с атрибутом 
    Alias или несколькими другими атрибутами проверки параметров.
    Дополнительные сведения об объявлении параметров (включая 
    динамические параметры, добавляемые во время выполнения) см. 
    в разделе about_Functions_Advanced_Parameters. 
 
    Фактически операции приведенной в примере функции выполняются в 
    блоке Process, который является эквивалентом метода ProcessingRecord, 
    используемого скомпилированными командлетами для обработки передаваемых 
    командлетам данных. Этот блок, а также блоки Begin и End, описаны в 
    разделе about_Functions_Advanced_Methods.
    Расширенные функции имеют следующие отличия от скомпилированных 
    командлетов: 
        - привязка параметров расширенных функций не создает 
          исключений, если к параметру типа Boolean привязан 
          массив значений;
        - атрибуты ValidateSet и ValidatePattern не могут передавать 
          именованные параметры;
        - расширенные функции нельзя использовать в транзакциях.
   
СМ. ТАКЖЕ
    about_Functions_Advanced_CmdletBindingAttribute 
    about_Functions_Advanced_Methods  
    about_Functions_Advanced_Parameters 
    Командлеты Windows PowerShell 
    (http://go.microsoft.com/fwlink/?LinkID=135279)



about_functions_advanced_methods

РАЗДЕЛ
    about_Functions_Advanced_Methods
КРАТКОЕ ОПИСАНИЕ
    Описывает, каким образом функции, имеющие атрибут CmdletBinding, могут 
    использовать методы и свойства, доступные скомпилированным командлетам.
ПОЛНОЕ ОПИСАНИЕ
    Функции, имеющие атрибут CmdletBinding, могут обращаться к 
    некоторым методам и свойствам через переменную $pscmdlet. Эти методы 
    включают следующие:
        - методы обработки входных данных, используемые скомпилированными 
          командлетами;
        - методы ShouldProcess и ShouldContinue, используемые для 
          получения реакции пользователя перед выполнением действия;
        - метод ThrowTerminatingError для создания записей об ошибках;
        - несколько методов Write, которые возвращают выходные данные 
          различных типов;
        - несколько методов Write, которые возвращают выходные данные 
          различных типов. 
    Все методы и свойства командлета PSCmdlet доступны расширенным 
    функциям. Дополнительные сведения об этих методах и свойствах см. 
    в разделе System.Management.Automation.PSCmdlet библиотеки MSDN 
    (Microsoft Developer Network) по адресу 
    http://go.microsoft.com/fwlink/?LinkId=142139.
  Методы обработки ввода
      Описанные в этом разделе методы называются методами обработки 
      ввода. Для функций эти методы представляются блоками Begin, 
      Process и End в теле функции. Каждая функция должна включать 
      по крайней мере один из этих блоков. Среда выполнения Windows 
      PowerShell использует код внутри этих блоков при выполнении функции. 
      (Кроме того, эти блоки доступны функциям, которые не используют 
      атрибут CmdletBinding.)
      
    Begin
      Этот блок служит для задания в функции необязательных выполняемых 
      однократно операций предварительной обработки. Среда выполнения 
      Windows PowerShell использует код в этом блоке один раз для каждого 
      экземпляра функции в конвейере.
    Process
      Этот блок служит для задания операция обработки в функции 
      каждой записи. Этот блок может выполняться неограниченное число 
      раз или вообще не выполняться в зависимости от передаваемых функции 
      входных данных. Например, если функция является первой командой в 
      конвейере, блок Process будет выполнен один раз. Если функция не 
      является первой командой в конвейере, блок Process будет вызываться 
      по одному разу для каждого входного объекта, получаемого функцией из 
      конвейера. Если входные данные через конвейер не поступают, блок 
      Process не используется.
      Этот блок необходимо определить в том случае, если параметры функции 
      заданы таким образом, что функция должна принимать входные данные из 
      конвейера. Если этот блок не задан, а параметр принимает входные данные 
      из конвейера, функция не сможет обработать значения, переданные ей через 
      конвейер. 
      Кроме того, если функция поддерживает запросы подтверждения 
      (параметр SupportsShouldProcess атрибута Parameter имеет 
      значение $True), вызов метода ShouldProcess должен 
      осуществляться из блока Process.
    End
      Этот блок служит для задания в функции необязательных выполняемых 
      однократно операций последующей обработки.
      В следующем примере показан шаблон функции, которая содержит 
      блок Begin для однократной предварительной обработки, блок 
      Process для обработки нескольких записей и блок End для однократной 
      последующей обработки.
          Function Test-ScriptCmdlet
          {
            [CmdletBinding(SupportsShouldProcess=$True)] Param 
            ($Parameter1)
            Begin{}
            Process{}
            End{}
          }
  Методы подтверждения
    ShouldProcess
      Этот метод вызывается, чтобы запросить подтверждение у пользователя, 
      прежде чем функция выполнит действие, которое изменит систему. Выполнение
 
      функции продолжается в зависимости от возвращаемого этим методом 
      логического значения. Этот метод можно вызывать только из блока Process{}
 
      функции. Кроме того, должен быть задан атрибут CmdletBinding, подтверждаю
щий, 
      что функция поддерживает использование метода ShouldProcess (как показано
 
      в предыдущем примере).
      Дополнительные сведения об этом методе см. в разделе 
      System.Management.Automation.Cmdlet.ShouldProcess библиотеки MSDN 
      по адресу http://go.microsoft.com/fwlink/?LinkId=142142.
      Дополнительные сведения о запросах подтверждения см. в разделе 
      "Запрос подтверждения" библиотеки MSDN по адресу 
      http://go.microsoft.com/fwlink/?LinkID=136658.
    ShouldContinue
      Этот метод вызывается, чтобы отобразить второе сообщение с запросом 
      подтверждения. Он должен вызываться, когда метод ShouldProcess возвращает
 
      значение $true. Дополнительные сведения об этом методе см. в разделе 
      System.Management.Automation.Cmdlet.ShouldContinue библиотеки 
      MSDN по адресу http://go.microsoft.com/fwlink/?LinkId=142143.
  Методы ошибок
    Когда происходит ошибка, функции могут вызывать два различных 
    метода. Если произошла непрерывающая ошибка, функция должна 
    вызвать метод WriteError, описанный в разделе "Методы Write". 
    Если произошла прерывающая ошибка и выполнение функции продолжаться не 
    может, должен быть вызван метод ThrowTerminatingError. Кроме того для 
    прерывающих ошибок можно использовать инструкцию Throw, а для 
    непрерывающих - командлет Write-Error.
    Дополнительные сведения см. в разделе System.Management.Automation
    .Cmdlet. ThrowTerminatingError библиотеки MSDN по адресу 
    http://go.microsoft.com/fwlink/?LinkId=142144.
  Методы Write
      Чтобы возвращать выходные данные различных типов, функция может 
      вызывать следующие методы. Обратите внимание, что не все 
      выходные данные передаются следующей команде в конвейере. Кроме 
      того, можно использовать различные командлеты Write, например 
      Write-Error.
    WriteCommandDetail
      Дополнительные сведения о методе WriteCommandDetails см. в разделе 
      System.Management.Automation.Cmdlet.WriteCommandDetail библиотеки 
      MSDN по адресу http://go.microsoft.com/fwlink/?LinkId=142155.
    WriteDebug
      В функции используется вызов метода WriteDebug, чтобы предоставить 
      сведения, которые могут помочь при устранении неполадок в функции. 
      Этот метод выводит для пользователя сообщение отладки. Дополнительные 
      сведения см. в разделе System.Management.Automation.Cmdlet.WriteDebug 
      библиотеки MSDN по адресу http://go.microsoft.com/fwlink/?LinkId=142156.
    WriteError
      Функции должны вызывать этот метод, когда возникают непрерывающие ошибки,
 
      а функция должна продолжать обработку записей. Дополнительные сведения см
. 
      в разделе System.Management.Automation.Cmdlet.WriteError библиотеки MSDN 
      по адресу http://go.microsoft.com/fwlink/?LinkId=142157.
      Примечание. Если произошла прерывающая ошибка, функция должна 
                  вызвать метод ThrowTerminatingError. 
    WriteObject
      Этот метод позволяет функции передать объект следующей команде в 
      конвейере. В большинстве случаев именно этот метод следует использовать 
      в ситуациях, когда функция должна возвращать данные. Дополнительные 
      сведения см. в разделе System.Management.Automation.PSCmdlet.WriteObject 
      библиотеки MSDN по адресу http://go.microsoft.com/fwlink/?LinkId=142158.
    WriteProgress
      Для функций, которые выполняются в течение длительного времени, 
      вызов функцией метода WriteProgress позволяет отображать 
      сведения о ходе ее выполнения. Например, можно отображать 
      процент выполнения. Дополнительные сведения см. в разделе 
      System.Management.Automation.PSCmdlet.WriteProgress библиотеки 
      MSDN по адресу http://go.microsoft.com/fwlink/?LinkId=142160.
    WriteVerbose
      Чтобы предоставить подробные сведения о действиях функции, 
      функция может вызывать метод WriteVerbose, и будут отображаться 
      подробные сообщения для пользователя. По умолчанию подробные 
      сообщения не отображаются. Дополнительные сведения см. в разделе 
      System.Management.Automation.PSCmdlet.WriteVerbose библиотеки MSDN 
      по адресу http://go.microsoft.com/fwlink/?LinkId=142162.
    WriteWarning
      Чтобы предоставить сведения об условиях, которые могут вызвать 
      появление непредсказуемых результатов, функция может вызывать метод 
      WriteWarning, и будут отображаться предупреждения для пользователя. 
      По умолчанию предупреждения не отображаются.Дополнительные сведения см. 
      в разделе System.Management.Automation.PSCmdlet.WriteWarning библиотеки 
      MSDN по адресу http://go.microsoft.com/fwlink/?LinkId=142164.
      Примечание. Для отображения предупреждений также можно настроить 
                  переменную WarningPreference или использовать параметры 
                  командной строки Verbose и Debug.
  Другие методы и свойства
      Дополнительные сведения о других методах и свойствах, которые 
      доступные через переменную $PSCmdlet, см. в разделе System.Management.
      Automation.PSCmdlet библиотеки MSDN по адресу 
      http://go.microsoft.com/fwlink/?LinkId=142139. 
      Например, свойство ParameterSetName позволяет определить 
      используемый набор параметров. Наборы параметров дают возможность 
      создавать функции, выполняющие различные задачи в зависимости от 
      параметров, задаваемых при запуске таких функций.
СМ. ТАКЖЕ
    about_Functions_Advanced
    about_Functions_CmdletBindingAttributes
    about_Functions_Advanced_Parameters



about_functions_advanced_param...

РАЗДЕЛ
    about_Functions_Advanced_Parameters
КРАТКОЕ ОПИСАНИЕ
    Описывает, как добавлять статические и динамические параметры в функции, 
    в которых объявлен атрибут CmdletBinding.
ПОЛНОЕ ОПИСАНИЕ
    При написании функций можно объявлять собственные параметры, а 
    также можно писать функции, которые могут обращаться к общим 
    параметрам, которые доступны скомпилированными командлетам. 
    Дополнительные сведения об общих параметрах Windows PowerShell 
    см. в разделе about_CommonParameters.
Статические параметры
    В следующем примере показано объявление параметра, в котором 
    определяется параметр ComputerName. Этот параметр обладает следующими 
    характеристиками:
        - он является обязательным;
        - он принимает входные данные из конвейера;
        - в качестве входных данных он принимает массив строк;
        Param
          (
            [parameter(Mandatory=$true,
            ValueFromPipeline=$true)]
            [String[]]
            $ComputerName
          ) 
  
    Единственным обязательным атрибутом, который необходимо 
    использовать при объявлении параметра, является атрибут 
    Parameter. Но можно также объявить атрибут Alias и несколько 
    аргументов проверки. Количество атрибутов, которые можно включить в 
    объявление параметра, не ограничено.
  Атрибут Parameter
      Атрибут Parameter служит для объявления параметра функции.
      У этого атрибута есть следующие именованные аргументы, которые 
      служат для определения характеристик параметра, например 
      обязательности параметра.
    Именованный аргумент Mandatory
        Аргумент Mandatory указывает, что при запуске функции 
        параметр является обязательным. Если этот аргумент не указан, 
        параметр является необязательным. В следующем примере показано 
        объявление параметра, который обязательно указывать при запуске функции
.
        Param
          (
            [parameter(Mandatory=$true)]
            [String[]]
            $ComputerName
          ) 
    Именованный аргумент Position
        Аргумент Position задает позицию параметра. Если этот аргумент не 
        указан, при задании параметра необходимо в явном виде указывать имя или
 
        псевдоним параметра. Кроме того, если ни у одного из параметров 
        функции нет позиции, среда выполнения Windows PowerShell назначает 
        позиции для каждого из параметров на основании порядка, в котором 
        происходит получение параметров. 
        В следующем примере показано объявление параметра, значение 
        которого должно указываться в качестве первого аргумента при 
        вызове командлета. Обратите внимание, что эту функцию можно 
        запускать как с указанием имени параметра, так и без него.
        Param
          (
            [parameter(Position=0)]
            [String[]]
            $ComputerName
          ) 
    Именованный аргумент ParameterSetName
        Аргумент ParameterSetName задает набор параметров, к которому 
        принадлежит параметр. Если набор параметров не задан, параметр 
        принадлежит ко всем наборам параметров, которые определены функцией. 
        Это означает, что в каждом наборе параметров должен быть один уникальны
й 
        параметр, который не принадлежит ни к одному из других наборов 
        параметров. В следующем примере показано объявление одного из двух 
        параметров, которые относятся к различным наборам параметров. 
        Param
          (
            [parameter(Mandatory=$true,
                      ParameterSetName="Computer")] [String[]]
            $ComputerName
          ) 
        Param
          (
            [parameter(Mandatory=$true,
                      ParameterSetName="User")] [String[]]
            $UserName
          ) 
        Дополнительные сведения о наборах параметров см. в разделе 
        "Наборы параметров командлетов" библиотеки MSDN по адресу 
        http://go.microsoft.com/fwlink/?LinkId=142183.
    Именованный аргумент ValueFromPipeline
        Аргумент ValueFromPipeline определяет, что параметр принимает 
        входные данные из объекта конвейера. Этот аргумент следует 
        указывать, если командлет обращается ко всему объекту, а не 
        только к свойству объекта. В следующем примере показано объявление 
        обязательного параметра ComputerName, который принимает входной 
        объект, которые передается функции из конвейера.
        Param
          (
            [parameter(Mandatory=$true,
                      ValueFromPipeline=$true)] [String[]]
            $ComputerName
          ) 
    Именованный аргумент ValueFromPipelineByPropertyName
        Аргумент valueFromPipelineByPropertyName определяет, что параметр 
        принимает входные данные из свойства объекта конвейера. Этот атрибут 
        следует указывать, если выполняются следующие условия:
            - параметр используется для доступа к объекту конвейера;
            - имя свойства совпадает с именем параметра или псевдоним 
              свойства совпадает с псевдонимом параметра.
        Например, если у функции есть параметр ComputerName, а у объекта 
        конвейера есть свойство ComputerName, значение свойства ComputerName 
        будет присвоено параметру ComputerName функции.
        В следующем примере показано объявление параметра 
        ComputerName, который принимает входные данные из свойства 
        ComputerName входного объекта, передаваемого командлету.
        Param
          (
            [parameter(Mandatory=$true,
                      ValueFromPipelineByPropertyName=$true)] [String[]]
            $ComputerName
          ) 
    Именованный аргумент ValueFromRemainingArguments
        Аргумент ValueFromRemainingArguments определяет, что параметр 
        принимает все оставшиеся аргументы, которые не привязаны к 
        параметрам функции. В следующем примере показано объявление 
        параметра ComputerName, который принимает все оставшиеся аргументы 
        входного объекта, передаваемого функции.
        Param
          (
            [parameter(Mandatory=$true,
                      ValueFromRemainingArguments=$true)] [String[]]
            $ComputerName
          ) 
    Именованный аргумент HelpMessage
        Аргумент HelpMessage задает сообщение, которое содержит 
        краткое описание параметра. В следующем примере показано 
        объявление параметра, в котором определяется описание параметра.
        Param
          (
            [parameter(Mandatory=$true,
                      HelpMessage="An array of computer names.")] 
            [String[]]
            $ComputerName
          ) 
  Атрибут Alias
      Атрибут Alias задает другое имя параметра. Для параметра можно 
      определить произвольное число псевдонимов. В следующем примере 
      показано объявление обязательного параметра, в котором для параметра 
      ComputerName определен псевдоним CN.
        Param
          (
            [parameter(Mandatory=$true)]
            [alias("CN")]
            [String[]]
            $ComputerName
          ) 
  Атрибуты проверки параметров
      Эти атрибуты определяют, каким образом среда выполнения Windows 
      PowerShell проверяет аргументы расширенных функций.
    Атрибут проверки AllowNull
       Атрибут AllowNull позволяет устанавливать аргумент обязательного 
       параметра командлета равным Null. В следующем примере параметр 
       ComputerName может содержать значение Null, даже если параметр 
       является обязательным. 
        Param
          (
            [parameter(Mandatory=$true)]
            [String]
            [AllowNull()]
            $ComputerName
          ) 
    Атрибут проверки AllowEmptyString
        Атрибут AllowEmptyString позволяет задавать в качестве аргумента 
        обязательного параметра командлета пустую строку. В следующем примере 
        параметр ComputerName может содержать пустую строку (""), даже если 
        параметр является обязательным. 
        Param
          (
            [parameter(Mandatory=$true)]
            [String]
            [AllowEmptyString()]
            $ComputerName
          ) 
    Атрибут проверки AllowEmptyCollection
        Атрибут AllowEmptyCollection позволяет задавать в качестве 
        аргумента обязательного параметра командлета пустую коллекцию. 
        Param
          (
            [parameter(Mandatory=$true)]
            [String[]]
            [AllowEmptyCollection()]
            $ComputerName
          ) 
    Атрибут проверки ValidateCount
        Атрибут ValidateCount задает минимальное и максимальное число 
        аргументов, которые может принимать параметр. Среда выполнения Windows 
        PowerShell создает ошибку, если число аргументов выходит за эти пределы
. 
        В следующем примере у параметра ComputerName может быть от одного до 
        пяти аргументов. 
        Param
          (
            [parameter(Mandatory=$true)]
            [String[]]
            [ValidateCount(1,5)]
            $ComputerName
          ) 
    Атрибут проверки ValidateLength
        Атрибут ValidateLength задает минимальную и максимальную 
        длину аргумента параметра. Среда выполнения Windows 
        PowerShell создает ошибку, если длина аргумента параметра 
        выходит за эти пределы.
        В следующем примере задаются имена компьютеров, длина которых 
        должна лежать в интервале от 1 до 10 знаков. 
        Param
          (
            [parameter(Mandatory=$true)]
            [String[]]
            [ValidateLength(1,10)]
            $ComputerName
          ) 
    Атрибут проверки ValidatePattern
        Атрибут ValidatePattern задает регулярное выражение, которое 
        проверяет шаблон аргумента параметра. Среда выполнения Windows 
        PowerShell создает ошибку, если аргумент параметра не соответствует 
        этому шаблону. В следующем примере аргументом параметра должно быть 
        четырехзначное число, каждый разряд которого может содержать число от 
        0 до 9. 
        Param
          (
            [parameter(Mandatory=$true)]
            [String[]]
            [ValidatePattern("[0-9][0-9][0-9][0-9]")] 
            $ComputerName
          ) 
    Атрибут проверки ValidateRange
        Атрибут ValidateRange задает минимальное и максимальное значение 
        аргумента параметра. Среда выполнения Windows PowerShell создает 
        ошибку, если аргумент параметра выходит за эти пределы. В следующем 
        примере аргумент параметра не может быть меньше 0 или больше 10. 
        Param
          (
            [parameter(Mandatory=$true)]
            [Int[]]
            [ValidateRange(0,10)]
            $Count
          ) 
    Атрибут проверки ValidateScript
        Атрибут ValidateScript задает скрипт, который используется 
        для проверки аргумента параметра. Среда выполнения Windows 
        PowerShell создает ошибку, если результатом выполнения 
        скрипта является значение false или если скрипт создает 
        исключение. В следующем примере значение параметра Count 
        должно быть менее 4.
        Param
          (
            [parameter()]
            [Int]
            [ValidateScript({$_ -lt 4})]
            $Count
          ) 
    Атрибут ValidateSet
        Атрибут ValidateSet задает набор допустимых значений аргумента 
        параметра.. Среда выполнения Windows PowerShell создает ошибку, если 
        аргумент параметра не совпадает ни с одним из значений в наборе.
        В следующем примере аргумент параметра может содержать только 
        имена Steve, Mary и Carl. 
        Param
          (
            [parameter(Mandatory=$true)]
            [String[]]
            [ValidateRange("Steve", "Mary", "Carl")] 
            $UserName
          ) 
    Атрибут проверки ValidateNotNull
        Атрибут ValidateNotNull определяет, что аргумент параметра не 
        может иметь значение Null. Среда выполнения Windows 
        PowerShell создает ошибку, если параметр имеет значение Null.  
        Param
          (
            [parameter(Mandatory=$true)]
            [String[]]
            [ValidateNotNull()]
            $UserName
          ) 
    Атрибут проверки ValidateNotNullOrEmpty
        Атрибут ValidateNotNullOrEmpty определяет, что аргумент 
        параметра не может иметь значение Null и не может быть 
        пустым. Среда выполнения Windows PowerShell создает ошибку, если 
        параметр задан, но имеет значение Null, пустой строки или пустого 
        массива.  
        Param
          (
            [parameter(Mandatory=$true)]
            [String[]]
            [ValidateNotNullOrEmpty()]
            $UserName
          ) 
Динамические параметры
    Динамические параметры — это параметры командлета, функции или скрипта, 
    доступные только при определенных условиях.  
    Например, у некоторых командлетов поставщика могут быть параметры, 
    доступные только при использовании командлета в пути поставщика. 
    Одним из динамических параметров является параметр Encoding 
    командлета Set-Item, который доступен только при использовании командлета 
    Set-Item в пути поставщика FileSystem. 
    Для создания динамического параметра функции или скрипта 
    используйте ключевое слово DynamicParam. 
    Синтаксис выглядит следующим образом/ 
    DynamicParam {<список_инструкций>}  
    В списке инструкций используйте инструкцию If для указания условий, 
    при которых параметр будет доступен в функции. 
    Используйте командлет New-Object для создания объекта 
    System.Management.Automation.RuntimeDefinedParameter, представляющего 
    параметр и задающего его имя.  
    Также можно использовать команду New-Object для создания объекта 
    System.Management.Automation.ParameterAttribute, представляющего атрибуты 
    параметра (например, Mandatory, Position или ValueFromPipeline) 
    или его набор параметров. 
    В следующем примере показана функция со стандартными параметрами Name и 
    Path, а также с дополнительным динамическим параметром DP1. Параметр DP1 
    находится в наборе параметров PSet1 и принадлежит к типу Int32. 
    Параметр DP1 доступен в функции Sample только в том случае, если 
    в значении параметра Path содержится строка "HKLM:", указывающая 
    на использование командлета на диске реестра HKEY_LOCAL_MACHINE. 
     
      
        function Sample { 
          Param ([String]$Name, [String]$Path) 
      
          DynamicParam 
          { 
            if ($path -match "*HKLM*:") 
            { 
              $dynParam1 = new-object  
                System.Management.Automation.RuntimeDefinedParameter("dp1", 
                [Int32], $attributeCollection) 
      
              $attributes = new-object System.Management.Automation.ParameterAt
tribute 
              $attributes.ParameterSetName = 'pset1' 
              $attributes.Mandatory = $false 
      
              $attributeCollection = new-object  
                -Type System.Collections.ObjectModel.Collection``1[System.Attri
bute] 
              $attributeCollection.Add($attributes) 
     
              $paramDictionary = new-object  
                System.Management.Automation.RuntimeDefinedParameterDictionary 
              $paramDictionary.Add("dp1", $dynParam1) 
             
              return $paramDictionary 
            } End if 
          } 
        }   
      
    Дополнительные сведения см. в разделе "Класс RuntimeDefinedParameter" 
    библиотеки MSDN (Microsoft Developer Network) 
    по адресу http://go.microsoft.com/fwlink/?LinkID=145130.         
СМ. ТАКЖЕ
    about_Advanced Functions
    about_Functions_Advanced_Methods  
    about_Functions_CmdletBindingAttribute



about_functions_cmdletbindinga...

РАЗДЕЛ
    about_Functions_CmdletBindingAttribute
КРАТКОЕ ОПИСАНИЕ
    Описывает атрибут, который объявляет функцию, действие которой 
    похоже на действие скомпилированного командлета.
ПОЛНОЕ ОПИСАНИЕ
    При написании функций можно добавлять атрибут CmdletBinding, 
    чтобы среда Windows PowerShell привязывала параметры функции так 
    же, как выполняется привязка параметров скомпилированных 
    командлетов. Если этот атрибут объявлен, среда Windows PowerShell 
    также задает автоматическую переменную $PSCmdlet.
    При использовании привязки командлета неизвестные параметры и 
    позиционные аргументы, для которых отсутствуют соответствующие 
    позиционные параметры, вызывают сбой привязки параметров. Кроме того, 
    функция или скрипт с привязкой командлета не использует переменную $args.
    Примечание. Скомпилированные командлеты используют обязательный 
    атрибут Cmdlet, действие которого похоже на действие описываемого 
    в этом разделе атрибута CmdletBinding. 
    В следующем примере показан шаблон функции, которая задает все 
    необязательные аргументы атрибута CmdletBinding. После примера 
    приведено краткое описание каждого из аргументов.
        {
          [CmdletBinding(SupportsShouldProcess=<Boolean>,
                     ConfirmImpact=<String>,
                     DefaultParameterSetName=<String>)]
          Param ($Parameter1)
          Begin{}
          Process{}
          End{}
        }
  SupportsShouldProcess
      Если аргумент SupportsShouldProcess имеет значение true, это 
      значит, что функция поддерживает вызовы метода ShouldProcess, 
      который запрашивает у пользователя подтверждение, прежде чем функция 
      изменит систему. Если этот аргумент задан, для функции включаются 
      параметры Confirm и WhatIf.
 
      Дополнительные сведения о запросах подтверждения см. в разделе 
      "Запрос подтверждения" библиотеки MSDN (Microsoft Developer 
      Network) по адресу http://go.microsoft.com/fwlink/?LinkId=136658.
  DefaultParameterSetName
 
      Аргумент DefaultParameterSetName задает имя набора параметров, 
      который среда Windows PowerShell будет пытаться использовать, 
      если ей не удастся определить нужный набор параметров. Этой 
      ситуации можно избежать, сделав уникальный параметр каждого из 
      наборов параметров обязательным.
  ConfirmImpact
      Аргумент ConfirmImpact определяет, в каком случае действие 
      функции должно быть подтверждено вызовом метода ShouldProcess. Вызов 
      метода ShouldProcess отображает запрос подтверждения только тогда, когда 
      аргумент ConfirmImpact больше или равен значению привилегированной 
      переменной $ConfirmPreference. (По умолчанию этот аргумент имеет значение
 
      Medium.) Этот аргумент следует задавать только в том случае, когда задан 
      аргумент SupportsShouldProcess.
СМ. ТАКЖЕ
    about_Functions_Advanced
    about_Functions_CmdletBindingAttribute
    about_Functions_ParameterAttributes



about_hash_tables

РАЗДЕЛ
    about_Hash_Tables
КРАТКОЕ ОПИСАНИЕ
    Описывает, как создавать, использовать и сортировать хэш-таблицы 
    в Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Хэш-таблица, также называемая словарем или массивом ассоциативных 
    элементов, представляет собой компактную структуру данных, в которой 
    хранится одна или несколько пар "имя-значение". Например, хэш-таблица 
    может содержать набор имен и идентификаторов сотрудников, имен 
    компьютеров и IP-адресов или идентификаторов сообщений и текстов 
    сообщений.
 
    Хэш-таблицы используются довольно часто, потому что они позволяют 
    эффективно находить и извлекать данные. В Windows PowerShell с 
    помощью хэш-таблиц можно хранить списки или создавать вычисляемые 
    свойства. Кроме того, в Windows PowerShell имеется командлет 
    ConvertFrom-StringData, который преобразует строки в хэш-таблицу.
  Создание хэш-таблиц
      Элементы в хэш-таблице организуются в пары "имя-значение", например:
          Msg1="Please enter your password."
          Msg2="The path parameter is required." 
          Msg3="The alias of Get-Command is gcm." 
      Значения сопоставляются или ассоциируются с именами, поэтому в 
      ответ на имя среда Windows PowerShell возвращает значение.
      В Windows PowerShell синтаксис хэш-таблиц имеет следующий вид:
 
          @{ <имя> = <значение>; [<имя> = 
      При создании хэш-таблицы необходимо соблюдать следующие правила:
          - начинайте хэш-таблицу со знака "@";
          - заключайте хэш-таблицу в фигурные скобки ({});
          - в качестве содержимого хэш-таблицы вводите одну или более 
            пар "имя-значение";
          - используйте знак "равно" (=), чтобы отделять имена от 
            значений;
          - чтобы разделять пары "имя-значение", используйте точку с 
            запятой (;);
          - если имя или значение содержит пробелы, заключите его в 
            кавычки.
      Например, хэш-таблица для приведенных выше сообщений выглядит 
      следующим образом:
          @{
          Msg1="Please enter your password.";
          Msg2="The path parameter is required."; 
          Msg3="The alias of Get-Command is gcm."; }
      Чтобы хэш-таблицу можно было использовать в скриптах и 
      командах, сохраните ее в переменной. Значением переменной 
      является объект хэш-таблицы (System.Collections.Hashtable), а 
      имена каждой из пар "имя-значение" являются свойствами объекта хэш-
      таблицы.
      Следующие команды сохраняют хэш-таблицу сообщений пользователя в 
      переменной $a, а для отображения значений в них используется 
      обращение через точку. 
          C:\PS> $a = @{
          >> Msg1="Please enter your password.";
          >> Msg2="The path parameter is required.";
          >> Msg3="The alias of Get-Command is gcm.";
          >> }
          C:\PS> $a
          Name                           Value
          ----                           -----
          Msg1                    Please enter your password.
          Msg3                    The alias of Get-Command is gcm.
          Msg2                    The path parameter is required.
          C:\PS> $a.Msg1
          Please enter your password.
      Хэш-таблицы не ограничиваются одним типом данных. В хэш-таблицу 
      можно вводить данные любого типа, а в одной хэш-таблице можно 
      объединять данные различных типов. Например, можно создать 
      хэш-таблицу, которая содержит целое число, вызов командлета и 
      строку.
  Сортировка хэш-таблиц
      Для сортировки хэш-таблицы по алфавиту по ключам или по значениям, 
      используется метод хэш-таблиц GetEnumerator, которые получает ключи и 
      значения хэш-таблицы, после чего они сортируются с помощью командлета Sor
t-Object.
      Например, следующая команда сортирует хэш-таблицу в переменной $a по 
      алфавиту по ключам.
          C:\PS> $a.getenumerator() | sort-object -property key
          Name                           Value
          ----                           -----
          Msg1                           Please enter your password.
          Msg2                           The path parameter is required.
          Msg3                           The alias of Get-Command is gcm.
      Следующая команда с помощью того же метода сортирует значения 
      хэш-таблицы по убыванию.
          C:\PS> $a.getenumerator() | sort-object -property value 
          -descending
          Name                           Value
          ----                           -----
          Msg2                           The path parameter is required.
          Msg3                           The alias of Get-Command is gcm.
          Msg1                           Please enter your password.
  ConvertFrom-StringData
      Командлет ConvertFrom-StringData преобразует строку или 
      автономную строку, содержащую пары "имя-значение", в 
      хэш-таблицу. Командлет ConvertFrom-StringData можно безопасно 
      использовать в разделе Data скрипта, либо его можно использовать с 
      командлетом Import-LocalizedData, чтобы отображать сообщения с 
      помощью культуры пользовательского интерфейса текущего пользователя.
      Автономные строки особенно удобно использовать в случаях, когда 
      значения в хэш-таблице включают кавычки. (Дополнительные сведения об 
      автономных строках см. в разделе about_Quoting_Rules.)
      В следующем примере показано, как создать автономную строку из 
      пользовательских сообщений из предыдущего примера и с помощью командлета 
      ConvertFrom-StringData преобразовать эту строку в хэш-таблицу.
      Следующая команда создает автономную строку из пар 
      "имя-значение", а затем сохраняет ее в переменной $string.
          C:\PS> $string = @"
          Msg1="Please enter your password."
          Msg2="The path parameter is required." 
          Msg3="The alias of Get-Command is gcm."
          "@
   
    Эта команда с помощью командлета ConvertFrom-StringData преобразует 
    автономную строку в хэш-таблицу.
        C:\PS> convertfrom-stringdata $string
        Name                           Value
        ----                           -----
        Msg3                           "The alias of Get-Command is gcm."
        Msg2                           "The path parameter is required."
        Msg1                           "Please enter your password."
СМ. ТАКЖЕ
    about_Arrays
    about_Quoting_Rules
    about_Script_Internationalization 
    ConvertFrom-StringData
    Import-LocalizedData
    



about_History

РАЗДЕЛ
    about_History
КРАТКОЕ ОПИСАНИЕ
    Описывает, как извлекать команды из журнала команд.
ПОЛНОЕ ОПИСАНИЕ
    При вводе команды в командной строке среда Windows PowerShell 
    сохраняет команды в журнале команд. Журнал команд можно использовать в 
    качестве механизма регистрации выполняемых операций. Кроме того, 
    можно вызывать и выполнять команды, записанные в журнал.
  Командлеты журнала
      В Windows PowerShell имеется набор командлетов, управляющих журналом 
      команд.
          Командлет (псевдоним)   Описание
          ---------------------   ------------------------------------
          Get-History (h)         Возвращает журнал команд.
          Invoke-History (r)      Выполняет команду в журнале команд.
          Add-History             Добавляет команду в журнал команд.
          Clear-History (clh)     Удаляет команды из журнала команд.
  Сочетания клавиш для управления журналом
      В консоли Windows PowerShell для управления журналом команд можно 
      использовать следующие сочетания клавиш.
 
      Для других приложений см. документацию к соответствующему продукту.
          Клавиши           Действие
          -------------     ------------------------
          СТРЕЛКА ВВЕРХ     Отображает предыдущую команду.
 
          СТРЕЛКА ВНИЗ      Отображает следующую команду.
 
          F7                Отображает журнал команд. Чтобы скрыть журнал, 
                            нажмите клавишу ESC.
 
          F8                Находит команду. Введите один или более 
                            знаков и нажмите клавишу F8. Для получения следующе
го 
                            вхождения снова нажмите клавишу F8.
          F9                Находит команду по идентификатору в 
                            журнале. Введите идентификатор в журнале и нажмите 
клавишу 
                            F9. Чтобы найти идентификатор, нажмите клавишу F7.
  MaximumHistoryCount
      Привилегированная переменная $MaximumHistoryCount определяет 
      максимальное число команд, которое Windows PowerShell сохраняет 
      в журнале команд.
      Значение по умолчанию - 64, что означает, что среда Windows 
      PowerShell сохраняет 64 последние команды, но значение этой 
      переменной можно изменить.
      
      Например, следующая команда увеличивает значение $MaximumHistory
      Count до 100 команд:
          $MaximumHistoryCount = 100
      Чтобы изменения вступили в силу, перезапустите Windows PowerShell. 
      Чтобы сохранить новое значение переменной для всех сеансов Windows 
      PowerShell, добавьте инструкцию присваивания в профиль Windows PowerShell
.
      Дополнительные сведения см. в разделе about_Profiles.
  Порядок команд в журнале  
      Команды добавляются в журнал по завершении выполнения, а не при 
      вводе. Если для завершения команды требуется некоторое время, 
      или если команда выполняется во вложенной командной строке, порядок 
      следования команд в журнале может быть нарушен. (Команды, выполняемые во 
      вложенной командной строке, завершаются только при выходе из 
      вложенной командной строки.)
СМ. ТАКЖЕ
    about_Line_Editing
    about_Variables
    about_Preference_Variables



about_If

РАЗДЕЛ
    about_If
КРАТКОЕ ОПИСАНИЕ
    Описывает команду языка, которую можно использовать для 
    выполнения списка инструкций на основании результатов проверки 
    одного или нескольких условий.
ПОЛНОЕ ОПИСАНИЕ
    При помощи инструкции If можно выполнять определенные блоки кода 
    только в том случае, когда заданное условие имеет значение true. 
    Кроме того, можно задать одно или несколько дополнительных 
    условий, если все предыдущие условия имели значение false. 
    Наконец, можно задать дополнительный блок кода, который будет 
    выполняться в том случае, если ни одно из условий не имеет 
    значения "true". 
  Синтаксис
    В следующем примере показан синтаксис инструкции If:
        if (<условие_1>) 
            {<список_инструкций_1>}
        [elseif (<условие_2>)
            {<список_инструкций_2>}]
        [else
            {<список_инструкций_3>}]
    При выполнении инструкции If среда Windows PowerShell проверяет 
    истинность условного выражения <условие_1>. Если <условие_1> 
    имеет значение true, то выполняется <список_инструкций_1>, а Windows 
    PowerShell завершает выполнение инструкции If. 
    Если <условие_1> имеет значение false, то Windows PowerShell проверяет 
    истинность условного выражения <условие_2>. 
    Если <условие_2> имеет значение true, то выполняется 
    <список_инструкций_2>, а Windows PowerShell завершает выполнение 
    инструкции If. Если и <условие_1>, и <условие_2> имеют значение 
    false, то выполняется <список_инструкций_3>, а затем Windows 
    PowerShell завершает выполнение 
    инструкции If. 
    Можно использовать несколько инструкций Elseif для создания 
    цепочки условий, каждое из которых будет проверяться только в том 
    случае, когда все предыдущие условия имеют значения false. Если 
    требуется создать инструкцию If, содержащую много инструкций 
    Elseif, удобнее использовать инструкцию Switch.
  Примеры
    Простейшая инструкция If содержит одну команду и не содержит ни одной 
    инструкции Elseif или Else. В следующем примере показана простейшая форма 
    инструкции If:
        if ($a -gt 2)
        {
            Write-Host "The value $a is greater than 2." }
    Если в этом примере значение переменной $a больше 2, то условие 
    оказывается равным true, и выполняется набор инструкций. Однако если 
    значение переменной $a меньше или равно 2 либо такой переменной не 
    существует, то инструкция If не будет выводить никаких сообщений. При 
    помощи инструкции Else можно сделать так, чтобы в случае, когда 
    значение переменной $a меньше или равно 2, отображалось сообщение, 
    как это показано в следующем примере:
        if ($a -gt 2)
        {
            Write-Host "The value $a is greater than 2." 
        }
        else
        {
            Write-Host "The value $a is less than or equal to 2, is not  
        created or is not initialized."
        }
    Усложняя данный пример, можно воспользоваться инструкцией Elseif 
    для вывода специального сообщения в том случае, когда значение 
    переменной $a равно 2, как это показано в следующем примере:
        if ($a -gt 2)
        {
            Write-Host "The value $a is greater than 2." 
        }
        elseif ($a -eq 2)
        {
            Write-Host "The value $a is equal to 2." 
        }
        else
        {
            Write-Host "The value $a is less than 2 or was not created 
        or initialized."
        }
СМ. ТАКЖЕ
    about_Comparison_Operators
    about_Switch



about_job_details

РАЗДЕЛ
  about_Job_Details
КРАТКОЕ ОПИСАНИЕ
  Содержит сведения о фоновых заданиях на локальных и удаленных 
  компьютерах.
    
ПОДРОБНОЕ ОПИСАНИЕ
   В этом разделе описаны принципы работы фоновых заданий и приведены 
   технические сведения о работе фоновых заданий в Windows PowerShell.
   Этот раздел дополняет разделы about_Jobs и about_Remote_Jobs.
   Важно: фоновые задания, запущенные с помощью команды Start-Job или 
   параметра AsJob команды Invoke-Command, используют инфраструктуру 
   удаленного взаимодействия Windows PowerShell. Для использования 
   этих функций необходимо настроить в Windows PowerShell удаленное 
   взаимодействие, даже если фоновое задание выполняется только на локальном 
   компьютере. Дополнительные сведения см. в разделе about_Remote_Requirements.
 ФОНОВЫЕ ЗАДАНИЯ
    Фоновое задание выполняет команду или выражение асинхронно. Оно может 
    выполнять командлеты, функции, скрипты или другие задачи на базе 
    команд. Фоновые задания предназначены для запуска команд, выполнение 
    которых занимает продолжительное время, но их можно использовать для 
    запуска любых команд в фоновом режиме.
    При выполнении синхронной команды командная строка Windows PowerShell 
    отключается, пока команда не будет завершена, в то время как при 
    использовании фоновых задании командная строка Windows PowerShell не 
    отключается. Команда, запускающая фоновое задание, возвращает объект 
    задания. Командная строка становится доступной сразу же, поэтому во 
    время выполнения фонового задания можно работать с другими задачами.
  
    Однако при запуске фонового задания результаты не возвращаются 
    немедленно, даже если задание выполняется очень быстро. 
    Возвращаемый объект задания содержит полезные сведения о задании, 
    но не содержит результатов выполнения задания. Необходимо 
    выполнить отдельную команду, чтобы получить результаты задания. 
    Кроме того, можно выполнить команду, чтобы остановить задание, 
    дождаться завершения задания или удалить задание.
    Чтобы синхронизация фонового задания не зависела от других 
    команд, каждое фоновое задание выполняется в собственной среде Windows 
    PowerShell ("сеансе"). Это может быть как временное подключение, 
    которое создается только для выполнения задания, а потом 
    уничтожается, так и постоянный сеанс (PSSession), который можно 
    использовать для выполнения нескольких связанных заданий и команд.
 ИСПОЛЬЗОВАНИЕ КОМАНДЛЕТОВ JOB
    Для запуска фонового задания на локальном компьютере служит 
    команда Start-Job. Команда Start-Job возвращает объект задания. 
    Кроме того, объекты заданий, запущенных на локальном компьютере, можно 
    получить с помощью командлета Get-Job.
    Чтобы получить результаты задания, следует использовать командлет 
    Receive-Job. Если задание не завершено, командлет Receive-Job 
    возвращает частичные результаты. Кроме того, можно использовать 
    командлет Wait-Job, который отключает командную строку, пока одно 
    или все запущенные в сеансе задания не будут завершены.
    Для остановки фоновых заданий используется командлет Stop-Job. 
    Для удаления заданий используется командлет Remove-Job.
    Дополнительные сведения о работе командлетов см. в разделах справки, 
    посвященных соответствующим командлетам, а также в разделе about_Jobs.
 
 ЗАПУСК ФОНОВЫХ ЗАДАНИЙ НА УДАЛЕННЫХ КОМПЬЮТЕРАХ
    Создавать фоновые задания и управлять ими можно как на локальном, 
    так и на удаленном компьютере. Чтобы запустить фоновое задание 
    удаленно, следует воспользоваться параметром AsJob командлета, 
    например командлета Invoke-Command, или с помощью командлета 
    Invoke-Command удаленно выполнить команду Start-Job. Кроме того, 
    фоновые задания можно запускать в интерактивных сеансах.
    Дополнительные сведения об удаленных фоновых заданиях см. в разделе 
    about_Remote_Jobs.
 ДОЧЕРНИЕ ЗАДАНИЯ
    Каждое фоновое задание состоит из родительского задания и одного или 
    нескольких дочерних заданий. В заданиях, запускаемых с помощью 
    команды Start-Job или параметра AsJob командлета Invoke-Command, 
    родительское задание является ведущим. Оно не выполняет никаких 
    команд и не возвращает никаких результатов. Реальные команды 
    выполняются дочерними заданиями. (Задания, запускаемые с помощью 
    других командлетов, могут работать иначе.)
    Дочерние задания хранятся в свойстве ChildJobs объекта 
    родительского задания. Свойство ChildJobs может содержать один 
    или несколько объектов дочерних заданий. У объектов дочерних 
    заданий имеются имя, идентификатор и идентификатор экземпляра, которые 
    отличаются от родительского задания, поэтому родительскими и 
    дочерними заданиями можно управлять по отдельности или как единым целым.
    Чтоб определить родительские и дочерние задания внутри задания, 
    следует использовать командлет Get-Job, чтобы получить 
    родительское задание, а затем по конвейеру передать это задание 
    команде Format-List, которая выведет значения свойств Name и ChildJobs 
    объектов, как показано в следующей команде.
        C:\PS> get-job | format-list -property Name, ChildJobs
        Name          : Job1
        ChildJobs     : {Job2}
    Кроме того, можно использовать команду Get-Job с дочерним 
    заданием, как показано ниже:
        C:\PS> get-job job2
        Id    Name   State      HasMoreData   Location    Command
        --    ----   -----      -----------   --------    -------
        2     Job2   Completed  True          localhost   get-process
    Конфигурация дочернего задания зависит от команды, с помощью которой 
    запускается задание.
       -- При запуске задания на локальном компьютере с помощью 
          команды Start-Job задание состоит из ведущего родительского 
          задания и дочернего задания, которое выполняет команды.
       -- При запуске задания на одном или нескольких компьютерах с 
          помощью параметра AsJob команды Invoke-Command задание 
          состоит из ведущего родительского задания и дочернего 
          задания для каждого задания, выполняемого на каждом из 
          компьютеров.
       -- При выполнении команды Start-Job на одном или нескольких 
          удаленных компьютерах с помощью команды Invoke-Command 
          результат не отличается от выполнения локальной команды на 
          каждом из удаленных компьютеров. Команда возвращает объект 
          задания для каждого компьютера. Объект задания состоит из 
          ведущего родительского задания и одного дочернего задания, 
          которое выполняет команду.
    
    Родительское задание представляет все дочерние задания. При управлении 
    родительским заданием также происходит управление связанными с ним 
    дочерними заданиями. Например, если остановить родительское задание, 
    все дочерние задания также будут остановлены. Если получить результаты 
    родительского задания, будут получены результаты всех дочерних заданий.
    Однако дочерними заданиями можно управлять и по отдельности. Это 
    бывает особенно полезно, если требуется разобраться в проблеме с 
    заданием или получить результаты только для одного из нескольких 
    дочерних заданий, запущенных с помощью параметра AsJob командлета 
    Invoke-Command. (Обратный апостроф (`) является знаком 
    продолжения строки.)
    В следующей команде с помощью параметра AsJob командлета 
    Invoke-Command запускаются фоновые задания на локальном 
    компьютере и двух удаленных компьютерах. Команда сохраняет 
    задание в переменной $j.
        C:\PS> $j = invoke-command -computername localhost, Server01, Server02 
`
               -command {get-date} -AsJob
    При отображении свойств Name и ChildJob задания в переменной $j 
    видно, что команда вернула объект задания с тремя дочерними 
    заданиями, по одному на каждый компьютер.
        C:\PS> $j | format-list name, childjobs
        Name      : Job3
        ChildJobs : {Job4, Job5, Job6}
    При отображении родительского задания видно, что задание 
    закончилось сбоем.
        C:\PS> $j
        Id   Name    State   HasMoreData     Location             Command
        --   ----    -----   -----------     --------             -------
        1    Job3    Failed  True            localhost,server... get-date
    Однако при выполнении команды Get-Job для каждого из дочерних заданий 
    становится понятно, что сбоем закончилось только одно задание.
        PS C:\ps-test> get-job job4, job5, job6
        Id   Name   State      HasMoreData     Location           Command
        --   ----   -----      -----------     --------           -------
        4    Job4   Completed  True            localhost          get-date
        5    Job5   Failed     False           Server01           get-date
        6    Job6   Completed  True            Server02           get-date
    
    Чтобы получить результаты всех дочерних заданий, необходимо с помощью 
    командлета Receive-Job получить результаты родительского задания. Но 
    можно также получить результаты конкретного дочернего задания, как 
    показано в следующей команде.
        C:\PS> receive-job -job6 -keep | format-table ComputerName, DateTime -a
uto
       
        ComputerName DateTime
        ------------ --------
        Server02   Четверг, 13 марта 2008 г., 16:16:03
    Поддержка дочерних заданий в фоновых заданиях Windows PowerShell 
    обеспечивает более широкие возможности управления выполняемыми 
    заданиями.
СМ. ТАКЖЕ
    about_Jobs
    about_Remote_Jobs
    about_Remote
    Invoke-Command
    Start-Job
    Get-Job
    Wait-Job
    Stop-Job
    Remove-Job
    New-PSSession
    Enter-PSSession
    Exit-PSSession



about_jobs

РАЗДЕЛ
    about_Jobs
КРАТКОЕ ОПИСАНИЕ
    Сведения о выполнении команд и выражений в фоновых заданиях Windows 
    PowerShell, не затрагивающем текущий сеанс. 
ПОЛНОЕ ОПИСАНИЕ
    В этом разделе описывается запуск фоновых заданий в Windows 
    PowerShell на локальном компьютере. Дополнительные сведения о 
    запуске фоновых заданий на удаленных компьютерах см. в разделе 
    about_Remote_Jobs. 
    
    При запуске фонового задания командная строка возвращается 
    немедленно, даже если для выполнения задания требуется 
    значительное время. Пока задание выполняется, можно продолжать 
    работу с данным сеансом. 
    Важно: фоновые задания, запущенные с помощью команды Start-Job 
           или параметра AsJob команды Invoke-Command, используют 
           инфраструктуру удаленного взаимодействия Windows PowerShell. 
           Для использования этих функций необходимо настроить в Windows 
           PowerShell удаленное взаимодействие, даже если фоновое задание 
           выполняется только на локальном компьютере. Дополнительные 
           сведения см. в разделе about_Remote_Requirements.
 
        
 ЗАПУСК ЗАДАНИЯ НА ЛОКАЛЬНОМ КОМПЬЮТЕРЕ
    Чтобы запустить фоновое задание на локальном компьютере, 
    используйте командлет Start-Job. 
    При вводе команды Start-Job команда, выполняемая в фоновом задании, 
    заключается в фигурные скобки ( { } ). Для указания команды 
    используйте параметр ScriptBlock.
    Следующая команда запускает фоновое задание, выполняющее команду 
    Get-Process на локальном компьютере.
        start-job -scriptblock {get-process}
    Команда Start-Job возвращает объект, представляющий задание. 
    Объект задания содержит полезные сведения о задании, но не 
    содержит результаты его выполнения.
    
    Сохраните объект задания в переменной, чтобы в дальнейшем 
    использовать его с другими командлетами Job для управления 
    фоновыми заданиями. Следующая команда запускает объект задания и 
    сохраняет результирующий объект задания в переменной $job.
        $job = start-job -scriptblock {get-process} 
    Кроме того, с помощью командлета Get-Job можно получать объекты, 
    представляющие задания, запущенные в текущем сеансе. Командлет 
    Get-Job возвращает тот же объект задания, что и командлет Start-Job.
 
 ПОЛУЧЕНИЕ ОБЪЕКТОВ ЗАДАНИЙ
    Чтобы получить объект, представляющий фоновые задания, запущенные 
    в текущем сеансе, используйте командлет Get-Job. При вызове без 
    параметров команда Get-Job возвращает все задания, запущенные в 
    текущем сеансе.
    Например, следующая команда получает все задания в текущем сеансе.
	get-job
        Id  Name  State      HasMoreData  Location   Command
        --  ----  -----      -----------  --------   -------
        1   Job1  Running    True         localhost  get-process
    Также можно сохранить объект задания в переменной и использовать  
    его в последующих командах как объект, представляющий это задание. 
    Следующая команда получает задание с идентификатором 1 и сохраняет 
    его в переменной $job.
       $job = get-job -id 1 
    Объект задания содержит состояние задания, показывающее, 
    закончено ли его выполнение. Завершенное задание имеет состояние 
    "Complete" (Выполнено) или "Failed" (Не удалось выполнить). Также 
    задание может быть заблокированным или выполняющимся.
	get-job
        Id  Name  State      HasMoreData  Location   Command
        --  ----  -----      -----------  --------   -------
        1   Job1  Complete    True         localhost  get-process
 ПОЛУЧЕНИЕ РЕЗУЛЬТАТОВ ВЫПОЛНЕНИЯ ЗАДАНИЯ
    При выполнении фонового задания результаты появляются не сразу. 
    Вместо этого командлет Start-Job возвращает объект, представляющий это 
    задание, но не содержащий результатов его выполнения. Чтобы получить 
    результаты выполнения фонового задания, используйте командлет Receive-Job.
    В следующей команде используется командлет Receive-Job для получения 
    результатов выполнения задания. Используется объект задания, сохраненный в 
    переменной $job и обозначающий это задание.
	receive-job -job $job
     Командлет Receive-Job возвращает результаты выполнения задания. 
           Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)    Id ProcessName
           -------  ------    -----      ----- -----   ------    -- -----------
               103       4    11328       9692    56           1176 audiodg
               804      14    12228      14108   100   101.74  1740 CcmExec
               668       7     2672       6168   104    32.26   488 csrss
	   ...
     Результаты выполнения задания также можно сохранить в 
     переменной. Следующая команда сохраняет результат выполнения задания, 
     размещенного в переменной $job, в переменную $results.
	$results = receive-job -job $job
     Кроме того, результаты выполнения задания можно сохранить в 
     файле с помощью оператора перенаправления (>) или командлета 
     Out-File. В следующей команде с помощью 
     оператора перенаправления результаты выполнения задания из 
     переменной $job сохраняются в файле Results.txt.
        receive-job -job $job > results.txt
    
 ПОЛУЧЕНИЕ И СОХРАНЕНИЕ ЧАСТИЧНЫХ РЕЗУЛЬТАТОВ ВЫПОЛНЕНИЯ ЗАДАНИЙ
    Командлет Receive-Job возвращает результаты выполнения фонового 
    задания. Если задание завершено, командлет Receive-Job возвращает 
    полные результаты его выполнения. Если задание все еще 
    выполняется, командлет Receive-Job получает результаты, созданные 
    на данный момент. Затем можно снова запустить команду Receive-Job для 
    получения оставшихся результатов.
    Когда командлет Receive-Job возвращает результаты, по умолчанию 
    он удаляет их из кэша, где они хранились. При повторном запуске 
    команды Receive-Job получаются только те результаты, которые не 
    были получены в прошлый раз.
    Следующие команды выводят результаты команд Receive-Job, 
    выполненных до завершения задания.
	C:\PS> receive-job -job $job
        Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
        -------  ------    -----      ----- -----   ------     -- -----------
            103       4    11328       9692    56            1176 audiodg
            804      14    12228      14108   100   101.74   1740 CcmExec
	C:\PS> receive-job -job $job
        Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
        -------  ------    -----      ----- -----   ------     -- -----------
             68       3     2632        664    29     0.36   1388 ccmsetup
            749      22    21468      19940   203   122.13   3644 communicator
            905       7     2980       2628    34   197.97    424 csrss
           1121      25    28408      32940   174   430.14   3048 explorer
    Чтобы команда Receive-Job не удалила возвращенные ей результаты, 
    используйте параметр Keep. В этом случае команда Receive-Job 
    возвращает все результаты, созданные на данный момент.
    Следующие команды показывают влияние параметра Keep на 
    незавершенное задание. 
        Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
        -------  ------    -----      ----- -----   ------     -- -----------
            103       4    11328       9692    56            1176 audiodg
            804      14    12228      14108   100   101.74   1740 CcmExec
	C:\PS> receive-job -job $job -keep
        Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
        -------  ------    -----      ----- -----   ------     -- -----------
            103       4    11328       9692    56            1176 audiodg
            804      14    12228      14108   100   101.74   1740 CcmExec
             68       3     2632        664    29     0.36   1388 ccmsetup
            749      22    21468      19940   203   122.13   3644 communicator
            905       7     2980       2628    34   197.97    424 csrss
           1121      25    28408      32940   174   430.14   3048 explorer
    
ОЖИДАНИЕ РЕЗУЛЬТАТОВ
    Если выполнение задания занимает длительное время, можно с 
    помощью свойств объекта задания определить, когда оно будет завершено. 
    Следующая команда с помощью объекта Get-Job получает все фоновые 
    задания в текущем сеансе.
	get-job
    Результаты выводятся в виде таблицы. Состояние задания 
    отображается в столбце "State".
        Id  Name  State      HasMoreData  Location   Command
        --  ----  -----      -----------  --------   -------
        1   Job1  Complete    True         localhost  get-process
        2   Job2  Running     True         localhost  get-eventlog -log syst...
        3   Job3  Complete    True         localhost  dir -path c:\* -recurse
    В этом случае свойство State показывает, что задание Job2 все еще 
    выполняется. Если получить результаты выполнения задания с 
    помощью командлета Receive-Job прямо сейчас, они будут неполными. 
    Можно повторно использовать командлет Receive-Job, пока не будут 
    получены все результаты. По умолчанию при каждом использовании этого 
    командлета получаются только те результаты, которые не были получены 
    ранее, однако с помощью параметра Keep для командлета Receive-Job 
    можно сохранять полученные ранее результаты.
    Теперь можно сохранить результаты в файл и в дальнейшем добавлять 
    в него новые результаты по мере их поступления. Или можно выждать 
    и проверить состояние задания позже.
    Также можно использовать командлет Wait-Job для ожидания любых 
    (или всех) результатов выполнения задания. Командлет Wait-Job 
    позволяет дожидаться выполнения определенного задания, всех 
    заданий или любого из них.
  
    В следующей команде используется командлет Wait-Job для ожидания 
    результатов выполнения задания с идентификатором 10.
	wait-job -ID 10
    При этом командная строка Windows PowerShell отключается до завершения 
    задания.
    Также можно задать ожидание в течение определенного срока. В этой 
    команде с помощью параметра Timeout задается предельный срок 
    ожидания 120 секунд. По истечении этого срока возвращается 
    командная строка, но задание продолжает выполняться в фоновом режиме.
	wait-job -ID 10 -timeout 120
ОСТАНОВКА ЗАДАНИЯ
    Для остановки фоновых заданий используется командлет Stop-Job. 
    Следующая команда запускает задание, получающее все записи из 
    журнала событий System. Объект задания сохраняется в переменной $job.
	$job = start-job -scriptblock {get-eventlog -log system}
 
    Следующая команда останавливает задание. Она передает задание, 
    содержащееся в переменной $job, в командлет Stop-Job с помощью 
    оператора конвейера (|).
	$job | stop-job
УДАЛЕНИЕ ЗАДАНИЯ
    Для удаления фоновых заданий используется командлет Remove-Job. 
    Следующая команда удаляет объект, содержащийся в переменной $job.
	remove-job -job $job 
ПРОВЕРКА ЗАДАНИЯ, В КОТОРОМ ВОЗНИКЛА ОШИБКА
    Чтобы выяснить, почему не удалось выполнить задание, используйте 
    свойство Reason объекта задания.
    Следующая команда запускает задание без требуемых учетных данных. 
    Объект задания сохраняется в переменной $job.
         $job = start-job -scriptblock {new-item -path HKLM:\Software\MyCompany
}
         Id   Name  State    HasMoreData  Location   Command
         --   ----  -----    -----------  --------   -------
         1    Job1  Failed   False         localhost  new-item -path HKLM:\S...
    Следующая команда с помощью свойства Reason выясняет причину 
    ошибки, из-за которой не удалось выполнить задание.
         $job.ChildJobs[0].JobStateInfo.Reason
    В данном случае задание не удалось выполнить потому, что 
    удаленный компьютер затребовал явно указанные учетные данные для 
    выполнения команды. При этом свойство Reason имеет следующее значение:
         Не удалось подключиться к удаленному серверу. Сообщение об 
         ошибке: доступ запрещен.
КОМАНДЛЕТЫ JOB
    Start-Job        Запускает фоновое задание на локальном компьютере.
    
    Get-Job          Получает фоновые задания, запущенные в текущем сеансе.
    
    Receive-Job      Получает результаты выполнения фоновых заданий.
    Stop-Job         Останавливает фоновое задание.
    Wait-Job         Отключает командную строку до выполнения 
                     одного задания либо их всех.
    Remove-Job       Удаляет фоновое задание.
    Invoke-Command   Параметр AsJob позволяет запустить любую команду 
                     как фоновое задание на удаленном компьютере. С помощью ком
анды 
                     Invoke-Command также можно удаленно запускать любые команд
ы 
                     заданий, включая команду Start-Job.
 
СМ. ТАКЖЕ
   about_Remote_Jobs
   about_Job_Details
   about_Remote
   about_PSSessions  
   Start-Job
   Get-Job
   Receive-Job
   Stop-Job
   Wait-Job
   Remove-Job
   Invoke-Command



about_join

РАЗДЕЛ
    about_join
КРАТКОЕ ОПИСАНИЕ
    Описание принципов действия оператора -join, объединяющего 
    несколько строк в одну.
ПОЛНОЕ ОПИСАНИЕ
    Оператор join объединяет набор строк в одну строку. Строки 
    добавляются в конце результирующей строки в том же порядке, в 
    котором они указаны в команде. 
  Синтаксис
      В следующей схеме показан синтаксис оператора join.
	-Join <String[]>
	<String[]> -Join <Delimiter>
  Параметры
      String[]
          Задает одну или несколько объединяемых строк.
      Delimiter
	  Задает один или несколько символов, помещаемых между объединяемыми 
	  строками.
          По умолчанию разделитель не используется ("").
	
  Примечания
      Унарный оператор join (-join <string[]>) имеет более высокий 
      приоритет, чем
      запятая. Поэтому если задать ему список перечисленных через 
      запятую строк, ему передается только первая строка (до первой 
      запятой).
      При использовании унарного оператора join заключите строки в круглые 
      скобки или сохраните их в переменной и передайте переменную этому 
      оператору.
      Пример:
          -join "a", "b", "c"
          a
          b
          c
          -join ("a", "b", "c")
          abc
          $z = "a", "b", "c"
          -join $z
          abc
  Примеры
      Следующая инструкция объединяет три строки.
	
          -join ("Windows", "PowerShell", "2.0") 
          WindowsPowerShell2.0
	
      Следующая инструкция объединяет три строки, используя пробел в 
      качестве разделителя.
	
          "Windows", "PowerShell", "2.0" -join " " 
          Windows PowerShell 2.0
      Следующие инструкции объединяют три строки, используя несколько 
      символов в качестве разделителя.
          $a = "WIND", "SP", "ERSHELL" 
          $a -join "OW"
          WINDOWSPOWERSHELL
      Следующая инструкция объединяет строки, содержащиеся в 
      автономной строке, преобразуя их в единую строку. Поскольку 
      автономная строка представляет собой единую строку, необходимо 
      разделить содержащиеся в ней строки, прежде чем их можно будет 
      объединить. Этим способом можно объединить строки файла XML, 
      сохраненного в автономной строке.
          $a = @'
          a
          b
          c
          '@
          (-split $a) -join " "
          a b c
	
СМ. ТАКЖЕ
    about_Operators
    about_Comparison_Operators
    about_Split



about_Language_Keywords

РАЗДЕЛ
    about_Language_Keywords
КРАТКОЕ ОПИСАНИЕ
    Описание ключевых слов языка скриптов Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    В Windows PowerShell используются следующие ключевые слова. 
    Дополнительные сведения см. в соответствующих разделах справки по 
    отдельным ключевым словам, а также в следующей за таблицей информации.
        Ключевое слово            Разделы справки
        -------            ---------
        Begin              about_Functions, about_Functions_Advanced
        Break              about_Break, about_Trap
        Catch              about_Try_Catch_Finally
        Continue           about_Continue, about_Trap
        Data               about_Data_Sections
        Do                 about_Do, about_While 
        Dynamicparam       about_Functions_Advanced_Parameters
        Else               about_If 
        Elseif             about_If 
        End                about_Functions, about_Functions_Advanced_Methods
        Exit               Описывается в этом разделе.
        Filter             about_Functions
        Finally            about_Try_Catch_Finally
        For                about_For
        Foreach            about_Foreach
        From               Зарезервировано для использования в дальнейшем.
        Function           about_Functions, about_Functions_Advanced
        If                 about_If
        In                 about_Foreach
        Param              about_Functions
        Process            about_Functions, about_Functions_Advanced
        Return             about_Return
        Switch             about_Switch
        Throw              about_Throw, about_Functions_Advanced_Methods
        Trap               about_Trap, about_Break, about_Try_Catch_Finally
        Try                about_Try_Catch_Finally
        Until              about_Do
        While              about_While, about_Do
  Ключевые слова языка скриптов
      Begin 
      -----
      Указывает одну из частей тела функции, как и ключевые слова 
      Dynamicparam, Process и End. Список инструкций из блока Begin 
      выполняется однократно, прежде чем какие-либо объекты принимаются с 
      конвейера. 
      Синтаксис:
          function <имя> { 
              dynamicparam {<список_инструкций>}
              begin {<список_инструкций>}
              process {<список_инструкций>}
              end {<список_инструкций>}
          }
      Break
      -----
      Обеспечивает выход из цикла скрипта. 
      Синтаксис:
          while (<условие>) {
              <инструкции>
                   ...
              break 
                   ...
              <инструкции> 
          }
      Catch
      -----
      Задает список инструкций, выполняемых при возникновении ошибки в 
      сопутствующем списке инструкций Try. Тип ошибки указывается в квадратных 
      скобках. Наличие двойных квадратных скобок означает, что тип ошибки 
      указывать не обязательно.
      Синтаксис:
      
          try {<список_инструкций>}
          catch [[<тип_ошибки>]] {<список_инструкций>}
      Continue
      --------
      Обеспечивает остановку цикла скрипта и возврат к условию. Если 
      условие выполняется, цикл скрипта запускается снова.
      Синтаксис:
          while (<условие>) {
              <инструкции>
                  ...
              continue 
                  ...
              <инструкции> 
          }
      Data  
      ---- 
      При использовании в скриптах это ключевое слово определяет раздел, 
      отделяющий данные от логики скрипта. Также может содержать инструкции If 
и 
      некоторые ограниченные команды.
      Синтаксис:
      data <переменная> [-supportedCommand <имя_командлета>] {<допустимое_содер
жимое>}
      Do  
      --
      Используется в сочетании с ключевым словом While или Until для 
      создания циклов. Windows PowerShell выполняет список инструкций как 
      минимум один раз, в отличие от циклов с ключевым словом While.
      Синтаксис:
          do {<список_инструкций>} while (<условие>)
          do {<список_инструкций>} until (<условие>)
      Dynamicparam
      ------------
      Указывает одну из частей тела функции, как и ключевые слова 
      Begin, Process и End. Динамические параметры добавляются во время 
      выполнения.
      Синтаксис:
          function <имя> { 
              dynamicparam {<список_инструкций>}
              begin {<список_инструкций>}
              process {<список_инструкций>}
              end {<список_инструкций>}
          }
      Else
      ----
      Используется с ключевым словом If. Задает список инструкций по 
      умолчанию.
      Синтаксис:
          if (<условие>) {<список_инструкций>}
          else {<список_инструкций>}
      Elseif
      ------
      Используется с ключевыми словами If и Else. Задает 
      дополнительные условия. Ключевое слово Else необязательное.
      Синтаксис:
          if (<условие>) {<список_инструкций>}
          elseif (<условие>) {<список_инструкций>}
          else {<список_инструкций>}
      End
      ---
      Указывает одну из частей тела функции, как и ключевые слова 
      Dynamicparam, Begin и End. Список инструкций из блока End 
      выполняется однократно после получения всех объектов с конвейера.
      Синтаксис:
          function <имя> { 
              dynamicparam {<список_инструкций>}
              begin {<список_инструкций>}
              process {<список_инструкций>}
              end {<список_инструкций>}
          }
      Exit
      ----
      Обеспечивает выход из скрипта Windows PowerShell или из 
      экземпляра Windows PowerShell.
      Синтаксис:
          exit
      Filter 
      ------
      Задает функцию, список инструкций которой выполняется по одному 
      разу для каждого объекта ввода. Она действует аналогично функции, 
      содержащей только блок Process.
      Синтаксис:
          filter <имя> {<список_инструкций>}
      Finally
      -------
      Определяет список инструкций, выполняемых после инструкций, 
      связанных с ключевыми словами Try и Catch. Список инструкций из 
      блока Finally выполняется, даже если выйти из скрипта с помощью 
      сочетания клавиш CTRL+C или ключевого слова Exit в скрипте.
      Синтаксис:
          try {<список_инструкций>}
          catch [<тип_ошибки>] {<список_инструкций>}
          finally {<список_инструкций>}
      For  
      ---
      Определяет цикл, используя условие. 
      Синтаксис:
          for (<инициализация>; <условие>; <итерация>) {
      Foreach
      -------
      
      Определяет цикл, используя каждый элемент коллекции.
      Синтаксис:
          foreach (<элемент> in <коллекция>){<список_инструкций>}
      From
      -----
      Зарезервировано для использования в дальнейшем.
      Function
      --------
      Создает список инструкций, имеющий имя и доступный для многократного 
      использования. Позволяет задать имя области, к которой принадлежит 
      функция. Также позволяет задать один или несколько именованных 
      параметров с помощью ключевого слова Param. В список инструкций 
      функции можно включить списки инструкций Dynamicparam, Begin, Process 
      и End.
      Синтаксис:
           function [<scope:>]<name> { 
              param ([type]<$pname1> [, [type]<$pname2>])
              dynamicparam {<statement list>}
              begin {<statement list>}
              process {<statement list>}
              end {<statement list>}
          }
          }
      Также можно определить один или несколько параметров вне списка 
      инструкций после имени функции.
      Синтаксис:
          function [<scope:>]<name> [([type]<$pname1>, [[type]
              dynamicparam {<statement list>}
              begin {<statement list>}
              process {<statement list>}
              end {<statement list>}
          }
      If
      --
      Определяет условие.
      Синтаксис:
          if (<условие>) {<список_инструкций>}
      In
      --
      Используется в инструкциях Foreach для создания цикла, в котором 
      используется каждый элемент коллекции.
      Синтаксис:
          foreach (<элемент> in <коллекция>){<список_инструкций>}
      Param
      -----
      Определяет параметры в функции.
      Синтаксис:
          function [<scope:>]<name> {
              param ([type]<$pname1>[, [[type]<$pname2>]])
              <statement list>
          }
      Process
      -------
      Указывает часть тела функции, как и ключевые слова 
      Dynamicparam, Begin и End. Когда список инструкций из блока Process 
      получает входные данные через конвейер, этот список инструкций 
      выполняется по одному разу для каждого элемента из конвейера. 
      Если через конвейер не передано ни одного объекта, список инструкций 
      из блока Process не выполняется. Если команда является первой командой 
      в конвейере, список инструкций из блока Process выполняется один раз.
      Синтаксис:
          function <имя> { 
              dynamicparam {<список_инструкций>}
              begin {<список_инструкций>}
              process {<список_инструкций>}
              end {<список_инструкций>}
          }
      Return 
      ------
      Предписывает Windows PowerShell выйти из текущей области, 
      например из скрипта или функции, и записывает выражение 
      (необязательный параметр) в выходные данные.
      Синтаксис:
          return [<выражение>]
      Switch
      ------
      Задает различные действия, выполняемые с элементами из 
      конвейера или из файла. Можно использовать любую из следующих 
      моделей синтаксиса.
      Синтаксис 1:
          switch [-regex|-wildcard|-exact][-casesensitive] ( pipeline ) 
          { 
              <строка>|<число>|<переменная>|{ 
>}
              <строка>|<число>|<переменная>|{ 
>} 
                    ...
              default {<список_инструкций>}
          }
      Синтаксис 2:
          switch [-regex|-wildcard|-exact][-casesensitive] -file filename 
          { 
              <строка>|<число>|<переменная>|{ 
>}
              <строка>|<число>|<переменная>|{ 
>} 
                    ...
              default {<список_инструкций>}
          }
      Throw
      -----
      Выдает объект как ошибку.
      Синтаксис:
          throw [<объект>]
      Trap 
      ----
      Определяет список инструкций, выполняемый в случае ошибки. Тип 
      ошибки указывается в квадратных скобках. Наличие двойных 
      квадратных скобок означает, что тип ошибки указывать не обязательно.
      Синтаксис:
          trap [[<тип_ошибки>]] {<список_инструкций>}
      Try
      ---
      Определяет список инструкций, проверяемых на ошибки при 
      выполнении. Если возникает ошибка, Windows PowerShell продолжает 
      выполнение инструкции Catch или Finally. Тип ошибки указывается в 
      квадратных скобках. Наличие двойных квадратных скобок означает, что 
      тип ошибки указывать не обязательно.
      Синтаксис:
          try {<список_инструкций>}
          catch [[<тип_ошибки>]] {<список_инструкций>}
          finally {<список_инструкций>}
      Until
      -----
      Используется в инструкциях Do для создания циклов, в которых список 
      инструкций выполняется не менее одного раза.
      Синтаксис:
          do {<список_инструкций>} until (<условие>)
      While
      -----
      Используется в инструкциях Do для создания циклов, в которых список 
      инструкций выполняется не менее одного раза.
      Синтаксис:
          do {<список_инструкций>} while (<условие>)
СМ. ТАКЖЕ
    about_escape_characters
    about_special_characters
    about_wildcards



about_Line_Editing

РАЗДЕЛ
    about_Line_Editing
КРАТКОЕ ОПИСАНИЕ
    Описание способов редактирования команд в командной строке Windows 
    PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    В консоли Windows PowerShell предусмотрены полезные функции для 
    редактирования команд в командной строке Windows PowerShell.  
    
    Перемещение курсора по горизонтали
        Чтобы переместить курсор на один символ влево, нажмите 
        клавишу СТРЕЛКА ВЛЕВО. Чтобы переместить курсор на одно слово 
        влево, нажмите сочетание клавиш CTRL+СТРЕЛКА ВЛЕВО.
        Чтобы переместить курсор на один символ вправо, нажмите 
        клавишу СТРЕЛКА ВПРАВО. Чтобы переместить курсор на одно 
        слово вправо, нажмите сочетание клавиш CTRL+СТРЕЛКА ВПРАВО. 
    Начало и конец строки
        Чтобы передвинуть курсор в начало строки, нажмите клавишу 
        HOME. Чтобы передвинуть курсор в конец строки, нажмите 
        клавишу END. 
    Удаление символов
        Чтобы удалить символ перед курсором, нажмите клавишу BACKSPACE.
        Чтобы удалить символ после курсора, нажмите клавишу DELETE.
    Удаление оставшейся части строки
        Чтобы удалить все символы в строке после курсора, нажмите 
        сочетание клавиш CTRL+END.
    Режимы вставки и замены символов при печати
        Чтобы переключиться в режим замены, нажмите клавишу INSERT. 
        Чтобы вернуться в режим вставки, нажмите клавишу INSERT еще раз.
    Функция автозавершения при помощи клавиши TAB;
        Чтобы автоматически дополнить недостающие символы частично 
        введенной команды (например, имени командлета, его параметра 
        или пути), нажмите клавишу TAB. Если при первом нажатии 
        появилось не то окончание, которое требуется, нажмите клавишу 
        TAB еще раз.
 
СМ. ТАКЖЕ
    about_Command_Syntax
    about_Path_Syntax



about_locations

РАЗДЕЛ
    about_Locations
КРАТКОЕ ОПИСАНИЕ
    Описание способов доступа к элементам из рабочего местоположения 
    в Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Текущим рабочим местоположением является местоположение по 
    умолчанию, на которое указывают команды. Другими словами, это 
    местоположение, которое используется программой Windows 
    PowerShell в том случае, если путь к элементу или местоположению, 
    затрагиваемому командой, не указан явно. В большинстве случаев 
    текущим рабочим местоположением является диск, доступ к которому 
    осуществляется с помощью поставщика Windows PowerShell FileSystem, 
    либо каталог на этом диске. Например, можно назначить текущим 
    рабочим местоположением следующий каталог:
        C:\Program Files\Windows PowerShell
 
    В результате все команды будут выполняться из этого 
    местоположения, если только не будет явно указан другой путь.
    Windows PowerShell сохраняет текущее рабочее местоположение для 
    каждого диска, даже если он не является текущим. Это позволяет 
    обращаться к элементам, находящимся в текущем рабочем местоположении, 
    указывая только его диск. Например, предположим, что текущим рабочим 
    местоположением является каталог C:\Windows. Предположим также, что 
    текущее рабочее местоположение изменено на диск HKLM: с помощью 
    следующей команды:
        Set-Location HKLM:
    Хотя текущим местоположением стал диск реестра, все равно можно 
    обращаться к элементам из каталога C:\Windows, указывая только 
    диск C:, как показано в следующем примере:
        Get-ChildItem C:
    Windows PowerShell помнит, что текущим рабочим местоположением на 
    этом диске является каталог Windows, и извлекает элементы из 
    этого каталога. В результате происходит то же, что при выполнении 
    следующей команды:
        Get-ChildItem C:\Windows
    Для определения текущего рабочего местоположения в Windows 
    PowerShell можно воспользоваться командой Get-Location, а для 
    установки текущего рабочего местоположения - командой 
    Set-Location. Например, следующая команда назначает текущим рабочим 
    местоположением каталог Windows на диске C:
        Set-Location c:\windows
    Как показано в следующем примере, после установки текущего рабочего 
    местоположения можно обращаться к элементам, находящимся на других дисках, 
    указывая в команде только имя диска (с двоеточием):
        Get-ChildItem HKLM :\software
    Команда в этом примере извлекает список элементов контейнера 
    Software куста реестра HKEY Local Machine.
    Также Windows PowerShell позволяет обозначать текущее рабочее 
    местоположение и его родительский каталог специальными знаками. Для 
    обозначения текущего рабочего местоположения используется одна точка. Для 
    обозначения родительского каталога текущего рабочего местоположения 
    используются две точки. Например, следующая команда указывает на вложенный 
    каталог System текущего рабочего местоположения:
        Get-ChildItem .\system
    Если текущим рабочим местоположением является C:\Windows, эта команда 
    возвращает список всех элементов каталога C:\Windows\System. Впрочем, если 
    указаны две точки, используется родительский каталог текущего 
    рабочего каталога, как показано в следующем примере:
        Get-ChildItem ..\"program files"
    В этом случае Windows PowerShell рассматривает две точки как диск C:, 
    поэтому команда возвращает список всех элементов каталога C:\Program Files.
    Путь, начинающийся с косой черты, определяет путь из корня 
    текущего диска. Например, если текущим рабочим местоположением 
    является каталог C:\Program Files\Windows PowerShell, то корнем 
    текущего диска является C. Поэтому при выполнении следующей 
    команды выдается список всех элементов каталога C:\Windows:
        Get-ChildItem \windows
    Если при вводе имени контейнера или элемента не указан путь, 
    начинающийся с имени диска, косой черты или точки, предполагается, что 
    контейнер или элемент находится в текущем рабочем местоположении. 
    Например, если текущим рабочим местоположением является C:\Windows, 
    то следующая команда возвращает все элементы каталога C:\Windows\System:
        Get-ChildItem system
    Если указать имя файла, а не каталога, Windows PowerShell возвращает 
    сведения об этом файле (если он находится в текущем рабочем 
    местоположении).
СМ. ТАКЖЕ
    Set-Location
    about_Providers
    about_Path_Syntax



about_logical_operators

РАЗДЕЛ
    about_Logical_Operators
КРАТКОЕ ОПИСАНИЕ
    Описание операторов, объединяющих инструкции Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Логические операторы Windows PowerShell объединяют выражения и 
    инструкции, что позволяет проверять несколько условий в одном 
    выражении.
    Например, в следующем выражении операторы and и or объединяют три 
    условные инструкции. Результатом оценки условия этой инструкции 
    является true, только если значение $a превышает значение $b, и 
    значение любой из этих переменных составляет менее 20.
        ($a -gt $b) -and (($a -lt 20) -or ($b -lt 20))
 
    Windows PowerShell поддерживает следующие логические операторы:
 
        Оператор  Описание                         Пример
        --------  ------------------------------   -------------------------
        -and      Логический оператор "И".         (1 -eq 1) -and (1 -eq 2) 
                  Возвращает TRUE, только если     False
                  результатом оценки условий  
                  обеих инструкций является TRUE.      
 
        -or       Логический оператор "ИЛИ".       (1 -eq 1) -or (1 -eq 2) 
                  Возвращает TRUE, если            True 
                  результатом оценки условий 
                  хотя бы одной из двух инструкций 
                  является TRUE     
        -xor      Логический оператор "исключающее (1 -eq 1) -xor (2 -eq 2) 
                  ИЛИ". Возвращает TRUE, только    False 
                  если для одной инструкции 
                  результатом оценки условия 
                  является TRUE, а для д
                  ругой - FALSE.      
         
        -not      Логический оператор "НЕ".        -not (1 -eq 1)
                  Изменяет результат оценки        False
                  условия последующей инструкции 
                  на противоположный.         
         
        (1 -eq 1)
                  Изменяет результат оценки        False
                  условия последующей инструкции 
                  на противоположный 
                  (то же, что и -not)      
 
 
    Примечание. В приведенных выше примерах также используется 
                оператор проверки равенства (-eq). Дополнительные 
                сведения см. в разделе about_Comparison_Operators.
                В этих примерах также используются логические значения 
                целых чисел. Целое число 0 имеет логическое значение FALSE. 
                Все остальные целые числа имеют логическое значение TRUE.
 
    Логические операторы используются со следующим синтаксисом:
        <инструкция> {-AND | -OR | -XOR} <инструкция>
        { | -NOT} <инструкция>
 
    Инструкции, в которых используются логические операторы, возвращают 
    логические значения (TRUE или FALSE). 
    В логических операторах Windows PowerShell оцениваются только те 
    условия инструкций, которые необходимы для проверки их 
    истинности. Если истинность левого операнда в инструкции с 
    оператором and имеет значение FALSE, истинность правого операнда не 
    проверяется. Если истинность левого операнда в инструкции с 
    оператором or имеет значение TRUE, истинность правого операнда не 
    проверяется. Таким образом, эти инструкции можно использовать так же, 
    как инструкцию If.
СМ. ТАКЖЕ
    about_Operators
    Compare-Object
    about_Comparison_operators
    about_If



about_methods

РАЗДЕЛ
    about_methods
КРАТКОЕ ОПИСАНИЕ
    Описание способов использования методов для выполнения действий с 
    объектами в Windows PowerShell.
 
ПОЛНОЕ ОПИСАНИЕ
    Для представления элементов в хранилищах данных или состояния 
    компьютера в программе Windows PowerShell используются 
    структурированные наборы данных, называемые объектами. Например, 
    обращаясь к файлу в Windows PowerShell, вы работаете не с самим 
    файлом, а с объектом FileInfo, выполняющим роль его прокси.
    Большинство объектов содержат методы. Метод представляет собой набор 
    инструкций, осуществляющих определенные операции с данным объектом. 
    Например, объект FileInfo содержит метод CopyTo, позволяющий 
    копировать файл, представленный данным объектом.
    С помощью командлета Get-Member можно просмотреть список методов и их 
    определений, связанных с определенным объектом. Однако для использования 
    командлета необходимо, чтобы объект уже существовал в каком-либо 
    виде: в виде переменной, в виде объекта, созданного при указании команды 
    в качестве аргумента командлета Get-Member, либо в виде объекта, 
    переданного по конвейеру. Предположим, например, что переменной $a 
    присвоено строковое значение, то есть эта переменная связана с 
    объектом-строкой. Чтобы просмотреть список методов объекта, в 
    командной строке Windows PowerShell введите следующую команду:
        Get-Member -inputobject $a -membertype method
    Чтобы просмотреть список методов и их определений, связанных с 
    объектом, переданным по конвейеру, можно использовать командлет 
    Get-Member в этом конвейере, как показано в следующем примере:
        Get-ChildItem c:\final.txt | Get-Member -membertype method
    Стандартный способ вызвать метод - ввести его имя после ссылки на 
    объект (например, после переменной или выражения). Ссылка на 
    объект и имя метода разделяются точкой. Кроме того, все аргументы, 
    передаваемые методу, должны следовать сразу после имени метода и 
    заключаться в круглые скобки. 
    Если в сигнатуре метода входные аргументы отсутствуют, все равно 
    необходимо указать пустой набор аргументов в круглых скобках.
    Например, в следующей команде используется метод GetType, 
    возвращающий тип данных, связанный со строковым объектом $a.
        $a.GetType()
    Метод GetType возвращает тип данных для любого объекта, а переменная 
    всегда представляет объект. Тип объекта определяется типом данных, 
    хранимых в указанной переменной.
    Все действия в Windows PowerShell, например объявление переменной или 
    объединение команд в конвейер, связаны с объектами.Поэтому методы можно 
    использовать в самых разных ситуациях. Например, метод можно использовать 
    при проведении операций над значениями свойств, как показано в следующей 
    команде:
        (Get-ChildItem c:\final.txt).name.ToUpper()
    В данном случае объектом, для которого осуществляется вызов 
    метода ToUpper, является строка, связанная со свойством name. 
    (Обратите внимание, что для работы этого примера необходимо, чтобы в 
    корневом каталоге диска C: существовал файл Final.txt.) Фактически, 
    свойство name является свойством объекта FileInfo, возвращаемого 
    командлетом Get-ChildItem. В данном примере демонстрируется не только 
    объектная ориентированность среды Windows PowerShell, но и способ 
    вызова методов для любых доступных объектов.
    Результаты, полученные в предыдущем примере, также можно получить с 
    использованием переменной для хранения выходных данных командлета 
    Get-ChildItem, как показано в следующем примере:
        $a = (Get-ChildItem c:\final.txt).name
        $a.ToUpper()
    В приведенной команде также используется метод ToUpper строкового 
    объекта, связанного с переменной, в которой хранится имя файла, 
    возвращаемое командой Get-ChildItem.
    В некоторых случаях для использования метода необходимо указать 
    аргумент, управляющий работой метода. Например, объект FileInfo 
    содержит метод MoveTo, с помощью которого можно перемещать файл 
    из одного местоположения в другое. При использовании данного метода 
    необходимо указать аргумент, задающий целевое местоположение файла. 
    В следующем примере показано, как использовать этот аргумент:
        (Get-ChildItem c:\final.txt).MoveTo("c:\techdocs\final.txt")
    Команда Get-ChildItem возвращает объект FileInfo для файла 
    Final.txt, а затем с помощью метода MoveTo для данного объекта 
    задает новое местоположение файла и осуществляет его перемещение.
    Список аргументов, используемых методом, приводится в соответствующем 
    определении метода. Определение метода содержит как минимум одну сигнатуру 
    метода (также называемую перегрузкой в Microsoft .NET Framework). 
    Сигнатура метода содержит его имя и может содержать параметры, которые 
    необходимо указать при вызове метода. При отображении списка сигнатур 
    методов с помощью командлета Get-Member в качестве разделителя 
    используется запятая. Например, метод CopyTo класса FileInfo содержит 
    следующие две сигнатуры методов:
        1. CopyTo(String destFileName)
        2. CopyTo(String destFileName, Boolean overwrite)
    Первая сигнатура метода принимает имя целевого файла (включая 
    путь к нему), в который необходимо скопировать исходный файл. 
    следующем примере первый метод CopyTo используется для 
    В копирования файла Final.txt в каталог C:\Bin.
        (Get-ChildItem c:\final.txt).CopyTo("c:\bin\final.txt")
    Если данный файл по указанному пути уже существует, выполнение 
    метода CopyTo завершается с ошибкой и Windows PowerShell выдает 
    следующее сообщение об ошибке:
        Исключение при вызове "CopyTo" с "1" аргументом: "Файл 
        "c:\bin\final.txt" уже существует".
    Второй сигнатуре метода передается имя целевого файла, как и в 
    предыдущем примере. Однако при этом также указывается логическое 
    значение, определяющее, будет ли перезаписан существующий файл с 
    таким же именем в целевом местоположении, как показано в 
    следующем примере.
        (Get-ChildItem c:\final.txt).CopyTo("c:\bin\final.txt", $true)
    В качестве этого логического значения необходимо использовать 
    переменную $True, создаваемую средой Windows PowerShell автоматически. 
    Переменная $True содержит логическое значение "true". (Соответственно, 
    переменная $False содержит логическое значение "false".)
СМ. ТАКЖЕ
    about_Objects
    Get-Member



about_modules

РАЗДЕЛ
    about_Modules
КРАТКОЕ ОПИСАНИЕ
    Описание процедур установки, импорта и использования модулей 
    Windows PowerShell
ПОЛНОЕ ОПИСАНИЕ
    Модуль - это пакет команд Windows PowerShell, таких как 
    командлеты, поставщики, функции, переменные и псевдонимы. 
    Составляя команды, пользователи могут организовывать их с помощью 
    модулей и передавать их другим пользователям. Получив такой 
    модуль, пользователь может добавить содержащиеся в нем команды в 
    сеанс Windows PowerShell и использовать их аналогично встроенным 
    командам.
    В этом разделе описывается, как использовать модули Windows 
    PowerShell. Сведения о процедуре создания модулей Windows 
    PowerShell см. в разделе "Создание модуля Windows PowerShell" в 
    библиотеке MSDN по адресу http://go.microsoft.com/fwlink/?LinkId=144916.
    
 ИСПОЛЬЗОВАНИЕ МОДУЛЯ
    Чтобы воспользоваться модулем, выполните следующие действия.
        1. Установите модуль. (Обычно это выполняется автоматически.) 
        2. Импортируйте модуль в сеанс Windows PowerShell.
        3. Найдите команды, добавленные модулем.
        4. Выполните эти команды.
     
    В данном разделе описано, как выполнить эти задачи. В нем также 
    содержатся другие полезные сведения об управлении модулями.
 УСТАНОВКА МОДУЛЯ
    Если модуль предоставлен в виде папки с файлами, необходимо 
    установить его на компьютер, чтобы можно было импортировать его в 
    Windows PowerShell.
    Обычно модули устанавливаются автоматически. В Windows PowerShell 
    имеется несколько предустановленных модулей. В Windows Server 
    2008 R2 можно воспользоваться мастером добавления компонентов 
    (в диспетчере сервера), чтобы автоматически установить выбранные 
    компоненты. Многие модули поставляются с программой установки, 
    выполняющей установку модуля.
    Для установки модуля, предоставленного в виде папки, выполните 
    следующие действия.
        1. Создайте каталог "Modules" для текущего пользователя, если 
        он не существует. 
           Для этого введите следующую команду:
               new-item -type directory -path 
               $home\Documents\WindowsPowerShell\Modules                       
      
        2. Полностью скопируйте папку модуля в каталог "Modules".
           Скопировать папку можно любыми средствами, включая 
           проводник, программу Cmd.exe и Windows PowerShell.
           В Windows PowerShell для этого воспользуйтесь командлетом 
           Copy-Item. Например, чтобы скопировать папку "MyModule" из 
           каталога "C:\ps-test\MyModule" в каталог "Modules", 
           введите следующую команду:
               copy-item -path c:\ps-test\MyModule -dest 
               $home\Documents\WindowsPowerShell\Modules
    Установить модуль можно в любое местоположение, однако если 
    всегда устанавливать их в местоположение модулей по умолчанию, 
    ими проще управлять. Дополнительные сведения о местоположении 
    модулей по умолчанию см. в разделе "Местоположения модулей и 
    переменная PSModulePath".
 ПОИСК УСТАНОВЛЕННЫХ МОДУЛЕЙ
     Если модуль установлен, его можно импортировать в сеанс Windows 
     PowerShell. 
     Чтобы найти модули, установленные в местоположении модулей по 
     умолчанию, в командной строке Windows PowerShell введите следующее:
         get-module -listAvailable
     Чтобы найти модули, уже импортированные в сеанс, в командной 
     строке Windows PowerShell введите следующее:
         get-module
     Дополнительные сведения о командлете Get-Module см. в разделе 
     Get-Module.
      
 ИМПОРТ МОДУЛЯ
    Чтобы выполнить команды, содержащиеся в модуле, импортируйте его 
    в сеанс Windows PowerShell.
    Чтобы импортировать модули в текущий сеанс из местоположения 
    модулей по умолчанию, используйте следующий формат команды:
        import-module <имя_модуля>
    
    Например, следующая команда импортирует модуль BitsTransfer в 
    текущий сеанс.
        import-module BitsTransfer
       
 
    Чтобы импортировать модуль, не находящийся в местоположении по 
    умолчанию, укажите в команде полный путь к папке этого модуля. 
    Например, чтобы добавить в текущий сеанс модуль TestCmdlets, 
    расположенный в папке "C:\ps-test", введите следующую команду:
        import-module c:\ps-test\TestCmdlets
    Чтобы получить дополнительные сведения о добавлении модулей в 
    сеансы, см. Import-Module.
    
 ИМПОРТ ВСЕХ МОДУЛЕЙ В СЕАНС WINDOWS POWERSHELL. 
    В операционных системах Windows 7 и Windows Server 2008 R2 задача 
    "Импортировать все модули" открывает сеанс Windows PowerShell, 
    содержащий все доступные модули и оснастки Windows PowerShell.
    Чтобы запустить сеанс Windows PowerShell со всеми доступными 
    модулями и оснастками Windows PowerShell, выполните следующие 
    действия.
    -- Щелкните правой кнопкой мыши значок Windows PowerShell на 
       панели задач и выберите "Импортировать все модули".
    Примечание. В Windows Server 2008 R2 значок Windows PowerShell по 
                умолчанию закреплен на панели задач. Впрочем, чтобы 
                появилась задача "Импортировать все модули", необходимо 
                один раз запустить Windows PowerShell.
    Чтобы импортировать в сеанс все доступные модули в других версиях 
    Windows, в командной строке Windows PowerShell введите следующее:
        get-module -listAvailable | import-module
   
 ПОИСК КОМАНД В МОДУЛЕ
    После того как модуль импортирован в сеанс Windows PowerShell, 
    можно использовать содержащиеся в нем команды.
    Чтобы найти добавленные модулем команды, в командной строке 
    Windows PowerShell введите следующее:
        get-command -module <имя_модуля>
    Например, чтобы найти команды, добавленные модулем BitsTransfer, 
    введите следующее:
        get-command -module BitsTransfer
    Дополнительные сведения о командлете Get-Command см. в разделе 
    Get-Command.
 ПОИСК СПРАВКИ ПО КОМАНДАМ В МОДУЛЕ
    Если модуль содержит разделы справки по командам, которые он 
    экспортирует, их можно вывести с помощью командлета Get-Help. 
    Используйте команду такого же формата, как и для любого раздела 
    справки Windows PowerShell. 
    Чтобы найти раздел справки по содержащимся в модуле командам, в 
    командной строке Windows PowerShell введите следующее:
        get-help <имя_команды> 
    Чтобы вывести более подробную справку, введите следующее:
        get-help <имя_команды> -detailed
    Например, чтобы найти подробную справку о командлете 
    Start-BitsTransfer, введите следующую команду:
       
        get-help Start-BitsTransfer -detailed
    Дополнительные сведения о модуле Get-Help см. в разделе Get-Help.
 УДАЛЕНИЕ МОДУЛЯ
    Если удалить модуль, добавленные им команды удаляются из сеанса. 
    Чтобы удалить модуль из сеанса, используйте следующий формат команды:
        remove-module <имя_модуля>
    Например, следующая команда удаляет модуль BitsTransfer из 
    текущего сеанса.
        remove-module BitsTransfer
    Операция удаления модуля отменяет операцию его импорта. При этом 
    установка модуля не отменяется. Дополнительные сведения о 
    командлете Remove-Module см. в разделе Remove-Module.
 ИМПОРТ МОДУЛЯ В КАЖДОМ СЕАНСЕ
    Команда Import-Module импортирует модули в текущий сеанс Windows 
    PowerShell. Она затрагивает только текущий сеанс.
    Чтобы модуль импортировался в каждый новый сеанс Windows 
    PowerShell, добавьте команду Import-Module в профиль Windows 
    PowerShell.
    Дополнительные сведения о профилях см. в разделе about_Profiles.   
  
 МЕСТОПОЛОЖЕНИЯ МОДУЛЕЙ И ПЕРЕМЕННАЯ PSMODULEPATH
    Для модулей Windows PowerShell предусмотрено два местоположения 
    по умолчанию: одно для системы, другое для текущего пользователя.
        Для системы:  $pshome\Modules 
                        (%windir%\System32\WindowsPowerShell\v1.0\Modules)
        Для текущего  $home\Documents\WindowsPowerShell\Modules 
	пользователя:	(%профиль_пользователя%\Documents\WindowsPowerShell\Modules)
                       - или:
                      $home\My Documents\WindowsPowerShell\Modules 
                        (%профиль_пользователя%\My Documents\WindowsPowerShell\
Modules)
        Примечание. Чтобы добавить или изменить файлы в каталоге 
                    %Windir%\System32 в операционных системах Windows 
                    Vista, Windows Server 2008 и Windows более поздних 
                    версий, запустите Windows PowerShell с параметром 
                    "Запуск от имени администратора".
    Чтобы изменить местоположения модулей по умолчанию для системы, 
    измените значение переменной среды PSModulePath ($env:psmodulepath). 
    Переменная среды PSModulePath основана на переменной среды 
    Path и имеет тот же формат. 
 
    Чтобы отобразить местоположения модулей по умолчанию, введите 
    следующую команду:
        $env:psmodulepath
    Чтобы добавить местоположение модулей по умолчанию, используйте 
    следующий формат команды:
        $env:psmodulepath = $env:psmodulepath + ";<путь>"
    Точка с запятой (;) в этой команде отделяет новый путь от 
    предыдущего пути в списке.
    Например, чтобы добавить каталог "C:\ps-test\Modules", введите 
    следующую команду:
        $env:psmodulepath + ";c:\ps-test\Modules"
    После добавления пути в переменную PSModulePath команды 
    Get-Module и Import-Module действуют в том числе на модули в 
    каталоге, на который указывает этот путь.
       
    Задаваемое значение влияет только на текущий сеанс. Чтобы 
    сохранить изменение, добавьте эту команду в профиль Windows 
    PowerShell или откройте диспетчер "Система" на панели управления 
    и измените значение переменной среды PSModulePath в реестре.
    Дополнительные сведения о переменной PSModulePath см. в разделе 
    about_Environment_Variables.
   
 МОДУЛИ И КОНФЛИКТЫ ИМЕН
    Конфликт имен происходит, когда в сеансе имеется несколько команд 
    с одинаковым именем. При импорте модуля возникает конфликт имен, 
    если содержащиеся в нем команды имеют такие же имена, как команды 
    или элементы, уже имеющиеся в сеансе. 
    Конфликты имен могут возникать в результате скрытия или замены команд.
        -- Скрытие. Скрытой называется команда, не выполняемая при 
           вводе ее имени, но выполняемая другими способами 
           (например, с указанием имени модуля или оснастки, из 
           которой добавлена команда).
        -- Замена. Замененной называется команда, поверх которой 
           записана команда с таким же именем. Даже если удалить 
           модуль, являющийся причиной конфликта, выполнить 
           замененную команду можно только после перезапуска сеанса.
    Команда Import-Module может добавить команды, скрывающие или 
    заменяющие команды в текущем сеансе. Кроме того, команды в 
    текущем сеансе могут скрыть команды, добавленные модулем. 
    Чтобы предотвратить конфликт имен, используйте команду 
    Import-Command с параметром Prefix, чтобы создать уникальные 
    имена для импортируемых команд.
    Команду Import-Module также можно использовать с параметрами 
    Alias, Cmdlet, Function и Variable, чтобы выбрать только те 
    команды, которые требуется импортировать, исключив команды, 
    вызывающие конфликт имен в сеансе.
    Даже если команда скрыта, можно выполнить ее, указав (помимо ее 
    имени) имя модуля или оснастки, из которой она добавлена. 
    Правила приоритета команд Windows PowerShell определяют, какая из 
    конфликтующих команд запускается в сеансе, содержащем команды с 
    одинаковыми именами.
    Например, если сеанс содержит функцию и командлет с одинаковым 
    именем, по умолчанию Windows PowerShell выполняет функцию. Если 
    сеанс содержит команды одинакового типа (например, два 
    командлета) с одинаковым именем, по умолчанию выполняется 
    команда, добавленная последней. 
    Дополнительные сведения, включая пояснения правил приоритетов и 
    инструкции по запуску скрытых команд, см. в разделе 
    about_Command_Precedence.
     
     
       
 МОДУЛИ И ОСНАСТКИ
    Команды из модулей и оснасток можно добавлять в сеанс. Из модулей 
    можно добавлять все типы команд, включая командлеты, поставщики и 
    функции, а также элементы, такие как переменные, псевдонимы и 
    диски Windows PowerShell. Из оснасток можно добавлять только 
    командлеты и поставщики.
    Тогда как функции, псевдонимы, переменные и диски можно добавлять 
    в сеанс путем ввода с клавиатуры или запуска добавляющего их 
    скрипта, все командлеты и поставщики, содержащиеся в сеансе, 
    добавляются только из модулей и оснасток.
    Прежде чем удалить модуль или оснастку из сеанса, с помощью 
    следующих команд определите, какие команды будут при этом удалены. 
    Чтобы определить, откуда командлет добавлен в сеанс, используйте 
    следующий формат команды:
        get-command <имя_командлета> | format-list -property verb, 
        noun, pssnapin, module
    Например, для поиска источника командлета Get-Date введите 
    следующую команду:
        get-command get-date | format-list -property verb, noun, 
        pssnapin, module 
    Дополнительные сведения об оснастках Windows PowerShell см в 
    разделе about_PSSnapins.
CМ. ТАКЖЕ
    about_Command_Precedence
    about_PSSnapins
    Get-Command
    Get-Help
    Get-Module
    Import-Module
    Remove-Module



about_objects

РАЗДЕЛ
    about_Objects
КРАТКОЕ ОПИСАНИЕ
    Основные сведения об объектах в Windows PowerShell. 
ПОЛНОЕ ОПИСАНИЕ
    Все действия в оболочке Windows PowerShell связаны с операциями над 
    объектами. Данные между командами передаются в виде идентифицируемых 
    объектов. Объект, таким образом, является набором данных, 
    представляющим элемент в пространстве имен. Объект состоит из трех 
    типов данных: тип объекта, его методы и его свойства.
    Данные о типе объекта содержат сведения о природе этого объекта. 
    Например, объектом, представляющим файл, является объект FileInfo.
    Метод объекта является действием, которое можно совершать над 
    элементом, представляемым данным объектом. Например, объект FileInfo 
    включает метод, с помощью которого можно копировать файл. То есть при 
    вызове метода копирования из объекта происходит копирование 
    представленного объектом файла.
    Свойство объекта - это сведения о состоянии объекта. Например, объект 
    FileInfo включает свойство length, указывающее размер файла, 
    представленного объектом.
    При работе с объектами их свойства и методы можно использовать в 
    командах для выполнения определенных действий и работы с данными. Это 
    особенно эффективно при объединении нескольких команд в одном конвейере.
    Передача данных между командами конвейера осуществляется в виде 
    объектов. После выполнения команды она отправляет один или несколько 
    объектов следующей команде конвейера. Следующая команда получает 
    объекты от первой команды, обрабатывает их и передает следующей команде 
    в конвейере измененный или новый объект. Так продолжается до тех пор, 
    пока не будут выполнены все команды конвейера.
    В следующем примере показано, как объекты передаются между командами:
        Get-ChildItem c: | where {$_.PsIsContainer -eq $false} | 
        Format-List
    Первая команда (Get-ChildItem c:) возвращает объект для каждого 
    элемента корневого каталога файловой системы. Полученные объекты 
    передаются по конвейеру второй команде (where {$_.PsIsContainer -eq 
    $false}). Вторая команда с помощью свойства PsIsContainer объекта 
    обеспечивает фильтрацию данных из объектов ввода, исключающую каталоги 
    (контейнеры) из возвращаемых результатов. Затем данные в виде объектов 
    передаются третьей команде (Format-List), которая отображает 
    содержимого каждого объекта в конвейере в виде списка.
СМ. ТАКЖЕ
    about_Methods
    about_Properties
    about_Pipelines
    Get-Member



about_operators

РАЗДЕЛ
    about_Operators
КРАТКОЕ ОПИСАНИЕ
    Описание операторов, поддерживаемых в Windows PowerShell. 
ПОЛНОЕ ОПИСАНИЕ
    Оператор - это элемент языка, используемый в командах или выражениях. 
    Windows PowerShell поддерживает несколько типов операторов для работы со 
    значениями.
  Арифметические операторы
      Арифметические операторы (+, -, *, /, %) используются для вычисления 
      значений в команде или выражении. С помощью этих операторов можно 
      выполнять сложение, вычитание, умножение и деление значений, а также 
      вычислять остаток при операции деления.
      Кроме того, арифметические операторы можно использовать со строками, 
      массивами и хэш-таблицами. Оператор сложения объединяет элементы. Операто
р 
      умножения возвращает указанное количество копий каждого элемента.
      Дополнительные сведения см. в разделе about_Arithmetic_Operators. 
  Операторы присваивания
      Операторы присваивания (=, +=, -=, *=, /=, %=) используются для 
      присваивания одного или нескольких значений переменным, изменения значени
й 
      переменных и добавления значений в переменные. Также можно приводить 
      переменные к любым типам данных Microsoft .NET Framework, например string
, 
      DateTime и Process.
      Дополнительные сведения см. в разделе about_Assignment_Operators.
  Операторы сравнения
      Операторы сравнения (-eq, -ne, -gt, -lt, -le, -ge) используются для 
      сравнения значений и проверки условий. Например, можно проверить 
      эквивалентность двух строковых значений. 
      К операторам сравнения также относятся операторы -match и 
      -notmatch для поиска соответствий с помощью регулярных выражений,
      оператор -replace для замены входных значений с помощью регулярных 
      выражений и операторы -like и -notlike для поиска соответствий 
      с помощью подстановочных знаков (*). 
      К ним также относятся побитовые операторы (-bAND, -bOR, -bXOR, 
      -bNOT) для работы с битами в значениях.
    Дополнительные сведения см. в разделе about_Comparison_Operators. 
  Логические операторы
      Логические операторы (-and, -or, -xor, -not, ) используются для 
      объединения нескольких условных инструкций в одну составную условную 
      инструкцию. Например, с помощью логического оператора -and можно 
      создать объект фильтра с двумя различными условиями.
      Дополнительные сведения см. в разделе about_Logical_Operators.
  Операторы перенаправления
      Операторы перенаправления (>, >>, 2>, 2> и 2>&1) используются 
      для отправки выходных данных команды или выражения в текстовый файл. 
      Операторы перенаправления действуют подобно командлету Out-File (без 
      параметров), но они также позволяют перенаправлять выходную информацию об
 
      ошибках в указанные файлы. Для перенаправления выходных данных также можн
о 
      использовать командлет Tee-Object.
      Дополнительные сведения см. в разделе about_Redirection.
  Операторы Split и Join
      Операторы -split и -join разделяют и объединяют подстроки. 
      Оператор -split разделяет строку на подстроки. Оператор -join 
      объединяет несколько строк в одну.
      Дополнительные сведения см. в разделах about_Split и about_Join.
  Операторы типов
      Операторы типов (-is, -isnot, -as) используются для поиска или 
      изменения типов объектов .NET Framework. 
      Дополнительные сведения см. в разделе about_Type_Operators.
  Унарные операторы
      Унарные операторы используются для положительного и отрицательного 
      приращения переменных или свойств объекта, а также для присваивания 
      знака целым числам. Например, чтобы увеличить значение переменной $a 
      с 9 до 10, введите команду $a++.
  Специальные операторы
      Специальные операторы используются для выполнения задач, 
      которые не могут быть реализованы другими операторами. Например, 
      специальные операторы могут быть использованы для запуска команд и 
      изменения типа данных значения.
    
      Оператор вызова &
        Описание: выполняет команду, скрипт или блок скрипта. 
        Поскольку оператор вызова не выполняет синтаксический анализ, 
        он не может интерпретировать параметры команды. Оператор вызова 
        указывает, что следующее за ним значение является командой. Это 
        позволяет выполнять команды, сохраненные в переменных и представленные 
        в виде строк. Примеры:
            & "new cmdlet"
            $c = "get-executionpolicy"  
            & $c
      Точка (.) как оператор доступа к свойствам
        Описание: осуществляет доступ к свойствам и методам объекта. 
        Примеры:
            $myString.length
            $myString.substring(1,3)
      Точка (.) как оператор вызова
        Описание: выполняет скрипт так, что содержащиеся в нем 
        элементы являются частью области вызова. Дополнительные 
        сведения см. в разделе about_Scope. Пример:
            . c:\scripts.sample.ps1
        Примечание. Точка (.) также используется как символ родительского 
        каталога, например:
                .\sample.ps1
              Эта команда выполняет скрипт sample.ps1, но не как 
              часть области вызова.
      Оператор статического элемента ::
        Описание: вызывает оператор статических свойств и методы 
        класса .NET Framework. Для поиска статических свойств и 
        методов объекта используется параметр Static для командлета 
        Get-Member. Пример:
            [datetime]::now
 
      .. Оператор диапазона
        Описание: обозначает последовательные целые числа в целочисленном 
        массиве с заданными границами (верхней и нижней). Примеры:
            1..10
            10..1
            foreach ($a in 1..$max) {write-host $a}
      -Оператор форматирования f
        Описание: форматирует строки с помощью метода форматирования 
        строковых объектов. Строка формата указывается слева от 
        оператора, а форматируемые объекты - справа от него.
        Примеры:
            C:\PS> "{0} {1,-10} {2:N}" -f 
            C:\PS> 1,"hello",[math]::pi
            1 hello 3.14
      Оператор подвыражения $( )
        Описание: возвращает результат одного или нескольких 
        выражений. В случае одного результата возвращает скалярное 
        значение. В случае нескольких результатов возвращает массив. 
        Примеры:
            $($x * 23)
            $(Get-WMIObject win32_Directory)
      Оператор подвыражения массива @( )
        Описание: возвращает результат одного или нескольких 
        выражений в виде массива. Если имеется только один элемент, 
        результирующий массив также содержит один элемент. Пример:
            @(Get-WMIObject win32_logicalDisk)
                       
      Оператор ","
        Описание: если запятая используется как двоичный оператор, 
        создается массив. если она используется как унарный оператор, 
        создается массив с одним элементом. Запятая указывается перед 
        элементом. Примеры:
            $myArray = 1,2,3 
            $SingleArray = ,1   
       
CМ. ТАКЖЕ
    about_Arithmetic_Operators
    about_Assignment_Operators
    about_Comparison_Operators
    about_Logical_Operators
    about_Type_Operators
    about_Split
    about_Join
    about_Redirection



about_parameters

РАЗДЕЛ
    about_Parameters
КРАТКОЕ ОПИСАНИЕ
    Описание работы с параметрами командлетов в Windows PowerShell. 
ПОЛНОЕ ОПИСАНИЕ
    В большинстве командлетов и функций Windows PowerShell для ввода 
    данных и настройки их работы используются параметры. Параметры 
    указываются после имени командлета или функции и обычно имеют 
    следующий формат:
        -<имя_параметра> <значение_параметра>
    Перед именем параметра ставится дефис (-), что позволяет оболочке 
    Windows PowerShell отличать параметры от значений, передаваемых 
    командлету или функции. Не все параметры требуют значений, и не 
    все имена параметров необходимо указывать. В некоторых случаях 
    имя параметра подразумевается, и нет необходимости указывать его 
    в команде.
    
    Разные командлеты и функции имеют различные типы параметров и 
    требования к ним. Чтобы получить сведения о параметрах или командлете, 
    используйте командлет Get-Help. Например, чтобы получить сведения о 
    параметрах командлета Get-ChildItem, введите следующую команду:
        get-help get-childitem
    Чтобы получить сведения о параметрах функции, проверьте определения 
    параметров. Они находятся либо после имени функции, либо в теле 
    функции после ключевого слова Param. Дополнительные сведения см. 
    в разделе about_Functions.
    Некоторые функции также содержат справку о параметрах на основе 
    комментариев. Для таких функций используйте командлет Get-Help. 
    Дополнительные сведения см. в разделе справки о командлете Get-Help и 
    в разделе about_Comment_Based_Help. 
    Командлет Get-Help возвращает различные сведения о командлете или 
    функции, включая описание, синтаксис команды, информацию о 
    параметрах и примеры использования этого командлета или функции.
 
    Также можно получить сведения об определенном параметре командлета или 
    функции с помощью командлета Get-Help с параметром Parameter. Если указать 
    подстановочный знак (*) после параметра Parameter, выводятся сведения 
    о всех параметрах этого командлета или функции. Например, следующая 
    команда получает сведения о всех параметрах командлета или функции 
    Get-Member:
        get-help get-member -parameter *
    Эти сведения содержат все необходимые данные по использованию 
    параметра. Например, раздел справки по командлету Get-ChildItem 
    содержит следующие сведения о его параметре Path:
        -path <string[]>
            Задает путь к одному или нескольким местоположениям. 
            Подстановочные знаки разрешены. Местоположением по 
            умолчанию является текущий каталог (.).
        Требуется?                            false
        Позиция?                              1
        Значение по умолчанию                 Текущий каталог
        Принимать входные данные с конвейера? true 
        (ByValue, ByPropertyName) 
        Принимать подстановочные знаки?         true
    Сведения о параметре включают его синтаксис, описание и атрибуты.
    В следующих разделах описываются все атрибуты параметров.
  Обязательный параметр?
    Этот параметр указывает, является ли параметр обязательным (т. е. 
    требуется ли всегда указывать этот параметр при использовании 
    соответствующего командлета). Если этот атрибут имеет значение "True" 
    и параметр не указан в команде, Windows PowerShell запрашивает ввод 
    значения этого параметра.
  Позиция параметра?
    Этот параметр определяет, можно ли задавать значение параметра 
    без указания его имени. Если он имеет значение "0" или "named", 
    указывать имя параметра обязательно. Параметры такого типа называется 
    именованными. Именованные параметры можно указывать после имени 
    командлета в любом порядке.
    Если параметр "Позиция параметра?" имеет целое ненулевое значение, 
    указывать имя параметра не обязательно. Параметр такого типа 
    называется позиционным, и это значение определяет его порядковый 
    номер в списке позиционных параметров. Если указать имя позиционного 
    параметра, этот параметр можно указать в любом месте списка 
    параметров после имени командлета.
    Например, командлет Get-ChildItem имеет параметры Path и Exclude. 
    "Позиция параметра?" для параметра Path имеет значение 1, 
    следовательно, это позиционный параметр. "Позиция параметра?" для 
    параметра Exclude имеет значение 0, следовательно, это 
    именованный параметр. 
    Это значит, что имя параметра Path указывать не обязательно, но 
    его значение должно быть первым или единственным среди неименованных 
    параметров, указанных в команде. Впрочем, параметр Exclude является 
    именованным, а потому его можно указать на любой позиции списка 
    параметров команды.
    Таким образом, значения "Позиция параметра?" для этих двух параметров 
    позволяют использовать любую из следующих команд:
        Get-ChildItem -path c:\techdocs -exclude *.ppt
        Get-ChildItem c:\techdocs -exclude *.ppt
        Get-ChildItem -exclude *.ppt -path c:\techdocs
        Get-ChildItem -exclude *.ppt c:\techdocs
    Если требуется задать еще один позиционный параметр, не указывая 
    его имя, его положение в списке параметров должно соответствовать его 
    значению "Позиция параметра?".
  Тип параметра
    Этот параметр задает тип Microsoft .NET Framework для значения 
    параметра. Например, если параметр имеет тип Int32, его значение 
    должно быть целочисленным. Если он имеет тип string, он должен 
    представлять собой текстовую строку. Если в строке содержатся 
    знаки пробелов, необходимо заключать ее значение в кавычки либо 
    ставить перед пробелами escape-символ (`).
  Значение по умолчанию
    Этот параметр задает значение по умолчанию, присваиваемое 
    параметру, если другого значения не указано. Например, значением по 
    умолчанию для параметра Path обычно является текущий каталог. У 
    обязательных параметров всегда отсутствует значение по умолчанию. 
    У многих необязательных параметров также отсутствует значение по 
    умолчанию, поскольку такие параметры не действуют, если они не указаны. 
  Принимает несколько значений?
    Этот параметр определяет, может ли параметр принимать несколько 
    значений. Если параметр принимает несколько значений, в качестве его 
    значения в команде можно задать список перечисленных через запятую 
    значений или сохранить такой список (массив) в переменной и указать 
    ее как значение параметра.
    Например, параметр ServiceName командлета Get-Service принимает 
    несколько значений. Допускается использовать любую из следующих 
    команд:
        get-service -servicename winrm, netlogon
        $s = "winrm", "netlogon"
        get-service -servicename $s
  Принимает входные данные с конвейера?
    Этот параметр указывает, можно ли использовать оператор конвейера 
    (|) для передачи значения этому параметру. 
    
    Значение                    Описание
    -----                    -----------
    False                    Указывает, что этому параметру нельзя передавать 
    			     значение по конвейеру.
    True (по значению)       Указывает, что параметру можно 
                             передать по конвейеру любое значение, при 
			     условии, что для него указан тип .NET Framework 
			     или это значение можно преобразовать в указанный 
			     тип .NET Framework.
                             Если для параметра указано "True (по 
                             значению)", Windows PowerShell пытается 
                             сопоставить переданные по конвейеру 
                             значения с этим параметром, прежде чем 
                             интерпретировать команду другими способами.
    True (по имени свойства) Указывает, что параметру можно передать значение 
			     по конвейеру, но тип .NET Framework параметра 
			     должен включать свойство с таким же именем, как 
			     у параметра.
 
                             Например, параметру Name можно передать 
                             значение по конвейеру, только если оно имеет 
                             свойство с именем "Name".
  Принимает подстановочные знаки?
    Этот параметр указывает, может ли значение параметра содержать 
    подстановочные знаки, позволяющие сопоставлять его значение с несколькими 
    элементами, существующими в целевом контейнере.
  Общие параметры
    Параметры, которые можно использовать с любым командлетом, называются 
    общими. Чтобы получить дополнительные сведения об общих параметрах, 
    введите следующую команду:
        help about_commonparameters
CМ. ТАКЖЕ
    about_Command_syntax
    about_Comment_Based_Help
    about_Functions_Advanced
    about_Pipelines
    about_Wildcards



about_Parsing

РАЗДЕЛ
    about_parsing
КРАТКОЕ ОПИСАНИЕ
    Описание синтаксического анализа команд в Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Когда пользователь вводит команду в командной строке, Windows 
    PowerShell разделяет текст команды на сегменты, называемые 
    токенами, после чего определяет, как следует интерпретировать 
    каждый токен. Например, Windows PowerShell разделяет приведенную ниже 
    команду на два токена: "Write-Host" и "book", затем интерпретирует 
    каждый из них отдельно.
        Write-Host book
    При обработке команды средство синтаксического анализа Windows 
    PowerShell работает либо в режиме выражений, либо в режиме 
    аргументов. 
        - В режиме выражений строковые значения должны быть заключены 
          в кавычки. Числа, не заключенные в кавычки, обрабатываются как 
          численные значения (а не как последовательности символов). 
        - В режиме аргументов каждое значение обрабатывается как 
          расширяемая строка, если только она не начинается с одного из 
          специальных символов: знак доллара ($), знак "@", одиночная кавычка 
          ('), двойная кавычка (") или открывающая скобка (().
    Если перед значением указан один из этих знаков, оно обрабатывается 
    как выражение значения.
    В следующей таблице приведены некоторые примеры команд, обрабатываемых 
    в режимах выражений и аргументов, и результаты выполнения этих команд.
    Пример             Режим        Результат
    ------------------ ----------   ----------------
    2+2                выражений    4 (целое)
    Write-Output 2+2   аргументов   "2+2" (строка)
    Write-Output (2+2) выражений    4 (целое)
    $a = 2+2           выражений    $a = 4 (целое)
    Write-Output $a    выражений    4 (целое)
    Write-Output $a/H  аргументов   "4/H" (строка)
    
    Каждый токен может быть интерпретирован как объект того или иного 
    типа, например логическое значение или строка. Windows PowerShell 
    пытается определить тип объекта по выражению. Тип объекта зависит 
    от типа параметра, ожидаемого командой, а также от того, известно 
    ли Windows PowerShell, как преобразовать аргумент в правильный тип. 
    В следующей таблице приведены некоторые примеры типов, которые 
    присваиваются значениям, возвращаемым выражениями.
    Пример             Режим        Результат
    ------------------ ----------   ---------------
    Write-Output 1" (строка)
    Write-Output (1)  выражений    False (логическое)
    Write-Output (2)   выражений    2 (целое)
СМ. ТАКЖЕ
    about_Command_Syntax



about_Path_Syntax

РАЗДЕЛ
    about_Path_Syntax
КРАТКОЕ ОПИСАНИЕ
    Описание форматов полного и относительного имени пути в Windows 
    PowerShell.
 
ПОЛНОЕ ОПИСАНИЕ
    Каждый элемент в хранилище данных, доступный с помощью поставщика 
    Windows PowerShell, имеет уникальное имя пути. Имя пути - это 
    сочетание имени элемента, контейнера и вложенных контейнеров (в 
    которых расположен элемент), а также диска Windows PowerShell, 
    через который осуществляется доступ к контейнерам.
    Имена путей в Windows PowerShell подразделяются на два типа: полные и 
    относительные. Полное имя пути включает все элементы пути. Оно имеет 
    следующий формат:
        [<поставщик>::]<диск>:[\<контейнер>[\
т>
    <поставщик> - это поставщик Windows PowerShell, через который 
    осуществляется доступ к хранилищу данных. Например, поставщик 
    FileSystem обеспечивает доступ к файлам и каталогам компьютера.
    Этот элемент синтаксиса необязателен и никогда не требуется, 
    потому что имена дисков уникальны среди всех поставщиков.
    <диск> - это диск Windows PowerShell, поддерживаемый определенным поставщик
ом 
    Windows PowerShell. В случае поставщика FileSystem диски Windows PowerShell
 
    отображаются на имеющиеся в системе диски Windows. Например, если в системе
 
    имеются диски A: и C:, поставщик FileSystem создает такие же диски в Window
s 
    PowerShell.
    Указав диск, необходимо указать контейнеры и вложенные контейнеры, 
    содержащие элемент. Контейнеры должны быть указаны в том же иерархическом 
    порядке, в котором они располагаются в хранилище данных. Иначе говоря, 
    сначала нужно указать родительский контейнер, затем содержащийся в нем 
    дочерний контейнер и т. д. Каждому контейнеру должна предшествовать обратна
я 
    косая черта (\). (Обратите внимание, что Windows PowerShell позволяет 
    использовать и прямую косую черту (/) для совместимости с другими 
    оболочками PowerShell.)
    После того как заданы контейнер и вложенные контейнеры, 
    необходимо указать имя элемента после обратной косой черты. 
    Например, полное имя пути к файлу Shell.dll в каталоге 
    C:\Windows\System32 будет таким:
        C:\Windows\System32\Shell.dll
    В данном случае диском, через который осуществляется доступ к 
    контейнерам, является диск C:, контейнером верхнего уровня - Windows, 
    вложенным контейнером (находящимся в контейнере Windows) - System32, 
    а элементом - Shell.dll.
    В некоторых ситуациях вместо полного имени пути можно использовать 
    относительное. Относительное имя пути основано на текущем рабочем 
    местоположении. Windows PowerShell позволяет идентифицировать элемент 
    по его местоположению относительно текущего рабочего местоположения. 
    Относительные имена путей можно указать с использованием специальных 
    символов. В следующей таблице приведены все эти символы, а также примеры 
    полных и относительных имен путей. Текущим рабочим каталогом в данных 
    примерах является C:\Windows.
    Символ Описание                 Относительный путь  Полный путь
    ------ ------------------------ ------------------- ---------
    .      Текущее рабочее          .\System            c:\Windows\System
	   местоположение
    ..     Родительский каталог     ..\Program Files    c:\Program Files
	   текущего рабочего
           местоположения
    \      Корневой диск текущего   \Program Files      c:\Program Files
           рабочего местоположения
    [нет]  Нет специальных символов System              c:\Windows\System
    При использовании имени пути в команде его следует вводить одинаково, 
    независимо от того, полное оно или относительное. Предположим, к 
    примеру, что текущим рабочим каталогом является C:\Windows. Следующая 
    команда Get-ChildItem извлекает все элементы, содержащиеся в каталоге 
    C:\Techdocs:
        Get-ChildItem \techdocs
    Обратная косая черта указывает о том, что используется корневой диск 
    текущего рабочего местоположения. Поскольку рабочим каталогом является 
    C:\Windows, корневым диском является C:. Поскольку каталог techdocs 
    находится на корневом диске, достаточно указать только обратную косую 
    черту.
    Такой же результат можно получить, выполнив следующую команду:
        Get-ChildItem c:\techdocs
    Какое бы имя пути ни использовалось - полное или относительное - 
    оно важно не только потому, что определяет расположение элемента, 
    но и потому, что уникально идентифицирует его, даже если элемент имеет 
    такое же имя, что и другой элемент, расположенный в другом контейнере. 
    
    Предположим, к примеру, что имеются два файла с одинаковым именем 
    Results.txt. Один расположен в каталоге C:\Techdocs\Jan, а второй - в 
    каталоге C:\Techdocs\Feb. Эти файлы можно четко различать по именам 
    их путей (C:\Techdocs\Jan\Results.txt для первого файла и 
    C:\Techdocs\Feb\Results.txt для второго).
СМ. ТАКЖЕ
    about_Locations



about_pipelines

РАЗДЕЛ
    about_pipelines
КРАТКОЕ ОПИСАНИЕ
    Объединение команд в конвейеры в Windows PowerShell 
ПОЛНОЕ ОПИСАНИЕ
    Конвейер - это последовательность команд, объединенных 
    операторами конвейера (|)(код ASCII: 124). Каждый оператор 
    конвейера передает результаты предшествующей команды последующей 
    команде.
     
    С помощью конвейера можно передавать выходные объекты одной 
    команды на обработку другой команде как входные объекты. Выходные 
    объекты этой команды можно передать еще одной команде. Таким 
    образом получается мощная цепь (или конвейер) команд, состоящая 
    из последовательности простых команд. 
    Пример:  
	Command-1 | Command-2 | Command-3 
    В этом примере объекты, выдаваемые командой Command-1, передаются 
    команде Command-2. Команда Command-2 обрабатывает их и передает 
    команде Command-3. Команда Command-3 обрабатывает их и передает 
    их далее по конвейеру. Поскольку в конвейере нет следующей 
    команды, результаты отображаются в консоли.
    Команды в конвейере обрабатываются слева направо в том порядке, в 
    котором они указаны. Обработка выполняется как одна операция, и 
    выходные данные отображаются сразу после их создания.
    Приведем простой пример. Следующая команда получает процесс 
    Notepad, а затем останавливает его.
         get-process notepad | stop-process
    Первая команда с помощью командлета Get-Process получает объект, 
    представляющий идентификатор процесса Notepad. Для передачи 
    объекта процесса командлету Stop-Process, останавливающему 
    процесс Notepad, используется оператор конвейера (|). Обратите 
    внимание, что в команде Stop-Process не указан параметр, задающий 
    имя или идентификатор процесса, поскольку процесс передается по 
    конвейеру.
    Приведем практический пример. Следующий конвейер команд получает 
    текстовые файлы из текущего каталога, выбирает из них только 
    файлы с размером более 10000 байт, упорядочивает их по размеру и 
    отображает имя и размер каждого файла в таблице.
        Get-ChildItem -path *.txt | Where-Object {$_.length -gt 10000} | 
        Sort-Object -property Length | Format-Table -property name, length 
    Этот конвейер состоит из четырех команд в указанном порядке. Эта 
    команда пишется слева направо, но на следующей схеме этот процесс 
    представлен вертикально.
       Get-ChildItem -path *.txt
                  |
                  |  (объекты FileInfo)
                  |  (  .txt         )
                  |
                  V                   
       Where-Object {$_.length -gt 10000}
                  |
                  |  (объекты FileInfo)
                  |  (  .txt         )
                  |  ( Length > 10000 )
                  |
                  V
       Sort-Object -property Length
                  |
                  |  (объекты FileInfo)
                  |  (  .txt          )
                  |  ( Length > 10000  )
                  |  ( упоряд. по длине )
                  |
                  V
       Format-Table -property name, length
                  |  
                  |  (объекты FileInfo   )
                  |  (  .txt             )
                  |  ( Length > 10000   )
                  |  ( упоряд. по длине  )
                  |  (в формате таблицы )
                  |
                  V
        Name                       Length
        ----                       ------
        tmp1.txt                    82920
        tmp2.txt                   114000
        tmp3.txt                   114000
ИСПОЛЬЗОВАНИЕ КОНВЕЙЕРОВ
    Командлеты Windows PowerShell предназначены для использования в 
    конвейерах. Например, результаты командлета Get обычно можно 
    передать командлету действия (например, Set, Start, Stop или 
    Rename) с таким же существительным.
    Например, можно передать по конвейеру любую службу из командлета 
    Get-Service в командлет Start-Service или Stop-Service (впрочем, 
    перезапускать отключенные службы таким образом нельзя).
    Следующий конвейер команд запускает на компьютере службу WMI.
	get-service wmi | start-service
    Командлеты, получающие и задающие объекты поставщиков Windows 
    PowerShell, например командлеты Item и ItemProperty, также 
    предназначены для использования в конвейерах. 
    Например, можно передать по конвейеру результаты команды Get-Item 
    или Get-ChildItem от поставщика реестра Windows PowerShell 
    командлету New-ItemProperty. Следующая команда добавляет в реестр 
    новую запись "NoOfEmployees" с величиной 8124 (в разделе реестра 
    MyCompany).
       get-item -path HKLM:\Software\MyCompany | new-Itemproperty 
       -name NoOfEmployees -value 8124
    Многие служебные командлеты, такие как Get-Member, Where-Object, 
    Sort-Object, Group-Object и Measure-Object, используются 
    практически исключительно в командлетах. Этим командлетам можно 
    передавать по конвейеру любые объекты.
    Например, все выполняющиеся на компьютере процессы можно передать 
    команде Sort-Object по конвейеру и упорядочить их по количеству 
    дескрипторов в процессе.
	get-process | sort-object -property handles
    
    Кроме того, любые объекты можно передать по конвейеру командлетам 
    форматирования, таким как Format-List и Format-Table, командлетам 
    экспорта, таким как Export-Clixml и Export-CSV, и командлетам 
    вывода данных, таким как Out-Printer.
    Например, процесс Winlogon можно передать по конвейеру командлету 
    Format-List, чтобы отобразить все свойства процесса в виде списка.
	get-process winlogon | format-list -property *
    Комбинирование простых команд с помощью конвейера избавляет от 
    необходимости вводить лишние команды и делает скрипты более 
    эффективными, и чтобы овладеть этим навыком, достаточно лишь 
    немного практики.
ПРИНЦИП ДЕЙСТВИЯ КОНВЕЙЕРА
     При передаче объектов по конвейеру (т. е. передаче выходных 
     объектов одной команды в другую команду) Windows PowerShell 
     пытается сопоставить переданные объекты с одним из параметров 
     принимающего командлета. 
     Для этого компонент "привязки параметров" Windows PowerShell, 
     сопоставляющий объекты ввода с параметрами командлета, пытается 
     найти параметр, соответствующий следующим критериям:
    
     -- Параметр должен принимать входные данные с конвейера (такая 
        возможность есть не у всех параметров).
     -- Параметр должен принимать тип переданного объекта (или тип, в 
        который его можно преобразовать).
     -- Параметр не должен быть уже использован в команде.
     Например, командлет Start-Service имеет множество параметров, но 
     только два из них принимают входные данные с конвейера: Name и 
     InputObject. Параметр Name принимает строки, а параметр 
     InputObject принимает объекты служб. Поэтому командлету 
     Start-Service можно передавать по конвейеру строки и объекты 
     служб (а также объекты, свойства которых можно преобразовать в 
     строки и объекты служб).
     Если компоненту Windows PowerShell для привязки параметров не 
     удается связать переданные по конвейеру объекты с параметром 
     принимающего объекта, команда не выполняется, и Windows 
     PowerShell запрашивает ввод отсутствующих значений параметров.
     Компоненту привязки параметров нельзя принудительно предписать 
     связывать переданные по конвейеру объекты с определенным 
     параметром. Нельзя даже предложить такой параметр. Вместо этого 
     логика компонента управляет обработкой конвейера с максимально 
     возможной эффективностью.
ПООЧЕРЕДНАЯ ОБРАБОТКА
     Передача объектов команде по конвейеру во многом подобна их 
     передаче с помощью параметра команды.
     Например, передача по конвейеру объектов, представляющих службы 
     на компьютере, команде Format-Table, например следующим образом:
		  get-service | format-table -property name, dependentservices
     во многом подобна сохранению объектов служб в переменной и их 
     передаче с помощью командлета Format-Table с параметром InputObject:
		  $services = get-service
                  format-table -inputobject $services -property name, 
                  dependentservices
     или внедрению команды в значение параметра:
                  format-table -inputobject (get-service wmi) 
                  -property name, dependentservices
     Впрочем, имеется важное различие. Если несколько объектов 
     передаются команде по конвейеру, Windows PowerShell отправляет 
     объекты команде поочередно. При использовании параметра команды 
     объекты передаются в виде единого объекта массива.
     Это различие, на первый взгляд кажущееся чисто техническим, 
     имеет некоторые интересные (а иногда полезные) следствия.
     Например, если передать по конвейеру несколько объектов 
     процессов от командлета Get-Process командлету Get-Member, 
     Windows PowerShell поочередно отправляет каждый объект 
     командлету Get-Member. Get-Member отображает классы (типы) 
     .NET объектов процессов, их свойства и методы.
     (Командлет Get-Member исключает дубликаты, поэтому если все 
     объекты принадлежат к одинаковому типу, отображается только один 
     тип объекта.)
     В этом случае командлет Get-Member отображает только свойства и 
     методы каждого объекта процесса, т. е. объекта System.Diagnostics
     .Process.
                 get-process | get-member
                    TypeName: System.Diagnostics.Process
                 Name                           MemberType     Definition
                 ----                           ----------     ----------
                 Handles                        AliasProperty  Handles = Handle
count
                 Name                           AliasProperty  Name = ProcessNa
me
                 NPM                            AliasProperty  NPM = NonpagedSy
stemMemorySize
                 ...
      Впрочем, если используется параметр InputObject командлета 
      Get-Member, командлет Get-Member получает массив объектов 
      System.Diagnostics.Process как единый блок и отображает свойства 
      массива объектов. (Обратите внимание на символ массива ([]) после 
      имени типа System.Object.)
                get-member -inputobject (get-process)
                TypeName: System.Object[]
                 Name               MemberType    Definition
                ----               ----------    ----------
                Count              AliasProperty Count = Length
                Address            Method        System.Object& Address(Int32 )
                Clone              Method        System.Object Clone()
                ...
     Этот результат может не соответствовать вашим ожиданиям, но 
     изучив его природу, его можно использовать. Например, массив 
     объектов процессов имеет свойство Count, с помощью которого 
     можно подсчитать количество процессов на компьютере.
		(get-process).count
                
     Это важное различие, и при передаче объектов командлету по 
     конвейеру необходимо учитывать, что они доставляются поочередно. 
ПРИЕМ ВХОДНЫХ ДАННЫХ С КОНВЕЙЕРА
    Чтобы командлет принимал входные данные с конвейера, у него 
    должен быть параметр, принимающий входные данные с конвейера. С 
    помощью командлета Get-Help с параметром Full или Parameter можно 
    определить, какой параметр командлета принимает входные данные с 
    конвейера (и есть ли вообще такой параметр).
    По умолчанию командлет Get-Help отображает элемент "Принимает 
    входные данные с конвейера" в таблице атрибутов параметра. Эта 
    таблица выводится только при использовании командлета Get-Help с 
    параметром Full или Parameter.
    Например, чтобы определить, какой из параметров командлета 
    Start-Service принимает входные данные с конвейера, введите 
    следующую команду:
       
        get-help start-service -full
        get-help start-service -parameter *
    Например, в справке по командлету Start-Service отображается, что 
    параметры Name и InputObject принимают входные данные с конвейера 
    (значение "true"). Для всех остальных параметров в строке 
    "Принимать входные данные с конвейера?" отображается "false".
        -name <string[]>
           Задает имена служб, которые необходимо запустить.
           Имя параметра указывать необязательно. Можно использовать 
           "-Name" или его псевдоним ("-ServiceName") либо опустить 
           имя параметра.
           Требуется?                            true
           Позиция?                              1
           Значение по умолчанию
      -->  Принимать входные данные с конвейера? true (ByValue, ByPropertyName)
           Принимать подстановочные знаки?         true
        -inputObject <ServiceController[]>
           Задает объекты ServiceController, представляющие 
           запускаемые службы. Введите переменную, содержащую 
           объекты, либо получающую их команду или выражение.
           Требуется?                            false
           Позиция?                              именованный
           Значение по умолчанию
      -->  Принимать входные данные с конвейера? true (ByValue)
           Принимать подстановочные знаки?         false
     Это значит, что можно передавать объекты (PsObjects) командлету 
     Where-Object по конвейеру и Windows PowerShell будет связывать 
     эти объекты с параметром InputObject.
МЕТОДЫ ПРИЕМА ВХОДНЫХ ДАННЫХ С КОНВЕЙЕРА
     Параметры командлетов могут принимать входные данные с конвейера 
     двумя разными способами.
     -- ByValue (По значению): параметры, принимающие входные данные 
        по значению, могут принимать с конвейера объекты, принадлежащие 
        к тем же типам .NET, что и значения этих параметров, либо объекты, 
        которые можно преобразовать в эти типы. 
        Например, параметр Name командлета Start-Service принимает 
        входные данные с конвейера по значению. Он принимает 
        строковые объекты и объекты, которые можно преобразовать в строки.
     -- ByPropertyName (По имени свойства): параметры, принимающие 
        входные данные по имени свойства, могут принимать с конвейера 
        только объекты, имеющие свойство с таким же именем, как и имя 
        самого параметра.
        Например, параметр Name командлета Start-Service может 
        принимать только объекты, имеющие свойство Name. 
        (Чтобы вывести свойства объекта, передайте его командлету 
        Get-Member по конвейеру.)
     Некоторые параметры могут принимать объекты по значению или по 
     имени свойства. Эти параметры разработаны с учетом удобства 
     приема входных данных с конвейера.
ПРОВЕРКА ОШИБОК КОНВЕЙЕРА
     Если команду на удалось выполнить из-за ошибки конвейера, можно 
     выявить причины этой ошибки и изменить команду.
     Например, следующая команда пытается переместить запись из 
     одного раздела реестра в другой. Для этого с помощью командлета 
     Get-Item получается конечный путь, который затем передается 
     командлету Move-ItemProperty по конвейеру.
     А именно, эта команда получает конечный путь с помощью 
     командлета Get-Item. Результат передается командлету 
     Move-ItemProperty с помощью оператора конвейера (|). Команда 
     Move-ItemProperty указывает текущий путь и имя перемещаемой 
     записи реестра. 
          get-item -path hklm:\software\mycompany\sales | 
          move-itemproperty -path hklm:\software\mycompany\design 
          -name product
     Выполнить команду не удается, и Windows PowerShell выводит 
     следующее сообщение об ошибке:  
         Move-ItemProperty : Не удается привязать объект ввода к 
         любым параметрам команды, так как команда не принимает 
         входные данные конвейера, либо входные данные и их свойства 
         не совпадают с любыми из параметров, принимающих входные 
         данные конвейера.
         В строке:1 знак:23
         + $a | move-itemproperty < -path hklm:\software\mycompany\
         design -name product
    Чтобы проверить эту ошибку, воспользуйтесь командлетом 
    Trace-Command для трассировки компонента привязки параметров 
    Windows PowerShell. Следующая команда выполняет трассировку 
    компонента привязки параметров во время обработки команды. 
    Параметр -pshost используется для вывода результатов в консоль, а 
    команда -filepath - для отправки результатов в файл debug.txt для 
    дальнейшего использования.
         trace-command -name parameterbinding -expression {get-item -path 
         hklm:\software\mycompany\sales | move-itemproperty -path 
         hklm:\software\mycompany\design -name product} -pshost -filepath debug
.txt
    Результаты трассировки имеют существенный размер, но они 
    показывают значения, привязываемые к командлету Get-Item, а затем 
    именованные значения, привязываемые к командлету Move-ItemProperty. 
       ... 
        BIND NAMED cmd line args [Move-ItemProperty] BIND arg 
        [hklm:\software\mycompany\design] to parameter [Path] 
       ...
            BIND arg [product] to parameter [Name] 
       ....
        BIND POSITIONAL cmd line args [Move-ItemProperty] 
       ...
    И наконец, отображаются сведения о том, что попытка привязать 
    путь к параметру Destination командлета Move-ItemProperty не удалась.
        ...
        BIND PIPELINE object to parameters: [Move-ItemProperty]
            PIPELINE object TYPE = [Microsoft.Win32.RegistryKey]
            RESTORING pipeline parameter's original values
            Parameter [Destination] PIPELINE INPUT ValueFromPipelineByPropertyN
ame NO COERCION
            Parameter [Credential] PIPELINE INPUT ValueFromPipelineByPropertyNa
me NO COERCION
        ... 
     Чтобы проверить ошибку, с помощью командлета Get-Help просмотрите 
     атрибуты параметра Destination. Следующая команда получает подробные 
     сведения о параметре Destination.
	get-help move-itemproperty -parameter destination
     Результаты показывают, что параметр Destination принимает 
     входные данные с конвейера только по имени свойства.
     Т. е. у передаваемого по конвейеру объекта должно быть свойство 
     Destination.
        -destination <string>
            Определяет путь к целевому местоположению.
            Требуется?                             true
            Позиция?                               2
            Значение по умолчанию
            Принимать входные данные с конвейера?  true (ByPropertyName) 
            Принимать подстановочные знаки?          true  
     Чтобы просмотреть свойства и методы объекта, переданному по 
     конвейеру командлету Move-ItemProperty, передайте его по 
     конвейеру командлету Get-Member. В следующей команде результаты 
     выполнения первой части команды передаются командлету Get-Member 
     по конвейеру.
          get-item -path hklm:\software\mycompany\sales | get-member 
     Выходные данные показывают, что элемент является разделом реестра 
     Microsoft.Win32.RegistryKey, не имеющим свойства Destination. Это 
     объясняет причины сбоя команды.
     Чтобы исправить команду, необходимо указать конечный путь в 
     командлете Move-ItemProperty. Этот путь можно получить с помощью 
     командлета Get-ItemProperty, но имя и назначение необходимо 
     указать в той части команды, где находится командлет 
     Move-ItemProperty.
          
         get-item -path hklm:\software\mycompany\design | 
             move-itemproperty -dest hklm:\software\mycompany\design -name prod
uct  
     Чтобы убедиться, что команда сработала, воспользуйтесь командой 
     Get-ItemProperty.
	get-itemproperty hklm:\software\mycompany\sales
     Результаты показывают, что запись реестра Product перемещена в 
     раздел реестра Sales.
        PSPath       : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\s
oftware\mycompany\sales
        PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\s
oftware\mycompany
        PSChildName  : sales
        PSDrive      : HKLM
        PSProvider   : Microsoft.PowerShell.Core\Registry
        Product      : 18
CМ. ТАКЖЕ
    about_objects
    about_parameters
    about_command_syntax
    about_foreach



about_preference_variables

РАЗДЕЛ
    Привилегированные переменные
КРАТКОЕ ОПИСАНИЕ
    Переменные, которые настраивают поведение Windows PowerShell 
ПОЛНОЕ ОПИСАНИЕ
    Оболочка Windows PowerShell включает в себя набор переменных, 
    позволяющих настроить ее поведение. Привилегированные переменные 
    действуют как параметры в системах с графическим интерфейсом.
    Привилегированные переменные влияют на рабочую среду Windows 
    PowerShell и на все запускаемые в среде команды. Во многих 
    случаях у командлетов есть параметры, позволяющие переопределить 
    поведение, заданное привилегированными переменными, для 
    конкретной команды.
    В следующей таблице перечислены привилегированные переменные и их 
    значения по умолчанию.
    Переменная                           Значение по умолчанию
    --------                             -------------
    $ConfirmPreference                   High
    $DebugPreference                     SilentlyContinue
    $ErrorActionPreference               Continue
    $ErrorView                           NormalView
    $FormatEnumerationLimit              4
    $LogCommandHealthEvent               False (запись в журнал не производится
)
    $LogCommandLifecycleEvent            False (запись в журнал не производится
)
    $LogEngineHealthEvent                True (производится запись в журнал)
    $LogEngineLifecycleEvent             True (производится запись в журнал)
    $LogProviderLifecycleEvent           True (производится запись в журнал)
    $LogProviderHealthEvent              True (производится запись в журнал)
    $MaximumAliasCount                   4096
    $MaximumDriveCount                   4096
    $MaximumErrorCount                   256
    $MaximumFunctionCount                4096
    $MaximumHistoryCount                 64
    $MaximumVariableCount                4096
    $OFS                                 (Пробел (" "))
    $OutputEncoding		         ASCIIEncoding object
    $ProgressPreference                  Continue
    $PSEmailServer                       (Нет)
    $PSSessionApplicationName            WSMAN
    $PSSessionConfigurationName          http://schemas.microsoft.com/powershel
l/microsoft.powershell 
    $PSSessionOption                     (См.далее)
    $VerbosePreference                   SilentlyContinue
    $WarningPreference                   Continue
    $WhatIfPreference                    0
    Windows PowerShell также включает в себя следующие переменные 
    среды, в которых хранятся настройки пользователя. Дополнительные 
    сведения о переменных среды см. в разделе about_environment_variables.
    Переменная                                         
    --------                         
    PSModulePath                        
РАБОТА С ПРИВИЛЕГИРОВАННЫМИ ПЕРЕМЕННЫМИ
    Этот документ описывает каждую из привилегированных переменных.
    Чтобы вывести на дисплей текущее значение определенной 
    привилегированной переменной, введите имя переменной. В ответ 
    Windows PowerShell выдаст значение. Например, следующая команда 
    отображает значение переменной $ConfirmPreference.
        PS> $ConfirmPreference
        High
    Чтобы изменить значение переменной, используйте инструкцию 
    назначения. Например, следующая инструкция присваивает значение 
    "Medium" переменной $ConfirmPreference.
        PS> $ConfirmPreference = "Medium"
    Как и все переменные, заданные значения специфичны для текущего 
    окна Windows PowerShell. Чтобы они действовали во всех окнах 
    Windows PowerShell, их следует добавить в профиль Windows 
    PowerShell. Дополнительные сведения см. в разделе about_profiles.
УДАЛЕННАЯ РАБОТА
   При запуске команд на удаленном компьютере удаленные команды 
   подвержены только настройкам, заданным в клиенте Windows 
   PowerShell на этом удаленном компьютере. Например, при запуске 
   удаленной команды значение переменной $DebugPreference на 
   удаленном компьютере определяет, как Windows PowerShell отвечает 
   на сообщения отладки. 
   Дополнительные сведения об удаленных командах см. в разделе about_remote.
$ConfirmPreference
------------------
    Определяет, какие действия командлета автоматически запрашивают 
    подтверждение у пользователя перед выполнением. 
        
    Когда значение $ConfirmPreference (High, Medium, Low, None) 
    больше или равно риску выполнения действия командлета (High, 
    Medium, Low, None), Windows PowerShell автоматически запрашивает 
    подтверждение у пользователя перед выполнением действия. 
    Можно использовать параметр Confirm командлета, чтобы 
    переопределить эту настройку для определенной команды.
        Допустимые значения:
		None.       Никакие действия командлета не требуют подтверждения 
		            автоматически. Пользователям следует использовать параметр Confir
m, 
		            чтобы запрос подтверждения выполнялся для конкретных команд.
		Low.        Действия командлета с низким, средним или высоким риском 
		            автоматически требуют подтверждения. Чтобы отменить подтверждение
 
		            конкретной команды, используйте параметр -Confirm:$false.
		Medium.     Действия командлета со средним или высоким риском автоматически 
		            требуют подтверждения. Чтобы включить подтверждение для конкретно
й 
                            команды, используйте параметр -confirm. Чтобы отмен
ить подтверждение 
                            конкретной команды, используйте значение confirm:$f
alse.
		High.       Действия командлета с высоким риском автоматически 
	   (по умолчанию)   требуют подтверждения. Чтобы включить подтверждение для ко
нкретной 
                            команды, используйте параметр -confirm. Чтобы отмен
ить подтверждение 
                            для конкретной команды, используйте значение -confi
rm:$false.
    ПОДРОБНОЕ ОБЪЯСНЕНИЕ
        Когда действие, выполняемое командлетом, значительно влияет 
        на систему, например оно удаляет данные или использует 
        большой объем ресурсов системы, Windows PowerShell может 
        автоматически запросить подтверждение перед выполнением действия. 
        Пример:
	    PS> remove-item pref2.txt
            Подтверждение
            Выполнить это действие?
            Выполнение операции "Удаление файла" над целевым объектом 
            "C:\pref2.txt".
            [Y] Да [A] Да для всех [N] Нет [L] Нет для всех [S] Приостановить 
            [?] Справка (по умолчанию "Y"):
        Оценка риска является частью командлета, это его аспект 
        "ConfirmImpact". Ее нельзя изменить.
        Командлет, который может представлять угрозу системе, имеет 
        параметр Confirm, который можно использовать для включения 
        или отключения подтверждения для конкретной команды.
	Так как большинство командлетов имеют по умолчанию показатель риска 
	"Medium", а переменная $ConfirmPreference имеет по умолчанию 
	значение "High", автоматический запрос подтверждения происходит 
	редко. Однако можно активировать автоматический запрос 
	подтверждения, изменив значение переменной $ConfirmPreference на 
	"Medium" или "Low". 
    ПРИМЕРЫ
      Этот пример показывает, что произойдет, если для переменной 
      $ConfirmPreference задано значение по умолчанию. Значение High 
      требует подтверждения только для действий командлетов с высоким 
      риском. Так как большинство действий имеют средний уровень 
      риска, они не требуют подтверждения автоматически, хотя можно 
      использовать параметр Confirm командлета, чтобы включить 
      подтверждение определенной команды.
          PS> $confirmpreference              #Получение текущего значения пере
менной 
          High  
        
	  PS> remove-item temp1.txt           #Удалить файл
          PS>                                 #Удалено без подтверждения 
          PS> remove-item temp2.txt -confirm  #Используется параметр 
          Confirm
          Подтверждение Выполнить это действие?
          Выполнение операции "Удаление файла" над целевым объектом 
          "C:\temp2.txt".
          [Y] Да [A] Да для всех [N] Нет [L] Нет для всех [S] Приостановить 
          [?] Справка (по умолчанию "Y"):
       Этот пример показывает результат изменения значения переменной 
       $ConfirmPrefernce на Medium. Так как большинство действий 
       командлетов имеют средний уровень риска, для них автоматически 
       требуется подтверждение. Чтобы отключить запрос подтверждения 
       для конкретной команды, следует использовать параметр Confirm 
       со значением $false.
            
          PS> $confirmpreference = "Medium" 
                                     #Изменение значение переменной 
                                     $ConfirmPreference 
          PS> remove-item temp2.txt
                                     #Удаление файла вызывает запрос 
                                     подтверждения 
          Подтверждение
          Выполнить это действие?
          Выполнение операции "Удаление файла" над целевым объектом 
          "C:\temp2.txt".
          [Y] Да [A] Да для всех [N] Нет [L] Нет для всех [S] Приостановить 
          [?] Справка (по умолчанию "Y"):
	
          PS> remove-item temp3.txt -confirm:$false  #Используется параметр Con
firm для 
						      отключения запроса подтверждения 
          PS>
$DebugPreference
------------------
	Определяет, как Windows PowerShell отвечает на сообщения отладки, 
	созданные скриптом, командлетом или поставщиком, либо командой 
	Write-Debug в командной строке. 
        Некоторые командлеты отображают сообщения отладки, которые 
        обычно являются сугубо техническими сообщениями для 
        программистов и специалистов технической поддержки. По 
        умолчанию сообщения отладки не отображаются, но можно 
        настроить отображение сообщений отладки, изменив значение 
        переменной $DebugPreference.
        
        Также можно использовать общий параметр Debug командлета, 
        чтобы отображать или скрывать сообщения отладки для 
        конкретной команды. Чтобы получить дополнительные сведения, 
        введите команду "get-help about_commonparameters".
        Допустимые значения:
	    Stop.               Отображается сообщение отладки и 
	    		    	выполнение прекращается. Ошибка записывается на консоль.
     	    Inquire.            Выводится сообщение отладки и 
     	    			запрос на продолжение.
            Continue.           Отображается сообщение отладки, 
            			выполнение продолжается.
            SilentlyContinue.  	Результат не заметен. Сообщение отладки 
	    (по умолчанию)	не отображается, выполнение продолжается без остановки.
             
    ПРИМЕРЫ
    
    Следующие примеры показывают результат изменения значений переменной 
    $DebugPreference, когда команда Write-Debug вводится в командной 
    строке. Изменение касается всех сообщений отладки, включая сообщения, 
    созданные командлетами и скриптами. Примеры также демонстрируют 
    использование общего параметра Debug, который позволяет отобразить 
    или скрыть сообщения отладки, связанные с определенной командой.
    Этот пример показывает, что произойдет, если задано значение по 
    умолчанию "SilentlyContinue". Сообщение отладки не отображается, 
    работа продолжается. В последней команде используется параметр 
    Debug, чтобы переопределить настройку для конкретной команды.
        PS> $debugpreference                    #Получение текущего значения
        SilentlyContinue                          $DebugPreference
        PS> write-debug "Hello, World"
        PS>                                     # Сообщение отладки не отобража
ется.
        PS> write-debug "Hello, World" -Debug   # Используется параметр Debug
        ОТЛАДКА: Hello, World                   # Запрашивается 
        сообщение отладки
        Подтверждение Продолжить выполнение текущей операции?
        [Y] Да [A] Да для всех [H] Прервать команду [S] Приостановить 
        [?] Справка (по умолчанию "Y"):
   
    Этот пример показывает, что произойдет, если задано значение 
    "Continue". В последней команде используется параметр Debug со 
    значением $false, чтобы скрыть сообщение для конкретной команды.
        PS> $debugpreference = "Continue"  # Значение изменяется на "Continue"
        PS> write-debug "Hello, World"
        ОТЛАДКА: Hello, World              # Сообщение отладки отображается, ра
бота продолжается.
        PS>
        PS> write-debug "Hello, World" -Debug:$false  
                                           # Используется параметр Debug со зна
чением false.
        PS>                                # Сообщение отладки не отображается.
        
    Этот пример показывает, что произойдет, если задано значение 
    "Stop". В последней команде используется параметр Debug со 
    значением $false, чтобы скрыть сообщение для конкретной команды.
        PS> $debugpreference = "Stop"      # Значение изменяется на "Stop"
        PS> write-debug "Hello, World"
        ОТЛАДКА: Hello, World
        Write-Debug : Выполнение команды остановлено, так как переменной оболоч
ки "DebugPreference" 
	присвоено значение Stop.
        В строке:1 знак:12
        + write-debug < "Hello, World"
        PS> write-debug "Hello, World" -Debug:$false  
                                           # Используется параметр Debug со зна
чением $false
        PS>       			   # Сообщение отладки не отображается, 
        				     выполнение не останавливается.
      
    Этот пример показывает, что произойдет, если задано значение 
    "Inquire". В последней команде используется параметр Debug со 
    значением $false, чтобы скрыть сообщение для конкретной команды.
        PS> $debugpreference = "Inquire"
        PS> write-debug "Hello, World"
        ОТЛАДКА: Hello, World
        Подтверждение
        Продолжить выполнение текущей операции?
        [Y] Да [A] Да для всех [H] Прервать команду [S] Приостановить 
        [?] Справка (по умолчанию "Y"):
        PS> write-debug "Hello, World" -Debug:$false  
                                            # Используется параметр Debug со зн
ачением 
                                              $false
        PS>       			    # Сообщение отладки не отображается, 
        				      выполнение продолжается без остановки.
$ErrorActionPreference
----------------------
	Определяет, как Windows PowerShell отвечает на непрерывающую ошибку 
	(ошибка, которая не останавливает обработку командлета) в командной 
	строке или в скрипте, командлете или поставщике (например, на ошибки, 
	сгенерированные командлетом Write-Error). 
        Также можно использовать общий параметр ErrorAction 
        командлета, чтобы переопределить эту настройку для 
        определенной команды. Чтобы получить дополнительные сведения, 
        введите команду "get-help about_commonparameters".
        Допустимые значения:
	    Stop.               Отображается сообщение об ошибке, выполнение прекращае
тся. 
     	    Inquire.            Выводится сообщение об ошибке и запрос на продолж
ение.
            Continue.           Отображается сообщение об ошибке, выполнение пр
одолжается.
            SilentlyContinue.   Результат не заметен. Сообщение об ошибке 
            (по умолчанию)	не отображается, выполнение продолжается без останов
ки.
       Ни переменная $ErrorActionPreference, ни общий параметр 
       ErrorAction не влияют на то, как Windows PowerShell отвечает 
       на прерывающие ошибки (ошибки, останавливающие обработку 
       командлета).
       Чтобы получить дополнительные сведения об общем параметре 
       ErrorAction, введите команду "get-help about_commonparameters".
    ПРИМЕРЫ
    Данные примеры показывают, что происходит при различных значениях 
    переменной $ErrorActionPreference и использовании общего 
    параметра ErrorAction для переопределения настройки для 
    конкретной команды. Для параметра ErrorAction допустимы те же 
    значения, что и для переменной $ErrorActionPreference.
    
    Этот пример показывает, что произойдет, если задано значение по 
    умолчанию "Continue".
        PS> $erroractionpreference                      
        Continue		# Отображается значение привилегированной переменной.	
        	           
        PS> write-error "Hello, World"                  
                                # Генерируется непрерывающая ошибка.
        write-error "Hello, World" : Hello, World        
				# Отображается сообщение об ошибке и продолжается выполнение.
        PS> write-error "Hello, World" -ErrorAction:SilentlyContinue
                                # Используется параметр ErrorAction со значение
м "SilentlyContinue".
        PS>                                             
                                # Сообщение об ошибке не отображается, выполнен
ие продолжается.
    Этот пример показывает, что произойдет, если задано значение "SilentlyConti
nue".
        PS> $ErrorActionPreference = "SilentlyContinue"
                                # Изменение значения привилегированной переменн
ой.
        PS> write-error "Hello, World"                  
                                # Генерируется сообщение об ошибке.
        PS>                     
                                # Сообщение об ошибке не выводится.
        PS> write-error "Hello, World" -erroraction:continue
                                # Используется параметр ErrorAction со значение
м "Continue".
        write-error "Hello, World" -erroraction:continue : Hello, World 
				# Выводится сообщение об ошибке и выполнение продолжается.
       
    Этот пример показывает результат реальной ошибки. В данном случае 
    команда запрашивает несуществующий файл nofile.txt. В примере 
    также используется общий параметр ErrorAction для переопределения 
    настройки.
        PS> $erroractionpreference                      
        SilentlyContinue        # Отображается значение привилегированной перем
енной.   
        PS> get-childitem -path nofile.txt
        PS>                     # Сообщение об ошибке не выводится.
        PS> $ErrorActionPreference = "Continue" 
                                # Значение изменяется на "Continue".
        PS> get-childitem -path nofile.txt
        Get-ChildItem : Не удается найти путь "C:\nofile.txt", так как он не су
ществует.
        В строке:1 знак:4
        + get-childitem < nofile.txt
        PS> get-childitem -path nofile.txt -erroraction SilentlyContinue
                                # Используется параметр ErrorAction 
                                # Сообщение об ошибке не выводится.
  
        PS> $ErrorActionPreference = "Inquire"          
                                # Значение изменяется на "Inquire".
        PS> get-childitem -path nofile.txt
        Подтверждение
        Не удается найти путь "C:\nofile.txt", так как он не существует.
        [Y] Да [A] Да для всех [H] Прервать команду [S] Приостановить 
        [?] Справка (по умолчанию "Y"): y 
        Get-ChildItem : Не удается найти путь "C:\nofile.txt", так как он не су
ществует.
        В строке:1 знак:4
        + get-childitem < nofile.txt
        PS> $ErrorActionPreference = "Continue"                  
                                # Значение изменяется на "Continue".
        PS> Get-Childitem nofile.txt -erroraction "Inquire"   
                                # Используется параметр ErrorAction для переопр
еделения значения.
        Подтверждение
        Не удается найти путь "C:\nofile.txt", так как он не существует.
        [Y] Да [A] Да для всех [H] Прервать команду [S] Приостановить [?] Справ
ка (по умолчанию "Y"):
$ErrorView
----------
        Определяет формат отображения сообщений об ошибках в Windows 
        PowerShell. 
        Допустимые значения:
	    NormalView.         Отображаются подробные сведения. 
	    (по умолчанию)	Подходит для большинства пользователей. 
				Включает описание ошибки, имя объекта, 
				с которым связана ошибка, и стрелки (<), 
				указывающие на слова команды, вызвавшие ошибку.
     	    CategoryView.       Отображаются краткие структурированные сведения. 
				Формат подходит для рабочих сред. 
     	    			Формат:{категория}: ({имя_целевого_объекта}:
				{тип_целевого_объекта}):[{действие}], {причина}
        Дополнительные сведения о полях формата CategoryView см. в 
        разделе "Класс ErrorCategoryInfo" документации Windows PowerShell SDK.
        
    ПРИМЕРЫ
    Данные примеры показывают влияние различных значений переменной 
    $ErrorView.
    Этот пример показывает, как отображается ошибка, если переменная 
    $ErrorView имеет значение NormalView. В данном случае команда 
    Get-ChildItem запрашивает несуществующий файл.
        PS> $ErrorView                         # Проверка значения.
        NormalView
        PS> get-childitem nofile.txt           # Поиск 
        несуществующего файла.
        Get-ChildItem : Не удается найти путь "C:\nofile.txt", так как он не су
ществует.
        В строке:1 знак:14
        + get-childitem < nofile.txt
    Этот пример показывает, как та же ошибка отображается, если 
    переменная $ErrorView имеет значение CategoryView.
        PS> $ErrorView = "CategoryView"        # Значение изменяется 
                                                 CategoryView
        PS> get-childitem nofile.txt
        ObjectNotFound: (C:\nofile.txt:String) [Get-ChildItem], ItemNotFoundExc
eption
 
   Этот пример показывает, что значение переменой $ErrorView влияет 
   только на отображение ошибки; структура объекта ошибки, который 
   хранится в автоматической переменной $error, не меняется. 
   Дополнительные сведения об автоматической переменной $error см. в 
   разделе about_automatic_variables.
   Эта команда извлекает объект ErrorRecord, связанный с последней 
   ошибкой в массиве ошибок (элемент 0), и приводит все свойства 
   объекта ошибки к формату списка.
           
        PS> $error[0] | format-list -property * -force
        Exception  : System.Management.Automation.ItemNotFoundException: Не уда
ется найти путь 
		     "C:\nofile.txt", так как он не существует. 
		     at System.Management.Automation.SessionStateInternal.GetChildItems(Strin
gpath, 
		     Boolean recurse, CmdletProviderContext context) 
		     at System.Management.Automation.ChildItemCmdletProviderIntrinsics.Get(St
ring path, 
		     Boolean recurse, CmdletProviderContext context) 
		     at Microsoft.PowerShell.Commands.GetChildItemCommand.ProcessRecord() : 
        TargetObject          : C:\nofile.txt
        CategoryInfo          : ObjectNotFound: (C:\nofile.txt:String) [Get-Chi
ldItem],
                                ItemNotFoundException
        FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetC
hildItemCommand
        ErrorDetails          :
        InvocationInfo        : System.Management.Automation.InvocationInfo
$FormatEnumerationLimit
-----------------------
        Определяет, сколько элементов перечисления отображается. Эта 
        переменная не влияет на сами объекты, только на то, как они 
        отображаются.Когда значение переменной $FormatEnumerationLimit  
        меньше, чем число элементов перечисления, Windows PowerShell  
        добавляет многоточие (...) для обозначения неотображенных элементов.
        Допустимые значения: целые числа (Int32)
        Значение по умолчанию: 4
    ПРИМЕРЫ
        Этот пример показывает, как использовать переменную 
        $FormatEnumerationLimit, чтобы улучшить отображение 
        перечисляемых элементов. 
        В этом примере команда создает таблицу, где все запущенные на 
        компьютере службы перечислены в виде двух групп, в одну 
        группу входят выполняющиеся службы, во вторую - 
        остановленные. Команда Get-Service используется для получения 
        всех служб и последующей передачи результатов по конвейеру в 
        командлет Group-Object, который группирует результаты, 
        основываясь на состоянии службы. 
        В результате выводится таблица, где состояния перечислены в 
        столбце Name, а соответствующие процессы - в столбце Group. 
        (Чтобы изменить названия столбцов, воспользуйтесь 
        хэш-таблицей. Чтобы получить дополнительные сведения, введите 
        команду "get-help format-table -examples" и изучите примеры.) 
        Для каждого состояния отображается максимум 4 службы в 
        столбце Group. Чтобы увеличить число перечисленных элементов, 
        увеличьте значение переменной $FormatEnumerationLimit до 1000.
        В результате список в столбце Group будет ограничен длиной 
        строки. В последней команде примера используется параметр 
        Wrap командлета Format-Table для отображения всех процессов в 
        каждой группе состояния.
         
        PS> $formatenumerationlimit         # Поиск текущего значения
        4
        
        PS> get-service | group-object -property status           
                                            # Перечисляются все службы, сгруппи
рованные 
                                              по состоянию
        Count Name                      Group
        ----- ----                      -----
           60 Running                   {AdtAgent, ALG, Ati HotKey Poller, Audi
oSrv...}   
           41 Stopped                   {Alerter, AppMgmt, aspnet_state, ATI Sm
art...}
                                           # Список усекается после 
                                             4-го элемента.
        PS> $formatenumerationlimit = 1000
                                           # Предел увеличивается до 1000.
        
        PS> get-service | group-object -property status           
                                           # Команда повторяется.
        Count Name   Group
        ----- ----   -----
           60 Running {AdtAgent, ALG, Ati HotKey Poller, AudioSrv, BITS, CcmExe
c...
           41 Stopped {Alerter, AppMgmt, aspnet_state, ATI Smart, Browser, CiSv
c...
        PS> get-service | group-object -property status | format-table -wrap
                                           # Добавляется параметр Wrap.
        Count Name       Group
        ----- ----       -----
           60 Running    {AdtAgent, ALG, Ati HotKey Poller, AudioSrv, BITS, Ccm
Exec, Client
                         for NFS, CryptSvc, DcomLaunch, Dhcp, dmserver, Dnscach
e, ERSvc,   
                         Eventlog, EventSystem, FwcAgent, helpsvc, HidServ, IIS
ADMIN,    
                         InoRPC, InoRT, InoTask, lanmanserver, lanmanworkstatio
n, LmHosts, 
                         MDM, Netlogon, Netman, Nla, NtLmSsp, PlugPlay, PolicyA
gent,   
                         ProtectedStorage, RasMan, RemoteRegistry, RpcSs, SamSs
, Schedule,
                         seclogon, SENS, SharedAccess, ShellHWDetection, SMT PS
VC, Spooler,    
                         srservice, SSDPSRV, stisvc, TapiSrv, TermService, Them
es, TrkWks,
                         UMWdf, W32Time, W3SVC, WebClient, winmgmt, wscsvc, wua
userv,
                         WZCSVC, zzInterix}
           41 Stopped    {Alerter, AppMgmt, aspnet_state, ATI Smart, Browser, C
iSvc,
                         ClipSrv, clr_optimization_v2.0.50727_32, COMSysApp, Cr
onService, 
                         dmadmin, FastUserSwitchingCompatibility, HTTPFilter, I
mapiService,
                         Mapsvc, Messenger, mnmsrvc, MSDTC, MSIServer, msvsmon8
0, NetDDE, 
                         NetDDEdsdm, NtmsSvc, NVSvc, ose, RasAuto, RDSessMgr, R
emoteAccess,    
                         RpcLocator, RSVP, SCardSvr, SwPrv, SysmonLog, TlntSvr,
 upnphost,      
                         UPS, VSS, WmdmPmSN, Wmi, WmiApSrv, xmlprov}
$Log*Event
----------
        Привилегированные переменные $Log*Event определяют, какие 
        типы событий записываются в журнал событий Windows PowerShell 
        в средстве просмотра событий. По умолчанию в журнал 
        записываются только события обработчика и события поставщика, 
        но при помощи привилегированных переменных Log*Event можно 
        настроить запись в журнал, например, чтобы записывались 
        события, связанные с командами.   
        Привилегированные переменные $Log*Event:
            $LogCommandHealthEvent. Позволяет записывать в журнал 
                ошибки и исключения, связанные с инициализацией и 
                обработкой команд. Значение по умолчанию = $false (запись 
                в журнал не производится).
            $LogCommandLifecycleEvent. 
                Задает запись в журнал запуска и остановки команд и 
                командных конвейеров, а также исключений безопасности 
                при обнаружении команд. Значение по умолчанию = 
                $false (запись в журнал не производится).
            $LogEngineHealthEvent. Задает запись в журнал ошибок и сбоев сеансо
в. 
	        Значение по умолчанию = $true (запись в журнал производится).
            $LogEngineLifecycleEvent. Задает запись в журнал открытия 
                и закрытия сеансов. Значение по 
		умолчанию = $true (запись в журнал производится).
            $LogProviderHealthEvent. Задает запись в журнал ошибок 
            	поставщика, например ошибок чтения и записи, ошибок 
            	поиска и ошибок вызова. Значение по умолчанию = $true 
           	(запись в журнал производится).
            $LogProviderLifecycleEvent. Задает запись в журнал 
            	добавления и удаления поставщиков Windows PowerShell.
                Значение по умолчанию = $true (запись в журнал 
                производится). Чтобы получить сведения о поставщиках 
                Windows PowerShell, введите следующую команду:
                "get-help about_provider".
        Чтобы включить Log*Event, введите переменную со значением 
        $true, например:
            $LogCommandLifeCycleEvent
            - или:
            $LogCommandLifeCycleEvent = $true
        Чтобы отключить тип событий, введите переменную со значением 
        $false, например:
            $LogCommandLifeCycleEvent = $false
        События включаются только для текущей консоли Windows 
        PowerShell. Чтобы применить конфигурацию ко всем консолям, 
        сохраните параметры переменных в профиле Windows PowerShell.
$MaximumAliasCount
------------------
        Определяет допустимое число псевдонимов в сеансе Windows 
        PowerShell. В большинстве случаев достаточно числа по 
        умолчанию, 4096, но при необходимости можно его изменить.
        Допустимые значения: 1024 - 32768 (Int32)
        Значение по умолчанию: 4096
      
        Чтобы посчитать число псевдонимов в системе, введите 
        следующую команду: 
		(get-alias).count
$MaximumDriveCount
------------------
        Определяет допустимое число дисков Windows PowerShell в 
        определенном сеансе. Это число включает в себя диски файловой 
        системы и хранилища данных, предоставленные поставщиками 
        Windows PowerShell и отображаемые как диски, например диски 
        Alias: и HKLM:.
        Допустимые значения: 1024 - 32768 (Int32)
        Значение по умолчанию: 4096
      
        Чтобы посчитать число дисков Psdrive в системе, введите 
        следующую команду: 
		(get-psdrive).count
$MaximumErrorCount
------------------
        Определяет, сколько ошибок сохраняется в журнале ошибок для сеанса. 
        Допустимые значения: 256 - 32768 (Int32)
        Значение по умолчанию: 256
        Объекты, представляющие сохраняемые ошибки, хранятся в 
        автоматической переменной $Error. Эта переменная содержит 
        массив объектов записей об ошибках, один объект на каждую 
        ошибку. Последняя ошибка - первый объект массива ($Error[0]).
      
        Чтобы посчитать ошибки в системе, используйте свойство Count 
        массива $Error. Введите следующую команду:
		
		$Error.count
        Чтобы отобразить конкретную ошибку, используйте систему 
        индексов массива. Например, чтобы отобразить последнюю 
        ошибку, введите следующую команду:
                $Error[0]
        Чтобы отобразить самую старую сохраненную ошибку, введите 
        следующую команду:
                $Error[($Error.Count -1]
        Чтобы отобразить свойства объекта ErrorRecord, введите 
        следующую команду:
                $Error[0] | format-list -property * -force
        В данной команде параметр Force переопределяет специальное 
        форматирование объектов ErrorRecord и задает традиционный формат.
        Чтобы удалить все объекты из журнала ошибок, используйте 
        метод Clear массива ошибок.
               PS> $Error.count
               17
               PS> $Error.clear()
               PS>
               PS> $Error.count
               0
       Чтобы получить все свойства и методы массива ошибок, используйте 
       командлет Get-Member с параметром InputObject. При передаче
       коллекции объектов по конвейеру командлету Get-Member, Get-Member 
       отображает свойства и методы объектов коллекции. При использовании 
       параметра InputObject командлета Get-Member, командлет Get-Member 
       отображает свойства и методы коллекции.
$MaximumFunctionCount
------------------
        Определяет допустимое число функций в определенном сеансе. 
        Допустимые значения: 1024 - 32768 (Int32)
        Значение по умолчанию: 4096
        Чтобы отобразить функции сеанса, используйте диск Function: 
        Windows PowerShell, предоставляемый поставщиком Function 
        Windows PowerShell. (Чтобы получить дополнительные сведения о 
        поставщике Function, введите команду "get-help function".)
        Чтобы вывести функции текущего сеанса, введите следующую команду:
            get-childitem function:
        Чтобы посчитать функции текущего сеанса, введите следующую команду:
            (get-childitem function:).count
$MaximumHistoryCount
------------------
        Определяет, сколько команд сохраняется в журнале команд для 
        текущего сеанса. 
        Допустимые значения: 1 - 32768 (Int32)
        Значение по умолчанию: 64
        Чтобы узнать число команд, сохраненных в текущий момент в 
        журнале команд, введите строку:
 
            (get-history).count
        Чтобы отобразить команду, сохраненную в журнале сеанса, 
        используйте командлет Get-History. Чтобы получить 
        дополнительные сведения, введите команду "get-help about_history".
$MaximumVariableCount
------------------
        Определяет допустимое число переменных в определенном сеансе, 
        включая автоматические переменные, привилегированные 
        переменные и переменные, создаваемые в командах и скриптах. 
        Допустимые значения: 1024 - 32768 (Int32)
        Значение по умолчанию: 4096
        Чтобы отобразить переменные сеанса, используйте командлет 
        Get-Variable, возможности диска Variable: Windows PowerShell 
        и поставщика Variable Windows PowerShell. Чтобы получить 
        сведения о поставщике Variable, введите команду "get-help 
        variable".
        Чтобы узнать текущее число переменных в системе, введите 
        следующую команду:
            (get-variable).count
$OFS
----
        Output Field Separator. Задает знак, разделяющий элементы 
        массива при преобразовании массива в строку. 
        Допустимые значения: любая строка.
        Значение по умолчанию: пробел
        По умолчанию переменная $OFS не существует и знаком-разделител
        ем для выходных файлов является пробел, но пользователь может 
        добавить эту переменную и присвоить ей в качестве значения 
        любую строку.
    ПРИМЕРЫ
    Этот пример показывает, что при преобразовании массива в строку 
    для разделения значений используется пробел. В данном случае 
    массив целых чисел сохраняется в переменной, а затем переменная 
    приводится к типу string.
       PS> $array = 1,2,3                 # Сохраняется массив целых чисел.    
   
       PS> [string]$array                 # Массив приводится к типу string.
       1 2 3                              # Элементы разделяются пробелами
    Чтобы изменить разделитель, добавьте переменную $OFS, назначив ей 
    значение. Для корректной работы переменная должна называться $OFS. 
       PS> $OFS = "+"                     # Создается переменная $OFS, ей присв
аивается значение "+"
       PS> [string]$array                 # Команда повторяется
       1+2+3                              # Элементы разделяются знаками плюс
    Чтобы восстановить поведение по умолчанию, можно присвоить пробел 
    (" ") в качестве значения переменной $OFS или удалить переменную. 
    Следующая команда удаляет переменную, затем выполняется проверка, 
    что разделителем является пробел.
        
       PS> Remove-Variable OFS            # Удаление переменной $OFS
       PS>
       PS> [string]$array                 # Команда повторяется
       1 2 3                              # Элементы разделяются пробелами 
$OutputEncoding
---------------
       Определяет метод кодировки, который использует Windows 
       PowerShell при отправке текста другим приложениям. Например, 
       если какое-либо приложение возвращает в Windows PowerShell 
       строки в кодировке Unicode, может потребоваться соответственно 
       изменить значение переменной для корректной отправки символов.
        Допустимые значения: объекты, унаследованные от класса кодировки, 
        		     например ASCIIEncoding, SBCSCodePageEncoding, 
        		     UTF7Encoding, UTF8Encoding, UTF32Encoding 
			     и UnicodeEncoding.
        Значение по умолчанию: объект ASCIIEncoding (System.Text.ASCIIEncoding)
    ПРИМЕРЫ
       Этот пример показывает, как настроить работу команды FINDSTR в 
       Windows PowerShell на компьютере, локализованном для языка с 
       символами Unicode, например китайского. 
       Первая команда находит значение переменной $OutputEncoding. 
       Так как значение является объектом кодировки, отображается 
       только его свойство EncodingName.
         
          PS> $OutputEncoding.EncodingName # Поиск текущего значения
          US-ASCII
       В этом примере команда FINDSTR используется для поиска 
       нескольких китайских символов, которые присутствуют в файле 
       Test.txt. Когда команда FINDSTR запускается в командной строке 
       Windows (Cmd.exe), она находит символы в текстовом файле. 
       Однако при запуске той же команды FINDSTR в Windows PowerShell 
       символы не удается найти, так как Windows PowerShell 
       отправляет их команде FINDSTR как текст в кодировке ASCII 
       вместо кодировки Unicode.
          PS> findstr <символы_Unicode> # Команда findstr используется для поис
ка.
          PS>                           # Ничего не найдено.
        
       Чтобы настроить работу этой команды в Windows PowerShell, 
       присвойте переменной $OutputEncoding значение свойства 
       OutputEncoding консоли, которое основывается на выбранной для 
       Windows локали. Так как свойство OutputEncoding является 
       статическим свойством консоли, следует использовать двойное 
       двоеточие в команде (::).
          PS> $OutputEncoding = [console]::outputencoding
          PS>                               # Присваивается значение, равное зн
ачению
                                              свойства OutputEncoding консоли.
          PS> $OutputEncoding.EncodingName               
          Cyrillic (DOS)
                                            # Получение результирующего значени
я.
     
       В результате изменения команда FINDSTR сможет найти символы.
          PS> findstr <символы_Unicode>               
          test.txt:         <символы_Unicode>        
					# Команда findstr используется для поиска и находит
                                          символы в текстовом файле.
$ProgressPreference
-------------------
	Определяет, как Windows PowerShell реагирует на обновления 
	состояния, созданные скриптом, командлетом или поставщиком, например 
	на индикаторы выполнения, созданные командлетом Write-Progress. 
	Командлет Write-Progress создает индикаторы выполнения, отображающие 
	состояние команды.
        Допустимые значения:
	    Stop.               Индикатор выполнения не отображается. 
	    			Вместо этого отображается сообщение 
				об ошибке и выполнение прекращается.
     	    Inquire.            Индикатор выполнения не отображается. 
     	    			Запрашивается разрешение на продолжение. 
     	   			В случае ответа "А" или "Х" отображается 
				индикатор выполнения.
            Continue.           Отображается индикатор выполнения, 
	    (по умолчанию)	продолжается выполнение.
            SilentlyContinue.  	Команда выполняется, но индикатор 
            			выполнения не отображается.
$PSEmailServer
--------------
       Задает сервер электронной почты по умолчанию, который 
       используется для отправки сообщений. Эта привилегированная 
       переменная используется командлетами, отправляющими сообщения 
       по электронной почте, например командлетом Send-MailMessage. 
$PSSessionApplicationName
---------------------------
       Задает имя приложения по умолчанию для удаленной команды, 
       использующей технологию WS-Management.
       Системное имя приложения по умолчанию - WSMAN, однако при помощи 
       привилегированной переменной имя по умолчанию можно изменить. 
       Имя приложения - это последний узел в URI подключения. 
       Например, в следующем примере URI имя приложения - WSMAN.
           http://Server01:8080/WSMAN
       Имя приложения по умолчанию используется, когда удаленная 
       команда не задает URI подключения или имя приложения.  
       Служба WinRM использует имя приложения для выбора 
       прослушивателя для обслуживания запроса подключения. Значение 
       этого параметра должно соответствовать значению свойства 
       URLPrefix прослушивателя на удаленном компьютере.
       Чтобы переопределить системные настройки по умолчанию и 
       значение этой переменной, и чтобы выбрать другое имя 
       приложения для конкретного сеанса, используйте параметры 
       ConnectionURI или ApplicationName командлетов New-PSSession, 
       Enter-PSSession или Invoke-Command.   
       Эта привилегированная переменная задается на локальном 
       компьютере, но указывает прослушиватель на удаленном компьютере. 
       Если задаваемое имя приложения не существует на удаленном 
       компьютере, команда установить сеанс завершится с ошибкой.
$PSSessionConfigurationName
---------------------------
       Задает конфигурацию сеанса по умолчанию, которая используется 
       для сеансов PSSession, создаваемых в текущем сеансе.
       Эта привилегированная переменная задается на локальном 
       компьютере, но определяет конфигурацию сеансов, расположенную 
       на удаленном компьютере. 
       Значение переменной $PSSessionConfigurationName является 
       полным URI ресурса. 
       Значение по умолчанию: 
         http://schemas.microsoft.com/powershell/microsoft.powershell 
       задает конфигурацию сеансов Microsoft.PowerShell на удаленном 
       компьютере. 
       Если задать только имя конфигурации, в начало будет добавлен 
       следующий URI схемы:
           http://schemas.microsoft.com/powershell/
             
       Можно переопределить значение по умолчанию и выбрать другую 
       конфигурацию для конкретного сеанса, задав параметр 
       ConfigurationName командлетов New-PSSession, Enter-PSSession 
       или Invoke-Command.   
       Изменить значение этой переменной можно в любой момент. 
       Изменяя значение, помните, что выбираемая конфигурация сеансов 
       должна существовать на удаленном компьютере. Если это условие 
       не будет выполнено, команда создать сеанс с определенной 
       конфигурацией завершится с ошибкой.
       Эта привилегированная переменная не определяет, какие 
       локальные конфигурации сеансов используются при создании 
       удаленными пользователями сеанса, подключаемого к данному 
       компьютеру. Однако можно использовать разрешения для локальных 
       конфигураций сеансов, чтобы задать, кто из пользователей может 
       использовать их.
$PSSessionOption
----------------
        Задает значения по умолчанию для дополнительных параметров 
        пользователя в удаленном сеансе. Эта настройка параметров 
        переопределяет системные значения по умолчанию для параметров 
        сеанса. 
        Можно также задать пользовательские параметры для конкретного 
        удаленного сеанса при помощи параметра SessionOption в 
        командлетах, создающих сеанс, например New-PSSession, 
        Enter-PSSession и Invoke-Command. Значение параметра 
        SessionOption имеет приоритет перед системными значениями по 
        умолчанию и значениями по умолчанию, заданными в этой переменной.
        Переменная $PSSessionOption содержит объект PSSessionOption 
	(System.Management.Automation.Remoting.PSSession
        Object). Каждое свойство объекта представляет параметр 
        сеанса. Например, свойство NoCompression отключает сжатие 
        данных во время сеанса.
        Чтобы создать привилегированную переменную $PSSessionOption, 
        используйте командлет New-PSSessionOption. Сохраните его 
        выходные данные в переменной с именем $PSSessionOption. 
        Пример:
            $PSSessionOption = New-PSSessionOption -NoCompression 
        Чтобы использовать привилегированную переменную 
        $PSSessionOption во всех сеансах Windows PowerShell, добавьте 
        команду New-PSSessionOption, которая создает переменную 
        $PSSessionOption, в свой профиль Windows PowerShell.
        Дополнительные сведения о командлете New-PSSessionOption см. 
        в разделе справки для New-PSSessionOption. Дополнительные 
        сведения об удаленных командах и сеансах см. в разделах 
        about_Remote и about_PSSessions.
        Дополнительные сведения об использовании профиля см. в 
        разделе about_Profiles.
$VerbosePreference
------------------
       	Определяет, как Windows PowerShell отвечает на подробные 
       	сообщения, созданные скриптом, командлетом или поставщиком, 
       	например на сообщения, созданные командлетом Write-Verbose. 
       	Обычно подробные сообщения описывают действия, произведенные 
       	для выполнения команды. 
        По умолчанию подробные сообщения не отображаются, но можно 
        изменить это поведение, отредактировав значение переменной 
        $VerbosePreference.
        Также можно использовать общий параметр Verbose командлета, 
        чтобы отображать или скрывать подробные сообщения для 
        конкретной команды. Чтобы получить дополнительные сведения, 
        введите команду "get-help about_commonparameters".
        Допустимые значения:
	    Stop.               Отображается подробное сообщение и 
	    			сообщение об ошибке, выполнение прекращается.
     	    Inquire.            Отображается подробное сообщение и 
     	    			запрос на продолжение выполнения.
            Continue.           Отображается подробное 
            			сообщение, выполнение продолжается.
            SilentlyContinue.  	Подробное сообщение не 
            (по умолчанию)	отображается. Выполнение продолжается.
    ПРИМЕРЫ
    Данные примеры показывают, что происходит при различных значениях 
    переменной $VerbosePreference и использовании общего параметра 
    Verbose для переопределения значения переменной.
    
    Этот пример показывает, что произойдет, если задано значение по 
    умолчанию "SilentlyContinue ".
        PS> $VerbosePreference             # Поиск текущего значения.
        SilentlyContinue
        PS> Write-Verbose "Тестовое подробное сообщение."              
        PS>                                # Запись подробного сообщения.
                                           # Сообщение не отображается.
        PS> Write-Verbose "Тестовое подробное сообщение." -verbose   
        ПОДРОБНО: Тестовое подробное сообщение.
	                                   # Используется параметр Verbose.
    Этот пример показывает, что произойдет, если задано значение "Continue".
        PS> $VerbosePreference = "Continue"                    
                                           # Значение изменяется на "Continue".
        PS> Write-Verbose "Тестовое подробное сообщение."              
                                           # Запись подробного сообщения.
        ПОДРОБНО: Тестовое подробное       # Сообщение отображается.
		  сообщение.
        PS> Write-Verbose "Тестовое подробное сообщение." -verbose:$false
                                           # Используется параметр Verbose со з
начением $false.
        PS>                                  
                                           # Сообщение не отображается.
    Этот пример показывает, что произойдет, если задано значение "Stop".
        PS> $VerbosePreference = "Stop"                        
                                           # Значение изменяется на "Stop".
        PS> Write-Verbose "Тестовое подробное сообщение."              
                                           # Запись подробного сообщения.
        ПОДРОБНО: Тестовое подробное сообщение.
        Write-Verbose : Выполнение команды остановлено, так как 
        переменной оболочки "VerbosePreference" присвоено значение Stop.
        В строке:1 знак:14
        + Write-Verbose < "Тестовое подробное сообщение."
        PS> Write-Verbose "Тестовое подробное сообщение." -verbose:$false
                                          # Используется параметр Verbose со зн
ачением $false 
                                          # Сообщение не отображается.
    Этот пример показывает, что произойдет, если задано значение "Inquire".
       PS> $VerbosePreference = "Inquire"                      
                                         # Значение изменяется на "Inquire".
       PS> Write-Verbose "Тестовое подробное сообщение."               
       ПОДРОБНО: Тестовое подробное сообщение.
                                         # Запись подробного сообщения.
       Подтверждение
       Продолжить выполнение текущей операции?
       [Y] Да [A] Да для всех [H] Прервать команду [S] Приостановить 
       [?] Справка (по умолчанию "Y"): y 
       PS> Write-Verbose "Тестовое подробное сообщение." -verbose:$false
                                        # Используется параметр Verbose.
       PS>                              
                                        # Сообщение не отображается.
    
$WarningPreference
------------------
        Определяет, как Windows PowerShell отвечает на предупреждения,
         созданные скриптом, командлетом или поставщиком, например на 
         сообщения, созданные командлетом Write-Warning.
        По умолчанию предупреждения не отображаются, и выполнение 
        продолжается, но можно изменить это поведение, отредактировав 
        значение переменной $WarningPreference.
        Также можно использовать общий параметр WarningAction 
        командлета, чтобы определить, как Windows PowerShell будет 
        реагировать на предупреждения от конкретной команды. Чтобы 
        получить дополнительные сведения, введите команду "get-help 
        about_commonparameters".
        Допустимые значения:
	    Stop.               Отображается предупреждение и сообщение об 
	    			ошибке, выполнение прекращается.
     	    Inquire.            Отображается предупреждение и 
     	    			запрос на продолжение выполнения. 
            Continue.           Отображается предупреждение, 
            (по умолчанию)	выполнение продолжается.
            SilentlyContinue.  	Предупреждение не отображается. 
            			Выполнение продолжается.
    ПРИМЕРЫ
    Данные примеры показывают, что происходит при различных значениях 
    переменной $WarningPreference и использовании общего параметра 
    WarningAction для переопределения значения переменной.
    
    Этот пример показывает, что произойдет, если задано значение по 
    умолчанию "Continue".
            PS> $WarningPreference  # Поиск текущего значения.                 
          
            Continue                  
                                    # Запись предупреждения.
            PS> Write-Warning "Это действие может привести к удалению данных." 
  
            ПРЕДУПРЕЖДЕНИЕ: Это действие может привести к удалению данных.
                                      	
                                    # Используется параметр WarningAction коман
длета
            PS> Write-Warning "Это действие может привести к удалению данных." 
	    -warningaction silentlycontinue   
   Этот пример показывает, что произойдет, если задано значение "SilentlyContin
ue".
            PS> $WarningPreference = "SilentlyContinue"           
                                      # Значение изменяется на "SilentlyContinu
e".
 
            PS> Write-Warning "Это действие может привести к удалению данных." 
  
            PS>                       # Запись предупреждения.
       
            PS> Write-Warning "Это действие может привести к удалению данных." 
            -warningaction stop   
                                      # Используется параметр WarningAction для
 остановки 
                                        выполнения, когда данная команда генери
рует строку 
            "ПРЕДУПРЕЖДЕНИЕ: Это действие может привести к удалению данных".
            Write-Warning : Выполнение команды остановлено, так как 
            переменной оболочки "WarningPreference" присвоено значение Stop.
            В строке:1 знак:14
            + Write-Warning < "Это действие может привести к удалению данных
." -warningaction stop 
    Этот пример показывает, что произойдет, если задано значение "Inquire".
           PS> $WarningPreference = "Inquire"                    
                                      # Значение изменяется на "Inquire".
           PS> Write-Warning "Это действие может привести к удалению данных."  
                                      # Запись предупреждения.   
           ПРЕДУПРЕЖДЕНИЕ: Это действие может привести к удалению данных.
           Подтверждение
           Продолжить выполнение текущей операции?
           [Y] Да [A] Да для всех [H] Прервать команду [S] Приостановить 
           [?] Справка (по умолчанию "Y"): y 
           PS> Write-Warning "Это действие может привести к удалению данных." 
           -warningaction silentlycontinue
           PS>                         # Используется параметр WarningAction дл
я изменения
                                       # реакции на предупреждение для текущей 
команды.
     Этот пример показывает, что произойдет, если задано значение "Stop".
           PS> $WarningPreference = "Stop"                       
                                     # Значение изменяется на "Stop".
           PS> Write-Warning "Это действие может привести к удалению данных."  
 
                                     # Запись предупреждения.
           ПРЕДУПРЕЖДЕНИЕ: Это действие может привести к удалению данных.
           Write-Warning : Выполнение команды остановлено, так как 
           переменной оболочки "WarningPreference" присвоено значение Stop.
           В строке:1 знак:14
           + Write-Warning < "Это действие может привести к удалению данных.
"
           PS> Write-Warning "Это действие может привести к удалению данных." 
           -warningaction inquire
           ПРЕДУПРЕЖДЕНИЕ: Это действие может привести к удалению данных.
           Подтверждение
           Продолжить выполнение текущей операции?
           [Y] Да [A] Да для всех [H] Прервать команду [S]  Приостановить 
           [?] Справка (по умолчанию "Y"):                         
				      # Используется параметр WarningAction для 
           				изменения реакции на предупреждение для текущей команды.
$WhatIfPreference
------------------
       	Определяет, включено ли действие WhatIf автоматически для 
       	каждой команды, которая его поддерживает. Когда действие 
       	WhatIf включено, командлет сообщает, что произойдет при 
       	выполнении команды, но не выполняет команду. 
        Допустимые значения:
	    0.                  Действие WhatIf автоматически 
	    (по умолчанию)  	не включено. Чтобы включить его вручную, 
				используйте параметр WhatIf команды.
            
     	    1:                  Действие WhatIf автоматически включено для каждой
 
     	    			поддерживающей его команды. Можно использовать параметр 
     	    			WhatIf со значением False для отключения действия 
     	    			вручную (WhatIf:$false).
    ПОДРОБНОЕ ОБЪЯСНЕНИЕ
        Если командлет поддерживает действие WhatIf, он сообщает, что 
        произойдет при выполнении команды вместо фактического 
        выполнения команды. Например, вместо удаления файла test.txt 
        в ответ на команду Remove-Item Windows PowerShell сообщает, 
        что было бы удалено. Последующая команда Get-Childitem 
        подтверждает, что файл не был удален.
              PS> remove-item test.txt
              What if: Выполнение операции "Remove-Item" над целевым объектом 
                "C:\test.txt".
              PS> get-childitem test.txt
              Каталог: Microsoft.PowerShell.Core\FileSystem::C:
               Mode                LastWriteTime     Length     Name
              ----                -------------     ------     ----
              -a---         7/29/2006   7:15 PM         84     test.txt
    ПРИМЕРЫ
    Данные примеры показывают, что происходит при различных значениях 
    переменной $WhatIfPreference. Также примеры показывают, как 
    использовать параметр WhatIf командлета, чтобы переопределить 
    значение переменной для определенной команды.
    
    Этот пример показывает, что произойдет, если задано значение по 
    умолчанию "0" (действие не включено).
             PS> $whatifpreference                     
             0                         # Проверка текущего значения.
             PS> get-childitem test.txt | format-list FullName
             FullName : C:\test.txt
                                       # Проверка существования файла.
             PS> remove-item test.txt                  
             PS>                       # Удаление файла.
             PS> get-childitem test.txt | format-list -property FullName
                                       # Проверка удаления файла.
             Get-ChildItem : Не удается найти путь "C:\test.txt", так как он не
 существует.
             В строке:1 знак:14
             + get-childitem < test.txt | format-list fullname
     Этот пример показывает результат применения параметра WhatIf, 
     когда переменная $WhatIfPreference имеет значение 0.
             PS> get-childitem test2.txt | format-list -property FullName 
             FullName : C:\test2.txt
                                      # Проверка существования файла.
             PS> remove-item test2.txt -whatif         
             What if: Выполнение операции "Удаление файла" над целевым объектом
 "C:\test2.txt".
                                      # Используется параметр WhatIf
             PS> get-childitem test2.txt | format-list -property FullName
             FullName : C:\test2.txt
                                      # Проверка, что файл не был удален 
    Этот пример показывает, что произойдет при значении переменной 
    "1" (действие WhatIf включено). При использовании командлета 
    Remove-Item для удаления файла, командлет Remove-Item отображает 
    путь к удаляемому файлу, но не удаляет файл.
             PS> $whatifpreference = 1                 
             PS> $whatifpreference
             1                        # Значение изменяется.
                                      
             PS> remove-item test.txt                  
             What if: Выполнение операции "Удаление файла" над целевым объектом
 "C:\test.txt".
                                      # Попытка удалить файл.
             PS> get-childitem test.txt | format-list FullName
             FullName : C:\test.txt
                                      # Проверка существования файла.
     Этот пример показывает, как удалить файл, если переменная 
     $WhatIfPreference имеет значение 1. Для этого следует 
     использовать параметр WhatIf со значением $false.
             PS> remove-item test.txt -whatif:$false
                                      # Используется параметр WhatIf со значени
ем $false.
     Этот пример показывает, что не все командлеты поддерживают 
     поведение WhatIf. В этом примере значение переменной 
     $WhatIfPreference равно 1 (включено), выполняется команда 
     Get-Process, которая не поддерживает действие WhatIf, но команда 
     Stop-Process выполняет действие WhatIf. Поведение WhatIf команды 
     Stop-Process можно переопределить при помощи параметра 
     WhatIf со значением $false.
            PS> $whatifpreference = 1                  
                                     # Значение изменяется на "1"
                                                      
            PS> get-process winword 
                                    # Происходит выполнение команды Get-Process
.
            Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessNa
me
            -------  ------    -----      ----- -----   ------     -- ---------
--
                234       8     6324      15060   154     0.36   2312 WINWORD
           PS> stop-process -name winword
           What if: Выполнение операции "Stop-Process" над целевым объектом "WI
NWORD (2312)".
                                    # Команда Stop-Process использует поведение
 WhatIf.
           PS> stop-process -name winword -whatif:$false
           PS>                      # Параметр WhatIf:$false переопределяет пов
едение.
           
           PS> get-process winword                     
           Get-Process : Не удается найти процесс с именем winword. 
           Убедитесь, что имя процесса введено правильно, и повторите вызов ком
андлета.
           В строке:1 знак:12
           + get-process < winword
                                    # Проверка, что процесс остановлен.
СМ. ТАКЖЕ
    about_Automatic_Variables
    about_CommonParameters
    about_Environment_Variables
    about_Profiles
    about_Remote
    about_Scopes
    about_Variables



about_profiles

РАЗДЕЛ
    about_Profiles
КРАТКОЕ ОПИСАНИЕ
    Содержит описание, как создавать и использовать профиль Windows 
    PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Создав профиль Windows PowerShell, вы получаете возможность 
    настраивать окружение и добавлять специфичные для сеанса элементы 
    в каждый создаваемый сеанс. 
    Профиль Windows PowerShell - скрипт, который выполняется в момент 
    запуска Windows PowerShell. Можно использовать профиль в качестве 
    скрипта, выполняемого при входе в систему, для настройки окружения. 
    Можно добавлять команды, псевдонимы, функции, значения, оснастки, 
    модули и диски Windows PowerShell. Также можно добавлять в профиль 
    другие специфичные для сеанса элементы, тогда они будут доступны 
    в каждом сеансе и не будет необходимости их импортировать или 
    создавать заново.
    Windows PowerShell поддерживает несколько профилей для 
    пользователей и ведущих программ. Однако PowerShell не создает профили. 
    В этом разделе описаны профили; также рассказано, как создавать 
    и обслуживать профили на компьютере.
    Здесь объясняется, как использовать параметр NoProfile консоли 
    Windows PowerShell (PowerShell.exe) для запуска Windows 
    PowerShell без профиля. Кроме того, описан результат действия 
    политики выполнения Windows PowerShell применительно к профилям.
 ФАЙЛЫ ПРОФИЛЕЙ
    Windows PowerShell поддерживает несколько файлов профилей. Кроме 
    того, ведущие приложения Windows PowerShell могут поддерживать 
    собственные профили, специфичные для приложения. 
    Например, консоль Windows PowerShell поддерживает следующие файлы 
    основного профиля. Ниже они указаны в порядке приоритета. Первый 
    профиль имеет наивысший приоритет. 
        Описание                   Путь
        -----------                ----
        Текущий пользователь,      $Home\[My ]Documents\WindowsPowerShell\Profi
le.ps1
	текущее ведущее приложение
        Текущий пользователь,      $Home\[My ]Documents\Profile.ps1
	все ведущие приложения
        Все пользователи,          $PsHome\Microsoft.PowerShell_profile.ps1
	текущее ведущее приложение
        Все пользователи, все      $PsHome\Profile.ps1
	ведущие приложения
    Пути к профилям могут включать следующие переменные:
        - Переменная $PsHome, в которой хранится путь к каталогу 
          установки Windows PowerShell.
        - Переменная $Home, в которой хранится путь к домашнему 
          каталогу текущего пользователя.
    Кроме того, другие ведущие приложения Windows PowerShell могут 
    поддерживать собственные профили. Например, интегрированная среда 
    скриптов (ISE) Windows PowerShell поддерживает следующие 
    специфичные для ведущего приложения профили.
        Описание                   Путь
        -----------                -----
        Текущий пользователь,      $Home\[My ]Documents\WindowsPowerShell\Micro
soft.PowerShellISE_profile.ps1
	текущее ведущее приложение 
        Все пользователи,          $PsHome\Microsoft.PowerShellISE_profile.ps1
	текущее ведущее приложение
    В справке Windows PowerShell профиль "Текущий пользователь, 
    текущее ведущее приложение" наиболее часто называется "вашим 
    профилем Windows PowerShell". 
 ПЕРЕМЕННАЯ $PROFILE
    Автоматическая переменная $Profile хранит путь к профилям Windows 
    PowerShell, доступным в рамках текущего сеанса. 
    Для просмотра пути к профилю следует отобразить значение 
    переменной $Profile. Можно также использовать переменную $Profile 
    в команде в качестве пути.
    В переменной $Profile хранится путь к профилю "Текущий 
    пользователь, текущее ведущее приложение". Остальные профили 
    хранятся в свойствах-примечаниях переменной $profile.
    
    Например, переменная $Profile в консоли Windows PowerShell имеет 
    следующие значения.
        Name                               Описание                
        -----------                        -----------
        $Profile                           Текущий пользователь, 
        			  	   текущее ведущее приложение  
        $Profile.CurrentUserCurrentHost    Текущий пользователь, 
        				   текущее ведущее приложение  
        $Profile.CurrentUserAllHosts       Текущий пользователь, все 
        				   ведущие приложения     
        $Profile.AllUsersCurrentHost       Все пользователи, текущее 
         				   ведущее приложение    
        $Profile.AllUsersAllHosts          Все пользователи, все 
        				   ведущие приложения       
    Поскольку значения переменной $Profile отличаются для разных 
    пользователей и для различных ведущих приложений, убедитесь, что 
    вы отображаете значения переменных профиля для каждого ведущего 
    приложения Windows PowerShell, которое используется.
    Чтобы просмотреть текущие значения переменной $Profile, введите 
    следующее:
        $profile | get-member -type noteproperty
    
    Переменную $Profile можно использовать во множестве команд. 
    Например, следующая команда открывает профиль "Текущий 
    пользователь, текущее ведущее приложение" в приложении Блокнот:
	notepad $profile 
    Следующая команда определяет, был ли на локальном компьютере 
    создан профиль "Все пользователи, все ведущие приложения":
	test-path $profile.AllUsersAllHosts
 СОЗДАНИЕ ПРОФИЛЯ
    Для создания профиля Windows PowerShell используется следующий 
    формат команды:
        if ((test-path <имя_профиля>)) 
           {new-item -type file -path <имя_профиля> -force}
    Например, для создания профиля текущего пользователя в текущем 
    ведущем приложении Windows PowerShell используется следующая команда: 
        if ((test-path $profile)) 
           {new-item -type file -path $profile -force}
    В этой команде инструкция If предотвращает перезапись 
    существующего профиля. Замените значение заполнителя 
    <путь_к_профилю> путем к файлу профиля, который требуется создать.
    Примечание. Для создания профилей "Все пользователи" в Windows 
                Vista и более поздних версиях Windows необходимо запускать 
                Windows PowerShell командой "Запуск от имени администратора".
 РЕДАКТИРОВАНИЕ ПРОФИЛЯ
    Любой профиль Windows PowerShell можно открыть в текстовом 
    редакторе, например в программе Блокнот. 
    Чтобы открыть профиль текущего пользователя в текущем ведущем 
    приложении Windows PowerShell в программе Блокнот, необходимо 
    ввести команду:
        notepad $profile
    Чтобы открыть другие профили, необходимо указать имя профиля. 
    Например, чтобы открыть профиль для всех пользователей и всех 
    ведущих приложений, необходимо ввести команду:
        notepad $profile.AllUsersAllHosts
    Чтобы применить изменения, нужно сохранить файл профиля, а затем 
    перезапустить Windows PowerShell.  
 
 ВЫБОР ПРОФИЛЯ
    При использовании нескольких ведущих приложений поместите 
    элементы, используемые во всех ведущих приложениях, в профиль 
    $Profile.CurrentUserAllHosts (текущий пользователь, все ведущие 
    приложения). Поместите элементы, специфичные для ведущего приложения, 
    например команды, задающие фоновый цвет ведущего приложения, в профиль 
    для данного ведущего приложения.
    Администратору, настраивающему Windows PowerShell для многих 
    пользователей, нужно соблюдать следующие правила.
        -- Хранить общие элементы в профиле $profile.AllUsersAllHosts 
           (все пользователи, все ведущие приложения).
        -- Хранить элементы, специфичные для ведущего приложения в 
           профилях $profile.AllUsersCurrentHost (все пользователи, 
           текущее ведущее приложение).
        -- Хранить элементы для определенных пользователей в 
           профилях, специфичных для пользователя.
    Необходимо проверить документацию ведущего приложения, на случай 
    если в приложении работа с профилями Windows PowerShell реализована 
    специальным образом.
 ИСПОЛЬЗОВАНИЕ ПРОФИЛЕЙ
    Многие элементы, которые создаются в Windows PowerShell, и 
    большинство выполняемых пользователем команд действуют только в 
    пределах текущего сеанса. Когда сеанс завершается, элементы 
    уничтожаются.
    Команды и элементы, специфичные для сеанса, включают в себя 
    переменные, привилегированные переменные, псевдонимы, функции, 
    команды (за исключением Set-ExecutionPolicy) и оснастки Windows 
    PowerShell, добавляемые к сеансу.
    Для сохранения этих элементов и обеспечения их доступности в 
    будущих сеансах их нужно добавить в профиль Windows PowerShell. 
    Другое распространенное использование профилей - сохранение часто 
    используемых функций, псевдонимов и переменных. После сохранения 
    элементов в профиле их можно использовать во время любого сеанса, 
    к которому применен этот профиль, не создавая их заново. 
 С ЧЕГО НАЧАТЬ СОЗДАНИЕ ПРОФИЛЯ?
    Когда вы впервые открываете файл профиля, он пуст. Однако его 
    можно заполнить переменными, псевдонимами и командами, которыми 
    вы часто пользуетесь.
    Ниже приведено несколько советов, с чего начать.
    -- Добавьте команду, облегчающую открытие профиля. Это особенно 
       полезно, если вы используете профиль, отличный от профиля 
       "Текущий пользователь, текущее ведущее приложение". Например, 
       добавьте следующую команду:
               
           function pro {notepad $profile.CurrentUserAllHosts}
    -- Добавьте функцию, открывающую справку Windows PowerShell в 
       виде скомпилированного файла справки HTML (.chm). 
           function Get-CHM
            {
               (invoke-item $env:windir\help\mui\0409\WindowsPowerShellHelp.chm
)
            }
       
       Эта функция открывает английскую версию файла .chm. Однако вы 
       можете заменить код языка (0409) и открыть другую версию файла 
       .chm.
    
    -- Добавьте функцию, перечисляющую псевдонимы какого-либо командлета.
           function Get-CmdletAlias ($cmdletname)
           {
              get-alias | Where {$_.definition -like "*$cmdletname*"} | ft Defi
nition, Name -auto
           }
    -- Добавьте команду Add-PsSnapin для добавления оснасток Windows PowerShell
, 
       которыми вы пользуетесь.
    -- Настройте консоль.
           function Color-Console 
           {
	        $host.ui.rawui.backgroundcolor = "white"
	        $host.ui.rawui.foregroundcolor = "black"
                $hosttime = (dir $pshome\powershell.exe).creationtime
                $Host.UI.RawUI.WindowTitle = "Windows PowerShell $hostversion (
$hosttime)"
                clear-host
           }
           Color-console
    -- Добавьте настроенное приглашение командной строки Windows 
       PowerShell, включающее имя компьютера и текущий путь. 
           function prompt 
           {
              $env:computername + "\" + (get-location) + "> "
           }
       Дополнительные сведения о приглашении командной строки Windows 
       PowerShell см в разделе about_Prompts.
 ПАРАМЕТР NOPROFILE
    Для запуска Windows PowerShell без профиля используйте параметр 
    NoProfile программы PowerShell.exe, запускающей Windows PowerShell.
    Для начала откройте программу, которая может запустить Windows 
    PowerShell, например Cmd.exe или саму программу Windows 
    PowerShell. Также можно использовать диалоговое окно Run в Windows. 
    Введите следующую команду:
	powershell -noprofile
    Чтобы вывести полный список параметров программы PowerShell.exe, 
    введите следующую команду:
	powershell -?
 ПРОФИЛИ И ПОЛИТИКА ВЫПОЛНЕНИЯ
    Политика выполнения Windows PowerShell отчасти определяет, можно 
    ли выполнять скрипты и загружать файлы конфигурации, в том числе 
    профили. Политика выполнения по умолчанию - Restricted. Она 
    запрещает выполнение скриптов, в том числе профилей. При 
    использовании политики Restricted профиль не запускается и его 
    содержимое не применяется.
    Команда Set-ExecutionPolicy задает и изменяет политику выполнения. 
    Это одна из немногих команд, которая распространяется на все сеансы 
    Windows PowerShell, так как значение сохраняется в реестре. Нет 
    необходимости задавать значение при открытии консоли и не нужно 
    сохранять команду Set-ExecutionPolicy в вашем профиле.
 ПРОФИЛИ И УДАЛЕННЫЕ СЕАНСЫ   
    Профили Windows PowerShell не запускаются автоматически в 
    удаленных сеансах, поэтому команды, добавленные профилями, 
    отсутствуют в удаленном сеансе. Кроме того, автоматическая 
    переменная $profile не заполняется в удаленных сеансах.  
    Чтобы запустить профиль в сеансе, используйте командлет 
    Invoke-Command.
    Например, следующая команда запускает профиль CurrentUserCurrentHo
    st с локального компьютера в сеансе в $s. 
        invoke-command -session $s -filepath $profile
    Следующая команда запускает профиль CurrentUserCurrentHost с 
    удаленного компьютера в сеансе в $s. Так как переменная $profile 
    не заполнена, команда использует явный путь к профилю.
        invoke-command -session $s {invoke-expression 
        "$home\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1"}
    После выполнения этой команды все команды, добавляемые профилем в 
    сеанс, доступны в $s.
СМ. ТАКЖЕ
    about_Automatic_Variables
    about_Functions
    about_Prompts
    about_Execution_Policies
    about_Signing
    about_Remote
    Set-ExecutionPolicy



about_prompts

РАЗДЕЛ
    about_Prompts
КРАТКОЕ ОПИСАНИЕ
    Описывает функцию Prompt и показывает, как создать пользовательску
    ю функцию Prompt.
  
ПОЛНОЕ ОПИСАНИЕ
    Командная строка Windows PowerShell показывает, что среда Windows 
    PowerShell готова к выполнению команд: 
	PS C:\>
    Приглашение Windows PowerShell определяется функцией Prompt. 
    Можно настроить приглашение, создав собственную функцию Prompt. 
    Затем функцию можно сохранить в профиле Windows PowerShell.
   
  Функция Prompt
      Функция Prompt определяет внешний вид приглашения Windows 
      PowerShell. Windows PowerShell поставляется со встроенной 
      функцией Prompt, но вы можете переопределить ее, определив 
      собственную функцию Prompt.
      Функция Prompt имеет следующий синтаксис:
	  function prompt { <тело_функции> }
      Функция Prompt должна возвращать объект, как правило строку. 
      Рекомендуется, чтобы она возвращала строку или объект, 
      форматированный как строка. Строка не должна превышать длиной 
      80 символов.
      Пример:
	  PS C:\> function prompt {"Hello, World > "}
          Hello, World 
  
      Как все функции, функция Prompt хранится на диске Function:. 
      Для просмотра кода текущей функции Prompt введите следующую команду:
	  (get-item function:prompt).definition
      Эта команда использует командлет Get-Item для отображения 
      элемента Prompt на диске Function:. Затем используется точка 
      для отображения значения свойства Definition функции Prompt. 
    
  Приглашение по умолчанию 
      Приглашение Windows PowerShell по умолчанию:
	  PS>
      Такое приглашение отображается только в том случае, если 
      функция Prompt выдает ошибку или не возвращает строку или объект.
          PS C:\> function prompt {$null}
          PS>
      Поскольку Windows PowerShell поставляется со встроенным 
      приглашением, пользователь обычно не видит приглашение по 
      умолчанию до тех пор, пока не начинает писать собственную 
      функцию приглашения.
  Встроенное приглашение
    
 
      Windows PowerShell имеет встроенную функцию Prompt, которая 
      создает привычное приглашение. Эта встроенная функция выглядит так:
          function prompt
          {
              $(if (test-path variable:/PSDebugContext) { '[DBG]: ' } 
              else { '' }) + 'PS ' + $(Get-Location) `
              + $(if ($nestedpromptlevel -ge 1) { '>>' }) + '> '
          } 
      Функция использует командлет Test-Path, чтобы выяснить, 
      определена ли автоматическая переменная $PSDebugContext. Если 
      переменная $PSDebugContext определена, пользователь находится в 
      режиме отладки, и символы "[DBG]" добавляются к приглашению, 
      как в следующем примере:
	  [DBG] PS C:\ps-test>
	
     
      Если переменная $PSDebugContext не определена, функция 
      добавляет к приглашению символы "PS". Также функция использует 
      командлет Get-Location для получения текущего местоположения 
      каталога файловой системы. Затем она добавляет правую угловую 
      скобку (>). Пример:
	  PS C:\ps-test>	
      Если вы находитесь во вложенной командной строке, функция 
      добавляет две угловые скобки (>>) к приглашению. (Вы находитесь 
      во вложенной командной строке, если значение автоматической 
      переменной $NestedPromptLevel больше 1.)
      Например, если вы отлаживаете во вложенной командной строке, 
      приглашение будет примерно таким:
	  [DBG] PS C:\ps-test>>>
      Командлет Enter-PSSession предваряет результат работы текущей 
      функции Prompt именем удаленного компьютера. Когда вы 
      пользуетесь командлетом Enter-PSSession, чтобы начать сеанс 
      работы с удаленным компьютером, приглашение командной строки 
      меняется, включая в себя имя удаленного компьютера. Пример:
          PS Hello, World> Enter-PSSession Server01
          [Server01]: PS Hello, World>
      Другие ведущие приложения Windows PowerShell и альтернативные 
      оболочки могут иметь собственные настраиваемые приглашения 
      командной строки.
      Дополнительные сведения об автоматических переменных 
      $PSDebugContext и $NestedPromptLevel см. в разделе 
      about_Automatic_Variables.
 	
  Настройка приглашения командной строки
      Чтобы изменить приглашение, нужно написать новую функцию 
      Prompt. Эта функция не является защищенной, таким образом, вы 
      можете перезаписать ее. 
 
      Чтобы написать функцию приглашения, нужно ввести следующее:
	  function prompt { }
      Затем введите между фигурными скобками команду или строку, 
      создающую ваше приглашение.
      Например, следующее приглашение включает имя вашего компьютера:
	  function prompt {"PS [$env:COMPUTERNAME]> "}
      На компьютере с именем Server01 приглашение будет напоминать 
      следующее:
	  PS [Server01] >
      Включить текущую дату и время можно с помощью следующей функции 
      приглашения:
	  function prompt {"$(get-date)> "}
      Приглашение будет напоминать следующее:
	  01/01/2008 17:49:47>
      Вы также можете изменить функцию Prompt по умолчанию:
          function prompt
          {
              $(if (test-path variable:/PSDebugContext) { '[DBG]: ' } 
              else { '' }) + "$(get-date)" `
              + $(if ($nestedpromptlevel -ge 1) { '>>' }) + '> '
          } 
  
      Например, следующая измененная функция Prompt добавляет 
      "[ADMIN]:" к встроенному приглашению Windows PowerShell, в 
      случае если Windows PowerShell запускается командой "Запуск от 
      имени администратора":
    
          function prompt 
          {
              $identity = [Security.Principal.WindowsIdentity]::GetCurrent()
              $principal = [Security.Principal.WindowsPrincipal] $identity
              $(if (test-path variable:/PSDebugContext) { '[DBG]: ' } 
              elseif($principal.IsInRole([Security.Principal.WindowsBuiltInRole
] "Administrator"))
    	          { "[ADMIN]: " }
              else { '' }) + 'PS ' + $(Get-Location) + $(if ($nestedpromptlevel
 -ge 1) { '>>' }) + '> '
          }
      Если Windows PowerShell запускается командой "Запуск от имени 
      администратора", приглашение будет напоминать следующее:
                
	  [ADMIN]: PS C:\ps-test>
      Следующая функция Prompt показывает идентификатор записи 
      следующей команды. Для получения журнала команд используется 
      командлет Get-History.  
          function prompt
          {
             # The at sign creates an array in case only one history item exist
s.
             $history = @(get-history)
             if($history.Count -gt 0)
             {
                $lastItem = $history[$history.Count - 1]
                $lastId = $lastItem.Id
             }
             $nextCommand = $lastId + 1
             $currentDirectory = get-location
             "PS: $nextCommand $currentDirectory >"
          }
      Следующая строка использует командлеты Write-Host и Get-Random 
      для создания приглашения, изменяющего цвет случайным образом. 
      Поскольку командлет Write-Host выводит данные в текущее ведущее 
      приложение, не возвращая объект, эта функция включает 
      инструкцию Return. Без нее среда Windows PowerShell использует 
      приглашение по умолчанию: "PS>".
          function prompt
          {
              $color = get-random -min 1 -max 16
              write-host ("PS " + $(get-location) +">") -nonewline -foregroundc
olor $color
              return " "
          }
  Сохранение приглашения
	
      Как любая функция, функция Prompt применяется только к текущему 
      сеансу работы. Чтобы сохранить функцию Prompt для будущих 
      сеансов, добавьте ее в ваш профиль Windows PowerShell. 
      Дополнительные сведения о профилях см. в разделе about_Profiles.
СМ. ТАКЖЕ
    Get-Location
    Enter-PSSession
    Get-History
    Get-Random
    Write-Host
    about_Profiles
    about_Functions
    about_Scopes
    about_Debuggers
    about_Automatic_Variables



about_properties

РАЗДЕЛ
    about_Properties
КРАТКОЕ ОПИСАНИЕ
    Содержит описание использования свойств объектов в Windows 
    PowerShell. 
ПОЛНОЕ ОПИСАНИЕ
    В Windows PowerShell используются структурированные наборы 
    данных, называемые объектами, для представления элементов в 
    хранилищах данных или состояния компьютера.
    Чаще всего вы работаете с объектами, которые являются частью 
    инфраструктуры Microsoft .NET Framework, но также можете 
    создавать пользовательские объекты в Windows PowerShell.
    Связь между элементом и его объектом очень тесная. При изменении 
    объекта изменяется и представляемый им элемент. Например, получая 
    файл в Windows PowerShell, вы получаете не сам файл.
    Вы получаете объект FileInfo, который представляет файл. Когда 
    изменяется объект FileInfo, файл также изменяется.
    Большинство объектов имеет свойства. Свойства - это данные, 
    связанные с объектом. Эти данные описывают объект. Например, 
    объект FileInfo имеет свойство Length, описывающее размер файла, 
    представленного объектом.
  Свойства объектов
     Чтобы вывести список свойств объекта, используйте командлет 
     Get-Member. Например, чтобы получить список свойств объекта 
     FileInfo, используйте командлет Get-ChildItem для получения 
     объекта FileInfo, представляющего файл. Затем с помощью 
     оператора конвейера (|) передайте объект FileInfo командлету 
     Get-Member. Следующая команда получает файл PowerShell.exe и 
     отправляет его командлету Get-Member. Автоматическая переменная 
     $Pshome содержит путь к каталогу установки Windows PowerShell.
         get-childitem $pshome\powershell.exe | get-member
     В выходных данных команды содержатся элементы объекта FileInfo. 
     Элементы включают как свойства, так и методы. Работая в Windows 
     PowerShell, вы имеете доступ ко всем элементам объектов.
     Чтобы вывести только свойства объекта, но не методы, используйте 
     параметр MemberType командлета Get-Member со значением 
     "property", как показано в следующем примере.
         get-childitem $pshome\powershell.exe | get-member 
         -membertype property
            TypeName: System.IO.FileInfo
        
         Name              MemberType Definition
         ----              ---------- ----------
         Attributes        Property   System.IO.FileAttributes Attributes {get;
set;}
         CreationTime      Property   System.DateTime CreationTime {get;set;}
         CreationTimeUtc   Property   System.DateTime CreationTimeUtc {get;set;
}
         Directory         Property   System.IO.DirectoryInfo Directory {get;}
         DirectoryName     Property   System.String DirectoryName {get;}
         Exists            Property   System.Boolean Exists {get;}
         Extension         Property   System.String Extension {get;}
         FullName          Property   System.String FullName {get;}
         IsReadOnly        Property   System.Boolean IsReadOnly {get;set;}
         LastAccessTime    Property   System.DateTime LastAccessTime {get;set;}
         LastAccessTimeUtc Property   System.DateTime LastAccessTimeUtc {get;se
t;}
         LastWriteTime     Property   System.DateTime LastWriteTime {get;set;}
         LastWriteTimeUtc  Property   System.DateTime LastWriteTimeUtc {get;set
         Length            Property   System.Int64 Length {get;}
         Name              Property   System.String Name {get;}
     Узнав о свойствах, вы можете применить их в командах Windows 
     PowerShell.
  Значения свойств
    
     Все объекты определенного типа имеют одинаковые свойства, но 
     значения свойств описывают конкретный объект. Например, каждый 
     объект FileInfo имеет свойство CreationTime, но значение этого 
     свойства различно для каждого файла.
     Самый простой способ получить значения свойств объекта - 
     использовать метод точки. Укажите объект. Например, введите 
     переменную, содержащую объект, или команду, которая получает 
     этот объект. Затем введите точку (.) и имя свойства.
     Например, следующая команда отобразит значение свойства 
     CreationTime файла PowerShell.exe. Команда Get-ChildItem 
     возвращает объект FileInfo, представляющий файл PowerShell.exe. 
     Команда заключена в скобки, чтобы гарантировать ее выполнение до 
     того, как будет получен доступ к какому-либо свойству. За 
     командой Get-ChildItem следует точка и имя свойства CreationTime:
         C:\PS> (Get-ChildItem $pshome\powershell.exe).creationtime
         Вторник, 18 марта 2008 г., 0:07:52
     Также можно сохранить объект в переменной и затем извлечь его 
     свойства при помощи метода точки, как показано в следующем примере:
         C:\PS> $a = Get-ChildItem $pshome\powershell.exe
         C:\PS> $a.CreationTime
         Вторник, 18 марта 2008 г., 0:07:52
     Также можно использовать командлеты Select-Object и Format-List 
     для отображения значений свойств объекта. Командлеты 
     Select-Object и Format-List оба имеют параметр Property. При 
     помощи параметра Property можно задать одно или более свойств и 
     их значения. Либо можно использовать подстановочный знак (*) для 
     обозначения всех свойств.
     Например, следующая команда отобразит значения всех свойств 
     файла PowerShell.exe. 
 
 
         C:\PS> Get-ChildItem $pshome\powershell.exe | Format-List -property *
         PSPath            : Microsoft.PowerShell.Core\FileSystem::C:\Windows\s
ystem32\WindowsPowerShell\v1.0\powershell.exe
         PSParentPath      : Microsoft.PowerShell.Core\FileSystem::C:\Windows\s
ystem32\WindowsPowerShell\v1.0
         PSChildName       : powershell.exe
         PSDrive           : C
         PSProvider        : Microsoft.PowerShell.Core\FileSystem
         PSIsContainer     : False
         VersionInfo       : File:             C:\Windows\system32\WindowsPower
Shell\v1.0\powershell.exe
                             InternalName:     POWERSHELL
                             OriginalFilename: PowerShell.EXE.MUI
                             File Version:      6.1.6570.1 (fbl_srv_powershell(
nigels).070711-0102)
                             FileDescription:  PowerShell.EXE
                             Product:          Microsoft® Windows® Operating Sy
stem
                             ProductVersion:   6.1.6570.1
                             Debug:            False
                             Patched:          False
                             PreRelease:       False
                             PrivateBuild:     True
                             SpecialBuild:     False
                             Language:         English (United States)
         BaseName          : powershell
         Mode              : -a---
         Name              : powershell.exe
         Length            : 160256
         DirectoryName     : C:\Windows\system32\WindowsPowerShell\v1.0
         Directory         : C:\Windows\system32\WindowsPowerShell\v1.0
         IsReadOnly        : False
         Exists            : True
         FullName          : C:\Windows\system32\WindowsPowerShell\v1.0\powersh
ell.exe
         Extension         : .exe
         CreationTime      : 3/18/2008 12:07:52 AM
         CreationTimeUtc   : 3/18/2008 7:07:52 AM
         LastAccessTime    : 3/19/2008 8:13:58 AM
         LastAccessTimeUtc : 3/19/2008 3:13:58 PM
         LastWriteTime     : 3/18/2008 12:07:52 AM
         LastWriteTimeUtc  : 3/18/2008 7:07:52 AM
         Attributes        : Archive
        
СМ. ТАКЖЕ
    about_Objects
    Get-Member
    Select-Object
    Format-List



about_providers

РАЗДЕЛ
    about_Providers
КРАТКОЕ ОПИСАНИЕ
    Описание принципов, по которым поставщики Windows PowerShell 
    обеспечивают доступ к данным и компонентам, труднодоступным через 
    командную строку без их использования. Данные представляются 
    поставщиками в согласованном формате, напоминающем формат 
    файловой системы диска.
ПОЛНОЕ ОПИСАНИЕ
    Поставщики Windows PowerShell - это программы на базе Microsoft .NET 
    Framework, предоставляющие пользователям Windows PowerShell доступ к 
    данным, содержащимся в специализированных хранилищах, что позволяет 
    просматривать эти данные и управлять ими.
 
    Предоставляемые поставщиком данные доступны в виде диска, и доступ к 
    требуемому пути осуществляется в точности как для жесткого диска. Для 
    управления данными на диске поставщика можно использовать любые встроенные 
    командлеты, поддерживаемые этим поставщиком. Кроме того, можно 
    использовать пользовательские командлеты, разработанные специально 
    для данных. 
    Кроме того, поставщики могут добавлять динамические параметры во 
    встроенные командлеты.
    Эти параметры доступны только при использовании командлета с данными 
    поставщика.
ВСТРОЕННЫЕ ПОСТАВЩИКИ
    Windows PowerShell включает ряд встроенных поставщиков, которые можно 
    использовать для доступа к различным хранилищам данных.
    Поставщик     Диск          Хранилище данных
    -----------  ------         ------------------------------------------
    Alias         Alias:        Псевдонимы Windows PowerShell
 
    Certificate   Cert:         Сертификаты x509 для цифровых подписей
    Environment   Env:          Переменные среды Windows
    FileSystem    *             Файлы, каталоги и диски файловой системы
    Function      Function:     Функции Windows PowerShell
    Registry      HKLM:, HKCU:  Реестр Windows
    Variable      Variable:     Переменные Windows PowerShell
    WS-Management WSMan         Конфигурационная информация WS-Management
* Диски FileSystem различаются для каждой из систем.
    Кроме того, можно создавать собственные поставщики Windows PowerShell 
    и устанавливать поставщики, созданные другими разработчиками. Чтобы вывести
 
    список поставщиков, доступных в текущем сеансе, введите следующую команду:
       get-psprovider
УСТАНОВКА И УДАЛЕНИЕ ПОСТАВЩИКОВ
    Поставщики Windows PowerShell распространяются в оснастках Windows 
    PowerShell - программах на базе .NET Framework, скомпилированных в 
    файлы DLL. Оснастки могут содержать поставщики и командлеты.
    Перед использованием функций поставщика необходимо установить 
    оснастку и добавить ее в сеанс Windows PowerShell. Дополнительные 
    сведения см. в разделе about_PsSnapins.
    Удалить поставщик нельзя, однако можно удалить из текущего сеанса 
    оснастку Windows PowerShell, в которой он содержится. При этом 
    удаляется все содержимое оснастки, включая командлеты.
    Для удаления поставщика из текущего сеанса используется командлет 
    Remove-PsSnapin. При выполнении этого командлета поставщик не 
    удаляется, но становится недоступным в текущем сеансе.
    Кроме того, с помощью командлета Remove-PsDrive можно удалить 
    любой диск из текущего сеанса. На хранящиеся на диске данные это 
    никак не влияет, но диск становится недоступен в текущем сеансе.
ПРОСМОТР ПОСТАВЩИКОВ
    Чтобы просмотреть список имеющихся на компьютере поставщиков Windows 
    PowerShell, введите следующую команду:
	get-psprovider
    В результате выводится список встроенных поставщиков, а также 
    добавленных в текущий сеанс.
КОМАНДЛЕТЫ ДЛЯ ОПЕРАЦИЙ С ПОСТАВЩИКАМИ
    Следующие командлеты предназначены для работы с данными, 
    предоставляемыми любым поставщиком. Можно использовать одни и те же 
    командлеты одинаковыми способами для управления различными типами данных, 
    предоставляемых поставщиками. Научившись управлять данными одного поставщик
а, 
    можно управлять данными любых других поставщиков аналогичными способами.
     
    Например, командлет New-Item создает новый элемент. На диске C:, 
    поддерживаемом поставщиком FileSystem, с помощью командлета New-Item можно 
    создать файл или папку. На дисках, поддерживаемых поставщиком Registry, с 
    помощью командлета New-Item можно создать новый раздел реестра. На 
    диске Alias: с помощью командлета New-Item можно создать новый псевдоним.
 
    Подробные сведения о любом из следующих командлетов можно вывести 
    с помощью следующей команды:
        get-help <имя_командлета> -detailed
	
    КОМАНДЛЕТЫ ДЛЯ ОПЕРАЦИЙ С ДОЧЕРНИМИ ЭЛЕМЕНТАМИ
        Get-ChildItem
    КОМАНДЛЕТЫ ДЛЯ ОПЕРАЦИЙ С СОДЕРЖИМЫМ
        Add-Content
        Clear-Content
        Get-Content
        Set-Content
    КОМАНДЛЕТЫ ДЛЯ ОПЕРАЦИЙ С ЭЛЕМЕНТАМИ
        Clear-Item
        Copy-Item
        Get-Item
        Invoke-Item
        Move-Item
        New-Item
        Remove-Item
        Rename-Item
        Set-Item
    КОМАНДЛЕТЫ ДЛЯ ОПЕРАЦИЙ СО СВОЙСТВАМИ ЭЛЕМЕНТОВ
        Clear-ItemProperty
        Copy-ItemProperty
        Get-ItemProperty
        Move-ItemProperty
        New-ItemProperty
        Remove-ItemProperty
        Rename-ItemProperty
        Set-ItemProperty
    КОМАНДЛЕТЫ ДЛЯ ОПЕРАЦИЙ С РАСПОЛОЖЕНИЕМ
        Get-Location
        Pop-Location
        Push-Location
        Set-Location
    КОМАНДЛЕТЫ ДЛЯ ОПЕРАЦИЙ С ПУТЯМИ
        Join-Path
        Convert-Path
        Split-Path
        Resolve-Path
        Test-Path
    КОМАНДЛЕТЫ ДЛЯ ОПЕРАЦИЙ С ДИСКАМИ POWERSHELL
        Get-PSDrive
        New-PSDrive
        Remove-PSDrive
    КОМАНДЛЕТ ДЛЯ ОПЕРАЦИЙ С ПОСТАВЩИКАМИ POWERSHELL
        Get-PSProvider
ПРОСМОТР ДАННЫХ, ПРЕДЛАГАЕМЫХ ПОСТАВЩИКАМИ
    Главное достоинство поставщиков заключается в том, что они 
    обеспечивают доступ к данным привычным согласованным образом. 
    Используемая при этом модель представления данных основана на дисках 
    файловой системы.
 
    Предлагаемые поставщиком данные можно просматривать и изменять 
    так, как если бы они хранились на жестком диске. Таким образом, 
    самой важной информацией о поставщике является имя поддерживаемого
     им диска.
    Имя этого диска выводится командлетом Get-PsProvider по 
    умолчанию, однако сведения о диске поставщика можно получить с помощью 
    командлета Get-PsDrive. Например, чтобы получить все свойства диска 
    Function:, введите следующую команду:
	get-psdrive Function | format-list *
    Просматривать предлагаемые поставщиком данные и перемещаться 
    между ними можно так же, как если бы они хранились на диске файловой 
    системы.
 
    Для просмотра содержимого диска поставщика используется командлет 
    Get-Item или Get-ChildItem. При этом вводится имя диска и 
    двоеточие (:). Например, чтобы просмотреть содержимое диска 
    Alias:, введите следующую команду:
        get-item alias:
    Для просмотра данных и управления ими с другого диска включите в 
    путь имя нужного диска. Например, чтобы просмотреть раздел реестра 
    HKLM\Software на диске HKLM: из другого диска, введите следующую команду:
        get-childitem hklm:\software
    Чтобы открыть этот диск, воспользуйтесь командлетом Set-Location. 
    При вводе пути к диску не забывайте указывать двоеточие. 
    Например, чтобы задать в качестве текущего местоположения 
    корневой каталог диска Cert:, введите следующую команду:
        set-location cert:
    Чтобы просмотреть содержимое диска Cert:, введите следующую команду:
	get-childitem
ПЕРЕМЕЩЕНИЕ ПО ИЕРАРХИЧЕСКИМ ДАННЫМ
    Перемещаться по диску поставщика можно так же, как по жесткому 
    диску. Если данные организованы в виде иерархии элементов, 
    дочерние элементы указываются с помощью обратной косой черты (\). 
    Используйте следующий формат:
	drive:\location\child-location\...
    Например, чтобы задать в качестве текущего местоположения раздел 
    реестра HKLM\Software, используйте команду Set-Location следующим 
    образом:
        set-location hklm:\software
    Можно также использовать относительные ссылки на местоположения. 
    Текущее местоположение обозначается точкой (.). Например, если текущим 
    местоположением является раздел реестра HKLM:\Software\Microsoft и 
    требуется вывести список подразделов раздела HKLM:\Software\Micrsoft\P
    owerShell, введите следующую команду:
        get-childitem .\powershell 
ПОИСК ДИНАМИЧЕСКИХ ПАРАМЕТРОВ
    Динамические параметры - это параметры командлета, добавленные 
    поставщиком. Эти параметры доступны только при использовании 
    командлета с поставщиком, из которого они добавлены.
 
    Например, диск Cert: добавляет параметр CodeSigningCert для 
    командлетов Get-Item и Get-ChildItem. Этот параметр доступен 
    только при использовании командлета Get-Item или Get-ChildItem с 
    диском Cert:.
    Чтобы получить список динамических параметров, поддерживаемых 
    поставщиком, обратитесь к файлу справки поставщика. Для этого введите 
    следующую команду:
	get-help <имя_поставщика>
    Пример:
	get-help certificate
ПОЛУЧЕНИЕ ИНФОРМАЦИИ О ПОСТАВЩИКАХ
    Все данные поставщиков представляются в виде дисков, и по ним можно 
    перемещаться как по дискам, однако на этом сходство заканчивается. 
    Хранилища данных, доступ к которым обеспечивает поставщик, могут быть 
    самыми разными: от каталогов Active Directory до почтовых ящиков 
    Microsoft Exchange Server.
    Чтобы получить сведения об отдельных поставщиках Windows 
    PowerShell, введите следующую команду:
	get-help <имя_поставщика>
    Пример:
	get-help registry
    Чтобы вывести список разделов справки о поставщиках, введите следующую 
    команду:
	get-help * -category provider  		
СМ. ТАКЖЕ
    about_Locations
    about_Path_Syntax



about_pssession_details

РАЗДЕЛ
    about_PSSession_Details
КРАТКОЕ ОПИСАНИЕ
    Предоставляет подробное описание сеансов Windows PowerShell и их 
    роли в работе с удаленными командами.
ПОЛНОЕ ОПИСАНИЕ
    Сеанс - это среда, в которой работает Windows PowerShell. Сеанс 
    создается при каждом запуске Windows PowerShell, пользователь может 
    создавать дополнительные сеансы, называемые "сеансы Windows 
    PowerShell" или "PSSessions" на своем компьютере или на другом компьютере.
    В отличие от сеансов, которые создает Windows PowerShell, сеансы 
    PSSessions, которые создает пользователь, контролируются и управляются 
    пользователем.
    Сеансы PSSession играют важную роль для удаленной работы. При создании 
    сеанса PSSession, подключенного к удаленному компьютеру, Windows 
    PowerShell устанавливает постоянное подключение к удаленному 
    компьютеру для поддержки PSSession. PSSession можно использовать для 
    запуска ряда команд, функций и скриптов, использующих данные совместно. 
    Этот раздел содержит подробные сведения об обычных сеансах и сеансах 
    PSSession в Windows PowerShell. Основные сведения о задачах, которые можно 
    выполнять при помощи сеансов, см. в разделе about_PSSessions.  
 СЕАНСЫ
    Технически сеанс - это среда выполнения, в которой работает Windows 
    PowerShell. Каждый сеанс включает в себя экземпляр обработчика 
    System.Management.Automation и ведущую программу, в которой 
    выполняется Windows PowerShell. Ведущей программой может быть 
    привычная консоль Windows PowerShell или другая программа, 
    выполняющая команды, например Cmd.exe, или программа, построенная, 
    чтобы быть ведущей программой Windows PowerShell, например интегрированная 
    среда скриптов (ISE) Windows PowerShell. С точки зрения Windows 
    сеанс - это процесс Windows на конечном компьютере. 
    Каждый сеанс настраивается независимо. Он имеет собственные свойства, 
    политику выполнения и профили. Среда, существующая в момент создания 
    сеанса, сохраняется в течение времени его существования, даже если 
    изменить среду на компьютере. Все сеансы создаются в глобальной 
    области, даже сеансы, создаваемые в скрипте. 
    В рамках сеанса в один момент времени можно выполнять только одну 
    команду (или командный конвейер). Вторая команда, запущенная 
    синхронно с первой (по одной за раз), ожидает завершения первой 
    команды до четырех минут. Вторая команда, запущенная асинхронно 
    (одновременно), завершается с ошибкой.
 СЕАНСЫ PSSESSION
    Сеанс создается при каждом запуске Windows PowerShell. При этом 
    Windows PowerShell создает временные сеансы для выполнения 
    отдельных команд. Однако можно также создавать сеансы, называемые 
    "сеансы Windows PowerShell" или "PSSessions", которые контролируются и 
    управляются пользователем.
 
    Сеансы PSSession очень важны для выполнения удаленных команд. Если 
    используется параметр ComputerName командлетов Invoke-Command или Enter-
    PSSession, Windows PowerShell создает временный сеанс для выполнения 
    команды и закрывает сеанс, как только команда или интерактивный сеанс 
    завершаются. 
    Однако если используется командлет New-PSSession для создания 
    PSSession, Windows PowerShell создает постоянный сеанс на удаленном 
    компьютере, в котором можно выполнять множество команд или интерактивных 
    сеансов. Созданные пользователем сеансы PSSession остаются открытыми и 
    доступными для использования, пока пользователь не удалит их или не 
    закроет сеанс, в котором они были созданы.
    При создании PSSession на удаленном компьютере система создает процесс 
    PowerShell на удаленном компьютере и устанавливает соединение между 
    локальным компьютером и этим процессом на удаленном компьютере. При 
    создании PSSession на локальном компьютере и новый процесс, и соединения 
    создаются на локальном компьютере.
 КОГДА ИСПОЛЬЗОВАТЬ PSSESSION?
    Командлеты Invoke-Command и Enter-PSSession имеют как параметр 
    ComputerName, так и параметр Session. Для выполнения удаленной 
    команды можно использовать любой из них. 
    Для выполнения одной команды или последовательности несвязанных 
    команд на одном или нескольких компьютерах следует использовать 
    параметр ComputerName. 
    Для выполнения команд, работающих с общими данными, необходимо 
    постоянное подключение к удаленному компьютеру. В таком случае 
    необходимо создать сеанс PSSession и использовать параметр Session для 
    выполнения команд в сеансе PSSession.
    Многие другие командлеты, получающие данные от удаленных компьютеров, 
    например Get-Process, Get-Service, Get-EventLog и Get-WmiObject, 
    имеют только параметр ComputerName. Для удаленного сбора данных они 
    используют технологии, отличные от удаленного взаимодействия Windows 
    PowerShell. У этих командлетов нет параметра Session, но можно 
    использовать командлет Invoke-Command для запуска этих командлетов в 
    сеансе PSSession.
 
 КАК СОЗДАТЬ PSSESSION?
    Для создания сеанса PSSession используйте командлет New-PSSession. 
    Командлет New-PSSession позволяет создавать PSSession на локальном или 
    удаленном компьютере.
 МОЖНО ЛИ СОЗДАТЬ PSSESSION НА ЛЮБОМ КОМПЬЮТЕРЕ? 
    Чтобы создать сеанс PSSession, подключенный к удаленному компьютеру, в 
    Windows PowerShell для компьютера должно быть настроено удаленное 
    взаимодействие. Текущий пользователь должен быть членом группы 
    "Администраторы" на удаленном компьютере или иметь возможность 
    предоставить учетные данные члена группы "Администраторы". 
    Дополнительные сведения см. в разделе about_Remote_Requirements.
 МОЖЕТ ЛИ ПОЛЬЗОВАТЕЛЬ УВИДЕТЬ СЕАНСЫ PSSESSION, СОЗДАННЫЕ НА ЕГО 
 КОМПЬЮТЕРЕ ДРУГИМИ ПОЛЬЗОВАТЕЛЯМИ?
    Нет. Пользователь может получать только сеансы PSSession, которые 
    он создал в текущем сеансе, и управлять он может только этими 
    сеансами. Нельзя увидеть сеансы PSSession, созданные другими 
    пользователями, даже если они выполняют команды на локальном 
    компьютере.
 МОЖНО ЛИ ВЫПОЛНЯТЬ ФОНОВЫЕ ЗАДАНИЯ В СЕАНСЕ PSSESSION?
    Да. Фоновое задание - это команда, которая выполняется асинхронно 
    в фоновом режиме без взаимодействия с текущим сеансом. При отправке 
    команды для запуска задания команда возвращает объект задания, но задание 
    продолжает выполняться в фоновом режиме до своего завершения.
    Чтобы запустить фоновое задание на локальном компьютере, 
    используйте команду Start-Job. Можно запустить фоновое задание в 
    рамках временного подключения (при помощи параметра ComputerName) 
    или в сеансе PSSession (при помощи параметра Session). 
    Чтобы запустить фоновое задание на удаленном компьютере, используйте 
    командлет Invoke-Command с параметром AsJob или используйте командлет 
    Invoke-Command для выполнения команды Start-Job на удаленном компьютере. 
    При использовании параметра AsJob можно использовать параметры ComputerName
 
    или Session.
    При использовании командлета Invoke-Command для запуска команды 
    Start-Job необходимо запускать команду в сеансе PSSession. Если 
    используется параметр ComputerName, Windows PowerShell завершает 
    подключение, когда возвращается объект задания, и задание прерывается.
    Дополнительные сведения см. в разделе about_Jobs.
 МОЖНО ЛИ СОЗДАВАТЬ ИНТЕРАКТИВНЫЕ СЕАНСЫ?
    Да. Чтобы начать интерактивный сеанс с удаленным компьютером, 
    используйте командлет Enter-PSSession. В рамках интерактивного сеанса 
    вводимые команды выполняются на удаленном компьютере, как если бы они 
    вводились непосредственно на удаленном компьютере. 
    Можно запустить интерактивный сеанс в рамках временного сеанса 
    (при помощи параметра ComputerName) или в сеансе PSSession (при помощи 
    параметра Session). Если использовать PSSession, этот сеанс PSSession 
    сохраняет данные предыдущих команд и все данные, созданные в рамках 
    интерактивного сеанса, для использования в последующих командах.
    При завершении интерактивного сеанса сеанс PSSession остается 
    открытым и доступным для использования.
    Чтобы получить дополнительные сведения, см. Enter-PSSession 
    и Exit-PSSession.
 
 НУЖНО ЛИ УДАЛЯТЬ СЕАНСЫ PSSESSION?
    Да. PSSession является процессом, это самодостаточная среда, 
    использующая память и другие ресурсы, даже когда находится в 
    бездействии. Когда сеанс PSSession вам больше не нужен, удалите 
    его. При создании нескольких сеансов PSSession следует закрывать 
    те, что не используются, и оставлять только те, что используются 
    в настоящий момент. 
    Для удаления сеансов PSSession используется командлет 
    Remove-PSSession. Он удаляет сеансы PSSession и освобождает все 
    ресурсы, которые они использовали. 
    Можно также использовать параметр TimeOut командлета 
    New-PSSession, чтобы закрыть неиспользуемый сеанс PSSession после 
    заданного интервала времени. Чтобы получить дополнительные 
    сведения, см. New-PSSession.
    Если не удалить сеанс PSSession или не задать время ожидания, он 
    останется открытым и доступным для использования, пока пользователь не 
    закроет его, не закроет сеанс, в котором он был создан, или не выйдет 
    из Windows PowerShell. Однако сеанс PSSession на удаленном компьютере 
    будет отключен, если удаленный компьютер не отвечает в течение 
    четырех минут. (Удаленный компьютер должен посылать контрольный 
    сигнал каждые три минуты.)
    Если сохранить объект PSSession в переменной и затем удалить 
    сеанс PSSession или позволить ему быть закрытым по истечении времени 
    ожидания, переменная все еще будет содержать объект PSSession, но сеанс 
    PSSession не активен, его нельзя использовать или восстановить.
    
 ВСЕ ЛИ ОБЫЧНЫЕ СЕАНСЫ И СЕАНСЫ PSSESSION ОДИНАКОВЫ?
    Нет. Разработчики могут создавать настраиваемые сеансы, включающие 
    в себя только выбранные поставщики и командлеты. Если в одном сеансе 
    команда работает, а в другом - нет, это может быть связано с ограничениями 
    сеанса.
СМ. ТАКЖЕ
    about_Jobs
    about_PSSessions
    about_Remote 
    about_Remote_Requirements
    Invoke-Command
    New-PSSession 
    Get-PSSession 
    Remove-PSSession 
    Enter-PSSession 
    Exit-PSSession 



about_pssessions

РАЗДЕЛ
    about_PSSessions
КРАТКОЕ ОПИСАНИЕ
    Содержит описание сеансов Windows PowerShell (сеансы PSSession) и 
    объяснение, как установить постоянное подключение к удаленному 
компьютеру. 
ПОЛНОЕ ОПИСАНИЕ
    Для выполнения команд Windows PowerShell на удаленном компьютере можно 
    использовать параметр ComputerName командлета или создать сеанс Windows 
    PowerShell (PSSession) и выполнять команды в сеансе PSSession. 
    При создании сеанса PSSession Windows PowerShell создает 
    постоянное подключение к удаленному компьютеру. Используйте сеанс 
    PSSession для выполнения последовательности связанных команд на 
    удаленном компьютере. Команды, выполняемые в рамках одного сеанса 
    PSSession, могут совместно использовать данные, например значения 
    переменных, псевдонимы и функции.
    Можно также создать сеанс PSSession на локальном компьютере и 
    выполнять команды в нем. Локальный сеанс PSSession использует 
    инфраструктуру удаленного взаимодействия Windows PowerShell для 
    создания и обслуживания сеанса PSSession.
    В этом разделе описывается, как создавать, использовать, получать 
    и удалять сеансы PSSession. Чтобы получить дополнительные 
    сведения, см. раздел about_PSSession_Details.
    Примечание. Сеансы PSSession используют инфраструктуру удаленного 
                взаимодействия Windows PowerShell. Чтобы можно было 
                использовать сеансы PSSession, для локального и 
                удаленного компьютеров должно быть настроено 
                удаленное взаимодействие. Дополнительные сведения см. 
                в разделе about_Remote_Requirements. 
                Чтобы создать сеанс PSSession на локальном компьютере под 
                управлением Windows Vista и более поздних версий Windows, 
                необходимо запускать Windows PowerShell командой "Запуск 
                от имени администратора". 
 ЧТО ТАКОЕ СЕАНС?
    Сеанс - это среда, в которой работает Windows PowerShell. 
    При каждом запуске Windows PowerShell создается сеанс, в котором 
    можно выполнять команды. Можно также добавлять элементы в сеанс, 
    например модули и оснастки, и создавать элементы, например переменные, 
    функции и псевдонимы. Эти элементы будут существовать только в данном 
    сеансе и будут удалены при завершении сеанса.
    Можно также создавать дополнительные сеансы, известные как 
    "сеансы Windows PowerShell" или "PSSession", на локальном или 
    удаленном компьютере. Как и в обычном сеансе, в PSSession можно 
    выполнять команды, добавлять и создавать элементы для него.  
    Но в отличие от сеанса, запущенного автоматически, пользователь может 
    управлять созданными сеансами PSSession. Пользователь может получать, 
    создавать, настраивать и удалять их; также можно запускать несколько 
    команд в одном сеансе PSSession. Объект PSSession остается открытым 
    и доступным для использования, пока пользователь не удалит его из сеанса.
      
    Обычно сеанс PSSession создается для выполнения последовательности
    связанных команд на удаленном компьютере. При создании PSSession на 
    удаленном компьютере Windows PowerShell устанавливает постоянное 
    подключение к удаленному компьютеру для поддержки этого сеанса. 
    Если используется параметр computerName командлетов Invoke-Command или 
    Enter-PSSession для запуска удаленной команды или создания интерактивного 
    сеанса, Windows PowerShell создает временный сеанс на удаленном компьютере 
    и закрывает его, как только команда или интерактивный сеанс завершаются. 
    Временными сеансами нельзя управлять и нельзя использовать их более чем 
    для одной команды или одного интерактивного сеанса.
    В Windows PowerShell "текущий сеанс" - это сеанс, в котором работает 
    пользователь. Название "текущий сеанс" может относиться к любому 
    сеансу, в том числе временному сеансу или сеансу PSSession.
 КОГДА ИСПОЛЬЗОВАТЬ СЕАНС PSSESSION?
    PSSession следует использовать, когда необходимо постоянное 
    подключение к удаленному компьютеру. В сеансе PSSession можно 
    выполнять несколько команд, совместно использующих данные, такие как 
    значение переменных, содержимое функции или определение псевдонима.
    Удаленные команды можно выполнять, не создавая сеанс PSSession. Для 
    выполнения одной команды или последовательности несвязанных команд на 
    одном или нескольких компьютерах можно использовать параметр 
    ComputerName командлетов, позволяющих удаленную работу.
    Когда используется параметр ComputerName командлетов 
    Invoke-Expression или Enter-PSSession, Windows PowerShell 
    устанавливает временное подключение к удаленному компьютеру и 
    завершает подключение, как только команда завершает выполнение. Все 
    созданные данные теряются при завершении соединения. 
    Другие командлеты, у которых есть параметр ComputerName, например Get-
    Eventlog и Get-WmiObject, используют другие технологии удаленного 
    взаимодействия для сбора данных. Ни один из них не создает постоянное 
    подключение, как PSSession.
     
 СОЗДАНИЕ СЕАНСА PSSESSION
    Для создания сеанса PSSession используйте командлет 
    New-PSSession. Чтобы создать сеанс PSSession на удаленном 
    компьютере, используйте параметр ComputerName командлета 
    New-PSSession.
    Например, следующая команда создает новый сеанс PSSession на 
    компьютере Server01.
        new-pssession -computername Server01
    При отправке команды командлет New-PSSession создает сеанс PSSession и 
    возвращает объект, представляющий PSSession. При создании сеанса PSSession 
    объект можно сохранить в переменной или использовать команду 
    Get-PSSession, чтобы получить сеанс PSSession позже.
    Например, следующая команда создает новый сеанс PSSession на 
    компьютере Server01 и сохраняет полученный объект в переменной $ps.
    
        $ps = new-pssession -computername Server01
 СОЗДАНИЕ СЕАНСОВ PSSESSION НА НЕСКОЛЬКИХ КОМПЬЮТЕРАХ
    Чтобы создать сеансы PSSession на нескольких компьютерах, используйте 
    параметр ComputerName командлета New-PSSession. Введите имена удаленных 
    компьютеров в виде списка, разделенного запятыми. 
    Например, чтобы создать сеансы PSSession на компьютерах Server01, 
    Server02 и Server03, введите следующую строку:
        new-PSSession -computername Server01, Server02, Server03
    Командлет New-PSSession создает один сеанс PSSession на каждом из 
    удаленных компьютеров. 
 ПОЛУЧЕНИЕ СЕАНСОВ PSSESSION 
    Чтобы получить сеансы PSSession, созданные в текущем сеансе, 
    используйте командлет Get-PSSession. Командлет Get-PSSession 
    возвращает тот же тип объекта, что и командлет New-PSSession. 
    Следующая команда получает все сеансы PSSession, созданные в 
    текущем сеансе.
        get-PSSession
    По умолчанию для сеансов PSSession выводятся их идентификаторы и 
    понятные имена по умолчанию. При создании сеанса можно назначить 
    ему другое понятное имя.
        Id   Name       ComputerName    State    ConfigurationName
        ---  ----       ------------    -----    ---------------------
        1    Session1   Server01        Opened   Microsoft.PowerShell
        2    Session2   Server02        Opened   Microsoft.PowerShell
        3    Session3   Server03        Opened   Microsoft.PowerShell
   
    Также можно сохранять сеансы PSSession в переменной. Следующая команда 
    получает сеансы PSSession и сохраняет их в переменной $ps123.
        $ps123 = get-PSSession  
    При использовании командлетов PSSession можно обратиться к сеансу 
    PSSession по его идентификатору, имени или идентификатору его 
    экземпляра (GUID). Следующая команда получает сеанс PSSession по его 
    идентификатору и сохраняет его в переменной $ps01.
        $ps01 = get-PSSession -id 1
    Команда Get-PSSession получает только сеансы PSSession, созданные 
    в текущем сеансе. Команда не получает сеансы PSSession, созданные 
    в других сеансах или на других компьютерах, даже если сеансы 
    подключены к локальному компьютеру и выполняют на нем команды. 
 ВЫПОЛНЕНИЕ КОМАНД В СЕАНСЕ PSSESSION
    Для выполнения команды в одном или нескольких сеансах PSSession 
    используйте командлет Invoke-Command. Используйте параметр Session для 
    задания сеансов PSSession и параметр ScriptBlock для задания команды.
    Например, для выполнения команды Get-ChildItem ("dir") в каждом 
    из трех сеансов PSSession, сохраненных в переменной $ps123, введите 
    следующую строку:
        invoke-command -session $ps123 -scriptblock {get-childitem}
 
 УДАЛЕНИЕ СЕАНСОВ PSSESSION
    По окончании работы с сеансом PSSession используйте командлет 
    Remove-PSSession для удаления сеанса PSSession и освобождения 
    занятых им ресурсов.
        remove-PSSession -session $ps
        - или: 
          
        remove-PSSession -id 1
 
    Если сеанс PSSession не удалить, он остается открытым и доступным для 
    использования, пока не будет закрыт текущий сеанс или Windows PowerShell.
    Также можно использовать параметр TimeOut командлета New-PSSession, 
    чтобы задать время ожидания для сеанса PSSession, который не используется. 
    Чтобы получить дополнительные сведения, см. new-PSSession.
 КОМАНДЛЕТЫ PSSESSION
    Командлет                Описание 
    -----------------     -----------------------------------------------------
- 
    New-PSSession         Создает новый сеанс PSSession на 
     			  локальном или удаленном компьютере.
    Get-PSSession         Выводит все сеансы PSSession в 
    			  текущем сеансе.
    Remove-PSSession      Удаляет сеансы PSSession в 
    			  текущем сеансе.
    Enter-PSSession       Создает интерактивный сеанс.
    Exit-PSSession        Завершает интерактивный сеанс.
    Чтобы вывести список командлетов PSSession, введите следующую команду:
	
	get-help *-PSSession
 ДОПОЛНИТЕЛЬНЫЕ СВЕДЕНИЯ
    Дополнительные сведения о сеансах PSSession см. в разделе 
    about_PSSession_Details.
    
СМ. ТАКЖЕ
    about_Remote
    about_Remote_Requirements
    New-PSSession
    Get-PSSession
    Remove-PSSession
    Enter-PSSession
    Exit-PSSession
    Invoke-Command  



about_PSSnapins

РАЗДЕЛ
    about_PSSnapins
КРАТКОЕ ОПИСАНИЕ
    Описывает оснастки Windows PowerShell, содержит сведения об 
    использовании оснасток и управлении ими.
ПОЛНОЕ ОПИСАНИЕ
    Оснастка Windows PowerShell - это сборка Microsoft .NET 
    Framework, в которой содержатся поставщики и/или командлеты Windows 
    PowerShell. Оболочка Windows PowerShell включает набор базовых оснасток; 
    функциональность оболочки можно расширить, добавив в нее оснастки с 
    поставщиками и командлетами, созданными вами или полученными от других 
    разработчиков. 
    После добавления оснастки содержащиеся в ней командлеты и поставщики 
    мгновенно становятся доступными для использования в текущем сеансе; 
    при этом изменение касается только текущего сеанса. 
    Чтобы можно было добавить оснастку во все будущие сеансы, сохраните 
    ее в своем профиле Windows PowerShell. Кроме того, можно использовать 
    командлет Export-Console для сохранения имен оснасток в файле консоли 
    и применения его в будущих сеансах. Можно даже сохранить несколько 
    файлов консоли, включающих различные наборы оснасток.
 ВСТРОЕННЫЕ ОСНАСТКИ
    Оболочка Windows PowerShell включает набор оснасток Windows 
    PowerShell, в которых содержатся встроенные поставщики и командлеты.
    Microsoft.PowerShell.Core
        Содержит поставщики и командлеты, используемые для управления 
        базовыми функциями Windows PowerShell. Включает поставщики 
        FileSystem, Registry, Alias, Environment, Function и 
        Variable, а также базовые командлеты, такие как Get-Help, 
        Get-Command и Get-History.
    Microsoft.PowerShell.Host
       Содержит командлеты, используемые главным приложением оболочки 
       Windows PowerShell, такие как Start-Transcript и Stop-Transcript.
    Microsoft.PowerShell.Management
        Содержит такие командлеты, как Get-Service и Get-ChildItem, 
        которые используются для управления функциями на основе Windows.
    Microsoft.PowerShell.Security
        Содержит командлеты, используемые для управления подсистемой 
        обеспечения безопасности Windows PowerShell, такие как 
        Get-Acl, Get-AuthenticodeSignature и ConvertTo-SecureString.
    Microsoft.PowerShell.Utility
        Содержит командлеты, используемые для работы с объектами и 
        данными, такие как Get-Member, Write-Host и Format-List.
 ПОИСК ОСНАСТОК
    Чтобы получить список имеющихся на компьютере оснасток Windows 
    PowerShell, введите следующую команду:
	get-pssnapin
    Чтобы получить оснастку для каждого поставщика Windows 
    PowerShell, введите следующую команду: 
        get-psprovider | format-list name, pssnapin
    Чтобы получить список командлетов, содержащихся в оснастке Windows 
    PowerShell, введите следующую команду:
        get-command -module <имя_оснастки>
 УСТАНОВКА ОСНАСТКИ
    Встроенные оснастки регистрируются в системе и добавляются в сеанс по 
    умолчанию при запуске оболочки Windows PowerShell. Однако для 
    добавления в сеанс оснасток, созданных самостоятельно или полученных 
    от других разработчиков, их необходимо зарегистрировать.
 РЕГИСТРАЦИЯ ОСНАСТКИ
    Оснастка Windows PowerShell - это программа, написанная на языке .NET 
    Framework и скомпилированная в DLL-файл. Для использования поставщиков и 
    командлетов, содержащихся в оснастке, ее нужно зарегистрировать 
    (добавить в реестр). 
    Большинство оснасток поставляется с программой установки (EXE- или MSI-
    файл), которая регистрирует DLL-файл. Однако оснастку, полученную в 
    виде DLL-файла, также можно зарегистрировать в системе. Дополнительные 
    сведения см. в разделе "Регистрация командлетов, поставщиков и ведущих 
    приложений" библиотеки MSDN по адресу: 
    http://go.microsoft.com/fwlink/?LinkID=143619.
    Чтобы получить все зарегистрированные в системе оснастки или 
    проверить, что оснастка зарегистрирована, введите следующую команду:
	get-pssnapin -registered
 ДОБАВЛЕНИЕ ОСНАСТКИ В ТЕКУЩИЙ СЕАНС
    Для добавления зарегистрированных оснасток в текущий сеанс используйте 
    командлет Add-PsSnapin. Например, чтобы добавить в сеанс оснастку 
    Microsoft SQL Server, введите следующую команду:
	add-pssnapin sql
    После выполнения этой команды поставщики и командлеты, содержащиеся в 
    оснастке, будут доступны в сеансе. Однако они будут доступны только в 
    текущем сеансе; чтобы сделать поставщики и командлеты доступными в 
    других сеансах, их необходимо сохранить.
 СОХРАНЕНИЕ ОСНАСТОК
    Для использования оснастки в будущих сеансах Windows PowerShell 
    добавьте команду Add-PsSnapin в профиль Windows PowerShell или 
    экспортируйте имена оснасток в файл консоли. 
    После добавления команды Add-PSSnapin в профиль Windows PowerShell 
    она будет доступна во всех будущих сеансах Windows PowerShell. После 
    экспорта имен оснасток в сеанс файл экспорта можно использовать, 
    когда требуются оснастки.
    Чтобы добавить команду Add-PsSnapin в профиль Windows PowerShell, 
    откройте профиль, укажите команду путем вставки или ввода и сохраните 
    профиль. Дополнительные сведения см. в разделе about_Profiles.
    Для сохранения оснасток из сеанса в файл консоли (PSC1) используйте 
    командлет Export-Console. Например, чтобы сохранить оснастки из 
    конфигурации текущего сеанса в файл NewConsole.psc1 в текущем 
    каталоге, введите следующую команду:
	export-console NewConsole
    Дополнительные сведения см. в описании командлета Export-Console.
 ЗАПУСК WINDOWS POWERSHELL С ФАЙЛОМ КОНСОЛИ 
    Для использования файла консоли, включающего оснастку, запустите 
    оболочку Windows PowerShell (Powershell.exe) из командной строки 
    в сеансе Cmd.exe или в другом сеансе Windows PowerShell. Используйте 
    параметр PsConsoleFile для указания файла консоли, который включает 
    оснастку. Например, следующая команда запускает оболочку Windows 
    PowerShell с файлом консоли NewConsole.psc1:
	powershell.exe -psconsolefile NewConsole.psc1
    После выполнения этой команды в текущем сеансе можно использовать 
    поставщики и командлеты, содержащиеся в оснастке.
 УДАЛЕНИЕ ОСНАСТКИ
    Для удаления оснастки Windows PowerShell из текущего сеанса 
    используйте командлет Remove-PsSnapin. Например, чтобы удалить 
    оснастку SQL Server из текущего сеанса, введите следующую команду:
	remove-pssnapin sql
    Этот командлет удаляет оснастку из сеанса. Оснастка остается 
    загруженной, но поддерживаемые ею поставщики и командлеты становятся 
    недоступными. 
СМ. ТАКЖЕ
    Add-PsSnapin
    Get-PsSnapin  
    Remove-PsSnapin
    Export-Console
    Get-Command
    about_Profiles



about_Quoting_Rules

РАЗДЕЛ
    about_Quoting_Rules
КРАТКОЕ ОПИСАНИЕ
    Описывает правила использования одиночных и двойных кавычек в Windows 
    PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Кавычки используются для задания литеральных строк. Строку можно 
    заключить в одиночные (') или двойные (") кавычки.
 
    Кавычки также используются для создания автономных строк. 
    Автономная строка - это строка, заключенная в одиночные или 
    двойные кавычки, в которой кавычки интерпретируются буквально. 
    Автономная строка может состоять из нескольких строк. Все строки 
    в автономной строке интерпретируются как строки, даже несмотря на 
    то что они не заключены в кавычки.
    В командах для удаленных компьютеров кавычки определяют части команды, 
    выполняемые на удаленном компьютере. В удаленном сеансе кавычки также 
    определяют, интерпретируются ли переменные в команде сначала на 
    локальном, а затем на удаленном компьютере или наоборот.
 Строки, заключенные в одиночные и двойные кавычки
      Если строка заключена в двойные кавычки, имена переменных, 
      перед которыми стоит знак доллара ($), заменяются значениями 
      переменных перед передачей строки команде для обработки.
 
      Пример:
          $i = 5
          "Значение $i: $i."
      Выходные данные команды: 
          Значение 5: 5.
      Кроме того, в строке, заключенной в двойные кавычки, 
      вычисляются выражения, и результат вставляется в строку. Пример:
	  "Значение $(2+3): 5."
      Выходные данные команды:
	  Значение 5: 5.
      Строка, заключенная в одиночные кавычки, передается команде 
      точно в том виде, в котором она введена. Подстановок не 
      производится. Пример:
          $i = 5
          'Значение $i: $i.'
      Выходные данные команды: 
          Значение $i: $i.
      Кроме того, выражения, заключенные в одиночные кавычки, не 
      вычисляются. Они интерпретируются как литералы. Пример:
	  'Значение $(2+3): 5.'
      Выходные данные команды:
	  Значение $(2+3): 5.
      Для предотвращения подстановки значения переменной в строке, 
      заключенной в двойные кавычки, используйте обратный апостроф 
      (`)[код ASCII 96], который является escape-символом Windows 
      PowerShell.
      В следующем примере перед первым вхождением переменной $i 
      указан обратный апостроф (`), в результате чего Windows 
      PowerShell не заменяет имя переменной ее значением. Пример:
          $i = 5
          "Значение `$i: $i."
      Выходные данные команды: 
          Значение $i: 5.
     
    
      Для отображения двойных кавычек в строке необходимо заключить 
      всю строку в одиночные кавычки. Пример:
          'Как говорится, "учись, пока жив".'
      Выходные данные команды:
          Как говорится, "учись, пока жив".
      Также можно заключить строку, содержащую одиночные кавычки, 
      в двойные кавычки. Пример:
          "Как говорится, 'учись, пока жив'."
      Выходные данные команды:
          Как говорится, 'учись, пока жив'.
      Кроме того, можно заключить строку, содержащую двойные кавычки, 
      в двойные кавычки. Пример:
          "Как говорится, ""учись, пока жив""."
      Выходные данные команды:
          Как говорится, "учись, пока жив".
      Для включения одиночной кавычки в строку, заключенную в 
      одиночные кавычки, используйте одиночную кавычку два раза 
      подряд. Пример:
          'don''t'
      Выходные данные команды:
          don't
      Чтобы оболочка Windows PowerShell интерпретировала двойные 
      кавычки буквально, используйте обратный апостроф. Это не 
      позволяет оболочке Windows PowerShell интерпретировать кавычку 
      как разделитель строк. Пример:
          "Используйте двойную кавычку (`") в начале строки."
      Поскольку содержимое строки, заключенной в одиночные кавычки, 
      интерпретируется буквально, в ней нельзя использовать обратный 
      апостроф для принудительной интерпретации литерала.
 
      Например, следующая команда выдает ошибку, поскольку Windows 
      PowerShell не распознает escape-символ. Эта команда 
      интерпретирует вторую кавычку как конец строки.
	  PS C:\> 'Используйте одиночную кавычку (`') в начале строки.'
          Неожиданный токен ")" в выражении или инструкции.
          В строке:1 знак:27
          + 'Используйте одиночную кавычку (`') < в начале строки.'
 Автономные строки, заключенные в одиночные и двойные кавычки
      Правила использования кавычек в автономных строках немного 
      отличаются.
      Автономная строка - это строка, заключенная в одиночные или 
      двойные кавычки, в которой кавычки интерпретируются буквально. 
      Автономная строка может состоять из нескольких строк. Все 
      строки в автономной строке интерпретируются как строки, даже 
      несмотря на то что они не заключены в кавычки.
      В автономных строках, заключенных в двойные кавычки, переменные 
      заменяются своими значениями подобно регулярным выражениям. В 
      автономных строках, заключенных в одиночные кавычки, переменные 
      не заменяются своими значениями.
 
      Автономные строки можно использовать в случае любого текста, но 
      они являются особенно полезными в случае текста следующих типов.
          - Текст, в котором содержатся литералы в кавычках Текст, 
          - состоящий из нескольких строк, например HTML- или XML-документ 
          - Текст справки для скрипта или функции
      Автономная строка может иметь один из следующих форматов, где 
      <Ввод> означает перевод строки или скрытый символ новой строки, 
      который добавляется при нажатии клавиши ВВОД.
 
      Формат 1:
	  @"<Ввод>
          <строка> [строка] ...<Ввод>
          "@
      Формат 2:
 
	  @'<Ввод>
          <строка> [строка] ...<Ввод>
          '@
      В обоих форматах закрывающая кавычка должна быть первым 
      символом строки. 
   
      В автономной строке содержится весь текст между двумя скрытыми 
      символами.
      В автономной строке все кавычки интерпретируются буквально.
      Пример:
	  @"
	  Для отображения справки введите команду "get-help"
	  "@
    
      Выходные данные команды:
	  Для отображения справки введите команду "get-help"
      Применение автономной строки позволяет упростить используемую в 
      команде строку. Пример:
	  @"
          Используйте одиночную кавычку (') в начале строки.
          "@
	    
      Выходные данные команды:
          Используйте одиночную кавычку (') в начале строки.
      В автономных строках, заключенных в одиночные кавычки, переменные 
      интерпретируются буквально и воспроизводятся точно в том виде, в 
      котором они заданы. Пример:
          @'
	  В переменной $profile содержится путь
          к вашему профилю Windows PowerShell.
          '@
      Выходные данные команды:
	  В переменной $profile содержится путь
          к вашему профилю Windows PowerShell.
      В автономных строках, заключенных в двойные кавычки, переменные 
      заменяются своими значениями. Пример:
	  @" 
          Даже если профиль не создан, задан следующий путь к профилю:
          $profile.
          "@
    
      Выходные данные команды:
	  Даже если профиль не создан,
	  задан следующий путь к профилю:
	  C:\Users\User01\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
.
      Автономные строки обычно используются для присвоения переменной 
      значения, состоящего из нескольких строк. Например, следующая 
      автономная строка позволяет присвоить переменной $page страницу 
      XML-документа.
        $page = [XML] @"
        <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10"
 
        xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" 
        xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10"> 
 	    <command:details>
	    	    <command:name>
                       Format-Table
		    </command:name>
		    <maml:description>
			<maml:para>Форматирует вывод в виде таблицы.</maml:para> 
		    </maml:description>
		    <command:verb>format</command:verb>
		    <command:noun>table</command:noun>
		    <dev:version></dev:version>
 	    </command:details>
        ...
        </command:command>
        "@
   
      Автономные строки также являются удобным форматом входных данных для 
      командлета ConvertFrom-StringData, который преобразует автономные 
      строки в хэш-таблицы. Дополнительные сведения см. в описании 
      командлета ConvertFrom-StringData.
СМ. ТАКЖЕ
    about_Escape_Characters
    ConvertFrom-StringData



about_Redirection

РАЗДЕЛ
    about_Redirection
КРАТКОЕ ОПИСАНИЕ
    Описывает порядок перенаправления вывода из Windows PowerShell 
    в текстовые файлы.
ПОЛНОЕ ОПИСАНИЕ
    По умолчанию Windows PowerShell передает выходные данные команды 
    в консоль Windows PowerShell. Однако можно направить вывод в 
    текстовый файл, а также перенаправить выходную информацию об ошибках 
    в постоянный выходной поток.
    Перенаправление выходных данных можно выполнить следующими способами.
        - Использование командлета Out-File, который передает 
          выходные данные команды в текстовый файл. Как правило, 
          командлет Out-File применяется, если необходимо использовать 
          его параметры, такие как Encoding, Force, Width и NoClobber.
        - Использование командлета Tee-Object, который выполняет передачу 
          выходных данных команды в текстовый файл с последующей передачей 
          этого файла по конвейеру.
        - Использование операторов перенаправления Windows PowerShell.
      Существуют следующие операторы перенаправления Windows PowerShell.
      Оператор  Описание                   Пример  
      --------  ----------------------     ------------------------------
      >         Передает выходные данные   get-process > process.txt
		в указанный файл.       
      >>        Добавляет выходные данные  dir *.ps1 >> scripts.txt 
		к содержимому указанного 
      		файла.    
      2>        Передает информацию об 	   get-process none 2> errors.txt
		ошибках в указанный файл.      
 
      2>>       Добавляет информацию об    get-process none 2>> save-errors.txt
		ошибках к содержимому 
      		указанного файла.      
 
      2>&1      Передает информацию об 	   get-process none, powershell 2>&1
		ошибках в выходной поток.      
        
    Операторы перенаправления используются со следующим синтаксисом:
       <входные_данные> <оператор> [<путь>\]
 
    Если указанный файл уже существует, операторы перенаправления, 
    которые не добавляют данные (> и 2>), перезаписывают текущее 
    содержимое файла без предупреждения. Однако если файл является 
    доступным только для чтения, скрытым, или системным файлом, 
    перенаправление выполнить не удастся. Операторы перенаправления 
    с добавлением (>> и 2>>) не записывают данные в файл, 
    доступный только для чтения, но добавляют содержимое в 
    системный или скрытый файл.
 
    Для принудительного перенаправления содержимого в доступный только для 
    чтения, скрытый или системный файл используйте командлет Out-File с 
    параметром Force. При записи данных в файлы операторы перенаправления 
    используют кодировку Юникод. Если файл имеет другую кодировку, 
    выходные данные могут быть представлены в неверном формате. Для 
    перенаправления содержимого в файлы, которые имеют кодировку, 
    отличную от Юникода, используйте командлет Out-File с параметром Encoding.
СМ. ТАКЖЕ
    Out-File
    Tee-Object
    about_Operators
    about_Command_Syntax
    about_Path_Syntax



about_Ref

РАЗДЕЛ
    about_Ref
КРАТКОЕ ОПИСАНИЕ
    Описывает порядок создания и использования типа ссылочной переменной.
ПОЛНОЕ ОПИСАНИЕ
    Тип ссылочной переменной можно использовать, чтобы разрешить 
    методу изменять значение переданной ему переменной. 
    Если с объектом связан тип [ref], он возвращает ссылку на этот 
    объект. Если в методе используется ссылка, метод может ссылаться на 
    переданный ему объект. Изменение объекта, выполненное внутри метода, 
    отображается как изменение значения переменной после возвращения 
    управления вызывающему методу. 
    При использовании ссылок переданный параметр должен представлять собой 
    ссылочную переменную. В противном случае возникает исключение 
    InvalidArgument.
    Параметры, использовавшиеся при вызове метода, должны иметь типы, 
    требуемые методом. 
    Примеры:
    
        PS> function swap([ref]$a,[ref]$b) 
        >> { 
        >>     $a.value,$b.value = $b.value,$a.value 
        >> }
        PS> $a = 1
        PS> $b = 10
        PS> $a,$b
        1
        10
        PS> swap ([ref]$a) ([ref]$b)
        PS> $a,$b
        10
        1
        PS C:\ps-test> function double
        >> {
        >>     param ([ref]$x) $x.value = $x.value * 2
        >> }
        PS C:> $number = 8
        PS C:> $number
        8
        PS C> double ([ref]$number)
        PS C> $number
        16
    
        Переменная должна быть переменной ссылочного типа.
        PS C:\ps-test> double $number
        double: Ссылочный тип ожидается в аргументе.
        В строке:1 знак:7
        + double < $number
    
 
СМ. ТАКЖЕ
    about_Variables
    about_Environment_Variables
    about_Functions
    about_Script_Blocks



about_regular_expressions

РАЗДЕЛ
    about_Regular_Expressions
КРАТКОЕ ОПИСАНИЕ
    Описание регулярных выражений в Windows PowerShell.
 
ПОЛНОЕ ОПИСАНИЕ
    Windows PowerShell поддерживает следующие знаки регулярных выражений.
        Формат      Логика                            	Пример
        ----------  --------------------------------    -----------------------
        значение    Точное соответствие со знаками 	"книга" -match "ни"
		    в любой части исходного значения.         
        .           Любой отдельный знак.    		"копия" -match "к..я"
        [значение]  Хотя бы один из знаков 		"жук" -match "ж[аоу]к"
		    в квадратных скобках.     
        [диапазон]  Хотя бы один из знаков в указанном 	"нос" -match "[к-н]ос"
		    диапазоне. С помощью дефиса (-) 
		    можно задать смежный знак.      
        [^]         Любые знаки, кроме указанных 	"бык" -match "[^грт]ык"
		    в квадратных скобках.   
         
        ^           Знаки в начале строки.          	"книга" -match "^кн"
        $           Знаки в конце строки.      		"книга" -match "га$"
        *           Любые совпадения с указанным 	"тонна" -match "н*"
		    символом.            
        ?           Одно совпадение с указанным 	"тонна" -match "н?"
		    символом.            
        \           Знак, указанный как escape-символ.  "Try$" -match "Try\$"
    Оболочка Windows PowerShell поддерживает классы символов, доступные 
    в регулярных выражениях Microsoft .NET Framework.
        Формат   Логика                            Пример
        -------- -------------------------------   -----------------------
        \p{имя}  Любой знак в именованном 	   "abcd defg" -match "\p{Ll}+"
		 классе символов {имя}. 
        	 Поддерживаемые имена: группы 
		 символов Юникода и блочные 
        	 диапазоны, такие как "Ll", "Nd", 
		 "Z", "IsGreek" и "IsBoxDrawing". 
 
        \P{имя}  Любой текст, не входящий в 	   1234 -match "\P{Ll}+"
		 группы или блочные диапазоны, 
        	 заданные классом {имя}.      
 
        \w       Любой знак, который может 	   "abcd defg" -match "\w+" 
		 входить в слово. Эквивалентно 	   (выбирается abcd)
        	 символьным категориям Юникода 
		 [\p{Ll}\p{Lu}\p{Lt}\p{Lo}\
		 p{Nd}\p{Pc}]. Если задано 
		 совместимое с ECMAScript 
		 поведение при помощи параметра 
		 ECMAScript, \w эквивалентно 
		 [a-zA-Z_0-9].       
 
        \W       Любой знак, который не может 	   "abcd defg" -match "\W+" 
		 входить в слово. Эквивалентно 	   (выбирается пробел)
        	 категориям Юникода [^\p{Ll}\p{Lu}\
		 p{Lt}\p{Lo}\p{Nd}\p{Pc}].   
 
        \s       Выбираются любые символы пробела. "abcd defg" -match "\s+"
		 Соответствует символьным 
		 категориям Юникода 
		 [\f\n\r\t\v\x85\p{Z}].         
 
        \S       Выбираются любые символы, 	   "abcd defg" -match "\S+"
		 кроме пробелов. Соответствует 
        	 символьным категориям Юникода 
		 [^\f\n\r\t\v\x85\p{Z}].      
 
        \d       Любая десятичная цифра. 	    12345 -match "\d+"
		 Соответствует классу \p{Nd} при 
        	 использовании Юникода и [0-9] 
		 в противном случае.       
 
        \D       Любой знак, кроме десятичных 	    "abcd" -match "\D+"
		 цифр. Соответствует 
        	 классу \P{Nd} при использовании 
		 Юникода и [^0-9] в противном 
        	 случае.           
    Windows PowerShell поддерживает кванторы, доступные в регулярных 
    выражениях .NET Framework. Ниже приведено несколько примеров 
    кванторов.
        Формат   Логика                            Пример
        -------- -------------------------------   -----------------------
        *        Указывает ноль или более 	   "abc" -match "\w*"
		 совпадений, например \w* 
                 или (abc)*. Эквивалентно {0,}.  
  
        +        Повторяющиеся экземпляры знаков,  "xyxyxy" -match "xy+"
		 указанных перед этим символом.   
        ?        Указывает ни одного или одно 	   "abc" -match "\w?"
		 совпадение, например \w?. или 
        	 (abc)?. Эквивалентно {0,1}.   
 
        {n}      Указывает ровно n совпадений, 	   "abc" -match "\w{2}"
		 например (пицца){2}.   
          
        {n,}     Указывает не менее n совпадений,  "abc" -match "\w{2,}"
		 например (abc){2,}. 
        
        {n,m}    Указывает не менее n и не 	   "abc" -match "\w{2,3}"
		 более m совпадений.     
    Все сравнения в примерах из приведенной выше таблицы дают 
    положительный результат.
    Обратите внимание, что для регулярных выражений используется 
    escape-символ обратная косая черта (\), отличный от используемого 
    в Windows PowerShell. В Windows PowerShell в качестве escape-символа 
    используется обратный апостроф (`) (код ASCII 96).
    Дополнительные сведения см. в разделе "Элементы языка регулярных 
    выражений" в библиотеке MSDN по адресу 
    http://go.microsoft.com/fwlink/?LinkId=133231. 
СМ. ТАКЖЕ  
    about_Comparison_Operators
    about_Operators



about_remote

РАЗДЕЛ
    about_Remote
КРАТКОЕ ОПИСАНИЕ
    Описывает, как выполнять удаленные команды в Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Удаленные команды можно выполнять на одном компьютере или на 
    нескольких компьютерах, используя временное или постоянное 
    подключение. Кроме того, можно создать интерактивный сеанс 
    с одним удаленным компьютером.
    
    В этом разделе представлен ряд примеров, демонстрирующих порядок 
    выполнения удаленных команд различных типов. После практического 
    ознакомления с этими базовыми командами прочитайте разделы 
    справки для каждого командлета, используемого в этих командах. 
    В этих разделах приводятся подробные сведения и объясняется порядок 
    изменения команд в соответствии с конкретными потребностями.
    Примечание. Для использования удаленного взаимодействия 
		Windows PowerShell локальный и удаленный компьютеры 
		должны быть настроены на удаленное взаимодействие. 
		Дополнительные сведения см. в разделе 
   		about_Remote_Requirements. 
          
 СОЗДАНИЕ ИНТЕРАКТИВНОГО СЕАНСА (ENTER-PSSESSION)
     Самый простой способ выполнить удаленные команды - создать 
     интерактивный сеанс с удаленным компьютером. 
     После начала сеанса вводимые команды выполняются на удаленном 
     компьютере, как будто они вводятся непосредственно на нем. В каждом 
     интерактивном сеансе можно подключиться только к одному компьютеру. 
     Чтобы запустить интерактивный сеанс, используйте командлет 
     Enter-PSSession. Следующая команда начинает интерактивный сеанс 
     с компьютером Server01:
	enter-pssession server01
     Командная строка изменяется, чтобы указать, что установлено 
     подключение к компьютеру Server01.
	Server01\PS> 
     Теперь можно вводить команды на компьютере Server01. 
     Чтобы завершить интерактивный сеанс, введите следующую команду:
	exit-pssession
     Дополнительные сведения см. в описании командлета Enter-PSSession.
      
 ИСПОЛЬЗОВАНИЕ КОМАНДЛЕТОВ С ПАРАМЕТРОМ COMPUTERNAME ДЛЯ ПОЛУЧЕНИЯ 
 УДАЛЕННЫХ ДАННЫХ
    Некоторые командлеты имеют параметр ComputerName, который 
    позволяет получать объекты удаленных компьютеров. 
    Поскольку эти командлеты не используют для связи удаленное 
    взаимодействие Windows PowerShell на основе WS-Management, можно 
    применять их параметр ComputerName на любом компьютере с запущенной оболочк
ой Windows 
    PowerShell.
    Компьютеры не обязательно должны быть настроены на удаленное 
    взаимодействие Windows PowerShell и не обязательно должны 
    соответствовать системным требованиям для удаленного взаимодействия. 
    Параметр ComputerName предусмотрен в следующих командлетах.
 
        Clear-EventLog    Limit-EventLog
        Get-Counter       New-EventLog
        Get-EventLog      Remove-EventLog
        Get-HotFix        Restart-Computer
        Get-Process       Show-EventLog
        Get-Service       Show-Service
        Get-WinEvent      Stop-Computer
        Get-WmiObject     Write-EventLog
  
    Например, следующая команда получает службы на удаленном 
    компьютере Server01:
	get-service -computername server01
    Обычно командлеты, поддерживающие удаленную работу без специальной 
    настройки, имеют параметр ComputerName и не имеют параметра Session. 
    Чтобы найти эти командлеты в текущем сеансе, введите команду:
	get-command | where { $_.parameters.keys -contains "ComputerName" -and $_.para
meters.keys -notcontains "Session"}
 ВЫПОЛНЕНИЕ УДАЛЕННОЙ КОМАНДЫ
    Для выполнения других команд на удаленных компьютерах используйте 
    командлет Invoke-Command.
    Для выполнения одной команды или нескольких несвязанных команд 
    используйте параметр ComputerName командлета Invoke-Command, 
    позволяющий указать удаленные компьютеры. Для указания команды 
    используйте параметр ScriptBlock.
    Например, следующая команда выполняет команду Get-Culture на удаленном 
    компьютере Server01.
	invoke-command -computername Server01 -scriptblock {get-culture}
    Параметр ComputerName предназначен для использования в случаях, когда 
    требуется выполнить одну команду или несколько несвязанных команд на 
    одном или нескольких компьютерах.
    Чтобы установить постоянное подключение к удаленному компьютеру 
    используйте параметр Session.
 
 СОЗДАНИЕ ПОСТОЯННОГО ПОДКЛЮЧЕНИЯ (PSSESSION)
    При использовании параметра ComputerName командлета 
    Invoke-Command оболочка Windows PowerShell устанавливает 
    подключение только для команды. После выполнения команды оболочка 
    закрывает подключение. Информация о всех переменных и функциях, 
    определенных в команде, теряется.
    Чтобы создать постоянное подключение к локальному или удаленному 
    компьютеру, используйте командлет New-PSSession. Например, 
    следующая команда создает сеансы PSSession на компьютерах 
    Server01 и Server02, а затем сохраняет эти сеансы в переменной $s.
	$s = new-pssession -computername Server01, Server02
 ВЫПОЛНЕНИЕ КОМАНД В СЕАНСЕ PSSESSION
  
    В сеансе PSSession можно выполнить несколько удаленных команд, 
    совместно использующих такие данные, как функции, псевдонимы и 
    значения переменных.
    Для выполнения команд в сеансе PSSession используйте параметр Session 
    командлета Invoke-Command. 
    Например, следующая команда использует командлет Invoke-Command 
    для выполнения команды Get-Process в сеансах PSSession на 
    компьютерах Server01 и Server02. Команда сохраняет процессы 
    в переменной $s в каждом сеансе PSSession.
        invoke-command -session $s -scriptblock {$p = get-process}
    Поскольку сеанс PSSession использует постоянное подключение, 
    в одном сеансе PSSession можно выполнить другую команду, 
    использующую переменную $p.
    Следующая команда подсчитывает количество процессов, сохраненных 
    в переменной $p.
        invoke-command -session $s -scriptblock {$p.count} 
 ВЫПОЛНЕНИЕ УДАЛЕННОЙ КОМАНДЫ НА НЕСКОЛЬКИХ КОМПЬЮТЕРАХ
    Чтобы выполнить удаленную команду на нескольких компьютерах, 
    введите имена всех компьютеров в качестве значения параметра 
    ComputerName командлета Invoke-Command. Разделяйте имена запятыми.
    Например, следующая команда выполняет команду Get-Culture на трех 
    компьютерах:
	invoke-command -computername S1, S2, S3 -scriptblock {get-culture}
    Кроме того, можно выполнить команду в нескольких сеансах 
    PSSession. Следующие команды создают сеансы PSSession на 
    компьютерах Server01, Server02 и Server03, а затем выполняют 
    команду Get-Culture в каждом сеансе PSSession.
        $s = new-pssession -computername S1, S2, S3 invoke-command 
        -session $s -scriptblock {get-culture}
    Чтобы включить локальный компьютер в список компьютеров, введите имя 
    локального компьютера, точку (.) или "localhost". 
	invoke-command -computername S1, S2, S3, localhost -scriptblock {get-culture}
 ВЫПОЛНЕНИЕ СКРИПТА НА УДАЛЕННЫХ КОМПЬЮТЕРАХ
    Чтобы выполнить скрипт на удаленных компьютерах, используйте 
    параметр FilePath командлета Invoke-Command.
    Например, следующая команда выполняет скрипт Sample.ps1 на 
    компьютерах S1 и S2:
        invoke-command -computername S1, S2 -filepath C:\Test\Sample.ps1
    Результаты выполнения скрипта возвращаются на локальный 
    компьютер. Копировать какие-либо файлы не требуется.
  
 ПРЕРЫВАНИЕ ВЫПОЛНЕНИЯ УДАЛЕННОЙ КОМАНДЫ
   Чтобы прервать выполнение команды, нажмите сочетание клавиш 
   CTRL+C. Запрос прерывания передается на удаленный компьютер 
   и завершает работу команды.
ДОПОЛНИТЕЛЬНЫЕ СВЕДЕНИЯ
    -- Сведения о системных требованиях для удаленного взаимодействия 
       см. в разделе about_Remote_Requirements.
    -- Справочные сведения о форматировании выходных данных на удаленном 
       компьютере см. в разделе about_Remote_Output.
    -- Сведения о принципах работы удаленного взаимодействия, управлении 
       удаленными данными, специальных конфигурациях и проблемах 
       безопасности, а также ответы на другие часто задаваемые вопросы см. 
       в разделе about_Remote_FAQ.
    -- Справочные сведения об устранении неполадок удаленного 
       взаимодействия см. в разделе about_Remote_Troubleshooting.
    -- Сведения о сеансах PSSession и постоянных подключениях см. 
       в разделе about_PSSessions.
    -- Сведения о фоновых заданиях Windows PowerShell см в разделе 
       about_Jobs.
КЛЮЧЕВЫЕ СЛОВА
    about_Remoting
СМ. ТАКЖЕ
    about_PSSessions
    about_Remote_Requirements
    about_Remote_FAQ
    about_Remote_TroubleShooting
    Enter-PSSession
    Invoke-Command
    New-PSSession



about_remote_FAQ

РАЗДЕЛ
    about_Remote_FAQ
КРАТКОЕ ОПИСАНИЕ
    Содержит вопросы о выполнении удаленных команд в Windows 
    PowerShell и ответы на них.
ПОЛНОЕ ОПИСАНИЕ
   При удаленной работе команды вводятся в Windows PowerShell на 
   одном компьютере (который называется "локальным компьютером"), 
   но выполняются на другом компьютере (который называется "удаленным 
   компьютером). Удаленная работа должна быть максимально похожа на 
   непосредственную работу на удаленном компьютере.
    Примечание. Для использования удаленного взаимодействия Windows 
    		PowerShell удаленный компьютер должен быть настроен 
		на удаленное взаимодействие. Дополнительные сведения 
		см. в разделе about_Remote_Requirements. 
          
 ДОЛЖНА ЛИ ОБОЛОЧКА WINDOWS POWERSHELL БЫТЬ УСТАНОВЛЕНА НА ОБОИХ 
 КОМПЬЮТЕРАХ?
   Да. Для удаленной работы на локальном и удаленном компьютерах 
   должны быть установлены следующие компоненты: Windows PowerShell, 
   Microsoft .NET Framework 2.0 и протокол WS-Management. Все файлы 
   и другие ресурсы, необходимые для выполнения конкретной команды, 
   должны находиться на удаленном компьютере.
   Пользователю необходимо располагать разрешением на подключение 
   к удаленному компьютеру, разрешением на запуск Windows PowerShell, 
   а также разрешением на доступ к хранилищам данных (таким как файлы 
   и папки) и реестру на удаленном компьютере.
   Дополнительные сведения см. в разделе about_Remote_Requirements.  
 КАК РАБОТАЕТ УДАЛЕННОЕ ВЗАИМДЕЙСТВИЕ?
   При запуске удаленная команда передается по сети обработчику 
   Windows PowerShell на удаленном компьютере и запускает клиент 
   Windows PowerShell на удаленном компьютере.
   Результаты выполнения команды передаются обратно на локальный 
   компьютер и отображаются в сеансе Windows PowerShell на локальном 
   компьютере.
   Для передачи команд и получения выходных данных Windows PowerShell 
   использует протокол WS-Management. Дополнительные сведения об этом 
   протоколе см. в разделе "Протокол WS-Management" библиотеки MSDN 
   по адресу http://go.microsoft.com/fwlink/?LinkId=144634.  
 ЯВЛЯЕТСЯ ЛИ УДАЛЕННОЕ ВЗАИМОДЕЙСТВИЕ WINDOWS POWERSHELL БЕЗОПАСНЫМ?
    При подключении к удаленному компьютеру система использует 
    учетные данные (имя пользователя и пароль) на локальном 
    компьютере или учетные данные, переданные в команде, для входа 
    в систему на удаленном компьютере. Учетные данные и остальные 
    передаваемые данные шифруются. 
    Для дополнительной защиты можно настроить удаленный компьютер 
    на использование протокола SSL вместо протокола HTTP, чтобы 
    прослушивать запросы удаленного управления Windows (WinRM). 
    После этого пользователи смогут использовать параметры UseSSL 
    командлетов Invoke-Command, New-PSSession и Enter-PSSession при 
    установлении подключения. Этот параметр позволяет использовать 
    HTTPS-канал, который является более защищенным по сравнению с 
    HTTP-каналом.
 УДАЛЕННОЕ ВЗАИМОДЕЙСТВИЕ WINDOWS POWERSHELL ТРЕБУЕТСЯ ДЛЯ ВСЕХ КОМАНД?
   Нет. Некоторые командлеты имеют параметр ComputerName, который 
   позволяет получать объекты удаленного компьютера. 
   Эти командлеты не используют удаленное взаимодействие Windows 
   PowerShell. Таким образом, их можно использовать на любом 
   компьютере с запущенной оболочкой Windows PowerShell, даже если 
   компьютер не настроен на удаленное взаимодействие Windows 
   PowerShell или не соответствует требованиям для удаленного 
   взаимодействия Windows PowerShell.
   К таким командлетам относятся следующие:
       Get-Process
       Get-Service
       Get-WinEvent
       Get-EventLog
       Get-WmiObject
       Test-Connection
   Чтобы найти все командлеты с параметром ComputerName, введите 
   следующую команду:
        get-help * -parameter ComputerName
   
   Чтобы определить, требуется ли для параметра ComputerName 
   конкретного командлета удаленное взаимодействие Windows 
   PowerShell, см. описание параметра. Для отображения описания 
   параметра введите следующую команду:
	get-help <имя_командлета> -parameter ComputerName
   Пример:
        get-help get-process -parameter Computername
   Для всех остальных команд используйте командлет Invoke-Command.
 КАК ВЫПОЛНИТЬ КОМАНДУ НА УДАЛЕННОМ КОМПЬЮТЕРЕ?
   Чтобы выполнить команду на удаленном компьютере, используйте 
   командлет Invoke-Command.
   Чтобы представить команду в виде блока скрипта, заключите ее в 
   фигурные скобки ( {} ). Для указания команды используйте параметр 
   ScriptBlock командлета Invoke-Command.
   Параметр ComputerName командлета Invoke-Command можно использовать 
   для указания удаленного компьютера. Кроме того, можно создать 
   постоянное подключение к удаленному компьютеру (сеанс) и 
   использовать параметр Session командлета Invoke-Command для 
   выполнения команды в сеансе. 
   Например, следующие команды позволяют удаленно выполнить команду 
   Get-Process.
      invoke-command -computername Server01, Server02 -scriptblock 
      {get-process}
        - ИЛИ -
      invoke-command -session $s -scriptblock {get-process}
   Чтобы прервать выполнение удаленной команды, нажмите сочетание 
   клавиш CTRL+C. Запрос прерывания передается на удаленный компьютер 
   и завершает работу команды.
   Дополнительные сведения об удаленных командах см. в разделе 
   about_Remote и разделах справки для командлетов, поддерживающих 
   удаленное взаимодействие. 
 МОЖНО ЛИ ДЛЯ ДОСТУПА К УДАЛЕННОМУ КОМПЬЮТЕРУ ИСПОЛЬЗОВАТЬ ПРОТОКОЛ, 
 ПОДОБНЫЙ TELNET?
    Чтобы начать интерактивный сеанс с удаленным компьютером, можно 
    использовать командлет Enter-PSSession.
    В командной строке Windows PowerShell введите следующую команду:
	Enter-PSSession <имя_компьютера>
    Командная строка изменяется, чтобы указать, что установлено 
    подключение к удаленному компьютеру.
        <имя_компьютера>\C:> 
    Теперь вводимые команды выполняются на удаленном компьютере, как 
    будто они вводятся непосредственно на нем.
    Чтобы завершить интерактивный сеанс, введите следующую команду:
        Exit-PSSession
    Интерактивный сеанс - это постоянный сеанс, использующий протокол 
    WS-Management. Последний отличается от протокола Telnet, но 
    предоставляет аналогичную функциональность.
    Дополнительные сведения см. в описании командлета Enter-PSSession.
 МОЖНО ЛИ СОЗДАТЬ ПОСТОЯННОЕ ПОДКЛЮЧЕНИЕ? 
    Да. Удаленные команды можно выполнять, указывая имя удаленного 
    компьютера, его имя NetBIOS или его IP-адрес. Кроме того, 
    удаленные команды можно выполнять, указывая сеанс Windows 
    PowerShell (PSSession), подключенный к удаленному компьютеру.
    
    При использовании параметра ComputerName командлета 
    Invoke-Command или Enter-PSSession оболочка Windows PowerShell 
    устанавливает временное подключение. Windows PowerShell 
    использует это подключение только для выполнения текущей команды, 
    а затем закрывает его. Это очень эффективный способ выполнения 
    одной команды или нескольких несвязанных команд даже на большом 
    количестве удаленных компьютеров.
    При использовании командлета New-PSSession для создания сеанса 
    PSSession оболочка Windows PowerShell устанавливает постоянное 
    подключение для сеанса PSSession. После этого в сеансе PSSession 
    можно выполнить несколько команд, включая команды, которые 
    совместно используют данные.
    Как правило, сеанс PSSession создают для выполнения 
    последовательности связанных команд, которые совместно используют 
    данные. В других случаях для большинства команд достаточно 
    создать временное подключение с помощью параметра ComputerName. 
    Дополнительные сведения о сеансах см. в разделе about_PSSessions.
 МОЖНО ЛИ ВЫПОЛНЯТЬ КОМАНДЫ ОДНОВРЕМЕННО НА НЕСКОЛЬКИХ КОМПЬЮТЕРАХ?
   Да. Параметр ComputerName командлета Invoke-Command принимает 
   несколько имен компьютеров, а параметр Session - несколько сеансов 
   PSSession. 
   При запуске команды Invoke-Command оболочка Windows PowerShell 
   выполняет команды на всех указанных компьютерах или во всех 
   указанных сеансах PSSession.
   Windows PowerShell может одновременно управлять сотнями удаленных 
   подключений. Однако количество удаленных команд, которые можно 
   передать, может ограничиваться ресурсами локального компьютера 
   и его возможностью устанавливать и поддерживать несколько сетевых 
   подключений. 
   Дополнительные сведения см. в примере в разделе справки для 
   командлета Invoke-Command.
 ГДЕ ХРАНЯТСЯ МОИ ПРОФИЛИ?
    Профили Windows PowerShell не запускаются автоматически в 
    удаленных сеансах, поэтому команды, добавляемые профилем, 
    отсутствуют в сеансе. Кроме того, автоматическая переменная 
    $profile не заполняется в удаленных сеансах.  
    Чтобы запустить профиль в сеансе, используйте командлет 
    Invoke-Command.
    Например, следующая команда запускает профиль CurrentUserCurrentHo
    st с локального компьютера в сеансе в $s. 
        invoke-command -session $s -filepath $profile
    Следующая команда запускает профиль CurrentUserCurrentHost с 
    удаленного компьютера в сеансе в $s. Так как переменная $profile 
    не заполнена, команда использует явный путь к профилю.
        invoke-command -session $s {. "$home\Documents\WindowsPowerShell\Micros
oft.PowerShell_profile.ps1"}
    После выполнения этой команды все команды, добавляемые профилем 
    в сеанс, доступны в $s.
    Кроме того, можно использовать скрипт запуска в конфигурации 
    сеанса для запуска профиля в каждом удаленном сеансе, который 
    использует эту конфигурацию сеанса.
    Дополнительные сведения о профилях Windows PowerShell см в 
    разделе about_Profiles. Дополнительные сведения о конфигурациях 
    сеансов см. в разделе Register-PSSessionConfiguration.
 КАК РАБОТАЕТ ФУНКЦИЯ РЕГУЛИРОВАНИЯ ДЛЯ УДАЛЕННЫХ КОМАНД?
   Для упрощения управления ресурсами на локальном компьютере в 
   оболочке Windows PowerShell предусмотрена функция регулирования, 
   которая позволяет ограничить количество одновременных удаленных 
   подключений, устанавливаемых для каждой команды. 
   Количество одновременных подключений по умолчанию составляет 32, 
   однако с помощью параметров ThrottleLimit для конкретных команд 
   можно задать пользовательский предел регулирования. 
   При использовании функции регулирования следует помнить, что она 
   применяется к каждой команде, а не ко всему сеансу или компьютеру. 
   При одновременном выполнении команд в нескольких обычных сеансах 
   или сеансах PSSession количество одновременных подключений 
   определяется как сумма одновременных подключений во всех сеансах.
   Чтобы найти командлеты с параметром ThrottleLimit, введите 
   следующую команду:
	get-help * -parameter ThrottleLimit
 КАКИЕ ХАРАКТЕРНЫЕ ДЛЯ СИСТЕМЫ РАЗЛИЧИЯ СЛЕДУЕТ УЧИТЫВАТЬ ПРИ 
 УДАЛЕННОМ ВЗАИМОДЕЙСТВИИ?
   При выполнении команд на нескольких компьютерах следует учитывать 
   различия в операционных системах, структуре файловой системы и реестре.
   При подключении к удаленному компьютеру под управлением Windows 
   Vista или Windows Server 2003 начальным местоположением по 
   умолчанию является домашний каталог текущего пользователя, который 
   хранится в переменной среды %homepath% ($env:homepath) и 
   переменной Windows PowerShell $home. В Windows Vista домашним 
   каталогом, как правило, является C:\Users\<имя_пользователя>. 
   В Windows Server 2003 домашним каталогом, как правило, является 
   C:\Documents and Settings\<имя_пользователя>.
   При подключении к удаленному компьютеру под управлением Windows XP 
   начальным местоположением по умолчанию является домашний каталог 
   пользователя по умолчанию, который хранится в переменной среды 
   %homepath% ($env:homepath) для пользователя по умолчанию. Домашним 
   каталогом, как правило, является C:\Documents and Setting\Default User.
 ОТЛИЧАЮТСЯ ЛИ ВЫХОДНЫЕ ДАННЫЕ УДАЛЕННЫХ КОМАНД ОТ ЛОКАЛЬНЫХ ВЫХОДНЫХ 
 ДАННЫХ?
   
   При локальном использовании Windows PowerShell пользователь 
   передает и получает "активные" объекты .NET Framework; "активные" 
   объекты - это объекты, связанные с фактическими программами или 
   системными компонентами. При вызове методов или изменении свойств 
   активных объектов изменения воздействуют на фактическую программу 
   или компонент. Если изменяются свойства программы или компонента, 
   свойства представляющих их объектов также изменяются. 
   Однако поскольку большинство активных объектов невозможно передать 
   по сети, Windows PowerShell "сериализует" большинство объектов, 
   передаваемых в удаленных командах, т. е. выполняет преобразование 
   каждого объекта в набор XML-элементов для передачи. 
   Когда оболочка Windows PowerShell получает сериализованный объект, 
   она преобразует XML-данные в десериализованный объект. 
   Десериализованный объект представляет собой запись свойств 
   программы или компонента, являющуюся точной для момента времени, 
   предшествующего текущему, но эта запись не является "активной", 
   т. е. она больше не связана с компонентом. Методы удаляются, 
   поскольку они больше не являются действенными.
   Как правило, десериализованные объекты можно использовать так же, 
   как активные, но при этом необходимо помнить об их ограничениях. 
   Кроме того, объекты, возвращаемые командлетом Invoke-Command, 
   имеют дополнительные свойства, которые позволяют определить 
   происхождение команды. 
   Некоторые объекты, такие как DirectoryInfo и GUID, при получении 
   преобразуются обратно в активные объекты. Для этих объектов не 
   требуется какая-либо специальная обработка или форматирование.  
   Дополнительные сведения об интерпретации и форматировании выходных 
   данных удаленных команд см. в разделе about_Remote_Output.
 МОЖНО ЛИ УДАЛЕННО ВЫПОЛНЯТЬ ФОНОВЫЕ ЗАДАНИЯ?
   Да. Фоновое задание Windows PowerShell - это команда Windows 
   PowerShell, которая выполняется асинхронно без взаимодействия 
   с сеансом. При запуске фонового задания командная строка 
   отображается мгновенно, что позволяет продолжить работу в сеансе 
   во время выполнения фонового задания, даже если для его завершения 
   требуется длительное время.
   
   Фоновое задание можно запустить даже во время выполнения других 
   команд, поскольку оно всегда выполняется асинхронно во временном 
   сеансе.
   Выполнять фоновые задания можно как на локальном, так и на 
   удаленном компьютере. По умолчанию фоновое задание выполняется на 
   локальном компьютере. Однако можно использовать параметр AsJob 
   командлета Invoke-Command для выполнения любой удаленной команды 
   в качестве фонового задания. Кроме того, командлет Invoke-Command 
   можно использовать для удаленного выполнения команды Start-Job.  
   Дополнительные сведения о фоновых заданиях в Windows PowerShell 
   см. в разделах "about_Jobs" и "about_Remote_Jobs". 
 МОЖНО ЛИ ЗАПУСКАТЬ ПРОГРАММЫ WINDOWS НА УДАЛЕННОМ КОМПЬЮТЕРЕ?
 
    Удаленные команды Windows PowerShell можно использовать для 
    запуска программ Windows на удаленных компьютерах. Например, 
    можно запустить программу Shutdown.exe или Ipconfig на удаленном 
    компьютере. 
    Однако команды Windows PowerShell нельзя использовать, чтобы 
    открыть пользовательский интерфейс для какой-либо программы на 
    удаленном компьютере. 
    При запуске программы Windows на удаленном компьютере команда не 
    завершается и командная строка не отображается, пока программа не 
    завершится или не будет прервана пользователем с помощью 
    сочетания клавиш CTRL+C. Например, после запуска программы 
    IpConfig на удаленном компьютере командная строка отображается 
    только после завершения работы IpConfig.
 
    При использовании удаленных команд для запуска программы с 
    пользовательским интерфейсом процесс программы запускается, 
    но пользовательский интерфейс не отображается. Команда Windows 
    PowerShell не завершается и командная строка не отображается, 
    пока процесс программы не будет остановлен или не будет прерван 
    пользователем с помощью сочетания клавиш CTRL+C.
 
    Например, при использовании команды Windows PowerShell для 
    запуска программы "Блокнот" на удаленном компьютере процесс 
    Notepad запускается на удаленном компьютере, но пользовательский 
    интерфейс программы не отображается. Для прерывания команды и 
    отображения командной строки нажмите сочетание клавиш CTRL+C.
 
 МОЖНО ЛИ ОГРАНИЧИТЬ НАБОР КОМАНД, КОТОРЫЕ ПОЛЬЗОВАТЕЛИ МОГУТ 
 ВЫПОЛНЯТЬ НА МОЕМ КОМПЬЮТЕРЕ?
    Да. Каждый удаленный сеанс должен использовать одну из 
    конфигураций сеанса на удаленном компьютере. Можно управлять 
    конфигурациями сеансов (и разрешениями на использование этих 
    конфигураций) на своем компьютере для определения пользователей, 
    которые могут выполнять на нем удаленные команды, а также набора 
    доступных для выполнения команд.
    Конфигурация сеанса используется для настройки среды для сеанса.
    Конфигурацию можно определить с помощью сборки, реализующей новый 
    класс конфигурации, или скрипта, выполняющегося в сеансе.
    Конфигурация может определять команды, доступные в сеансе. Кроме 
    того, конфигурация может включать параметры для защиты 
    компьютера, например параметры, ограничивающие объем данных, 
    принимаемых сеансом удаленно в одном объекте или команде. Также 
    можно задать дескриптор безопасности, определяющий разрешения, 
    необходимые для использования конфигурации.
    Командлет Enable-PSRemoting создает конфигурацию сеанса по 
    умолчанию на текущем компьютере, Microsoft.PowerShell (и 
    Microsoft.PowerShell32 в 64-разрядных операционных системах). 
    Командлет Enable-PSRemoting задает дескриптор безопасности для 
    конфигурации, позволяющий использовать ее только членам группы 
    "Администраторы" на текущем компьютере.
 
    Командлеты для работы с конфигурациями сеансов можно использовать 
    для изменения конфигураций сеансов по умолчанию, создания новых 
    конфигураций сеансов и изменения дескрипторов безопасности всех 
    конфигураций сеансов.
    При применении командлетов Invoke-Command, New-PSSession или 
    Enter-PSSession можно использовать параметр ConfigurationName, 
    чтобы указать конфигурацию сеанса для данного сеанса. Кроме того, 
    можно изменить конфигурацию по умолчанию, используемую сеансами, 
    путем изменения значения привилегированной переменной 
    $PSSessionConfigurationName в сеансе. 
    Дополнительные сведения о конфигурациях сеансов см. в разделах 
    справки по командлетам для работы с конфигурациями сеансов. Чтобы 
    найти командлеты для работы с конфигурациями сеансов, введите 
    следующую команду:
	get-command *pssessionconfiguration
   
 ЧТО ПРЕДСТАВЛЯЮТ СОБОЙ КОНФИГУРАЦИИ СХОЖДЕНИЯ И РАЗВЕТВЛЕНИЯ?
	
   В наиболее распространенном сценарии удаленного взаимодействия 
   Windows PowerShell, включающем несколько компьютеров, используется 
   конфигурация "один ко многим", в которой один локальный компьютер 
   (компьютер администратора) выполняет команды Windows PowerShell на 
   нескольких удаленных компьютерах. Такая конфигурация называется 
   конфигурацией "разветвления". 
   Однако в некоторых компаниях используется конфигурация "многие к 
   одному", в которой несколько клиентских компьютеров подключаются 
   к одному удаленному компьютеру (например, файловому серверу или 
   киоску) с запущенной оболочкой Windows PowerShell.
   Такая конфигурация называется конфигурацией "схождения".
   Удаленное взаимодействие Windows PowerShell поддерживает как 
   конфигурации разветвления, так и конфигурации схождения. 
   В случае конфигурации разветвления Windows PowerShell использует 
   протокол WS-Management и службу WinRM, поддерживающую выполненную 
   Майкрософт реализацию протокола WS-Management. При подключении 
   локального компьютера к удаленному компьютеру протокол 
   WS-Management устанавливает соединение и использует подключаемый 
   модуль для Windows PowerShell, чтобы запустить хост-процесс 
   Windows PowerShell (Wsmprovhost.exe) на удаленном компьютере. 
   Пользователь может задать альтернативный порт, альтернативную 
   конфигурацию сеанса и другие функции для настройки удаленного 
   подключения.  
   С целью поддержки конфигурации "схождения" Windows PowerShell 
   использует службы IIS для размещения WS-Management, загрузки 
   подключаемого модуля Windows PowerShell и запуска Windows 
   PowerShell. В этом сценарии вместо запуска каждого сеанса Windows 
   PowerShell в отдельном процессе все сеансы Windows PowerShell 
   выполняются в одном хост-процессе. 
   IIS-размещение и удаленное управление в конфигурации схождения не 
   поддерживается в Windows XP и Windows Server 2003.
   В конфигурации схождения пользователь может указать URI 
   подключения и конечную точку HTTP, включая транспорт, имя 
   компьютера, порт и имя приложения. Службы IIS перенаправляют все 
   запросы с указанным именем приложения соответствующему приложению. 
   По умолчанию используется протокол WS-Management, который может 
   размещать Windows PowerShell.
   Кроме того, можно указать механизм проверки подлинности и 
   запретить или разрешить перенаправление из конечных точек HTTP 
   и HTTPS. 
      
 МОЖНО ЛИ ПРОТЕСТИРОВАТЬ УДАЛЕННОЕ ВЗАИМОДЕЙСТВИЕ НА ОДНОМ КОМПЬЮТЕРЕ 
 (НЕ В ДОМЕНЕ)?
    Да. Удаленное взаимодействие Windows PowerShell доступно, даже 
    если компьютер не входит в домен. Функции удаленного 
    взаимодействия можно использовать для подключения к сеансам и 
    создания сеансов на одном и том же компьютере. Функции работают 
    так же, как при подключении к удаленному компьютеру.
    Для выполнения удаленных команд на компьютере в рабочей группе 
    измените следующие параметры Windows на компьютере.
    Внимание Эти параметры воздействуют на всех пользователей 
    	      системы и могут сделать ее более уязвимой к атакам злоумышленников. 
    	      Будьте осмотрительны при изменении этих параметров.
    --  Windows XP с пакетом обновления 2 (SP2): 
        Используйте локальные параметры безопасности (Secpol.msc) для 
        изменения значения политики "Сетевой доступ: модель 
        совместного доступа и безопасности для локальных учетных 
        записей" в Security Settings\Local Policies\Security Options 
        на "Классическая".
    --  Windows Vista: 
        Создайте следующую запись реестра и задайте для нее значение 1:
        LocalAccountTokenFilterPolicy в 
        HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
        Для добавления этой записи можно использовать следующую 
        команду Windows PowerShell:
        new-itemproperty `
        -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System `
 
        -name LocalAccountTokenFilterPolicy -propertyType DWord -value 1
    --  Windows°2003: 
        Выполнять изменения не требуется, поскольку для политики 
        "Сетевой доступ: модель совместного доступа и безопасности 
        для локальных учетных записей" задано значение "Классическая".
        Проверьте значение, чтобы убедиться, что оно не изменялось.
 МОЖНО ЛИ ВЫПОЛНЯТЬ УДАЛЕННЫЕ КОМАНДЫ НА КОМПЬЮТЕРЕ В ДРУГОМ ДОМЕНЕ?
    Да. Как правило, команды выполняются без ошибок, хотя может 
    потребоваться использовать параметр Credential командлетов 
    Invoke-Command, New-PSSession или Enter-PSSession для 
    предоставления учетных данных члена группы "Администраторы" на 
    удаленном компьютере. Иногда это требуется, даже если текущий 
    пользователь является членом группы "Администраторы" на локальном 
    и удаленном компьютерах. 
    Однако если удаленный компьютер не входит в домен, которому 
    доверяет локальный компьютер, удаленный компьютер может оказаться 
    неспособным выполнить проверку подлинности учетных данных 
    пользователя.
    Чтобы включить проверку подлинности, используйте следующую 
    команду для добавления удаленного компьютера в список доверенных 
    узлов локального компьютера в WinRM.
    Введите команду в командной строке Windows PowerShell.
        set-item WSMan:\localhost\Client\TrustedHosts -value <имя_удаленного_ко
мпьютера> 
    Например, чтобы добавить компьютер Server01 в список доверенных 
    узлов на локальном компьютере, введите следующую команду в 
    командной строке Windows PowerShell:
        set-item WSMan:\localhost\Client\TrustedHosts -value Server01
СМ. ТАКЖЕ
    about_Remote
    about_Profiles
    about_PSSessions
    about_Remote_Jobs
    Invoke-Command
    New-PSSession



about_remote_jobs

РАЗДЕЛ
    about_Remote_Jobs
КРАТКОЕ ОПИСАНИЕ
    Описывает, как выполнять фоновые задания на удаленных компьютерах.
ПОДРОБНОЕ ОПИСАНИЕ
    Фоновое задание - это команда, которая выполняется асинхронно без 
    взаимодействия с текущим сеансом. Командная строка отображается 
    мгновенно, что позволяет продолжать работу в сеансе во время 
    выполнения задания.
    По умолчанию фоновые задания выполняются на локальном компьютере. 
    Однако можно использовать несколько различных процедур для 
    выполнения фоновых заданий на удаленных компьютерах. 
    В этом разделе описано, как выполнить фоновое задание на 
    удаленном компьютере. Дополнительные сведения о запуске фоновых 
    заданий на локальном компьютере см. в разделе about_Jobs. 
    Дополнительные сведения о фоновых заданиях см. в разделе 
    about_Job_Details.
 УДАЛЕННЫЕ ФОНОВЫЕ ЗАДАНИЯ
    Фоновые задания можно выполнять на удаленных компьютерах тремя 
    различными способами. 
    -- Создание интерактивного сеанса с удаленным компьютером и 
       запуск задания в этом сеансе. Процедуры аналогичны выполнению 
       локального задания, хотя все действия выполняются на удаленном 
       компьютере.
    -- Выполнение фонового задания на удаленном компьютере, который 
       возвращает результаты на локальный компьютер. Используйте этот 
       способ при необходимости сбора результатов выполнения фоновых 
       заданий и сохранения их в центральном местоположении на 
       локальном компьютере.
    -- Выполнение фонового задания на удаленном компьютере с 
       сохранением на нем результатов. Используйте этот способ, 
       если требуется более надежное хранение данных задания на 
       компьютере, на котором они были получены.  
 ЗАПУСК ФОНОВОГО ЗАДАНИЯ В ИНТЕРАКТИВНОМ СЕАНСЕ
    Можно начать интерактивный сеанс с удаленным компьютером и 
    запустить фоновое задание в этом сеансе. Дополнительные сведения 
    об интерактивных сеансах см. в разделах about_Remote и 
    Enter-PSSession.
    Процедура запуска фонового задания в интерактивном сеансе 
    практически идентична процедуре запуска фонового задания на 
    локальном компьютере. Однако все операции выполняются на 
    удаленном, а не на локальном компьютере.
    ШАГ 1: ENTER-PSSESSION
    Используйте командлет Enter-PSSession, чтобы начать интерактивный 
    сеанс с удаленным компьютером. Можно использовать параметр 
    ComputerName командлета Enter-PSSession для установления 
    временного подключения к интерактивному сеансу. Или можно 
    использовать параметр Session для создания интерактивного сеанса 
    в сеансе Windows PowerShell (PSSession). 
    Следующая команда начинает интерактивный сеанс на компьютере Server01.
  
        C:\PS> Enter-PSSession -computername Server01
    Командная строка изменяется, чтобы указать, что установлено 
    подключение к компьютеру Server01.
        Server01\C:>
    ШАГ 2: START-JOB
    Используйте командлет Start-Job, чтобы запустить фоновое задание 
    в сеансе.
    Следующая команда запускает фоновое задание, которое получает 
    события в журнале событий Windows PowerShell на компьютере 
    Server01. Командлет Start-Job возвращает объект, представляющий 
    задание. 
    Эта команда сохраняет объект задания в переменной $job. 
        Server01\C:> $job = start-job -scriptblock {get-eventlog "Windows Power
Shell"}
   
    Во время выполнения задания можно использовать интерактивный 
    сеанс для выполнения других команд, включая другие фоновые 
    задания. Однако интерактивный сеанс должен оставаться открытым до 
    завершения фонового задания. В случае завершения сеанса задание 
    прерывается и результаты теряются.
    ШАГ 3: GET-JOB
    Чтобы проверить, выполнено ли задание, отобразите значение 
    переменной $job или используйте командлет Get-Job для получения 
    задания. В следующей команде используется командлет Get-Job для 
    отображения задания.
        Server01\C:> get-job $job
        SessionId  Name  State      HasMoreData  Location   Command
        ---------  ----  -----      -----------  --------   -------
        1          Job1  Complete   True         localhost  get-eventlog "Windo
ws PowerShell"
   
    Выходные данные командлета Get-Job показывают, что задание 
    выполняется на компьютере "localhost", поскольку задание было 
    запущено и выполняется на одном и том же компьютере (в данном 
    случае на компьютере Server01).
    
    ШАГ 4: RECEIVE-JOB
    Используйте командлет Receive-Job, чтобы получить результаты 
    выполнения задания. Результаты можно отобразить в интерактивном 
    сеансе или сохранить в файле на удаленном компьютере. Следующая 
    команда получает результат выполнения задания, сохраненного в 
    переменной $job. Оператор перенаправления (>) используется для 
    сохранения результатов выполнения задания в файле PsLog.txt на 
    компьютере Server01.
        Server01\C:> receive-job $job > c:\logs\PsLog.txt
    ШАГ 5: EXIT-PSSESSION
    Используйте командлет Exit-PSSession, чтобы завершить 
    интерактивный сеанс. Командная строка изменяется, чтобы указать, 
    что выполнен возврат к исходному сеансу на локальном компьютере.
        Server01\C:> Exit-PSSession
        C:\PS>
         
    ШАГ 6: INVOKE-COMMAND, GET-CONTENT
     
    Для просмотра содержимого файла PsLog.txt на компьютере Server01 
    в любое время начните другой интерактивный сеанс или выполните 
    удаленную команду. Команду этого типа лучше всего выполнять в 
    сеансе PSSession (постоянное подключение), если требуется 
    использовать несколько команд для просмотра данных в файле 
    PsLog.txt и управления ими. Дополнительные сведения о сеансах 
    PSSession см. в разделе about_PSSessions.
    В следующих командах используется командлет New-PSSession для 
    создания сеанса PSSession, который подключается к компьютеру 
    Server01, и командлет Invoke-Command для выполнения команды 
    Get-Content в сеансе PSSession с целью просмотра содержимого файла.
        C:\PS> $s = new-pssession -computername Server01
        C:\PS> invoke-command -session $s -scriptblock {get-content c:\logs\psl
og.txt}
       
 ЗАПУСК УДАЛЕННОГО ЗАДАНИЯ, ВОЗВРАЩАЮЩЕГО РЕЗУЛЬТАТЫ НА ЛОКАЛЬНЫЙ 
 КОМПЬЮТЕР (ASJOB)
    Чтобы запустить фоновое задание на удаленном компьютере, 
    возвращающем результаты выполнения команды на локальный 
    компьютер, используйте параметр AsJob какого-либо командлета, 
    например командлета Invoke-Command. 
    При использовании параметра AsJob объект задания создается на 
    локальном компьютере, даже если само задание выполняется на 
    удаленном компьютере. После завершения задания результаты 
    возвращаются на локальный компьютер. 
    Для управления каким-либо заданием, созданным любым командлетом, 
    можно использовать командлеты, в именах которых содержится 
    существительное Job (командлеты Job). Большое количество 
    командлетов, имеющих параметр AsJob, не использует удаленное 
    взаимодействие Windows PowerShell, поэтому эти командлеты можно 
    использовать даже на компьютерах, которые не настроены на 
    удаленное взаимодействие и не соответствуют требованиям для 
    удаленного взаимодействия Windows PowerShell.
 
    ШАГ 1: INVOKE-COMMAND -ASJOB
    В следующей команде с помощью параметра AsJob командлета 
    Invoke-Command запускается фоновое задание на компьютере 
    Server01. Задание выполняет команду Get-Eventlog, которая 
    получает события из журнала системных событий. Можно использовать 
    параметр JobName, чтобы назначить заданию отображаемое имя.
       invoke-command -computername Server01 -scriptblock {get-eventlog system}
 -asjob 
    Выходные данные должны выглядеть примерно следующим образом.
       SessionId   Name    State      HasMoreData     Location   Command
       ---------   ----    -----      -----------     --------   -------
       1           Job1    Running    True            Server01   get-eventlog s
ystem
    При использовании параметра AsJob командлет Invoke-Command 
    возвращает объект задания, который имеет такой же тип, что и тип 
    объекта задания, возвращаемого командлетом Start-Job. Объект 
    задания можно сохранить в переменной, или можно использовать 
    команду Get-Job для получения задания.
    Обратите внимание, что значение свойства Location указывает, 
    что задание выполнялось на компьютере Server01.  
    ШАГ 2: GET-JOB
    Для управления заданием, запущенным с помощью параметра AsJob 
    командлета Invoke-Command, используйте командлеты Job. Поскольку 
    объект, представляющий удаленное задание, находится на локальном 
    компьютере, выполнять удаленные команды для управления заданием 
    не требуется.  
    Чтобы определить, выполнено ли задание, используйте команду 
    Get-Job. Следующая команда получает все задания, запущенные 
    в текущем сеансе. 
        get-job
    Поскольку удаленное задание было запущено в текущем сеансе, 
    локальная команда Get-Job получает задание. Свойство State 
    объекта задания показывает, что команда выполнена успешно.
       
       SessionId   Name   State      HasMoreData     Location   Command
       ---------   ----   -----      -----------     --------   -------
       1           Job1   Completed  True            Server01   get-eventlog sy
stem
    ШАГ 3: RECEIVE-JOB
    Используйте командлет Receive-Job, чтобы получить результаты 
    выполнения задания. Поскольку результаты выполнения задания 
    автоматически возвращаются на компьютер, где находится объект 
    задания, их можно получить с помощью команды Receive-Job.
    В следующей команде используется командлет Receive-Job для 
    получения результатов выполнения задания. Для определения задания 
    используется идентификатор сеанса. Эта команда сохраняет 
    результаты выполнения задания в переменной $results. Кроме того, 
    результаты можно перенаправить в файл.
       $results = receive-job -id 1
    
 ЗАПУСК УДАЛЕННОГО ЗАДАНИЯ С СОХРАНЕНИЕМ РЕЗУЛЬТАТОВ НА УДАЛЕННОМ 
 КОМПЬЮТЕРЕ
    Чтобы запустить фоновое задание на удаленном компьютере с 
    сохранением на нем результатов выполнения команды, используйте 
    командлет Invoke-Command для выполнения команды Start-Job на 
    удаленном компьютере. Этот способ можно использовать для 
    выполнения фоновых заданий на нескольких компьютерах.
    При удаленном запуске команды Start-Job объект задания создается 
    на удаленном компьютере и результаты выполнения задания 
    сохраняются на удаленном компьютере.
    С точки зрения задания все операции являются локальными. 
    Пользователь просто выполняет команды удаленно для управления 
    локальным заданием на удаленном компьютере.
    ШАГ 1: INVOKE-COMMAND START-JOB
    Используйте командлет Invoke-Command, чтобы выполнить команду 
    Start-Job на удаленном компьютере. 
    Для этой команды требуется сеанс PSSession (постоянное 
    подключение). При использовании параметра ComputerName командлета 
    Invoke-Command для установления временного подключения команда 
    Invoke-Command считается выполненной, если объект задания 
    возвращен. В результате временное подключение закрывается 
    и задание отменяется.
 
    В следующей команде с помощью командлета New-PSSession создается 
    сеанс PSSession, подключенный к компьютеру Server01. Команда 
    сохраняет сеанс PSSession в переменной $s.
        $s = new-pssession -computername Server01
    В следующей команде с помощью командлета Invoke-Command 
    выполняется команда Start-Job в сеансе PSSession. Команды 
    Start-Job и Get-Eventlog заключаются в фигурные скобки.
       invoke-command -session $s -scriptblock {start-job -scriptblock {get-eve
ntlog system}}
    Выходные данные должны выглядеть примерно следующим образом.
       Id       Name    State      HasMoreData     Location   Command
       --       ----    -----      -----------     --------   -------
       2        Job2    Running    True            Localhost  get-eventlog syst
em
    При удаленном выполнении команды Start-Job командлет 
    Invoke-Command возвращает объект задания, который имеет такой 
    же тип, что и тип объекта задания, возвращаемого командлетом 
    Start-Job. Объект задания можно сохранить в переменной, или можно 
    использовать команду Get-Job для получения задания.
    Обратите внимание, что значение свойства Location указывает, что 
    задание выполнялось на локальном компьютере "LocalHost", несмотря 
    на то что в действительности оно выполнялось на компьютере 
    Server01. Поскольку объект задания создается на компьютере 
    Server01 и задание выполняется на этом же компьютере, оно 
    считается локальным фоновым заданием.  
    ШАГ 2: INVOKE-COMMAND GET-JOB
    Для управления удаленным фоновым заданием используйте командлеты 
    Job. Поскольку объект задания находится на удаленном компьютере, 
    необходимо выполнять удаленные команды для получения, остановки, 
    ожидания или извлечения результатов выполнения задания.  
    Чтобы определить, выполнено ли задание, используйте командлет 
    Invoke-Command для выполнения команды Get-Job в сеансе PSSession, 
    подключенном к компьютеру Server01.
        invoke-command -session $s -scriptblock {get-job}
    Команда возвращает объект задания. Свойство State объекта задания 
    показывает, что команда выполнена успешно. 
       SessionId       Name    State      HasMoreData     Location   Command
       ---------       ----    -----      -----------     --------   -------
       2               Job2    Completed  True            LocalHost  get-eventl
og system
    ШАГ 3: INVOKE-COMMAND RECEIVE-JOB
    Используйте командлет Invoke-Command для выполнения команды 
    Receive-Job в сеансе PSSession, подключенном к компьютеру 
    Server01, чтобы получить результаты выполнения задания.
    В следующей команде используется командлет Receive-Job для 
    получения результатов выполнения задания. Для определения задания 
    используется идентификатор сеанса. Эта команда сохраняет 
    результаты выполнения задания в переменной $results. Параметр 
    Keep командлета Receive-Job используется для сохранения 
    результата в кэше заданий на удаленном компьютере.
        $results = invoke-command -session $s -scriptblock {receive-job -sessio
nid 2 -keep}
    Кроме того, можно перенаправить результаты в файл на локальном 
    или удаленном компьютере. В следующей команде используется 
    оператор перенаправления для сохранения результатов в файле на 
    компьютере Server01.
        invoke-command -session $s -command {receive-job -sessionid 2 > c:\logs
\pslog.txt}
СМ. ТАКЖЕ
    about_Jobs
    about_Job_Details
    about_Remote
    Invoke-Command
    Start-Job
    Get-Job
    Wait-Job
    Stop-Job
    Remove-Job
    New-PSSession
    Enter-PSSession
    Exit-PSSession



about_remote_output

РАЗДЕЛ
    about_Remote_Output
КРАТКОЕ ОПИСАНИЕ
    Описывает, как интерпретировать и форматировать выходные данные 
    удаленных команд.
ПОЛНОЕ ОПИСАНИЕ
    Выходные данные команды, выполненной на удаленном компьютере, 
    могут выглядеть аналогично выходным данным той же команды, 
    выполненной на локальном компьютере, однако имеется несколько 
    существенных различий.
    В этом разделе описано, как интерпретировать, форматировать 
    и отображать выходные данные команд, выполняемых на удаленных 
    компьютерах.
                    
 ОТОБРАЖЕНИЕ ИМЕНИ КОМПЬЮТЕРА
    При использовании командлета Invoke-Command для выполнения 
    команды на удаленном компьютере команда возвращает объект, 
    включающий имя компьютера, который сформировал данные. Имя 
    удаленного компьютера хранится в свойстве PSComputerName.
    В случае многих команд свойство PSComputerName отображается 
    по умолчанию. Например, следующая команда выполняет команду 
    Get-Culture на двух удаленных компьютерах Server01 и Server02. 
    Представленные ниже выходные данные включают имена удаленных 
    компьютеров, на которых выполнялась команда.
        C:\PS> invoke-command -script {get-culture} -comp Server01, Server02
        LCID  Name    DisplayName                PSComputerName
        ----  ----    -----------                --------------
        1033  en-US   English (United States)    Server01
        1033  es-AR   Spanish (Argentina)        Server02
    
    Параметр HideComputerName командлета Invoke-Command можно 
    использовать для скрытия свойства PSComputerName. Этот параметр 
    предназначен для команд, собирающих данные только с одного 
    удаленного компьютера.
    Следующая команда выполняет команду Get-Culture на удаленном 
    компьютере Server01. Параметр HideComputerName используется 
    для скрытия свойства PSComputerName и связанных с ним свойств.
        C:\PS> invoke-command -scr {get-culture} -comp Server01 -HideComputerNa
me
        LCID             Name             DisplayName
        ----             ----             -----------
        1033             en-US            English (United States)
     Также можно отобразить свойство PSComputerName, если по 
     умолчанию оно не отображается. 
     Например, следующие командлеты с помощью командлета Format-Table 
     добавляют свойство PSComputerName в выходные данные удаленной 
     команды Get-Date.
        C:\PS> $dates = invoke-command -script {get-date} -computername Server0
1, Server02
        C:\PS> $dates | format-table DateTime, PSComputerName -auto
        DateTime                            	  PSComputerName
        --------                           	  --------------
        Понедельник, 21 июля 2008 г., 19:16:58    Server01
        Понедельник, 21 июля 2008 г., 19:16:58    Server02      
 ОТОБРАЖЕНИЕ СВОЙСТВА MACHINENAME
    Некоторые командлеты, включая Get-Process, Get-Service и 
    Get-EventLog, имеют параметр ComputerName, который позволяет 
    получать объекты на удаленном компьютере.
    Эти командлеты не используют удаленное взаимодействие Windows 
    PowerShell, поэтому их можно использовать даже на компьютерах, 
    которые не настроены на удаленное взаимодействие в Windows PowerShell.
    В объектах, возвращаемых этими командлетами, имя удаленного 
    компьютера хранится в свойстве MachineName. (Эти объекты не имеют 
    свойства PSComputerName.)
    Например, эта команда получает процесс PowerShell на удаленных 
    компьютерах Server01 и Server02. По умолчанию свойство 
    MachineName не отображается. 
        C:\PS> get-process powershell -computername server01, server02
        Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
        -------  ------    -----      ----- -----   ------     -- -----------
            920      38    97524     114504   575     9.66   2648 powershell
            194       6    24256      32384   142            3020 powershell
            352      27    63472      63520   577     3.84   4796 powershell
    Для отображения свойства MachineName объектов процессов можно 
    использовать командлет Format-Table. 
    Например, следующая команда сохраняет процессы в переменной $p и 
    использует оператор конвейера (|) для передачи сохраненных в ней 
    процессов командлету Format-Table. Параметр Property командлета 
    Format-Table используется для включения свойства MachineName в 
    набор отображаемых данных.
        C:\PS> $p = get-process powershell -comp Server01, Server02
        C:\PS> $P | format-table -property ID, ProcessName, MachineName -auto
        Id ProcessName MachineName
        -- ----------- -----------
        2648 powershell Server02
        3020 powershell Server01
        4796 powershell Server02
    
    Следующая более сложная команда добавляет свойство MachineName
    в используемый по умолчанию набор отображаемых данных о процессах. 
    Для задания вычисляемых свойств используются хэш-таблицы. 
    К счастью, нет необходимости понимать эту команду, чтобы 
    использовать ее. 
    (Обратите внимание, что обратный апостроф [`] является знаком 
    продолжения строки.)
      
        C:\PS> $p = get-process powershell -comp Server01, Server02
        C:\PS> $p | format-table -property Handles, `
                    @{Label="NPM(K)";Expression={[int]($_.NPM/1024)}}, ` 
                    @{Label="PM(K)";Expression={[int]($_.PM/1024)}}, ` 
                    @{Label="WS(K)";Expression={[int]($_.WS/1024)}}, ` 
                    @{Label="VM(M)";Expression={[int]($_.VM/1MB)}}, ` 
                    @{Label="CPU(s)";Expression={if ($_.CPU -ne $()){ $_.CPU.To
String("N")}}}, ` 
		    Id, ProcessName, MachineName -auto 
        Handles NPM(K) PM(K)  WS(K) VM(M) CPU(s)   Id ProcessName MachineName
        ------- ------ -----  ----- ----- ------   -- ----------- -----------
            920     38 97560 114532   576        2648 powershell  Server02     
            192      6 24132  32028   140        3020 powershell  Server01   
            438     26 48436  59132   565        4796 powershell  Server02   
 ДЕСЕРИАЛИЗОВАННЫЕ ОБЪЕКТЫ
    При выполнении удаленных команд, формирующих выходные данные, эти 
    данные передаются по сети обратно на локальный компьютер. 
    Большинство активных объектов Microsoft .NET Framework (таких как 
    объекты, возвращаемые командлетами Windows PowerShell) невозможно 
    передать по сети, поэтому активные объекты "сериализуются". 
    Другими словами, активные объекты преобразуются в XML-представлени
    я объектов и их свойств. После этого сериализованный объект на 
    основе XML передается по сети. 
    Оболочка Windows PowerShell на локальном компьютере принимает 
    сериализованный объект на основе XML и "десериализует" его путем 
    преобразования в стандартный объект .NET Framework.
    Однако десериализованный объект не является активным объектом. 
    Он представляет собой снимок объекта, созданный во время 
    сериализации, и включает свойства, но не методы. В Windows 
    PowerShell можно использовать эти объекты и управлять ими; 
    например, можно передавать эти объекты по конвейеру, отображать 
    выбранные свойства и форматировать их.
    Большинство десериализованных объектов автоматически 
    форматируется для отображения в виде записей в файле Types.ps1xml 
    или Format.ps1xml. Однако на локальном компьютере могут 
    отсутствовать файлы форматирования для всех десериализованных 
    объектов, которые были созданы на удаленном компьютере. Если 
    объекты не являются форматированными, все свойства каждого 
    объекта отображаются в консоли в потоковом списке. 
    Если объекты не форматируются автоматически, можно использовать 
    форматирующие командлеты, такие как Format-Table или Format-List, 
    для форматирования и отображения выбранных свойств. Или можно 
    использовать командлет Out-GridView для отображения объектов 
    в таблице.
    Кроме того, при выполнении команды на удаленном компьютере, 
    который использует командлеты, отсутствующие на локальном 
    компьютере, возвращаемые командой объекты могут быть 
    отформатированы неправильно из-за отсутствия файлов 
    форматирования для этих объектов на локальном компьютере. 
    Для получения данных форматирования с другого компьютера 
    используйте командлеты Get-FormatData и Export-FormatData. 
    Некоторые объекты, такие как DirectoryInfo и GUID, при получении 
    преобразуются обратно в активные объекты. Для этих объектов не 
    требуется какая-либо специальная обработка или форматирование.  
 УПОРЯДОЧЕНИЕ РЕЗУЛЬТАТОВ
    Порядок имен компьютеров в параметре ComputerName командлетов 
    определяет порядок подключения Windows PowerShell к удаленным 
    компьютерам. Однако результаты отображаются в порядке их 
    получения локальным компьютером, который может отличаться от 
    исходного порядка.
    Для изменения порядка результатов используйте командлет 
    Sort-Object. Можно выполнять сортировку по свойству 
    PSComputerName или MachineName. Кроме того, можно выполнять 
    сортировку по другому свойству объекта, чтобы результаты 
    с разных компьютеров перемежались.
СМ. ТАКЖЕ
    about_Remote
    Format-Table
    Get-EventLog
    Get-Process
    Get-Service
    Get-WmiObject
    Invoke-Command
    Out-GridView
    Select-Object



about_remote_requirements

РАЗДЕЛ
    about_Remote_Requirements
КРАТКОЕ ОПИСАНИЕ
    Описывает требования к системе и конфигурации для выполнения удаленных 
    команд в Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    В этом разделе описываются требования к системе, пользователям и 
    ресурсам для установления удаленных подключений и выполнения удаленных 
    команд в Windows PowerShell. Кроме того, в этом разделе содержатся 
    инструкции по настройке удаленных операций.
    Примечание. Многие командлеты (включая Get-Service, Get-Process, 
		Get-WMIObject, Get-EventLog и Get-WinEvent) получают 
    		объекты с удаленных компьютеров с помощью методов 
		Microsoft .NET Framework, используемых для извлечения 
    		объектов. Они не используют инфраструктуру удаленного 
    		взаимодействия Windows PowerShell. Требования, описанные 
    		в этом документе, не применяются к таким командлетам.
          	Чтобы найти командлеты, которые имеют параметр ComputerName 
          	и не используют удаленное взаимодействие Windows PowerShell, 
		прочитайте описание параметра ComputerName командлетов.
          
 ТРЕБОВАНИЯ К СИСТЕМЕ
    На локальном и удаленном компьютерах должны быть установлены следующие 
    компоненты:
        --  Windows PowerShell 2.0 или более поздней версии;
        --  Microsoft .NET Framework 2.0 или более поздней версии;
        --  Windows Remote Management 2.0.
    Чтобы определить номер установленной версии Windows PowerShell, 
    используйте автоматическую переменную $PSVersionTable. Значение 
    свойства $PSVersionTable.Version.Major должно быть не меньше 2.
    Windows Remote Management 2.0 входит в состав Windows 7 и Windows 
    Server 2008 R2. Кроме того, этот компонент входит в 
    интегрированный пакет установки для более ранних версий Windows, 
    включающий Windows PowerShell.
    Для интегрированной среды скриптов Windows PowerShell (ISE) 
    и командлета Out-Gridview требуется Microsoft .NET Framework 
    3.5 с пакетом обновления 1. Для командлета Get-WinEvent требуется 
    Microsoft .NET Framework 3.5 или более поздней версии. Эти 
    обновления не требуются для удаленного взаимодействия.
 РАЗРЕШЕНИЯ ПОЛЬЗОВАТЕЛЕЙ
    Для установления удаленного подключения и выполнения удаленных 
    команд текущий пользователь должен быть членом группы "Администраторы" 
    на удаленном компьютере или должен быть способным предоставить 
    учетные данные администратора.
 ВЫПОЛНЕНИЕ ОПЕРАЦИЙ ОТ ИМЕНИ АДМИНИСТРАТОРА
    В Windows Vista, Windows Server 2008 и более поздних версиях Windows 
    привилегии администратора требуются для выполнения следующих операций 
    удаленного взаимодействия.
        -- Установление удаленного подключения к локальному 
           компьютеру. Эту операцию обычно называют "замыканием на себя". 
        -- Управление конфигурациями сеансов на локальном компьютере.
        -- Просмотр и изменение параметров WS-Management на локальном 
           компьютере.
           Эти параметры находятся в узле LocalHost диска WSMAN:.
    Для выполнения этих задач необходимо запустить Windows PowerShell 
    командой "Запуск от имени администратора", даже если пользователь 
    является членом группы "Администраторы" на локальном компьютере.
    Чтобы запустить Windows PowerShell командой "Запуск от имени 
    администратора" в Windows 7 и Windows Server 2008 R2, выполните 
    следующие действия:
        1. В меню "Пуск" выберите "Все программы", "Стандартные", а затем 
           щелкните папку Windows PowerShell.
        2. Щелкните правой кнопкой мыши Windows PowerShell и выберите 
           команду "Запуск от имени администратора".
    Чтобы запустить Windows PowerShell командой "Запуск от имени 
    администратора" в Windows Vista и Windows Server 2008, выполните 
    следующие действия: 
        1. В меню "Пуск" выберите "Все программы" и щелкните папку Windows 
     	   PowerShell.
        2. Щелкните правой кнопкой мыши Windows PowerShell и выберите 
      	   команду "Запуск от имени администратора".
    
    Команда "Запуск от имени администратора" также доступна в других 
    элементах проводника для Windows PowerShell, включая ярлыки. 
    Просто щелкните правой кнопкой мыши элемент и выберите команду 
    "Запуск от имени администратора".
    При запуске Windows PowerShell из другой программы, например Cmd.exe, 
    используйте для запуска программы команду "Запуск от имени 
    администратора".
 НАСТРОЙКА КОМПЬЮТЕРА ДЛЯ УДАЛЕННОГО ВЗАИМОДЕЙСТВИЯ  
    Функции удаленного взаимодействия Windows PowerShell 
    поддерживаются службой WinRM, которая является выполненной Майкрософт 
    реализацией протокола WS-Management. Для использования функций удаленного 
    взаимодействия необходимо изменить конфигурацию WS-Management по 
    умолчанию в системе. 
    Чтобы настроить Windows PowerShell на прием удаленных команд, 
    выполните следующие действия: 
        1. Запустите Windows PowerShell. В Windows Vista и более 
           поздних версиях Windows запустите Windows PowerShell командой 
           "Запуск от имени администратора".
	2. В командной строке введите следующую команду:
	   enable-psremoting
    Эта процедура позволяет пользователям на других компьютерах 
    устанавливать удаленные подключения и выполнять удаленные команды 
    на локальном компьютере. Она также позволяет создать подключение 
    "с замыканием на себя" на локальном компьютере.
    Для проверки правильной настройки удаленного взаимодействия выполните 
    тестовую команду, которая создает удаленный сеанс на локальном компьютере.
          new-pssession
    Если удаленное взаимодействие настроено правильно, команда 
    создаст сеанс на локальном компьютере и возвратит объект, 
    представляющий сеанс. Выходные данные должны выглядеть примерно 
    следующим образом.
          C:\PS> new-pssession
          Id Name        ComputerName    State    ConfigurationName
          -- ----        ------------    -----    -----
          1  Session1    localhost       Opened   Microsoft.PowerShell
    Если команда завершается неудачей, см. раздел about_Remote_Trouble
    shooting.
 ПОНИМАНИЕ ПОЛИТИК
    При удаленной работе используется два экземпляра Windows 
    PowerShell: один находится на локальном компьютере, а второй - на 
    удаленном компьютере. В результате на работу пользователя влияют 
    политики Windows и политики Windows PowerShell на локальном и 
    удаленном компьютерах.
    В общем случае перед подключением и во время установления подключения 
    действуют политики локального компьютера. При использовании подключения 
    действуют политики удаленного компьютера.
СМ. ТАКЖЕ
    about_Remote
    about_PSSessions
    Invoke-Command
    Enter-PSSession
    New-PSSession



about_remote_troubleshooting

РАЗДЕЛ
    about_Remote_Troubleshooting
КРАТКОЕ ОПИСАНИЕ
    Описывает, как устранять неполадки удаленных операций в
    Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    В этом разделе описаны некоторые неполадки, которые могут
    возникнуть при использовании функций удаленного взаимодействия
    Windows PowerShell, основанных не технологии WS-Management, и
    приводятся рекомендации по устранению этих неполадок.
    Перед использованием функций удаленного взаимодействия Windows
    PowerShell ознакомьтесь с разделами about_Remote и about_Remote_Requirement
s,
    чтобы получить инструкции по настройке и выполнению базовых
    операций. Кроме того, в разделах справки по каждому из
    командлетов, в особенности в описаниях операций, содержатся
    полезные сведения, помогающие избежать неполадок.
    Обновленные версии этого, а также других разделов справки по
    Windows PowerShell, доступны в Интернете в библиотеке Microsoft
    TechNet. Чтобы открыть интернет-версию этого раздела справки,
    вставьте в интернет-браузер следующий URL-адрес:
	http://go.microsoft.com/fwlink/?LinkID=135188
 
    ПРИМЕЧАНИЕ. В Windows Vista, Windows Server 2008 и более поздних
    версиях Windows для просмотра и изменения параметров локального
    компьютера на диске WSMan:, в том числе конфигурации сеансов,
    доверенных узлов, портов и прослушивателей, запускайте Windows
    PowerShell в режиме "Запуск от имени администратора". 
 УСТРАНЕНИЕ НЕПОЛАДОК, СВЯЗАННЫХ С РАЗРЕШЕНИЯМИ И ПРОВЕРКОЙ
 ПОДЛИННОСТИ
    В этом разделе описаны неполадки удаленного взаимодействия,
    связанные с разрешениями пользователей и компьютеров и
    требованиями удаленного взаимодействия.
    ВЫПОЛНЕНИЕ ОПЕРАЦИЙ ОТ ИМЕНИ АДМИНИСТРАТОРА
    ---------------------------
        ОШИБКА. Доступ запрещен. Необходимо запустить этот командлет
        из повышенного процесса.
    Для запуска удаленного сеанса на локальном компьютере или
    просмотра и изменения параметров локального компьютера на диске
    WSMan:, в том числе конфигурации сеансов, доверенных узлов,
    портов и прослушивателей, запустите Windows PowerShell в режиме
    "Запуск от имени администратора". 
    Запуск Windows PowerShell в режиме "Запуск от имени администратора"
    -- Щелкните правой кнопкой мыши значок Windows PowerShell (или
    Windows PowerShell ISE) и выберите пункт "Запуск от имени администратора".
    
    Запуск Windows PowerShell в режиме "Запуск от имени
    администратора" в Windows 7 и Windows Server 2008 R2
    -- На панели задач Windows щелкните правой кнопкой мыши значок
    Windows PowerShell и выберите команду "Запустить Windows
    PowerShell от имени администратора".
    Примечание. В Windows Server 2008 R2 значок Windows PowerShell по
    умолчанию закреплен на панели задач. 
    ВКЛЮЧЕНИЕ УДАЛЕННОГО ВЗАИМОДЕЙСТВИЯ
    ----------------------
        ОШИБКА. ДОСТУП ЗАПРЕЩЕН
        - либо -
        ОШИБКА. В подключении к указанному удаленному узлу отказано.
        Убедитесь, что на удаленном узле служба WS-Management
        запущена и настроена на прослушивание запросов с
        использованием правильного порта и URL-адреса HTTP. 
    Чтобы компьютер мог отправлять удаленные команды, никакая
    настройка не требуется. Однако для получения удаленных команд
    компьютер необходимо настроить, чтобы он поддерживал удаленное
    взаимодействие. Процедура настройки включает запуск службы
    WinRM, установку типа запуска "Авто" для службы WinRM, создание
    прослушивателей для подключений HTTP и HTTPS, а также создание
    конфигураций сеансов по умолчанию.
    Чтобы настроить на компьютере получение удаленных команд,
    воспользуйтесь командлетом Enable-PSRemoting. Следующая команда
    включает все необходимые параметры удаленного взаимодействия,
    активирует конфигурации сеансов и перезапускает службу WinRM,
    чтобы изменения вступили в силу. 
        enable-psremoting
    Чтобы подавить все запросы подтверждения, введите
    следующую команду:
        enable-psremoting -force
    Дополнительные сведения см. в разделе Enable-PSRemoting.
    ВКЛЮЧЕНИЕ УДАЛЕННОГО ВЗАИМОДЕЙСТВИЯ НА ПРЕДПРИЯТИИ
    ---------------------------------------
        ОШИБКА. ДОСТУП ЗАПРЕЩЕН
        - либо -
        ОШИБКА. В подключении к указанному удаленному узлу отказано.
        Убедитесь, что на удаленном узле служба WS-Management
        запущена и настроена на прослушивание запросов с
        использованием правильного порта и URL-адреса HTTP. 
    Чтобы включить возможность получения удаленных команд Windows
    PowerShell и приема подключений на одном компьютере,
    воспользуйтесь командлетом Enable-PSRemoting.
    Чтобы включить удаленное взаимодействие на нескольких компьютерах
    предприятия, можно воспользоваться следующими масштабированными процедурами
.
    
    -- Чтобы настроить прослушиватели для удаленного взаимодействия,
    включите групповую политику "Разреить автоматическую настройку
    прослушивателей". Инструкции см. в ниже в разделе "Включение
    прослушивателей с помощью групповой политики".
 
    -- Чтобы установить тип запуска "Авто" для службы удаленного
    управления Windows (WinRM), воспользуйтесь командлетом 
    Set-Service. Инструкции см. ниже в разделе "Установка типа запуска
    службы WinRM"
    -- Чтобы включить исключение брандмауэра, воспользуйтесь групповой
    политикой "Брандмауэр Windows: Разрешать локальные исключения
    для портов". Инструкции см. в ниже в разделе "Создание
    исключения брандмауэра с помощью групповой политики".
 
    ВКЛЮЧЕНИЕ ПРОСЛУШИВАТЕЛЕЙ С ПОМОЩЬЮ ГРУППОВОЙ ПОЛИТИКИ
    ------------------------------------------------
        ОШИБКА. ДОСТУП ЗАПРЕЩЕН
        - либо -
        ОШИБКА. В подключении к указанному удаленному узлу отказано.
        Убедитесь, что на удаленном узле служба WS-Management
        запущена и настроена на прослушивание запросов с
        использованием правильного порта и URL-адреса HTTP.
    Чтобы настроить прослушиватели для всех компьютеров в домене,
    включите политику "Разрешить автоматическую настройку прослушивателей" по
    следующему пути групповых политик:
        Конфигурация компьютера\Административные аблоны\Компоненты Windows
          \Удаленное управление Windows (WinRM)\Служба WinRM.
        
    Включите политику и укажите фильтры IPv4 и IPv6. Подстановочные
    знаки (*) разрешены.
    ВКЛЮЧЕНИЕ ИСКЛЮЧЕНИЯ БРАНДМАУЭРА С ПОМОЩЬЮ ГРУППОВОЙ ПОЛИТИКИ
    ----------------------------------------------------------
        ОШИБКА. ДОСТУП ЗАПРЕЩЕН
        - либо -
        ОШИБКА. В подключении к указанному удаленному узлу отказано.
        Убедитесь, что на удаленном узле служба WS-Management
        запущена и настроена на прослушивание запросов с
        использованием правильного порта и URL-адреса HTTP.
    Чтобы включить исключение брандмауэра на всех компьютерах домена,
    включите политику "Брандмауэр Windows: Разрешать локальные исключения для п
ортов" по
    следующему пути групповых политик:
        Конфигурация компьютера\Административные аблоны\Сеть\Сетевые
        подключения\Брандмауэр Windows\Профиль домена
    Эта политика разрешает членам группы "Администраторы" на
    компьютере использовать брандмауэр Windows в панели управления,
    чтобы создавать исключения брандмауэра для службы удаленного
    управления Windows.
    УСТАНОВКА ТИПА ЗАПУСКА "АВТО" ДЛЯ СЛУЖБЫ WINRM.
    ------------------------------------------------
        ОШИБКА. ДОСТУП ЗАПРЕЩЕН
    При удаленном взаимодействии Windows PowerShell используется
    служба удаленного управления Windows (WinRM). Для поддержки
    удаленных команд эта служба должна быть запущена.
    В Windows Server 2003, Windows Server 2008 и Windows Server 2008
    R2 для службы удаленного управления Windows (WinRM) используется
    тип запуска "Авто". 
    Однако в Windows XP, Windows Vista и Windows 7 служба WinRM по
    умолчанию отключена. 
    Чтобы установить тип запуска службы на удаленном компьютере,
    воспользуйтесь командлетом Set-Service. 
    Для выполнения команды на нескольких компьютерах можно создать
    текстовый или CSV-файл с именами компьютеров.
    Например, следующая команда получает список компьютеров
    из файла Servers.txt, а затем устанавливает тип запуска "Авто"
    для службы WinRM на всех компьютерах.
        C:\PS> $servers = get-content servers.txt
        C:\PS> set-service WinRM -computername $servers -startuptype Automatic
    Чтобы увидеть результаты, воспользуйтесь командлетом Get-WMIObject
    с объектом Win32_Service. Дополнительные сведения см. в разделе Set-Service
.    
    
    ВОССОЗДАНИЕ КОНФИГУРАЦИЙ СЕАНСОВ ПО УМОЛЧАНИЮ
    --------------------------------------------------
        ОШИБКА. ДОСТУП ЗАПРЕЩЕН
    Чтобы подключиться к локальному компьютеру и выполнять команды
    удаленно, локальный компьютер должен содержать конфигурации
    сеансов для удаленных команд.
    Командлет Enable-PSRemoting создает на локальном компьютере
    конфигурации сеансов по умолчанию. Удаленные пользователи
    применяют эти конфигурации сеансов каждый раз, когда удаленная
    команда не содержит параметра ConfigurationName.
    Если конфигурации по умолчанию не зарегистрированы на компьютере
    или были удалены, воспользуйтесь командлетом Enable-PSRemoting,
    чтобы создать их заново. Этот командлет можно использовать
    повторно. Если компонент уже настроен, ошибки не создаются.
    Если конфигурации сеансов по умолчанию были изменены и требуется восстанови
ть
    исходные конфигурации сеансов по умолчанию, с помощью командлета
    Unregister-PSSessionConfiguration удалите измененные конфигурации
    сеансов, а затем с помощью командлета Enable-PSRemoting
    восстановите их. Командлет Enable-PSRemoting не изменяет
    имеющиеся конфигурации сеансов.
    Примечание. Когда командлет Enable-PSRemoting восстанавливает
    конфигурации сеансов по умолчанию, он не создает явные
    дескрипторы безопасности для этих конфигураций. Вместо этого
    конфигурации наследуют дескриптор безопасности элемента
    RootSDDL, который является защищенным по умолчанию.
    Чтобы увидеть дескриптор безопасности RootSDDL, введите команду:
        get-item wsman:\localhost\Service\RootSDDL
    Чтобы изменить элемент RootSDDL, воспользуйтесь командлетом 
    Set-Item на диске WSMan:. Чтобы изменить дескриптор безопасности
    конфигурации сеанса, воспользуйтесь командлетом Set-PSSessionConfiguration 
с
    параметром SecurityDescriptorSDDL или ShowSecurityDescriptorUI.
    
    Дополнительные сведения о диске WSMan: см. в разделе справки,
    посвященной поставщику WS-Management ("get-help wsman"). 
    ПРЕДОСТАВЛЕНИЕ УЧЕТНЫХ ДАННЫХ АДМИНИСТРАТОРА 
    ----------------------------------------
        ОШИБКА. ДОСТУП ЗАПРЕЩЕН
    Для создания сеанса PSSession или выполнения команд на удаленном
    компьютере по умолчанию текущий пользователь должен быть членом
    группы "Администраторы" на удаленном компьютере. Иногда
    требуется указывать учетные данные, даже если текущий
    пользователь является членом группы "Администраторы".
    Если текущий пользователь является членом группы "Администраторы"
    на удаленном компьютере или может указать учетные данные члена
    группы "Администраторы", воспользуйтесь для удаленного
    подключения параметром Credential командлета New-PSSession,
    Enter-PSSession или Invoke-Command.
    Например, в следующей команде задаются учетные
    данные администратора.
        Invoke-Command -ComputerName Server01 -Credential Domain01\Admin01
 
    Дополнительные сведения о параметре Credential см. в разделе 
    New-PSSession, Enter-PSSession или Invoke-Command.
    ВКЛЮЧЕНИЕ УДАЛЕННОГО ВЗАИМОДЕЙСТВИЯ ДЛЯ ПОЛЬЗОВАТЕЛЕЙ, НЕ
    ЯВЛЯЮЩИХСЯ АДМИНИСТРАТОРАМИ 
    ---------------------------------------------------
        ОШИБКА. ДОСТУП ЗАПРЕЩЕН
    Для создания сеанса PSSession или выполнения команды на удаленном
    компьютере пользователю требуется разрешение на использование
    конфигураций сеансов на удаленном компьютере. 
    По умолчанию только члены группы "Администраторы" на компьютере
    имеют разрешение на использование конфигураций сеансов по
    умолчанию. Поэтому только члены группы "Администраторы" могут
    удаленно подключаться к компьютеру.
    Чтобы разрешить другим пользователям подключаться к локальному
    компьютеру, предоставьте разрешение на запуск для конфигураций
    сеансов по умолчанию на локальном компьютере.
    Следующая команда открывает лист свойств, позволяющий изменять
    дескриптор безопасности конфигурации сеанса Microsoft.PowerShell
    по умолчанию на локальном компьютере.
        Set-PSSessionConfiguration Microsoft.Powershell -ShowSecurityDescriptor
UI
        
    Дополнительные сведения см. в разделе about_Session_Configurations.
    ВКЛЮЧЕНИЕ УДАЛЕННОГО ВЗАИМОДЕЙСТВИЯ ДЛЯ АДМИНИСТРАТОРОВ В ДРУГИХ
    ДОМЕНАХ
    ----------------------------------------------------------
        ОШИБКА. ДОСТУП ЗАПРЕЩЕН
    Если пользователь из другого домена является членом группы
    "Администраторы" на локальном компьютере, он не может удаленно
    подключаться к локальному компьютеру с правами администратора.
    По умолчанию удаленные подключения из других документов
    запускаются только с токенами разрешений обычного пользователя.
    
    Однако с помощью параметра реестра LocalAccountTokenFilterPolicy
    можно изменить поведение по умолчанию и разрешить удаленным
    пользователям, входящим в группу "Администраторы", выполнять
    операции с правами администратора. 
    Внимание Параметр реестра LocalAccountTokenFilterPolicy отключает
              ограничения на удаленное взаимодействие функции контроля
              учетных записей для всех пользователей на всех затрагиваемых
              компьютерах. Перед изменением политики внимательно изучите
              возможные последствия.
    
    Чтобы изменить политику, воспользуйтесь следующей командой,
    устанавливающей для параметра реестра LocalAccountTokenFilterPolicy
    значение 1.
        C:\PS> new-itemproperty -name LocalAccountTokenFilterPolicy -path `
            HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies
            \System -propertyType `DWord -value 1
    ИСПОЛЬЗОВАНИЕ В УДАЛЕННОЙ КОМАНДЕ IP-АДРЕСА
    -----------------------------------------------------
        ОШИБКА. Клиенту WinRM не удается обработать запрос. Если
        применяемая схема проверки подлинности отличается от
        Kerberos или компьютер клиента не входит в домен, необходимо
        использовать транспорт HTTPS или добавить компьютер
        назначения к значениям параметра конфигурации TrustedHosts.
        
    Параметр ComputerName командлетов New-PSSession, Enter-PSSession и
    Invoke-Command принимает в качестве допустимого значения 
    IP-адрес. Но поскольку проверка подлинности Kerberos не
    поддерживает IP-адреса, в случае указания IP-адреса по умолчанию
    используется проверка подлинности NTLM. 
    В случае использования проверки подлинности NTLM для удаленного взаимодейст
вия
    необходимо выполнить следующие действия.
    1. Настройте на компьютере использование транспорта HTTPS или
       добавьте IP-адреса удаленных компьютеров в список
       TrustedHosts на локальном компьютере.
       Инструкции см. ниже в разделе "Добавление компьютера в список TrustedHos
ts".
       
    2. Во всех удаленных командах используйте параметр Credential.
  
       Это необходимо даже в том случае, если указываются учетные
       данные текущего пользователя.
   
    УДАЛЕННОЕ ПОДКЛЮЧЕНИЕ С КОМПЬЮТЕРА, ВХОДЯЩЕГО В РАБОЧУЮ ГРУППУ
    -------------------------------------------------------
        ОШИБКА. Клиенту WinRM не удается обработать запрос. Если
        применяемая схема проверки подлинности отличается от
        Kerberos или компьютер клиента не входит в домен, необходимо
        использовать транспорт HTTPS или добавить компьютер
        назначения к значениям параметра конфигурации TrustedHosts.
        
    Если локальный компьютер не входит в домен, для удаленного
    взаимодействия необходимо выполнить следующие действия.
    1. Настройте на компьютере использование транспорта HTTPS или
       добавьте имена удаленных компьютеров в список TrustedHosts
       на локальном компьютере.
       Инструкции см. ниже в разделе "Добавление компьютера в список TrustedHos
ts".
       
    2. Проверьте, что на входящем в рабочую группу компьютере задан
       пароль. Если пароль не задан или пуст, выполнять удаленные
       команды невозможно.
       Чтобы задать пароль для учетной записи пользователя,
       воспользуйтесь элементом "Учетные записи пользователей"
       панели управления. 
    3. Во всех удаленных командах используйте параметр Credential.
  
       Это необходимо даже в том случае, если указываются учетные
       данные текущего пользователя.
    ДОБАВЛЕНИЕ КОМПЬЮТЕРА В СПИСОК TRUSTEDHOSTS
    -----------------------------------------------
    Элемент TrustedHosts может содержать список разделенных запятыми
    имен компьютеров, IP-адресов и полных доменных имен.
    Подстановочные знаки разрешены.
    Для просмотра и изменения списка доверенных узлов, воспользуйтесь
    диском WSMan:. Элемент TrustedHost расположен в узле WSMan:\localhost\Clien
t.
    
    Только члены группы "Администраторы" на компьютере имеют
    разрешение на изменение списка доверенных узлов на компьютере.
     Внимание Действие значения, заданного в элементе TrustedHosts, 
               распространяется на всех пользователей компьютера.
     
    Для просмотра списка доверенных узлов необходимо использовать
    следующую команду:
        get-item wsman:\localhost\Client\TrustedHosts
    Кроме того, можно с помощью командлета Set-Location (псевдоним cd)
    перейти к нужному расположению на диске WSMan:. 
    Пример: "cd WSMan:\localhost\Client; dir".
    Чтобы добавить в список доверенных узлов все компьютеры,
    воспользуйтесь следующей командой, в которой для параметра
    ComputerName задано значение * (все). 
        set-item wsman:localhost\client\trustedhosts -value *
    Кроме того, с помощью подстановочного знака (*) можно добавить в
    список доверенных узлов все компьютеры из определенного домена.
    Например, следующая команда добавляет в список доверенных узлов
    все компьютеры из домена Fabrikam.
        set-item wsman:localhost\client\trustedhosts *.fabrikam.com
    Чтобы добавить в список доверенных узлов имена отдельных
    компьютеров, необходимо использовать следующий формат команд:
        set-item wsman:\localhost\Client\TrustedHosts -value <имя_компьютера>[,
имя_компьютера>]
        
    Здесь каждое значение <имя_компьютера> должно иметь
    следующий формат:
        <компьютер>.<домен>.<компания>.
    Пример:
        set-item wsman:\localhost\Client\TrustedHosts -value Server01.Domain01.
Fabrikam.com
        
    Чтобы добавить имя компьютера в имеющийся список доверенных узлов,
    необходимо сначала сохранить текущее значение в переменной, а
    затем присвоить значение разделенному запятыми списку, который
    включает текущее и новое значения.
    Например, чтобы добавить компьютер Server01 в имеющийся список
    доверенных узлов, воспользуйтесь следующей командой:
        $curValue = (get-item wsman:\localhost\Client\TrustedHosts).value
        set-item wsman:\localhost\Client\TrustedHosts -value "$curValue, Server
01.Domain01.Fabrikam.com"
    Чтобы добавить в список доверенных узлов IP-адреса отдельных
    компьютеров, необходимо использовать следующий формат команд:
        set-item wsman:\localhost\Client\TrustedHosts -value <IP-адрес>
    Пример:
        set-item wsman:\localhost\Client\TrustedHosts -value 172.16.0.0
    Чтобы добавить компьютер в список TrustedHosts удаленного
    компьютера, с помощью командлета Connect-WSMan добавьте узел
    удаленного компьютера на диск WSMan: локального компьютера.
    После этого добавьте компьютер с помощью команды Set-Item.
    Дополнительные сведения о командлете Connect-WSMan см. в разделе Connect-WS
Man.
    
 УСТРАНЕНИЕ НЕПОЛАДОК, СВЯЗАННЫХ С КОНФИГУРАЦИЕЙ КОМПЬЮТЕРОВ
    В этом разделе описаны неполадки удаленного управления, связанные
    с конкретными конфигурациями компьютеров, доменов
    или предприятия.
    НАСТРОЙКА УДАЛЕННОГО ВЗАИМОДЕЙСТВИЯ ЧЕРЕЗ АЛЬТЕРНАТИВНЫЕ ПОРТЫ
    --------------------------------------------
        ОШИБКА. В подключении к указанному удаленному узлу отказано.
        Убедитесь, что на удаленном узле служба WS-Management
        запущена и настроена на прослушивание запросов с
        использованием правильного порта и URL-адреса HTTP.
    По умолчанию при удаленном взаимодействии Windows PowerShell для
    транспорта HTTP используется порт 80. Порт по умолчанию
    используется всегда, когда пользователь не указывает в удаленной
    команде параметр ConnectionURI или Port.
    Чтобы изменить порт, используемый в Windows PowerShell по
    умолчанию, с помощью командлета Set-Item на диске WSMan:
    измените значение Port в конечном узле прослушивателя.
    Например, следующая команда изменяет порт по умолчанию на 8080.
        set-item wsman:\localhost\listener\listener*\port -value 8080
    НАСТРОЙКА УДАЛЕННОГО ВЗАИМОДЕЙСТВИЯ С ИСПОЛЬЗОВАНИЕМ ПРОКСИ-СЕРВЕРА
    ---------------------------------------------
        ОШИБКА. Клиенту не удается подключиться к узлу назначения,
        указанному в запросе. Убедитесь, что служба на узле
        назначения работает и принимает запросы. 
    Поскольку при удаленном взаимодействии Windows PowerShell
    используется протокол HTTP, также действуют параметры прокси
    HTTP. На предприятиях, применяющих прокси-серверы, пользователи
    не могут напрямую обращаться к удаленному компьютеру
    Windows PowerShell.
    Чтобы решить эту проблему, необходимо использовать в удаленных
    командах параметры прокси-серверов. Доступны следующие параметры.
        --  ProxyAccessType
        --  ProxyAuthentication
        --  ProxyCredential
    Чтобы задать эти параметры для определенной команды, используйте
    описанную ниже процедуру.
        1. С помощью параметров ProxyAccessType, ProxyAuthentication и
           ProxyCredential командлета New-PSSessionOption создайте
           объект параметра сеанса, содержащий параметры прокси
           -сервера предприятия. Сохраните объект параметра
           в переменной.
        2. Используйте переменную, содержащую объект параметра, в
           качестве значения параметра SessionOption команды
           New-PSSession, Enter-PSSession или Invoke-Command.
           
    Например, следующая команда создает объект параметра сеанса с
    параметрами сеанса прокси, а затем создает с помощью этого
    объекта удаленный сеанс.
        C:\PS> $SessionOption = New-PSSessionOption -ProxyAccessTypeIEConfig ` 
               -ProxyAuthentication Negotiate -ProxyCredential Domain01\User01
        C:\PS> New-PSSession -ConnectionURI https://www.fabrikam.com
    Дополнительные сведения о командлете New-PSSessionOption см. в
    разделе New-PSSessionOption.
    Чтобы задать эти параметры для всех удаленных команд в текущем
    сеансе, используйте объект параметра, созданный с помощью
    командлета New-PSSessionOption, в качестве значения привилегированной
    переменной $PSSessionOption. Дополнительные сведения о привилегированной
    переменной $PSSessionOption см. в разделе 
    about_Preference_Variables.
    Чтобы задать эти параметры для всех удаленных команд во всех
    сеансах Windows PowerShell на локальном компьютере, добавьте 
    привилегированную переменную $PSSessionOption в профиль Windows PowerShell.
    Дополнительные сведения о профилях Windows PowerShell см. в
    разделе about_Profiles.
 
    ОБНАРУЖЕНИЕ 32-РАЗРЯДНОГО СЕАНСА НА 64-РАЗРЯДНОМ КОМПЬЮТЕРЕ
    ---------------------------------------------------
        ОШИБКА. Условие "<имя_средства>" не распознано как имя
        командлета, функции, файла скрипта или выполняемой
        программы. Проверьте правильность написания имени, наличие
        и правильность пути и повторите попытку.
    Если на удаленном компьютере установлена 64-разрядная версия
    Windows, а в удаленной команде используется конфигурация 
    32-разрядного сеанса, например Microsoft.PowerShell32, служба
    удаленного управления Windows (WinRM) загружает процесс WOW64,
    и операционная система Windows все ссылки на каталог %Windir%
    \System32 автоматически перенаправляет на каталог %windir%
    \SysWOW64. 
    В результате при попытке загрузить из каталога System32 средства,
    у которых нет аналогов в каталоге SysWow64, например Defrag.exe,
    найти такие средства в каталоге не удается.
    Чтобы определить используемую в сеансе архитектуру процессора, воспользуйте
сь
    значением переменной среды PROCESSOR_ARCHITECTURE. Следующая
    команда определяет архитектуру процессора сеанса в переменной
    $s.
        C:\PS> $s = new-pssession -computername Server01 -configurationName Cus
tomShell
        C:\PS> invoke-command -session $s {$env:PROCESSOR_ARCHITECTURE} x86
    Дополнительные сведения о конфигурациях сеансов см. в разделе about_session
_configurations.
    
 УСТРАНЕНИЕ НЕПОЛАДОК ПОЛИТИК И УСТАНОВЛЕННЫХ ПАРАМЕТРОВ
    В этом разделе описаны проблемы удаленного взаимодействия,
    связанные с политиками и параметрами, заданными на локальном и
    удаленном компьютерах.
    ИЗМЕНЕНИЕ ПОЛИТИКИ ВЫПОЛНЕНИЯ ДЛЯ КОМАНДЛЕТОВ IMPORT-PSSESSION И IMPORT-MOD
ULE
    -------------------------------------------------------------------------
        ОШИБКА. Import-Module: Не удается загрузить файл <имя_файла>,
        так как выполнение скриптов запрещено для данной системы.
        
    Командлеты Import-PSSession и Export-PSSession создают модули,
    содержащие неподписанные файлы скриптов и файлы форматирования.
   
    Чтобы можно было импортировать модули, созданные этими
    командлетами, с помощью командлетов Import-PSSession и 
    Import-Module, политика выполнения в текущем сеансе не может иметь
    значение Restricted или AllSigned. (Дополнительные сведения о
    политиках выполнения Windows PowerShell см. в разделе about_Execution_Polic
ies.)
    
    Чтобы импортировать модули без изменения политики выполнения для
    заданного в реестре локального компьютера, необходимо с помощью
    параметра Scope командлета Set-ExecutionPolicy задать менее
    жесткую политику выполнения для отдельного процесса.
    Например, следующая команда запускает процесс с политикой
    выполнения RemoteSigned. Изменение политики выполнения распространяется
    только на текущий процесс и не приводит к изменению параметра
    реестра Windows PowerShell ExecutionPolicy.
        set-executionpolicy -scope process -executionpolicy RemoteSigned
    Кроме того, с помощью параметра ExecutionPolicy
    программы PowerShell.exe можно запустить отдельный сеанс с менее
    жесткой политикой выполнения. 
        powershell.exe -executionpolicy RemoteSigned
    Дополнительные сведения о командлетах см. в разделах 
    Import-PSSession, Export-PSSession и Import-Module. 
    Дополнительные сведения о политиках выполнения см. в разделе 
    about_Execution_Policies. Чтобы получить дополнительные сведения о параметр
ах
    справки консоли PowerShell.exe, введите команду "powershell.exe -?".
    ЗАДАНИЕ И ИЗМЕНЕНИЕ КВОТ
    ----------------------------
        ОШИБКА. Общий объем данных, полученных от удаленного клиента,
        превысил допустимое значение.
    Квоты позволяют защищать локальный компьютер и удаленный компьютер
    от чрезмерного использования ресурсов, как случайного так и
    злонамеренного. 
    В базовой конфигурации доступны следующие квоты.
    -- Поставщик WS-Management (WSMan:) предоставляет несколько
       параметров квот, например параметры MaxEnvelopeSizeKB и MaxProviderReque
sts
       в узле WSMan:\<имя_компьютера> и параметры MaxConcurrentOperations,
       MaxConcurrentOperationsPerUser и MaxConnections в узле WSMan:\<имя_компь
ютера>\Service.
    
    -- Локальный компьютер можно защитить с помощью параметров 
       MaximumReceivedDataSizePerCommandMB и MaximumReceivedObjectSizeMB команд
лета
       New-PSSessionOption и привилегированной переменной $PSSessionOption.
    
    -- Удаленный компьютер можно защитить, добавив ограничения в
       конфигурации сеанса, например с помощью параметров MaximumReceivedDataSi
zePerCommandMB
       и MaximumReceivedObjectSizeMB командлета Register-PSSessionConfiguration
.
    Если квоты противоречат команде, Windows PowerShell создает оШибку. 
    Для устранения ошибки измените удаленную команду, чтобы она
    соответствовала квоте. Или определите источник квоты и увеличьте
    квоту, чтобы можно было выполнить команду.
    Например, следующая команда увеличивает квоту размеров объектов в
    конфигурации сеансов Microsoft.PowerShell на удаленном
    компьютере с 10 МБ (значение по умолчанию) до 11 МБ. 
        Set-PSSessionConfiguration -name microsoft.powershell ` -MaximumReceive
dObjectSizeMB 11 -Force
        
    Дополнительные сведения о командлете New-PSSsessionOption см. в
    разделе New-PSSessionOption.
    Дополнительные сведения о квотах WS-Management см. в разделе
    справки, посвященном поставщику WS-Management (введите команду
    "get-help WSMan").
    УСТРАНЕНИЕ ОШИБОК ТАЙМ-АУТА
    -----------------------------
        ОШИБКА. Службе WS-Management не удается заверить операцию в
        течение времени, указанного в OperationTimeout.
    Тайм-ауты позволяют защищать локальный компьютер и удаленный
    компьютер от чрезмерного использования ресурсов, как случайного
    так и злонамеренного. Если тайм-ауты заданы как на локальном,
    так и на удаленном компьютере, Windows PowerShell использует
    меньшее из заданных значений.
    В базовой конфигурации доступны следующие тайм-ауты.
    -- Поставщик WS-Management (WSMan:) предоставляет несколько
       параметров тайм-аутов на стороне клиента и на стороне сервера,
       например параметр MaxTimeoutms в узле WSMan:\<имя_компьютера>
       и параметры EnumerationTimeoutms и MaxPacketRetrievalTimeSeconds в узле
       WSMan:\<имя_компьютера>\Service.
 
    -- Локальный компьютер можно защитить с помощью параметров
       CancelTimeout, IdleTimeout, OpenTimeout, и OperationTimeout
       командлета New-PSSessionOption и привилегированной переменной
       $PSSessionOption.
    -- Можно также защитить удаленный компьютер, установив
       значения тайм-аутов для сеанса программным образом в
       конфигурации сеанса.
    Если значение тайм-аута делает невозможным заверение операции,
    Windows PowerShell прерывает операцию и создает ошибку. 
    Для устранения ошибки измените команду, чтобы она завералась в
    пределах отведенного тайм-аута, или определите источник
    ограничения тайм-аута и увеличьте значение тайм-аута, чтобы
    можно было выполнить команду.
    Например, следующие команды с помощью командлета New-PSSessionOption
    создают объект параметра сеанса со значением OperationTimeout, 
    равным 4 минутам (в миллисекундах), а затем создают удаленный сеанс
    с использованием этого объекта параметра сеанса. 
        C:\PS> $pso = new-pssessionoption -operationtimeout 240000
        C:\PS> new-pssession -computername Server01 -sessionOption$pso
    Дополнительные сведения о периодах ожидания WS-Management см. в
    разделе справки, посвященном поставщику WS-Management (введите
    команду "get-help WSMan").
    Дополнительные сведения о командлете New-PSSsessionOption см. в
    разделе New-PSSessionOption.
 УСТРАНЕНИЕ НЕПОЛАДОК, ПРИ КОТОРЫХ ОБОЛОЧКА ПЕРЕСТАЕТ ОТВЕЧАТЬ
 В этом разделе описаны неполадки удаленного взаимодействия, не
 позволяющие заверить команду или задерживающие появление командной
 строки Windows PowerShell.
    ПРЕРЫВАНИЕ КОМАНДЫ
    --------------------------
    Некоторые собственные программы Windows, например программы с 
    пользовательским интерфейсом, консольные приложения, требующие 
    ввода данных, и консольные приложения, использующие консольный 
    интерфейс API Win32, некорректно работают с удаленным узлом Windows
    PowerShell.  
    При использовании таких программ может наблюдаться непредсказуемое
    поведение, например отсутствие вывода, частичный вывод, либо
    удаленная команда может быть не завершена.
    Чтобы заверить переставшую отвечать программу, нажмите сочетание
    клавиш CTRL + C. Чтобы увидеть оишбки, которые могли быть
    созданы, введите на локальном узле и в удаленном сеансе "$error".
CМ. ТАКЖЕ
    Интернет-версия: http://go.microsoft.com/fwlink/?LinkID=135188
    about_remote
    about_remote_requirements



about_requires

РАЗДЕЛ
    about_Requires
КРАТКОЕ ОПИСАНИЕ
    Запрещает выполнение скриптов при отсутствии указанных оснасток 
    и версии.
ПОЛНОЕ ОПИСАНИЕ
    Инструкция #Requires запрещает выполнение скрипта, если не выполняются 
    предварительные условия по версии Windows PowerShell, оснастке и версии 
    оснастки. Если предварительные условия не выполняются, Windows 
    PowerShell не выполняет скрипт. 
    Инструкции #Requires можно использовать в любом скрипте. Их нельзя 
    использовать в функциях, командлетах и оснастках. 
  Синтаксис 
      Для указания требуемой оснастки и ее версии используйте следующий 
      синтаксис: 
          #requires -PsSnapIn <оснастка_PS> [-Version <N>[.<n>]]
      Для указания минимальной требуемой версии Windows PowerShell 
      используйте следующий синтаксис: 
          #requires -Version <N>[.<n>]
      Для указания требуемой оболочки используйте следующий синтаксис: 
          #requires -ShellId <ИД_оболочки>
  Правила использования 
      - Инструкция #Requires должна быть первым элементом в строке 
        скрипта.
      - Скрипт может включать несколько инструкций #Requires. 
      - Инструкции #Requires могут быть расположены в любой строке 
        скрипта.
  Примеры
      Следующая инструкция требует оснастку Microsoft.PowerShell.Security:
          #requires -PsSnapIn Microsoft.PowerShell.Security
      Если оснастка Microsoft.PowerShell.Security не загружена, скрипт не 
      выполняется и в Windows PowerShell отображается следующее сообщение 
      об ошибке: 
          "Не удалось выполнить скрипт "<имя_скрипта>", так как 
          отсутствуют следующие оснастки Windows PowerShell, 
	  указанные инструкциями "#requires": Microsoft.PowerShell.Security.". 
      Следующая инструкция требует версию Windows PowerShell 2.0 или 
      любую более позднюю версию оснастки Microsoft.PowerShell.Security:
          #requires -PsSnapIn Microsoft.PowerShell.Security -Version 2
      Следующая инструкция требует Windows PowerShell 2.0 или более 
      поздней версии:
          #requires -Version 2.0
      В следующем скрипте содержатся две инструкции #Requires. Должны быть 
      выполнены требования, указанные в обеих инструкциях. В противном 
      случае скрипт не будет выполнен. Каждая инструкция #Requires должна 
      быть первым элементом в строке.
          #requires -PsSnapIn Microsoft.PowerShell.Security -Version 2 
          Get-WMIObject WIN32_LogicalDisk | out-file K:\status\DiskStatus.txt 
          #requires -Version 2
      Следующая инструкция #Requires запрещает выполнение скрипта, если 
      указанный идентификатор оболочки не соответствует текущему. Текущий 
      идентификатор оболочки хранится в переменной $ShellId.
          #requires -ShellId MyLocalShell
СМ. ТАКЖЕ
    about_Automatic_Variables
    about_Language_Keywords
    about_PSSnapins
    get-PSSnapin



about_Reserved_Words

РАЗДЕЛ
    about_Reserved_Words
КРАТКОЕ ОПИСАНИЕ
    Содержит список зарезервированных слов, которые имеют специальное 
    значение в Windows PowerShell и не могут использоваться в качестве 
    идентификаторов.
ПОЛНОЕ ОПИСАНИЕ
    Некоторые слова в Windows PowerShell имеют специальное значение. 
    Если такие слова встречаются без кавычек, оболочка Windows PowerShell 
    пытается применить их специальное значение, не рассматривая их как 
    символьные строки. Чтобы использовать зарезервированные слова 
    в качестве аргументов в команде или скрипте - то есть не использовать 
    их специальное значение, - заключайте эти слова в кавычки.
    Ниже приведены зарезервированные слова в Windows PowerShell.
        Break       
        Continue
        Do
        Else
        Elseif
        Filter
        For
        Foreach
        Function
        If
        In
        Local
        Private
        Return
        Switch
        Until
        Where
        While
    Чтобы получить сведения об инструкциях языка, таких как Foreach, 
    If, For и While, последовательно введите "get-help", префикс 
    "about_" и название инструкции. Например, чтобы получить сведения 
    об инструкции Foreach, введите следующую команду:
	get-help about_foreach
    Чтобы получить сведения о синтаксисе инструкции Filter или 
    Return, введите следующую команду:
        get-help about_functions
СМ. ТАКЖЕ
    about_Command_Syntax
    about_Escape_Characters
    about_Language_Keywords
    about_Parsing
    about_Quoting_Rules
    about_Script_Blocks
    about_Special_Characters



about_Return

РАЗДЕЛ
    about_Return
КРАТКОЕ ОПИСАНИЕ
    Выход из текущей области действия, которая может быть функцией, 
    скриптом или блоком скриптов.
ПОЛНОЕ ОПИСАНИЕ
    Ключевое слово Return служит для выхода из функции, скрипта или блока 
    скриптов. Его можно использовать для выхода из области действия в 
    определенной точке, для вывода значения или для указания на окончание 
    области действия. 
    Пользователи, знакомые с языками, подобными C или C#, могут 
    использовать ключевое слово Return, чтобы сделать явной логику 
    выхода из области действия.
 
    В Windows PowerShell результаты выражений выводятся даже при 
    отсутствии выражений с ключевым словом Return. В таких языках 
    как C или C# выводится только значение или значения, указанные 
    ключевым словом Return. 
  Синтаксис
      Ключевое слово Return имеет следующий синтаксис:
          return [<выражение>]
      Ключевое слово Return может использоваться отдельно, или за ним 
      может следовать значение или выражение:
          return
          return $a
          return (2 + $a)
  Примеры
      В следующем примере ключевое слово Return используется для выхода из 
      функции в определенной точке при выполнении условия:
          function ScreenPassword($instance)
          {
              if (($instance.screensaversecure)) {return $instance.name} 
              <additional statements>
          }
          foreach ($a in @(get-wmiobject win32_desktop)) { ScreenPassword($a) }
      Этот скрипт проверяет учетную запись каждого пользователя. Функция 
      ScreenPassword выводит имя любой учетной записи пользователя, для которой
 
      отсутствует экранная заставка, защищенная паролем. Если экранная заставка
 
      пользователя защищена паролем, функция выполняет другие инструкции и 
      Windows PowerShell не возвращает никакого значения.
      В Windows PowerShell значения могут возвращаться, даже если 
      ключевое слово Return не используется. Возвращаются результаты 
      каждого выражения. Например, следующие инструкции выводят значение 
      переменной $a:
          $a
          return
      Следующая инструкция также возвращает значение $a:
          return $a
      В следующем примере содержится инструкция, сообщающая 
      пользователю о том, что функция выполняет вычисление:
          function calculation {
              param ($value)
              "Подождите. Идет вычисление..." 
              $value += 73
              return $value
              }
      Запуск этой функции и назначение результата переменной приводят 
      к следующему результату:
          C:\PS> $a = calculation 14
          C:\PS>
      Строка "Подождите. Идет вычисление..." не отображается. Вместо 
      этого ей назначается значение переменной $a, как показано в 
      следующем примере:
          C:\PS> $a
          "Подождите. Идет вычисление..."
          87
      Эта функция выводит информационную строку и результат вычисления 
      и назначает их переменной $a.
СМ. ТАКЖЕ
    about_Functions
    about_Scopes
    about_Script_Blocks



about_scopes

РАЗДЕЛ
    about_Scopes
КРАТКОЕ ОПИСАНИЕ
    Объясняется концепция области действия в Windows PowerShell и 
    показывается, как устанавливать и изменять область элементов.
    
ПОЛНОЕ ОПИСАНИЕ
    Windows PowerShell защищает доступ к переменным, псевдонимам, 
    функциям и дискам Windows PowerShell (PSDrives), ограничивая 
    область их чтения и изменения. Применением нескольких простых 
    правил для области действия Windows PowerShell обеспечивает защиту от 
    случайного изменения элементов, которые менять не следует.
    Ниже перечислены основные правила области.
        - Любой элемент, включенный в область действия, виден в области, в 
          которой он был создан, а также в ее дочерних областях, если он явно 
          не сделан закрытым. Переменные, псевдонимы, функции и диски Windows 
          PowerShell можно помещать в одну или в несколько областей. 
        - Объект, созданный в области, можно изменить только в той 
          области, в которой он был создан, если для него явно не 
          указана другая область.
    При создании в одной области элемента с таким же именем, как у 
    элемента в другой области, первоначальный элемент может быть 
    скрыт под новым элементом. Однако он не переопределяется и не 
    изменяется.
  Области Windows PowerShell
    Области в Windows PowerShell имеют имена и номера. Имена задают 
    абсолютную область. Номера являются относительными и отражают 
    отношения между областями.
    Глобальная: 
        область, действующая при запуске Windows PowerShell. Переменные и 
        функции, присутствующие при запуске Windows PowerShell, созданы в 
        глобальной области. В нее входят автоматические переменные и 
        привилегированные переменные. Кроме того, в нее входят переменные, 
        псевдонимы и функции, входящие в профили Windows PowerShell. 
    Локальная: 
        текущая область. Локальной областью может быть глобальная или 
        любая другая область. 
    Закрытая: 
        элементы, созданные в закрытой области, недоступны из-за пределов 
        текущей области. Закрытая область позволяет создавать закрытую 
        версию элемента с таким же именем в другой области.
    Скрипт: 
        область, создаваемая при запуске файла скрипта. В области скрипта 
        выполняются только команды скрипта. Для команд скрипта область 
        скрипта является локальной областью.
    Нумерованные области:
        на области можно ссылаться по имени или по номеру, описывающему 
        расположение областей относительно друг друга.
        Область 0 - это текущая или локальная область. Область 1 - 
        это ближайшая родительская область текущей области. Область 2 
        - это родительская область ближайшей родительской области и т. д. 
        Нумерация областей полезна при использовании большого количества 
        рекурсивных областей.
 Родительские и дочерние области
 
    Новую область можно создать, запустив скрипт или функцию, создав 
    сеанс или запустив новый экземпляр Windows PowerShell. При 
    создании новой области возникают родительская область (первоначальная 
    область) и дочерняя область (созданная область).
    Все области Windows PowerShell являются дочерними для глобальной 
    области, однако при этом можно создавать много обычных и рекурсивных 
    областей.
    Элементы в родительской области доступны дочерней области, если 
    они явно не сделаны закрытыми. Элементы, создаваемые и изменяемые 
    в дочерней области, не влияют на родительскую область, если при 
    их создании область не указывается явно.
    
 Наследование
 
    Дочерняя область не наследует переменные, псевдонимы и функции 
    родительской области. Дочерней области доступен просмотр не являющихся 
    закрытыми элементов родительской области. Из дочерней области можно 
    изменить элементы родительской области, явно сославшись на них, 
    однако они не являются частью дочерней области.
    Однако дочерняя область создается со своим набором элементов. 
    Обычно в нее входят все псевдонимы с параметром AllScope. Об этом 
    параметре рассказано далее в этом разделе. В область входят все 
    переменные с параметром AllScope, а также некоторые переменные, 
    которые можно использовать для настройки области, например, 
    MaximumFunctionCount.
    Для поиска элементов в определенной области нужно использовать 
    параметр Scope командлетов Get-Variable или Get-Alias. 
    Например, для получения всех переменных в локальной области введите 
    следующую команду:
	get-variable -scope local
    Для получения всех переменных в глобальной области введите следующую 
    команду:
	get-variable -scope global
 Модификаторы области
 
    Чтобы указать область новой переменной, псевдонима или функции, 
    используйте модификатор области. Модификатор может иметь значения 
    Global или Script.
    Синтаксис модификатора области в переменной:
        $[<scope-modifier>]:<name> = <value>
    Синтаксис модификатора области действия в функции:
        function [<scope-modifier>]:<name> {<function-body>}
    Для скриптов по умолчанию устанавливается область скрипта. Для 
    функций и псевдонимов по умолчанию устанавливается локальная 
    область, даже если они определяются в скрипте.
 
 
    Следующая команда, не использующая модификатор области, создает 
    переменную в текущей или локальной области: 
       $a = "один" 
 
    Для создания той же переменной в глобальной области нужно использовать 
    модификатор области Global:
       $global:a = "один" 
    Для создания той же переменной в области скрипта используйте 
    модификатор области Script:
       $script:a = "один" 
    Модификатор области также можно использовать в функциях. Следующее 
    определение функции создает функцию в глобальной области:
       function global:Hello
       {
	    write-host "Всем привет"
       }
    Модификаторы области также можно использовать для ссылок на 
    переменные в другой области. Следующая команда ссылается на переменную 
    $test, сначала в локальной, а затем в глобальной области:
      $test
	
      $global:test
 Параметр AllScope
 
    Переменные и псевдонимы имеют свойство Option, которое может 
    иметь значение AllScope. Элементы со свойством AllScope 
    становятся частью создаваемых дочерних областей, хотя они не 
    наследуются родительскими областями. 
    Элементы со свойством AllScope видимы в дочерних областях и 
    являются их частью. Изменения в элементах любой области влияют на все 
    области, в которых определены переменные.   
 Управление областью
 
    В некоторых командлетах используется параметр Scope, позволяющий 
    получить или установить (создать и изменить) элементы в определенной 
    области. С помощью следующей команды можно найти все командлеты 
    текущего сеанса с параметром Scope: 
         get-help * -parameter scope
    Для поиска переменных, видимых в определенной области, нужно 
    использовать параметр Scope командлета Get-Variable. Видимыми являются 
    глобальные параметры, параметры в родительской области и параметры в 
    текущей области.
    Например, следующая команда получает переменные, видимые в локальной 
    области:
        get-variable -scope local
    Для создания переменной в определенной области используйте модификатор 
    области или параметр Scope командлета Set-Variable. Следующая команда 
    создает переменную в глобальной области:
	new-variable -scope global -name a -value "Один"
    Для указания области можно использовать и параметр Scope 
    командлетов New-Alias, Set-Alias или Get-Alias. Следующая команда 
    создает псевдоним в глобальной области:
	new-alias -scope global -name np -value Notepad.exe
    Для получения функция в определенной области используйте 
    командлет Get-Item в этой области. У командлета Get-Item нет параметра 
    scope.
 Использование с областями записи источника с точками
 
    Скрипты и функции подчиняются всем правилам области. При создании в 
    определенной области они влияют только на нее, если не использовать 
    параметр командлета или модификатор области для ее смены.
    Однако в текущую область можно добавить скрипт или функцию, 
    используя запись источника с точками. В этом случае при запуске 
    скрипта в текущей области все функции, псевдонимы и переменные, 
    создаваемые скриптом, становятся доступными в текущей области. 
 
    Чтобы добавить функцию в текущую область, введите точку (.) и 
    пробел перед путем и именем функции в вызове функции.
    Например, для запуска скрипта Sample.ps1 из каталога C:\Scripts в 
    области скрипта (используемой по умолчанию для скриптов) используйте 
    следующую команду:
        c:\scripts\sample.ps1
    Для запуска скрипта Sample.ps1 в локальной области используйте 
    следующую команду:
        . c:\scripts.sample.ps1
   
    При использовании оператора вызова (&) для запуска функции или 
    скрипта они не добавляются в текущую область. В следующем примере 
    используется оператор вызова:
        & c:\scripts.sample.ps1
    Любые псевдонимы, функции и переменные, создаваемые скриптом 
    Sample.ps1, недоступны в текущей области.
 Ограничение без области
 
    Некоторые концепции Windows PowerShell сходны с областями или 
    взаимодействуют с ними. Эти концепции можно перепутать с областью или с ее 
    поведением.
    Сеансы, модули и вложенные командные строки являются автономными 
    средами, но не являются дочерними областями глобальной области сеанса.
    Сеансы:
        сеанс - это среда, в которой работает Windows PowerShell.
        При создании сеанса на удаленном компьютере Windows 
        PowerShell открывает постоянное подключение к этому удаленному 
        компьютеру. Постоянное подключение позволяет использовать сеанс для 
        нескольких связанных команд.
 
        Поскольку сеанс является вложенной средой, он имеет 
        собственную область, но не является дочерней областью сеанса, 
        в котором был создан. Сеанс открывается с собственной глобальной 
        областью. Эта область независима от глобальной области сеанса.
        В сеансе можно создавать дочерние области. Например, для создания 
        дочерней области в сеансе можно запустить скрипт.
    Модули:
        модули Windows PowerShell используются для общего использования и 
        передачи средств Windows PowerShell. Модуль - это блок, содержащий 
        командлеты, скрипты, функции, переменные, псевдонимы и другие 
        полезные элементы. Элементы модуля недоступны вне модуля, если иное 
        не указано явно. Поэтому модули можно добавлять в сеанс и использовать 
        содержащиеся в них общие элементы, не беспокоясь о том, что другие 
        элементы могут аннулировать командлеты, скрипты, функции и другие 
        элементы текущего сеанса.
        По закрытости модуль напоминает область, но при добавлении в сеанс 
        модуля область действия не изменяется. Кроме того, модули не имеют 
        собственных областей, хотя скрипты в модуле, например, все скрипты Wind
ows PowerShell, имеют собственные области. 
    Вложенные командные строки:
        аналогично, вложенные командные строки не имеют собственных 
        областей. При вводе вложенная командная строка является 
        подмножеством среды. Однако при этом действительной остается 
        локальная область. 
        Скрипты имеют собственные области. При отладке скрипта и при 
        достижении точки останова скрипта действительной становится 
        область скрипта.
    Параметр Private.
        Переменные и псевдонимы имеют свойство Option, которое может иметь 
        значение Private. Элементы с параметром Private можно просматривать и 
        изменять в области, в которой они были созданы, но нельзя просматривать
 
        и изменять за ее пределами. 
        Например, при создании переменной с параметром private в 
        глобальной области и последующем запуске скрипта команды 
        Get-Variable в скрипте не будут выводить эту закрытую 
        переменную. Это происходит даже при использовании модификатора 
        глобальной области. 
   
        Параметр Option командлетов New-Variable, Set-Variable, 
        New-Alias и Set-Alias можно использовать для установки 
        значения Private для свойства Option.
    Видимость.
        Свойство Visibility переменной или псевдонима определяет, 
        видимы ли они вне контейнера (например, модуля), в котором 
        были созданы. Свойство Visibility предназначено для 
        контейнеров, точно так же как значение Private свойства Option 
        предназначено для областей.
        Свойство Visibility может иметь значения Public и Private. 
        Элементы с закрытой видимостью можно просматривать и изменять 
        только в контейнере, в котором они были созданы. Если 
        контейнер добавлен или импортирован, элементы с закрытой 
        видимостью нельзя просматривать или изменять.
        Поскольку свойство Visibility разработано для контейнеров, в 
        области оно функционирует иначе. При создании в глобальной области 
        элемент с закрытой видимостью нельзя просматривать или редактировать 
        ни в одной области. При попытке просмотра или изменения значения 
        переменной с закрытой видимостью Windows PowerShell возвращает 
        сообщение об ошибке.
        Для создания переменной с закрытой видимостью можно использовать 
        командлеты New-Variable и Set-Variable.
   
ПРИМЕРЫ
  Пример 1. Изменение значения переменной только в скрипте
      Следующая команда меняет значение переменной $ConfirmPreference 
      в скрипте. Изменение не влияет на глобальную область.
    
      Сначала для отображения значения переменной $ConfirmPreference 
      в локальной области нужно использовать следующую команду:
          C:\PS> $ConfirmPreference
          High
      Создайте скрипт Scope.ps1, содержащий следующие команды:
          $ConfirmPreference = "Low"
          "Значение `$ConfirmPreference равно $ConfirmPreference." 
      Запустите скрипт. Скрипт изменит значение переменной 
      $ConfirmPreference и выведет ее значение в области скрипта. Выходные 
      данные должны выглядеть следующим образом.
          Значение $ConfirmPreference равно Low.
        
      Затем проверьте текущее значение переменной $ConfirmPreference 
      в текущей области.
          C:\PS> $ConfirmPreference
          High
      
      Этот пример показывает, что изменение значения переменной в области 
      скрипта не влияет на значение этой переменной в родительской области.
  Пример 2. Просмотр значения переменной в других областях
 
      Модификаторы области можно использовать для просмотра значения 
      переменной в локальной области и в родительской области. 
      Сначала определите переменную $test в глобальной области.
	  $test = "Глобальная"
      Затем создайте скрипт Sample.ps1, определяющий переменную 
      $test. В скрипте нужно использовать модификатор области для 
      ссылки на глобальную или локальную версии переменной $test.
          # In Sample.ps1
          $test = "Локальная"
          "Локальное значение `$test равно $test." "Глобальное 
          значение `$test равно $global:test." 
    
      При запуске скрипта Sample.ps1 выходные данные должны выглядеть 
      следующим образом.
         
          Локальное значение `$test равно Локальная.
          Глобальное значение `$test равно Глобальная.
      По завершении скрипта в сеансе определено только глобальное значение 
      переменной $test.
          C:\PS> $test
          Global
  Пример 3. Изменение значения переменной в родительской области
      Если переменная не защищена параметром Private или другим 
      способом, ее значение в родительской области можно просматривать и 
      изменять.
      Сначала определите переменную $test в глобальной области.
	  $test = "Глобальная"
      Затем создайте скрипт Sample.ps1, определяющий переменную 
      $test. В скрипте нужно использовать модификатор области для 
      ссылки на глобальную или локальную версии переменной $test.
          # In Sample.ps1
          $global:test = "Локальная"
          "Глобальное значение `$test равно $global:test."
        
      По завершении скрипта изменяется глобальное значение переменной 
      $test.
          C:\PS> $test
          Local
          
  Пример 4. Создание закрытой переменной
      Закрытая переменная - это переменная, для которой параметр 
      Option имеет значение Private. Закрытые переменные наследуются 
      дочерней областью, но просматривать и изменять их можно только 
      в области, в которой они были созданы.
      Следующая команда создает закрытую переменную $ptest в 
      локальной области.
	  new-variable -name ptest -value 1 -option private
      Значение переменной $ptest можно показать и изменить в 
      локальной области.
	  C:\PS> $ptest
          1
          C:\PS> $ptest = 2
          C:\PS> $ptest
	  2
         
      
      Затем создайте скрипт Sample.ps1, содержащий следующие команды.
      Команда пытается отобразить и изменить значение $ptest.  
          # In Sample.ps1
          "Значение `$Ptest равно $Ptest."
      	  "Значение `$Ptest равно $global:Ptest."
    
      Поскольку переменная $ptest невидима в области действия 
      скрипта, выходные данные не отображаются.
    
          "Значение $Ptest равно ."
      	  "Значение $Ptest равно ."
        
   
СМ. ТАКЖЕ
    about_Variables
    about_Environment_Variables
    about_Functions
    about_Script_Blocks



about_script_blocks

РАЗДЕЛ
    about_Script_Blocks
КРАТКОЕ ОПИСАНИЕ
    Определение блока скрипта и описание использования блоков скрипта 
    в языке программирования Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    В языке программирования Windows PowerShell блок скрипта 
    представляет собой набор выражений или инструкций, которые можно 
    использовать как одно целое. Блок скрипта может принимать аргументы и 
    возвращать значения.
    Синтаксически блок скрипта представляет собой список выражений в 
    скобках, как показано ниже:
        {<statement list>}
    Блок скрипта возвращает выходные данные всех команд в блоке 
    скрипта в виде единого объекта или в виде массива.
    Как и функции, блоки скрипта могут включать параметры. Ключевое 
    слово Param позволяет назначать именованные параметры, как 
    показано ниже: 
        {
            param ([type]$parameter1 [,[type]$parameter2]) 
            <statement list>
        }
    В отличие от функции, в блоке скрипта нельзя задавать параметры 
    вне скобок.
    Как и в функциях, в блоках скрипта можно использовать ключевые слова 
    DynamicParam, Begin, Process и End. Дополнительные сведения см. в разделах 
    about_Functions и about_Functions_Advanced.
  Использование блоков скриптов
      Блок скрипта представляет собой экземпляр типа Microsoft .NET 
      Framework (System.Management.Automation.ScriptBlock). Команды 
      могут иметь значения параметров блока скрипта. Например, у 
      командлета Invoke-Command есть параметр ScriptBlock, 
      принимающий значение блока скрипта, как показано в этом примере:
          C:\PS> invoke-command -scriptblock  { get-process }
          Handles  NPM(K)    PM(K)     WS(K) VM(M)   CPU(s)     Id ProcessName
          -------  ------    -----     ----- -----   ------     -- ----------- 
           
              999      28    39100     45020   262    15.88   1844 communicator
              721      28    32696     36536   222    20.84   4028 explorer   
          . . .
      Блок скрипта, используемый как значение, может быть более 
      сложным, как показано в следующем примере:
          C:\PS> invoke-command -scriptblock { param ($uu = "Parameter"); 
              "$uu задана." } 
          Параметр задан.
      В предыдущем примере блок скрипта использует ключевое слово 
      Param для создания параметра со значением по умолчанию. В следующем 
      примере параметр Args командлета Invoke-Command используется для 
      назначения другого значения параметру:
          C:\PS> invoke-command -scriptblock {param ($uu = "Parameter"); 
              "$uu задана."} -args "Другое значение" 
	  Другое значение задано.
      Блок скрипта можно назначить переменной, как показано в 
      следующем примере.
          C:\PS> $a = {param ($uu = "Parameter"); "$uu задана."}
      Переменную можно использовать с командлетами, например, с 
      Invoke-Command, как показано в следующем примере:
          C:\PS> invoke-command -scriptblock $a -args "Другое значение"
          Другое значение задано.
      Запустить блок скрипта, назначенного переменной, можно с 
      помощью оператора вызова (&), как показано в следующем примере:
          C:\PS> &$a 
          Параметр задан.
      Для блока скрипта можно также задать параметр, как показано в 
      следующем примере:
          C:\PS> &$a "Другое значение"
          Другое значение задано.
      Чтобы назначить переменной значение, создаваемое блоком 
      скрипта, нужно использовать оператор вызова для непосредственног
      о запуска блока скрипта, как показано в следующем примере:
          C:\PS> $a = &{param ($uu = "Parameter"); "$uu задана."}
          C:\PS> $a
          Параметр задан.
      Дополнительные сведения об операторе вызова см.в разделе 
      about_Operators.
СМ. ТАКЖЕ
    about_Functions
    about_Functions_Advanced
    about_Operators



about_script_internationalization

РАЗДЕЛ
    about_Script_Internationalization
КРАТКОЕ ОПИСАНИЕ
    Описание возможностей интернационализации скриптов Windows 
    PowerShell 2.0, позволяющих скриптам выводить пользователям 
    сообщения и команды на языке их пользовательского интерфейса.
ПОЛНОЕ ОПИСАНИЕ
    Возможности интернационализации скриптов Windows PowerShell 
    позволяют более качественно обслуживать пользователей из разных 
    стран мира, выводя справочную информацию и сообщения для скриптов 
    и функций на языке пользовательского интерфейса.
    
    При запуске средства интернационализации скриптов запрашивают 
    значение региональных параметров пользовательского интерфейса 
    операционной системы, импортируют соответствующие переведенные 
    текстовые строки и отображают их пользователю. Раздел Data 
    позволяет хранить текстовые строки отдельно от кода, чтобы их 
    можно было легко найти и извлечь. Новый командлет ConvertFrom-Stri
    ngData преобразует текстовые строки в напоминающие словарь 
    хэш-таблицы для упрощения перевода. 
    Средства Windows PowerShell 2.0, используемые для интернационализа
    ции скриптов, не поддерживаются PowerShell 1.0. Скрипты с этими 
    средствами не будут работать в Windows PowerShell 1.0, если не 
    внести в них изменения.  
    Для поддержки интернационализации текста справки в Windows 
    PowerShell 2.0 имеются следующие средства.
       -- Раздел Data, позволяющий отделять текстовые строки от 
          кодовых инструкций. Дополнительные сведения о разделе Data 
          см. в разделе about_Data_Sections.
       -- Новые автоматические переменные $PSCulture и $PSUICulture. 
          В переменной $PSCulture сохраняется имя языка 
          пользовательского интерфейса, используемого системой для 
          таких элементов, как дата, время и валюта. В переменной 
          $PSUICulture сохраняется имя языка пользовательского интерфейса, 
          используемого системой для таких элементов, как меню и текстовые стро
ки.
       -- Командлет ConvertFrom-StringData преобразует для упрощения 
          перевода текстовые строки в напоминающие словарь 
          хэш-таблицы. Дополнительные сведения см. в описании 
          командлета ConvertFrom-StringData.
       -- Файл нового типа PSD1, где хранятся переведенные текстовые 
          строки. Файлы PSD1 хранятся в подкаталогах соответствующих 
          языков в каталоге скрипта.
    
       -- Командлет Import-LocalizedData, позволяющий импортировать 
          переведенные текстовые строки для указанного языка в скрипт 
          в среде выполнения. Это командлет распознает и импортирует 
          строки на любом языке, поддерживаемом Windows. 
          Дополнительные сведения см. в разделе Import-LocalizedData.
 РАЗДЕЛ DATA. Сохранение строк по умолчанию
 
     Раздел Data в скрипте используется для сохранения текстовых 
     строк на установленном по умолчанию языке.
     Строки следует располагать парами "ключ-значение" в автономной 
     строке. Каждая пара "ключ-значение" должна находиться на 
     отдельной строке. Если используются комментарии, они должны 
     находиться на отдельных строках.
     Командлет ConvertFrom-StringData преобразует пары "ключ-значение"
     в автономной строке в хэш-таблицу, напоминающую словарь, 
     которая сохраняется внутри значения переменной раздела Data.
     В следующем примере в разделе Data скрипта World.ps1 содержится 
     набор сообщений с предупреждениями для скрипта на английском 
     языке (США) (en-US). Командлет ConvertFrom-StringData 
     преобразует строки в хэш-таблицу и сохраняет их в переменной 
     $msgtable.
	$msgTable = Data {
	    # culture="en-US" 
	    ConvertFrom-StringData @' 
		helloWorld = Hello, World.
	        errorMsg1 = You cannot leave the user name field blank.
         	promptMsg = Please enter your user name.
	'@
	}
     Дополнительные сведения о приведенных в примере строках 
     см. в разделе about_Quoting_Rules.
 ФАЙЛЫ PSD1: сохранение переведенных строк
    Сообщения скрипта для каждого языка пользовательского интерфейса 
    сохраняются в отдельном текстовом файле с тем же именем, что у 
    скрипта, и с расширением PSD1. Файлы сохраняются в подкаталогах 
    каталога скрипта с именами региональных параметров в следующем 
    формате:
	<язык>-<регион>
    Примеры: ru-RU, ar-SA, zh-Hans
    Например, если скрипт World.ps1 сохранен в каталоге C:\Scripts, 
    нужно создать структуру каталогов с файлами, выглядящую примерно так:
    C:\Scripts
	C:\Scripts\World.ps1
	    C:\Scripts\ru-RU\WorldPSD1	
            C:\Scripts\ar-SA\WorldPSD1	
            C:\Scripts\zh-CN\WorldPSD1	
	    ...	
    Файл World.psd1 в подкаталоге ru-RU каталога скрипта может 
    содержать следующую инструкцию:
    	ConvertFrom-StringData @'
	    helloWorld = Hello, World (на русском).
	    errorMsg1 = You cannot leave the user name field blank (на русском).
            promptMsg = Please enter your user name (на русском).
	'@
    Аналогично, файл World.psd1 в подкаталоге ar-SA каталога скрипта 
    может содержать следующую инструкцию:
    	ConvertFrom-StringData @'
	    helloWorld = Hello, World (на арабском).
	    errorMsg1 = You cannot leave the user name field blank (на арабском).
            promptMsg = Please enter your user name (на арабском).
	'@
 IMPORT-LOCALIZEDDATA: Динамическое извлечение переведенных строк
    Для извлечения строк на языке пользовательского интерфейса 
    текущего пользователя используйте командлет Import-LocalizedData. 
    Командлет Import-LocalizedData находит значение автоматической 
    переменной $PSUICulture и импортирует содержимое файлов 
    <имя_скрипта>.psd1 из подкаталога, соответствующего значению 
    переменной $PSUICulture. Затем он сохраняет импортированные 
    данные в переменной, указанной в значении параметра BindingVariable. 
	import-localizeddata -bindingVariable msgTable
    Например, если команда Import-LocalizedData входит в скрипт 
    C:\Scripts\World.ps1 и переменная $PSUICulture имеет значение 
    "ar-SA", команда Import-LocalizedData находит следующий файл:
         C:\Scripts\ar-SA\World.psd1
    Затем она импортирует текстовые строки на арабском языке из этого 
    файла в переменную $msgTable, заменяя любые строки по умолчанию, 
    которые могут быть определены в разделе Data скрипта World.ps1.
    В результате, когда скрипт использует переменную $msgTable для 
    вывода сообщений пользователю, эти сообщения отображаются на 
    арабском языке.
    Например, следующий скрипт выводит сообщение Please enter your 
    user name на арабском языке:
	if (($username)) { $msgTable.promptMsg }  
    
    Если командлет Import-LocalizedData не может найти файл PSD1, 
    соответствующий значению переменной $PSUIculture, значение 
    $msgTable не заменяется и при вызове $msgTable.promptMsg 
    выводятся строки на установленном по умолчанию языке (английский 
    (США)).
 ПРИМЕР
    В этом примере показано, как средства интернационализации 
    используются в скрипте для показа пользователям дня недели на 
    языке, установленном на компьютере.
     
    Ниже приведено полное содержание файла скрипта Sample1.ps1. 
    Скрипт начинается с раздела Data с именем Day ($Day), содержащего 
    команду ConvertFrom-StringData. Выражение, отправленное 
    ConvertFrom-StringData, представляет собой автономную строку, 
    содержащую имена дней на установленном по умолчанию языке 
    (Английский, США) в парах вида "ключ-значение". Командлет 
    ConvertFrom-StringData преобразует пары "ключ-значение" из 
    автономной строки в хэш-таблицу и сохраняет их в значении 
    переменной $Day.
    Команда Import-LocalizedData импортирует содержимое файла PSD1 в 
    каталог, соответствующий значению автоматической переменной 
    $PSUICulture, а затем сохраняет его в переменной $Day, заменяя 
    значения $Day, определенные в разделе Data.
    Остальные команды загружают строки в массив и выводят их. 
   
     $Day = DATA {
     # culture="en-US"
     ConvertFrom-StringData @'
        messageDate = Today is
        d1 = Monday
        d2 = Tuesday
        d3 = Wednesday
        d4 = Thursday
        d5 = Friday
        d6 = Saturday
        d7 = Sunday
     '@
     }
	Import-LocalizedData -BindingVariable Day
	# Создание массива дней недели.
	$a = $Day.d1, $Day.d2, $Day.d3, $Day.d4, $Day.d5, $Day.d6, $Day.d7
        # Получение дня недели в виде числа (Monday = 1).
        # Обращение к индексу массива $a для получения названия дня недели.
        # Форматирование строки для построения предложения.
        "{0} {1}" -f $Day.messageDate, $a[(get-date -uformat %u)] | Out-Host
    Файлы PSD1, поддерживающие скрипт, сохраняются в подкаталогах 
    каталога скрипта, имена которых соответствуют значениям 
    переменной $PSUICulture. 
    The following is a complete listing of .\ru-RU\sample1.psd1:
            # culture="ru-RU"
    ConvertFrom-StringData @'
	messageDate = Today is 
	d1 = Monday (на русском языке)
	d2 = Tuesday (на русском языке)
	d3 = Wednesday (на русском языке)
	d4 = Thursday (на русском языке)
	d5 = Friday (на русском языке)
	d6 = Saturday (на русском языке)
	d7 = Sunday (на русском языке)
    '@
    При запуске скрипта Sample.ps1 в системе, где переменная 
    $PSUICulture имеет значение ru-RU, выводится следующее:
	
	Today is Friday (на русском языке)
СМ. ТАКЖЕ
    about_Data_Sections
    about_Automatic_Variables
    about_Hash_Tables
    about_Quoting_Rules
    ConvertFrom-StringData
    Import-LocalizedData       



about_scripts

РАЗДЕЛ
    about_Scripts
КРАТКОЕ ОПИСАНИЕ
    Описание написания и выполнения скриптов в Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Скрипт - это текстовый файл, содержащий одну или несколько команд 
    Windows PowerShell. Файлы скриптов Windows PowerShell имеют 
    расширение PS1. 
    Написание скрипта позволяет сохранить команду для последующего 
    использования и легко передать ее другим пользователям. Также 
    очень важно то, что скрипты позволяют выполнять команды, просто 
    вводя путь к скрипту и имя файла. Файлы скриптов могут содержать 
    всего одну команду или длинный набор команд, сопоставимый по 
    размеру с большими приложениями.
    В скриптах имеются дополнительные возможности, например, 
    возможность использовать специальный комментарий #Requires, 
    возможность использования параметров, поддержка разделов данных и 
    поддержка цифровых подписей для обеспечения безопасности. Кроме 
    того, для скриптов и любых функций внутри скриптов можно писать 
    разделы справки. 
 КАК НАПИСАТЬ СКРИПТ
    Скрипт может содержать любые допустимые команды Windows 
    PowerShell, в том числе одиночные команды и команды, использующие 
    конвейеры, функции и структуры управления, например, инструкции 
    If и циклы For.
    Для написания скрипта нужно запустить текстовый редактор (например, 
    Блокнот) или редактор скриптов, например, интегрированную среду 
    скриптов Windows PowerShell (ISE). После этого ввести команды и 
    сохранить их в файле с допустимым именем и расширением PS1. 
    В следующем примере приведен простой скрипт, возвращающий список 
    служб, запущенных в текущей системе, и сохранить его в файле 
    журнала. Имя файла журнала определяется по текущей дате.
        $date = (get-date).dayofyear
        get-service | out-file "$date.log"
    Для создания этого скрипта нужно открыть текстовый редактор или 
    редактор скриптов и ввести эти команды, а затем сохранить их в 
    файле с именем ServiceLog.ps1. 
 ВЫПОЛНЕНИЕ СКРИПТА
    Прежде чем выполнить скрипт, нужно изменить установленную по 
    умолчанию политику исполнения Windows PowerShell. Установленная 
    по умолчанию политика исполнения запрещает выполнение любых 
    скриптов, в том числе скриптов, созданных на локальном 
    компьютере. Дополнительные сведения см. в разделе about_Execution_
    Policies.
    Для выполнения скрипта нужно ввести полное имя файла скрипта и 
    полный путь к нему. 
    Например, для выполнения скрипта ServicesLog из каталога 
    C:\Scripts введите следующую команду:
        c:\scripts\ServicesLog.ps1
    Для выполнения скрипта из текущего каталога нужно ввести путь к 
    текущему каталогу или использовать точку для обозначения текущего 
    каталога и обратную косую черту для обозначения пути (.\).
    Например, для выполнения скрипта ServicesLog.ps1 из локального 
    каталога введите следующую команду:
        .\ServicesLog.ps1
    Для обеспечения безопасности Windows PowerShell не выполняет 
    скрипты при двойном щелчке значка скрипта в проводнике и при 
    вводе имени скрипта без указания полного пути, даже если скрипт 
    находится в текущем каталоге. Дополнительные сведения о 
    выполнении команд и скриптов в Windows PowerShell см. в разделе 
    about_Command_Precedence.
 УДАЛЕННОЕ ВЫПОЛНЕНИЕ СКРИПТОВ
    Для выполнения скрипта на удаленном компьютере нужно использовать 
    параметр FilePath командлета Invoke-Command.
    В качестве значения параметра FilePath нужно ввести путь и имя файла 
    скрипта. Скрипт должен располагаться на локальном компьютере или 
    в каталоге, доступ к которому с локального компьютера открыт. 
    Следующая команда выполняет скрипт ServicesLog.ps1 на удаленном 
    компьютере Server01.
        invoke-command -computername Server01 -filepath C:\scripts\servicesLog.
ps1 
 ПАРАМЕТРЫ В СКРИПТАХ
    Для определения параметров в скрипте нужно использовать 
    инструкцию Param. Инструкция Param должна быть первой в скрипте, 
    за исключением комментариев и инструкций #Requires.
    Параметры скриптов работают примерно так же, как и параметры 
    функций. Значения параметров доступны всем командам скрипта. Все 
    возможности параметров функций, в том числе атрибут Parameter и 
    его именованные аргументы, также доступны в скриптах.
    При выполнении скриптов пользователи скрипта вводят параметры 
    после имени скрипта. 
    В следующем примере показан скрипт Test-Remote.ps1 с параметром 
    ComputerName. Обе функции скрипта могут использовать значение 
    параметра ComputerName.
        param ($ComputerName = $(throw "ComputerName parameter is required."))
        function CanPing {
           $error.clear()
           $tmp = test-connection $computername -erroraction SilentlyContinue
           if ($?) 
               {write-host "Ping failed: $ComputerName."; return $false}
           else
               {write-host "Ping succeeded: $ComputerName"; return $true}
        }
        function CanRemote {
            $s = new-pssession $computername -erroraction SilentlyContinue
            if ($s -is [System.Management.Automation.Runspaces.PSSession])
                {write-host "Remote test succeeded: $ComputerName."}
            else
                {write-host "Remote test failed: $ComputerName."}
        }
        if (CanPing $computername) {CanRemote $computername}
    Для выполнения этого скрипта нужно ввести имя параметра после 
    имени файла скрипта.  Пример:
	C:\PS> .\test-remote.ps1 -computername Server01
	Ping succeeded: Server01
	Remote test failed: Server01
    Дополнительные сведения о выражении Param и параметрах функций 
    см. в разделах about_Functions и about_Functions_Advanced_Parameters.
 СПРАВКА ДЛЯ СКРИПТОВ
    Командлет Get-Help позволяет получить справку для скриптов, а 
    также для командлетов, поставщиков и функций. Чтобы получить 
    справку для скрипта, введите Get-Help и укажите путь и имя файла 
    скрипта. Если путь к скрипту указан в переменной среды Path, его 
    можно не указывать.
    Например, для получения справки для скрипта ServicesLog.ps1 
    введите следующую команду:
        get-help C:\admin\scripts\ServicesLog.ps1
    Справку для скрипта можно написать с помощью любого из следующих 
    двух методов:
    --  Справка для скриптов на основе комментариев
        Темы справки создаются посредством использования в 
        комментариях специальных ключевых слов. Для создания справки 
        для скрипта на основе комментариев, комментарии нужно 
        разместить в начале или в конце файла скрипта. Дополнительные 
        сведения о справке на основе комментариев см. в разделе 
        about_Comment_Based_Help.
    --  Справка для скриптов на основе XML
        Создайте раздел справки XML подобно тому, как это делается 
        для командлетов. Справка на основе XML нужна в том случае, 
        если разделы справки переводятся на различные языки. 
        Для привязки скрипта к теме справки на основе XML нужно 
        использовать ключевое слово комментария справки 
        .ExternalHelp. Дополнительные сведения о ключевом слове 
        ExternalHelp см. в разделе about_Comment_Based_Help. 
        Дополнительные сведения о справке на основе XML см. в разделе 
        "How to Write Cmdlet Help" (Как писать справку для 
        командлетов) в библиотеке MSDN по адресу 
        http://go.microsoft.com/fwlink/?LinkID=123415.
 ОБЛАСТЬ ДЕЙСТВИЯ СКРИПТА И ЗАПИСЬ С ПОМОЩЬЮ ТОЧЕК
    Каждый скрипт выполняется в своей области действия. Функции, 
    переменные, псевдонимы и диски, создаваемые в скрипте, существуют 
    только в области действия скрипта. Эти элементы и их значения 
    недоступны в области, в которой запущен скрипт.
    Для выполнения скрипта в другой области можно указать ее при 
    запуске (глобальную или локальную) или использовать запись с точками.
    Возможность записи с точками позволяет выполнить скрипт в текущей 
    области вместо области скрипта. При выполнении скрипта с 
    использованием записи с точками команды скрипта выполняются так, 
    как если бы они вводились в командной строке. Функции, 
    переменные, псевдонимы и диски, создаваемые скриптом, создаются в 
    текущей области. После выполнения скрипта созданные элементы 
    можно использовать, и их значения будут доступными в текущем сеансе.
    Для выполнения скрипта с использованием записи с точками нужно 
    ввести точку (.) и пробел перед путем к скрипту.
    Пример:
        . C:\scripts\UtilityFunctions.ps1
    -или-
        . .\UtilityFunctions.ps1
    После выполнения скрипта UtilityFunctions функции и переменные, 
    создаваемые скриптом, добавляются в текущую область. 
    Например, скрипт UtilityFunctions.ps1 создает функцию New-Profile 
    и переменную $ProfileName.
        #In UtilityFunctions.ps1
        function New-Profile
        {
            Write-Host "Running New-Profile function"
            $profileName = split-path $profile -leaf
            if (test-path $profile)
               {write-error "There is already a $profileName profile on this co
mputer."}
            else
	       {new-item -type file -path $profile -force }
        }
    При выполнении скрипта UtilityFunctions.ps1 в собственной области 
    функция New-Profile и переменная $ProfileName существуют только 
    во время работы скрипта. После завершения работы скрипта функция 
    и переменная удаляются, как показано в следующем примере.
        C:\PS> .\UtilityFunctions.ps1
        C:\PS> New-Profile
        Условие "new-profile" не распознано как командлет, функция, 
        выполняемая программа или файл скрипта. Проверьте условие и 
        повторите попытку.
        В строке:1 знак:12
        + new-profile < 
           + CategoryInfo          : ObjectNotFound: (new-profile:String) [], 
           + FullyQualifiedErrorId : CommandNotFoundException
        C:\PS> $profileName
        C:\PS>
    При выполнении скрипта с использованием записи с помощью точек 
    скрипт создает функцию New-Profile и переменную $ProfileName в 
    текущем сеансе в текущей области. После выполнения скрипта 
    функцию New-Profile можно использовать в сеансе, как показано в 
    следующем примере.
        C:\PS> . .\UtilityFunctions.ps1
        C:\PS> New-Profile
            Directory: C:\Users\juneb\Documents\WindowsPowerShell
            Mode    LastWriteTime     Length Name 
            ----    -------------     ------ ----
            -a---   1/14/2009 3:08 PM      0 Microsoft.PowerShellISE_profile.ps
1
        C:\PS> $profileName
        Microsoft.PowerShellISE_profile.ps1
    Дополнительные сведения об областях см. в разделе about_Scopes.
 СКРИПТЫ В МОДУЛЯХ
    Модуль представляет собой набор связанных ресурсов Windows 
    PowerShell, который можно распространять в качестве единого 
    целого. Модули можно использовать для организации скриптов, 
    функций и других ресурсов. Также модули можно использовать для 
    распространения кода и для получения кода из надежных источников.
    Скрипты можно добавлять в модули. Можно создавать модули 
    скриптов, полностью или в основном состоящие из скрипта и 
    вспомогательных ресурсов. Модуль скрипта представляет собой 
    скрипт с в виде файла с расширением PSM1.
    Дополнительные сведения о модулях см. в разделе about_Modules.
 ДРУГИЕ ВОЗМОЖНОСТИ В СКРИПТАХ 
    В Windows PowerShell имеется множество полезных средств, которые 
    можно использовать в скриптах.
    #Requires 
        Выражение #Requires можно использовать, чтобы скрипт не 
        выполнялся без указанных модулей или оснасток или при 
        отсутствии указанной версии Windows PowerShell. 
        Дополнительные сведения см. в разделе about_Requires.
    $MyInvocation
        Автоматическая переменная $MyInvocation содержит информацию о 
        текущей команде, в том числе о текущем скрипте. Эту 
        переменную и ее свойства можно использовать для получения 
        информации о скрипте во время его работы. Например, переменная 
        $MyInvocation.MyCommand.Path содержит путь и имя файла скрипта.
    Разделы данных
        Ключевое слово Data можно использовать для разделения в 
        скриптах данных и логики. Использование разделов данных также 
	упрощает локализацию. Дополнительные сведения см. в разделах 
	about_Data_Sections и about_Script_Localization.
    Подписание скриптов
        В скрипты можно добавлять цифровые подписи. В зависимости от 
        политики исполнения цифровые подписи можно использовать для 
        ограничения выполнения скриптов, которые могут содержать 
        небезопасные команды. Дополнительные сведения см. в разделах 
        about_Execution_Policies и about_Signing.
СМ. ТАКЖЕ
    about_Command_Precedence
    about_Comment_Based_Help
    about_Execution_Policies
    about_Functions
    about_Modules
    about_Profiles
    about_Requires
    about_Scopes
    about_Script_Blocks
    about_Signing
    Invoke-Command



about_Session_Configurations

РАЗДЕЛ
    about_Session_Configurations
КРАТКОЕ ОПИСАНИЕ
    Описание конфигураций сеансов, определяющих, пользователей, которые могут 
    подключаться к компьютеру удаленно и команды, которые они могут 
    запускать.
ПОЛНОЕ ОПИСАНИЕ
    Конфигурация сеанса представляет собой группу параметров на 
    локальном компьютере, определяющую среду для сеансов Windows 
    PowerShell, создаваемых при подключении удаленных пользователей к 
    локальному компьютеру. 
    Администраторы компьютера могут использовать конфигурации сеансов 
    для защиты компьютера и определения специальных сред для 
    пользователей, подключающихся к компьютеру.
    Администраторы также могут использовать конфигурации сеансов, 
    чтобы определять разрешения, необходимые для удаленного 
    подключения к компьютеру. По умолчанию только члены группы 
    "Администраторы" имеют разрешение использовать конфигурацию 
    сеанса для удаленного подключения, однако настройки по умолчанию 
    можно изменить, чтобы разрешить всем или отдельным пользователям 
    удаленно подключаться к компьютеру.
    Конфигурации сеансов являются функцией удаленного управления 
    Windows PowerShell на основе веб-служб для управления (WS-Management). 
    Они применяются только при использовании командлетов New-PSSession, 
    Invoke-Command, или Enter-PSSession для подключения к удаленному компьютеру
.
    Примечание. Для управления конфигурациями сеансов на компьютерах 
                под управлением Windows Vista, Windows Server 2008 или более 
                поздней версии Windows нужно запустить Windows PowerShell с 
                помощью команды "Запуск от имени администратора".
 О конфигурациях сеансов  
    В каждом сеансе Windows PowerShell используется конфигурация 
    сеанса. Это относится как к постоянным сеансам, создаваемым с 
    помощью командлетов New-PSSession или Enter-PSSession, так и к 
    временным сеансам, создаваемым Windows PowerShell при 
    использовании параметра ComputerName в командлетах, использующих 
    технологию удаленного взаимодействия на основе WS-Management, например, 
    Invoke-Command. 
    Администраторы могут использовать конфигурации сеансов для защиты 
    ресурсов компьютера и создания специальных сред для пользователей, 
    подключающихся к компьютеру. Например, конфигурацию сеанса 
    можно использовать, чтобы ограничить размер объектов, получаемых 
    компьютером во время сеанса, определить языковой режим сеанса 
    или задать командлеты, поставщики и функции, доступные 
    во время сеанса. 
    Настройка дескриптора безопасности конфигурации сеанса позволяет 
    определить, кто может использовать конфигурацию сеанса для 
    подключения к компьютеру. Для использования конфигурации сеанса в 
    сеансе пользователи должны иметь разрешение на запуск.
    Если у пользователя нет необходимых разрешений на использование 
    на компьютере любых конфигурация сеанса, он не сможет 
    подключиться к компьютеру удаленно.   
    
    По умолчанию использовать установленные по умолчанию конфигурации 
    сеансов могут только администраторы компьютера, однако 
    дескрипторы безопасности можно поменять, чтобы разрешить всем, 
    никому или отдельным пользователям использовать конфигурации 
    сеансов на компьютере.
 
 Конфигурации сеансов по умолчанию.
    В состав Windows PowerShell входит встроенная конфигурация сеансов 
    Microsoft.PowerShell. На компьютерах под управлением 64-разрядных 
    версий ОС Windows, в состав Windows PowerShell также входит 
    32-разрядная конфигурация сеансов Microsoft.PowerShell32.
    Эти конфигурации сеансов используются для сеансов по умолчанию, 
    т. е. если в команде создания сеанса отсутствует параметр 
    ConfigurationName командлетов New-PSSession, Enter-PSSession или 
    Invoke-Command.
    Дескрипторы безопасности конфигураций сеансов по умолчанию могут 
    использовать только члены группы "Администраторы" локального 
    компьютера. Таким образом, до изменения установленных по 
    умолчанию параметров удаленно подключаться к компьютеру могут 
    только члены группы "Администраторы".
    Конфигурации сеанса по умолчанию можно изменить с помощью 
    привилегированной переменной $PSSessionConfigurationName. 
    Дополнительные сведения см. в разделе about_Preference_Variables.
 Просмотр конфигураций сеансов на локальном компьютере. Для получения 
 конфигураций сеансов на локальном компьютере используйте командлет Get-
 PSSessionConfiguration. 
    Например, введите следующую команду:
        C:\PS> get-pssessionconfiguration | format-list -property name, permiss
ion
        Name       : microsoft.powershell
        Permission : BUILTIN\Administrators AccessAllowed
        Name       : microsoft.powershell32
        Permission : BUILTIN\Administrators AccessAllowed
    Также для просмотра конфигураций сеансов можно использовать 
    поставщик WS-Management в Windows PowerShell. Поставщик 
    WS-Management создает в сеансе диск WSMAN:.
    На диске WSMAN: конфигурации сеансов находятся в узле Plugin. 
    (Все конфигурации сеансов находятся на узле Plugin, но на узле 
    Plugin находятся и элементы, не являющиеся конфигурациями сеансов).
    Например, для просмотра конфигураций сеанса на локальном 
    компьютере введите:
         C:\PS> dir wsman:\localhost\plugin\microsoft*
      
                    WSManConfig: Microsoft.WSMan.Management\WSMan::loc
                    alhost\Plugin
         Name                      Type                 Keys
         ----                      ----                 ----
         microsoft.powershell      Container            {Name=microsoft.powersh
ell}
         microsoft.powershell32    Container            {Name=microsoft.powersh
ell}
 Просмотр конфигураций сеансов на удаленном компьютере. Для просмотра 
 конфигураций сеансов на удаленном компьютере используйте командлет 
 Connect-WSMan, чтобы добавить примечание для удаленного компьютера 
 на диск WSMAN: на локальный компьютер и использовать диск WSMAN: для 
 просмотра конфигураций сеансов.
    Например, следующая команда добавляет узел для удаленного 
    компьютера Server01 на диск локального компьютера WSMAN:.
        C:\PS> connect-wsman server01.corp.fabrikam.com
    После завершения выполнения команды можно перейти на узел для 
    компьютера Server01 и просмотреть конфигурации сеансов.
        
    Пример:
        C:\PS> cd wsman:
        
        PS WSMan:\> dir 
        ComputerName                                  Type
        ------------                                  ----
        localhost                                     Container
        server01.corp.fabrikam.com                    Container
        PS WSMan:\> dir server01*\plugin\*
               WSManConfig: Microsoft.WSMan.Management\WSMan::server01.corp.fab
rikam.com\Plugin
        Name                      Type                 Keys
        ----                      ----                 ----
        microsoft.powershell      Container            {Name=microsoft.powershe
ll}
        microsoft.powershell32    Container            {Name=microsoft.powershe
ll32}
 Изменение дескриптора безопасности конфигурации сеанса. По умолчанию 
 члены группы "Администраторы" компьютера имеют разрешение на запуск 
 для установленных по умолчанию конфигураций сеансов. Однако 
 пользователь локального компьютера может поменять дескрипторы 
 безопасности конфигурации сеанса по умолчанию и любых других 
 конфигураций сеансов, созданных этим пользователем.
    Для представления другим пользователям разрешения на удаленное 
    подключение к компьютеру используйте командлет Set-PSSessionConfig
    uration, чтобы добавить в дескрипторы безопасности конфигураций 
    сеансов Microsoft.PowerShell и Microsoft.Powershell32 разрешение 
    на запуск для этих пользователей.
    Например, следующая команда открывает страницу свойств, 
    позволяющую изменить дескриптор безопасности установленной по 
    умолчанию конфигурации сеанса Microsoft.PowerShell.
        C:\PS> set-pssessionConfiguration -name Microsoft.PowerShell -showSecur
ityDescriptorUI
    Чтобы запретить всем пользователям доступ ко всем конфигурациям 
    сеанса на компьютере, нужно использовать функцию Disable-PSRemotin
    g или командное средство Disable-PSSessionConfiguration. 
    Например, следующая команда добавляет запись Deny All (Запретить 
    всем) во все конфигурации сеансов на компьютере.
        C:\PS> disable-psremoting
    Чтобы добавить запись Deny All в определенную конфигурацию 
    сеанса, используйте командлет Disable-PSSessionConfiguration. 
    Например, следующая команда добавляет запись Deny All в 
    конфигурацию сеанса Microsoft.PowerShell.
        C:\PS> disable-pssessionConfiguration -name Microsoft.PowerShell
    
    Чтобы удалить запись Deny All из всех конфигураций сеансов, нужно 
    использовать командное средство Enable-PSRemoting или 
    Enable-PSSessionConfiguration. Например, следующая команда 
    удаляет запись Deny All из конфигураций сеансов, установленных по 
    умолчанию.
        C:\PS> enable-pssessionConfiguration -name Microsoft.Power*
    Для внесения других изменений в дескриптор безопасности 
    конфигурации сеанса, нужно использовать командное средство Set-
    PSSessionConfiguration. Для отправки значения строки SDDL используйте 
параметр SecurityDescriptorSDDL. Параметр ShowSecurityDescriptorUI 
используется для вывода листа свойств пользовательского интерфейса, 
помогающего создать новую строку SDDL.
    Пример:
      
        C:\PS> set-pssessionConfiguration -name Microsoft.PowerShell -showSecur
ityDescriptorUI
     
 Создание новой конфигурации сеанса
    Для создания новой конфигурации сеанса на локальном компьютере 
    используйте командлет Register-PSSessionConfiguration. Чтобы 
    определить новую конфигурацию сеанса, можно использовать сборку 
    C#, скрипт Window PowerShell и параметры командлета 
    Register-PSSessionConfiguration.
    Например, следующая команда создает конфигурацию сеанса, 
    идентичную конфигурации сеанса Microsoft.PowerShell, но 
    ограничивающую получение данных, получаемых от удаленной команды, 
    объемом в 20 Мбайт. (По умолчанию 50 Мбайт).
        c:\PS> register-psSessionConfiguration -name NewConfig --MaximumReceive
dDataSizePerCommandMB 20
    При создании конфигурацией сеанса можно управлять, используя 
    командлеты других конфигураций сеансов. Новая конфигурация сеанса 
    появляется на диске WSMAN:.
    Дополнительные сведения см. в разделе Register-PSSessionConfiguration.
     
 Удаление конфигурации сеанса
    Для удаления конфигурации сеанса c локального компьютера 
    используйте командлет Unregister-PSSessionConfiguration. 
    Например, следующая команда удаляет с компьютера конфигурацию 
    сеанса NewConfig.
        c:\PS> unregister-psSessionConfiguration -name NewConfig
    Дополнительные сведения см. в описании командлета Unregister-PSSes
    sionConfiguration.
 Выбор конфигурации сеанса
    Для выбора определенной конфигурации сеанса используется параметр 
    ConfigurationName командлетов New-PSSession, Enter-PSSession или 
    Invoke-Command. 
    Например, в следующей команде командлет New-PSSession 
    используется для запуска сеанса PSSession на компьютере Server01. 
    В этой команде параметр ConfigurationName используется для выбора 
    конфигурации WithProfile на компьютере Server01.
        C:\PS> new-pssession -computername Server01 -configurationName
         WithProfile
    Эта команда будет успешно выполнена, только если у текущего 
    пользователя есть разрешение на использование конфигурации сеанса 
    WithProfile или он может указать учетные данные пользователя, 
    имеющего необходимые разрешения.
    Для изменения установленной по умолчанию конфигурации сеансов на 
    компьютере нужно использовать привилегированную переменную 
    $PSSessionConfigurationName. Дополнительные сведения о привилегированн
    ой переменной $PSSessionConfigurationName см. в разделе 
    about_Preference_Variables.
SEE ALSO
    about_Preference_Variables
    about_PSSession
    about_Remote
    New-PSSession
    Disable-PSSessionConfiguration
    Enable-PSSessionConfiguration
    Get-PSSessionConfiguration
    Register-PSSessionConfiguration
    Set-PSSessionConfiguration
    Unregister-PSSessionConfiguration



about_Signing

РАЗДЕЛ
    about_signing
КРАТКОЕ ОПИСАНИЕ
    Описание процедуры подписания скриптов для их соответствия политикам 
    исполнения Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    Политика ограниченного исполнения не разрешает выполнение никаких 
    скриптов.
    Политики исполнения AllSigned и RemoteSigned не дают Windows 
    PowerShell выполнять скрипты без цифровой подписи.
    Здесь объясняется, как выполнять неподписанные скрипты при 
    установленной политике исполнения RemoteSigned, а также как 
    подписывать скрипты для собственного использования.
    
    Дополнительные сведения о политиках исполнения Windows PowerShell 
    см. в разделе about_Execution_Policy.
 РАЗРЕШЕНИЕ ВЫПОЛНЕНИЯ ПОДПИСАННЫХ СКРИПТОВ
 -------------------------------
    При первом запуске Windows PowerShell на компьютере вероятнее 
    всего будет действовать установленная по умолчанию политика 
    ограниченного исполнения.
    Политика ограниченного исполнения не разрешает выполнение никаких 
    скриптов.
    Чтобы узнать, какая политика исполнения действует на компьютере, 
    введите следующую команду:
        get-executionpolicy
    Для выполнения неподписанных скриптов, созданных на локальном 
    компьютере, и подписанных скриптов других пользователей, нужно 
    использовать следующую команду для изменения политики исполнения на 
    RemoteSigned: 
	set-executionpolicy remotesigned
    Дополнительные сведения см. в описании командлета Set-ExecutionPol
    icy.  
 ВЫПОЛНЕНИЕ НЕПОДПИСАННЫХ СКРИПТОВ (ПОЛИТИКА ИСПОЛНЕНИЯ REMOTESIGNED) 
 --------------------------------------------------------------------
    Если в Windows PowerShell установлена политика исполнения 
    RemoteSigned, Windows PowerShell не будет выполнять неподписанные 
    скрипты, загруженные из Интернета, в том числе неподписанные 
    скрипты, полученные по электронной почты и через программы обмена 
    мгновенными сообщениями.
    При попытке выполнить загруженный скрипт Windows PowerShell 
    выводит следующее сообщение об ошибке:
        Файл <file-name> невозможно загрузить. Файл 
        <file-name> не имеет цифровой подписи. Скрипт
        не будет выполнен в системе. Чтобы получить дополнительные 
        сведения, введите команду "Get-Help about_signing".
    Перед выполнением скрипта проверьте его код, чтобы убедиться в его 
    надежности. Скрипты делают то же, что и исполняемые программы.
    
    Выполнение неподписанного скрипта:
        1. Сохраните файл скрипта на компьютер; 
        2. Нажмите кнопку Пуск, откройте раздел "Мой компьютер" 
           и найдите сохраненный файл скрипта. 
        3. Щелкните правой кнопкой мыши файл скрипта и 
           выберите пункт "Свойства". 
        4. Щелкните пункт "Разблокировать".
    Если загруженный из Интернета скрипт имеет цифровую подпись, но 
    издатель подписи еще не входит в число надежных, Windows 
    PowerShell выводит следующее сообщение:
        Запустить программу от ненадежного издателя? Файл <file-name> 
        опубликован CN=<publisher-name>. Этот издатель не помечен как 
        надежный в данной системе. Выполнять следует только скрипты 
        надежных издателей.
        [V] Никогда не выполнять [D] Не выполнять [R] Выполнить один 
        раз [A] Всегда выполнять [?] Справка (по умолчанию "D"):
    
        Если вы доверяете издателю, выберите "Выполнить один раз " 
        или "Выполнять всегда". Если вы не доверяете издателю, 
        выберите "Никогда не выполнять" или "Не выполнять". При 
        выборе пункта "Никогда не выполнять" или "Всегда выполнять" 
        Windows PowerShell больше не будет запрашивать о действии для 
        этого издателя.
    
 МЕТОДЫ ПОДПИСИ СКРИПТОВ
 --------------------------
    Пользователь может подписывать написанные им скрипты и скрипты, 
    полученные из других источников. Прежде чем подписывать скрипт, нужно 
    проверить все содержащиеся в нем команды, чтобы убедиться в его 
    безопасности.
    Рекомендации по подписанию кода см. в документе "Рекомендации по 
    подписанию кода" (Code-Signing Best Practices) по адресу 
    http://go.microsoft.com/fwlink/?LinkId=119096. 
    Дополнительные сведения о подписании файлов скриптов см. в описании 
    командлета Set-AuthenticodeSignature.
    Чтобы добавить в скрипт цифровую подпись, нужно подписать его с 
    помощью сертификата подписи исходного кода. Для подписания файла 
    скрипта можно использовать сертификаты двух типов: 
        -- Сертификаты, создаваемые центрами сертификации:
           Центры сертификации за плату подтверждают личность 
           пользователя и выдают ему сертификат для подписания кода. При 
           приобретении сертификата в заслуживающем доверия центре сертификации
 
           пользователь может отправлять свой скрипт пользователям других 
           компьютеров под управлением Windows, поскольку эти другие компьютеры
 
           доверяют центру сертификации.
        -- Создаваемые вами сертификаты:
           Пользователи могут создавать собственные сертификаты для 
           подписи, в которых в качестве центра сертификации 
           выступает компьютер пользователя.
           Эти сертификаты бесплатные и позволяют создавать, подписывать и 
           выполнять скрипты на собственном компьютере. Однако скрипты, 
           подписанные самим пользователем, не будут работать на других компьют
ерах. 
    Обычно сертификаты, подписанные самим пользователем, используются 
    только для подписания скриптов, которые созданы этим пользователем для 
    собственного использования, а также для подписания проверенных скриптов, 
    полученных из других источников. Они не подходят для скриптов, 
    которые будут использоваться несколькими пользователями, даже на одном пред
приятии.
    При создании собственного сертификата подписи обязательно нужно 
    включить высокий уровень защиты сертификата с закрытым ключом. Это 
    предотвратит подписание скриптов вредоносными программами от лица 
    пользователя. Необходимые инструкции содержатся в конце настоящего 
    раздела.
 СОЗДАНИЕ САМОЗАВЕРЕННОГО СЕРТИФИКАТА
 --------------------------------
    Для создания собственного сертификата подписи нужно использовать 
    инструмент для создания сертификатов (MakeCert.exe). Этот 
    инструмент входит в состав комплектов Microsoft .NET Framework 
    SDK (версии 1.1 и более поздние) и Microsoft Windows SDK. 
    Дополнительные сведения о синтаксисе и описание параметров инструмента 
    MakeCert.exe см. в документе "Инструмент для создания сертификатов 
    (MakeCert.exe)" (Certificate Creation Tool (MakeCert.exe)) в 
    библиотеке MSDN по адресу http://go.microsoft.com/fwlink/?LinkId=119097.  
    Чтобы использовать инструмент MakeCert.exe для создания 
    сертификата, нужно выполнить следующие команды в окне командной 
    строки SDK. 
 
    Примечание. Первая команда создает локальный центр сертификации 
                для вашего компьютера. Вторая команда генерирует персональный 
                сертификат из центра сертификации. 
    Примечание. Команды можно копировать или вводить точно так же, как они выгл
ядят. 
                Заменять ничего не нужно, хотя имя сертификата можно изменять. 
          
            makecert -n "CN=PowerShell Local Certificate Root" -a sha1 `
                -eku 1.3.6.1.5.5.7.3.3 -r -sv root.pvk root.cer `
                -ss Root -sr localMachine
            makecert -pe -n "CN=PowerShell User" -ss MY -a sha1 `
                -eku 1.3.6.1.5.5.7.3.3 -iv root.pvk -ic root.cer
    Средство MakeCert.exe предложит ввести пароль для закрытого ключа. 
    Использование пароля обеспечит невозможность использования 
    сертификата без ведома владельца. Необходимо выбрать пароль, 
    который можно запомнить. Этот пароль потребуется позднее для 
    получения сертификата.
    Чтобы убедиться в правильности создания скрипта, нужно использовать 
    следующую команду для получения сертификата в хранилище сертификатов 
    на компьютере. (Файл сертификата нельзя найти в каталоге файловой системы).
    В командной строке Windows PowerShell введите:
            get-childitem cert:\CurrentUser\my -codesigning
    Эта команда использует поставщик сертификатов Windows PowerShell для 
    просмотра информации о сертификате.
    Если сертификат создан, в выходных данных отображается 
    идентификационный отпечаток сертификата, выглядящий примерно так:
        Directory: Microsoft.PowerShell.Security\Certificate::CurrentUser\My
        Thumbprint                                Subject
        ----------                                -------
        4D4917CB140714BA5B81B96E0B18AAF2C4564FDF  CN=PowerShell User ]
 ПОДПИСЬ СКРИПТА
 -------------
    После создания собственного сертификата подписи пользователь может 
    подписывать скрипты. Если использовать политику исполнения AllSigned, 
    подписание скрипта позволит выполнить скрипт на локальном компьютере. 
    Следующий образец скрипта, Add-Signature.ps1, подписывает скрипт. 
    Однако при использовании политики исполнения AllSigned необходимо 
    подписать скрипт Add-Signature.ps1 перед его выполнением.
    Для использования этого скрипта нужно скопировать следующий текст 
    в текстовый файл и назвать его Add-Signature.ps1.
    Примечание. Файл скрипта не должен иметь расширение TXT. Если 
                текстовый редактор добавляет расширение TXT, нужно заключить им
я 
                файла в кавычки следующим образом: "add-signature.ps1".
            ## add-signature.ps1
            ## Signs a file
            param([string] $file=$(throw "Please specify a filename."))
            $cert = @(Get-ChildItem cert:\CurrentUser\My -codesigning)[0]
            Set-AuthenticodeSignature $file $cert
    Чтобы подписать файл скрипта Add-Signature.ps1, нужно ввести следующие 
    команды в командной строке Windows PowerShell: 
        $cert = @(Get-ChildItem cert:\CurrentUser\My -codesigning)[0] 
        Set-AuthenticodeSignature add-signature.ps1 $cert
    После подписания скрипта можно выполнить его на локальном компьютере.
    Однако скрипт не будет работать на компьютерах, где политика 
    исполнения Windows PowerShell требует цифровой подписи центра 
    сертификации. При попытке выполнения скрипта без такой цифровой 
    подписи Windows PowerShell выводит следующее сообщение об ошибке:
        Не удается загрузить файл C:\remote_file.ps1. Невозможно проверить 
        подпись сертификата.
        В строке:1 знак:15
        + .\ remote_file.ps1 
    Если Windows PowerShell выводит это сообщение при выполнении скрипта, 
    созданного другим пользователем, необходимо работать с этим файлом, 
    как и с любым неподписанным скриптом. Чтобы определить, можно ли 
    доверять скрипту, нужно проверить код.
 НАДЕЖНАЯ ЗАЩИТА СЕРТИФИКАТА ЗАКРЫТЫМ КЛЮЧОМ 
 -------------------------------------------
    Если на компьютере установлен личный сертификат, вредоносные 
    программы могут подписывать скрипты от имени пользователя, что 
    разрешает Windows PowerShell выполнять их. 
    Чтобы предотвратить автоматическое подписание скриптов от лица 
    пользователя, нужно использовать диспетчер сертификатов 
    (Certmgr.exe) для экспорта сертификата подписи в файл PFX. Диспетчер 
    сертификации входит в комплектацию комплектов Microsoft .NET 
    Framework SDK и Microsoft Windows SDK и в браузер Internet Explorer 
    версии 5.0 и выше.
    Экспорт сертификата.
        1. Запустите диспетчер сертификации.
    
        2. Выберите сертификат, выданный центром сертификации 
           PowerShell Local Certificate Root.
        3. Нажмите кнопку "Экспортировать", чтобы запустить мастер 
           экспорта сертификатов.
        4. Выберите пункт "Да, экспортировать закрытый ключ" и 
           нажмите кнопку "Далее".
    
        5. Выберите "Включить надежную защиту".
        6. Введите пароль и повторите ввод для подтверждения пароля.
        7. Введите имя файла с расширением PFX.
        8. Нажмите кнопку "Готово".
    Повторный импорт сертификата.
        1. Запустите диспетчер сертификации.
        2. Нажмите кнопку "Импортировать", чтобы запустить мастер импорта 
           сертификатов.
        3. Откройте каталог с файлом PFX, созданным во время экспорта.
        4. На странице "Пароль" выберите параметр "Включить высокий 
           уровень защиты сертификата с закрытым ключом" и введите 
           пароль, указанный во время экспорта.
        5. Выберите личное хранилище сертификатов.
        6. Нажмите кнопку "Готово".
 ПРЕДОТВРАЩЕНИЕ ИСТЕЧЕНИЯ СРОКА ДЕЙСТВИЯ ПОДПИСИ 
 -----------------------------------
     Цифровая подпись скрипта действительна в течение срока действия 
     сертификата подписи или в течение времени, пока сервер временных 
     меток может подтвердить, что скрипт был подписан в период действия 
     сертификата подписи. 
     Поскольку большинство сертификатов подписи действуют всего один год, 
     использование сервера временных меток позволит пользователям 
     использовать скрипт в течение многих лет. 
СМ. ТАКЖЕ
    about_Execution_Policies
    about_Profiles
    Get-ExecutionPolicy
    Set-ExecutionPolicy
    Set-AuthenticodeSignature
    "Введение в подписание кода" (Introduction to Code Signing) 
    (http://go.microsoft.com/fwlink/?LinkId=106296)



about_Special_Characters

РАЗДЕЛ
    about_Special_Characters
КРАТКОЕ ОПИСАНИЕ
    Описание специальных символов, которые можно использовать, чтобы 
    определить, как Windows PowerShell интерпретирует следующий 
    символ в команде или параметре.
ПОЛНОЕ ОПИСАНИЕ
    Windows PowerShell поддерживает последовательности специальных 
    символов, служащие для обозначения символов, не входящих в стандартную 
    кодировку.
 
    Специальные символы Windows PowerShell начинаются с символа обратного 
    апострофа, также называемого грависом (ASCII 96).
 
    В Windows PowerShell распознаются следующие специальные символы:
        `0  Null
        `a  Предупреждение
        `b  Возврат курсора
        `f  Перевод страницы
        `n  Новая строка
        `r  Возврат каретки
        `t  Горизонтальная табуляция
        `v  Вертикальная табуляция
    Эти символы вводятся с учетом регистра. 
NULL (`0)
    Windows PowerShell распознает специальный символ null (`0) и 
    выводит его с кодом символа 0. Этот символ отображается в Windows 
    PowerShell как пробел. С помощью этого символа Windows PowerShell 
    можно использовать для чтения и обработки текстовых файлов, в которых 
    используются символы null, например, индикаторы окончания строки или 
    записи. Специальный символ null не эквивалентен переменной $null, 
    которая хранит значение NULL.
ПРЕДУПРЕЖДЕНИЕ(`a)
    Специальный символ предупреждения (`a) отправляет звуковой сигнал 
    на динамик компьютера.
    Его можно использовать, чтобы предупредить пользователя о 
    выполнении какого-то действия. С помощью следующей команды на динамик 
    локального компьютера отправляется два звуковых сигнала:
        for ($i = 0; $i -le 1; $i++){"`a"}
ВОЗВРАТ КУРСОРА (`b)
    Специальный символ возврата курсора (`b) возвращает курсор на 
    один символ назад, но не удаляет никакие символы. Следующая 
    команда выводит слово backup, перемещает курсор назад на две позиции и 
    выводит слово out (перед которым идет пробел и которое начинается с новой 
    позиции):
        "backup`b`b out"
    Эта команда выводит следующий текст:
        back out
ПЕРЕВОД СТРАНИЦЫ(`f)
   Символ перевода страницы (`f) - команда печати, извлекающая 
   текущую страницу и продолжающая печать на следующей странице. Этот 
   символ влияет только на печать документов и не влияет на 
   отображение текста на экране.
НОВАЯ СТРОКА (`n)
    Символ новой строки (`n) вставляет разрыв строки сразу после символа.
 
    В следующем примере показывается, как нужно использовать символ 
    новой строки в команде Write-Host: 
        "Два разрыва строки `n`nздесь."
        
    Эта команда выводит следующий текст:
        Два разрыва строки
        здесь.
ВОЗВРАТ КАРЕТКИ (`r)
    Символ возврата каретки (`r) удаляет всю строку до символа `r, 
    как если бы предшествующий ему текст был на другой строке.
    Пример:
        Write-Host "Этот текст будет удален`rНе двигайтесь."
    В результате выполнения данной команды выводится следующий текст:
        Не двигайтесь.
ГОРИЗОНТАЛЬНАЯ ТАБУЛЯЦИЯ (`t)
    Символ горизонтальной табуляции(`t) переводит курсор на следующую 
    позицию табуляции, и вывод текста продолжается с этой позиции. По 
    умолчанию позиция табуляции в консоли Windows PowerShell 
    установлена на каждый восьмой пробел. 
    Например, с помощью следующей команды можно вставить две 
    табуляции между каждым столбцом. 
        "Column1`t`tColumn2`t`tColumn3"
    В результате выполнения данной команды выводится следующий текст:
        Column1         Column2         Column3
ВЕРТИКАЛЬНАЯ ТАБУЛЯЦИЯ (`v)
    Символ вертикальной табуляции(`v) переводит курсор на следующую 
    позицию вертикальной табуляции, и вывод текста продолжается с 
    этой позиции. Этот символ влияет только на печать документов. Он 
    не влияет на вывод текста на экран.
СМ. ТАКЖЕ
    about_Quoting_Rules 
    about_Escape_Characters
          



about_split

РАЗДЕЛ
    about_Split
КРАТКОЕ ОПИСАНИЕ
    Описание использования оператора split для разбивки одной или 
    нескольких строк на подстроки. 
ПОЛНОЕ ОПИСАНИЕ
    Оператор split используется для разбивки одной или нескольких 
    строк на подстроки. Можно изменять следующие элементы операции split.
	
	-- Разделитель. По умолчанию в качестве разделителя используется 
	   пробел, однако можно указать и символы, строки, шаблоны или блоки 
	   скриптов, задающие разделитель.
	
	-- Максимальное количество подстрок. По умолчанию выводятся все 
	   подстроки. Если задано число меньше числа подстрок, оставшиеся 
	   подстроки объединяются в последнюю подстроку. 
	-- Параметры, задающие состояния, с которыми производится сопоставление 
	   разделителя, например, SimpleMatch и Multiline. 
  СИНТАКСИС
   В следующей схеме показан синтаксис использования оператора -split.
   Имена параметров не отображаются в команде. Включать в команду 
   нужно только значения параметров. Значения должны появляться в 
   порядке, показанном на схеме синтаксиса.
	-Split <String>
	<String> -Split <Delimiter>[,<Max-substrings>[,"
	<String> -Split {<ScriptBlock>} [,<Max-substrings>]
   В любой команде split можно заменять на -iSplit или -cSplit для -split.
   В операторах -iSplit и -split регистр не учитывается. В операторе 
   -cSplit при применении правил разделения регистр учитывается.
  ПАРАМЕТРЫ
   <String>
        Задает одну или несколько строк для разбивки. При указании 
        нескольких строк все строки разбиваются по одним и тем же 
        правилам.
        Пример.
	    -split "red yellow blue green"
	    red
            yellow
	    blue
	    green
   <Delimiter>
        Символы, указывающие на конец подстроки. По умолчанию в 
        качестве разделителя используются пробелы с учетом 
        непечатаемых символов, например, символа новой строки (`n) и 
        символа табуляции (`t). При разбивке строк разделитель 
        исключается из всех подстрок. Пример.
	    "Lastname:FirstName:Address" -split ":"
	    Lastname
	    FirstName
	    Адрес
	
    <Max-substrings>
        Указывает максимальное количество выводимых подстрок. По 
        умолчанию это все подстроки, разделенные разделителем. Если 
        фактическое количество подстрок больше, они объединяются в 
        последней подстроке. Если фактическое количество подстрок 
        меньше, выводятся все подстроки. При выборе значения 0 и 
        отрицательных значений будут выведены все подстроки.
        Если в оператор split отправляется несколько строк (массив 
        строк), параметр Max-substrings применяется к каждой строке 
        отдельно. Пример.
	    $c = "Mercury,Venus,Earth,Mars,Jupiter,Saturn,Uranus,Neptune"  
	    $c -split ",", 5
	    Mercury
	    Venus
	    Earth
	    Mars
	    Jupiter,Saturn,Uranus,Neptune
	
    <ScriptBlock>
        Выражение, указывающее правила применения разделителя. 
        Выражение должно иметь значение $true или $false. В фигурных 
        скобках содержится блок скрипта. Пример.
	
            $c = "Mercury,Venus,Earth,Mars,Jupiter,Saturn,Uranus,Neptune"
	    $c -split {$_ -eq "e" -or $_ -eq "p"}
	    M
	    rcury,V
	    nus,Earth,Mars,Ju
	    it
	    r,Saturn,Uranus,N
	
	    tun
    <Options>
        Заключите имя параметра в кавычки. Параметры действуют только 
        при использовании в инструкции параметра <Max-substrings>.
        Синтаксис параметра Options:
	    "SimpleMatch [,IgnoreCase]"
            "[RegexMatch] [,IgnoreCase] [,CultureInvariant] 
            [,IgnorePatternWhitespace] [,ExplicitCapture] 
            [,Singleline | ,Multiline]"
 
        Параметры SimpleMatch:
         	
          -- SimpleMatch: использовать простое сравнение строк при 
             оценке разделителя. Не может использоваться с RegexMatch.
          -- IgnoreCase: форсирует сопоставление без учета регистра, 
             даже если задан оператор -cSplit.
        Параметры RegexMatch:
          -- RegexMatch: для оценки разделителя используется 
             сопоставление по регулярным выражениям. Это поведение 
             установлено по умолчанию. Не может использоваться с 
             SimpleMatch.
          -- IgnoreCase: Форсирует сопоставление без учета регистра, 
             даже если задан оператор -cSplit.
          -- CultureInvariant: игнорирует культурные различия языков 
             при оценке разделителя. Можно использовать только с 
             RegexMatch.
          -- IgnorePatternWhitespace: игнорирует неизбежные пробелы и 
             комментарии, помеченные символом номера (#). Можно 
             использовать только с RegexMatch.
          -- Multiline: В многострочном режиме распознаются начало и 
             конец строк и выражений. Можно использовать только с 
             RegexMatch. По умолчанию используется однострочный режим 
             (Singleline).
          -- Singleline: в однострочном режиме распознаются только 
             начало и конец выражений. Можно использовать только с 
             RegexMatch. По умолчанию используется однострочный режим 
             (Singleline).
          -- ExplicitCapture: игнорирует группы сопоставлений без 
             имен, и в списке результатов выводятся только группы 
             явно именованных шаблонов. Можно использовать только с 
             RegexMatch.
	
  УНАРНЫЕ И ДВОИЧНЫЕ ОПЕРАТОРЫ SPLIT
    Оператор унарной разбивки (-split <string>) имеет более высокий 
    приоритет, чем запятая. Поэтому если отправить в оператор унарной      
    разбивки список разделенных запятыми строк, разбиваться будет только 
    первая строка (до первой запятой).
    Чтобы разбить несколько строк, нужно использовать оператор 
    двоичной разбивки (<string> -split <delimiter>). Все строки 
    следует заключать в скобки или сохранять в переменной, 
    а затем отправлять в оператор split эту переменную.
    Рассмотрим следующий пример.
	-split "1 2", "a b"
	1
	2
 	a b
	"1 2", "a b" -split " "
	1
	2
 	a
	b
	-split ("1 2", "a b")
	1
	2
 	a
	b
	$a = "1 2", "a b"
	-split $a
	1
	2
 	a
	b
    
  ПРИМЕРЫ
    Следующая команда разбивает строку по пробелам.
	C:\PS> -split "Windows PowerShell 2.0`nWindows PowerShell with remoting"
	Windows
	PowerShell
	2.0
	Windows
	PowerShell
	with
	remoting
    Следующая команда разбивает строку по запятым.
	C:\PS> "Mercury,Venus,Earth,Mars,Jupiter,Saturn,Uranus,Neptune" -split ','
        Mercury
        Venus
        Earth 
        Mars
        Jupiter
        Saturn
        Uranus
        Neptune
    Следующая команда разбивает строку по шаблону "er".
	C:\PS>"Mercury,Venus,Earth,Mars,Jupiter,Saturn,Uranus,Neptune" -split 'er'
	M
	cury,Venus,Earth,Mars,Jupit
	,Saturn,Uranus,Neptune
    Следующая команда выполняет разбивку по символу "N" с учетом регистра.
	C:\PS> "Mercury,Venus,Earth,Mars,Jupiter,Saturn,Uranus,Neptune" -cSplit 'N'
	Mercury,Venus,Earth,Mars,Jupiter,Saturn,Uranus, eptune
    Следующая команда выполняет разбивку по символам "e" и "t".
        C:\PS> "Mercury,Venus,Earth,Mars,Jupiter,Saturn,Uranus,Neptune" -split 
'[et]'
        M
        rcury,V
        nus,
        ar
        h,Mars,Jupi
        r,Sa
        urn,Uranus,N
        p
        un
    Следующая команда выполняет разбивку по символам "e" и "r", но 
    ограничивает количество подстрок шестью.
        C:\PS> "Mercury,Venus,Earth,Mars,Jupiter,Saturn,Uranus,Neptune" -split 
'[er]', 6
	M
	cu
	y,V
	nus,
	arth,Mars,Jupiter,Saturn,Uranus,Neptune
    Следующая команда разбивает строку на три подстроки. 
        C:\PS> "a,b,c,d,e,f,g,h" -split ",", 3
	a
	b
	c,d,e,f,g,h
    Следующая команда разбивает две строки на три подстроки. 
    (ограничение применяется к каждой строке отдельно). 
        C:\PS> "a,b,c,d", "e,f,g,h" -split ",", 3
	a
	b
	c,d
	e
	f
	g,h
    Следующая команда разбивает каждую строку в строке Here String по 
    первой цифре. Для распознания начала каждой строки используется 
    параметр Multiline.
    0 означает значение return all (вернуть все) параметра 
    Max-substrings. Такие параметры как Multiline можно использовать, 
    только если указано значение Max-substrings.
    
        C:\PS> $a = @'
	1The first line.
	2The second line.
	3The third of three lines.
	'@
        
        C:\PS> $a -split "^\d", 0, "multiline"
	
	The first line.
	The second line.
	The third of three lines.
    В следующей команде параметр SimpleMatch используется, чтобы 
    оператор -split интерпретировал разделитель в виде точки (.) 
    буквально. 
    При использовании параметра по умолчанию RegexMatch символ точки 
    в кавычках (".") интерпретируется как любой символ, кроме символа 
    новой строки. В результате этого команда split выведет пустые 
    строки для каждого символа, кроме символов новой строки.
    0 означает значение return all (вернуть все) параметра 
    Max-substrings. Такие параметры как SimpleMatch можно 
    использовать, только если указано значение Max-substrings.
        C:\PS> "This.is.a.test" -split ".", 0, "simplematch"
	This
        is
        a 
	test	
    Следующая команда выполняет разбивку по одному или двум 
    разделителям в зависимости от значения переменной.
        C:\PS> 	$i = 1
        C:\PS> 	$c = "LastName, FirstName; Address, City, State, Zip"
        C:\PS> 	$c -split {if ($i -lt 1) {$_ -eq ","} else {$_ -eq ";"}}
	LastName, FirstName
	 Address, City, State, Zip
		
	
    Следующие команды разбивают файл XML сначала по угловым скобкам, 
    а затем по точкам с запятой. В результате выводится удобная для 
    чтения версия файла XML.
        C:\PS> 	get-process powershell | export-clixml ps.xml
        C:\PS> 	$x = import-clixml ps.xml
        C:\PS> 	$x = $x -split "<"
        C:\PS> 	$x = $x -split ";"
    Для отображения результата введите "$x".
	
	C:\PS> $x
        @{__NounName=Process
	Name=powershell
	Handles=428
	VM=150081536
	WS=34840576
	PM=36253696
	...
СМ. ТАКЖЕ
    Split-Path
    about_Operators
    about_Comparison_Operators
    about_Join



about_Switch

РАЗДЕЛ
    about_Switch
КРАТКОЕ ОПИСАНИЕ
    Описание использования инструкции Switch для обработки нескольких 
    инструкций If.
ПОЛНОЕ ОПИСАНИЕ
    Инструкция If используется для принятия решения в скрипте или 
    программе. В сущности, она сообщает: "Если данное условие 
    выполняется, то выполните это действие. В противном случае 
    выполните следующее действие". Эту операцию можно выполнять 
    сколько угодно раз, однако если список условий велик, 
    использование инструкции If становится неудобным. Можно 
    объединить длинный список условий в одной инструкции switch. Как 
    и во всех инструкциях с ветвлением, блоки скриптов должны 
    заключаться в скобки ({}).
    Инструкция Switch фактически представляет собой последовательность
    инструкций If. Она поочередно сопоставляет выражение с каждым 
    условием. Если обнаружено совпадение, то выполняется действие, 
    связанное с этим условием. Обычно инструкция switch выглядит 
    следующим образом:
        PS> $a = 3
        PS> switch ($a) {
            1 {"Один."}
            2 {"Два."}
            3 {"Три."}
            4 {"Четыре."}
            }
        
        Три.
    В этом простом примере значение сравнивается с каждым условием в 
    списке. Это действие выводит строку совпадения. Однако при 
    проверке всех условий может возникнуть проблема. Пример:
        PS> $day = "day5"
        PS> switch ($day){
            day1 {"Понедельник"; break}
            day2 {"Вторник"; break}
            day3 {"Среда"; break}
            day4 {"Четверг"; break}
            day5 {"Пятница"; break}
            day6 {"Суббота"; break}
            day7 {"Воскресенье"; break}
            day5 {"Слишком много дней"; break}
            }
        
        Пятница
    В списке присутствует два условия day5. Однако инструкция break в 
    конце каждого условия велит инструкции switch прекратить 
    дальнейший поиск и выполнить найденное действие. Если бы 
    инструкции break не было, были бы выполнены оба действия day5. 
    Если инструкция switch применяется к массиву, проверяться будут 
    все элементы массива по порядку, начиная с нулевого элемента (0). 
    В массиве должен быть хотя бы один элемент, удовлетворяющий хотя 
    бы одному условию. В противном случае произойдет ошибка. Если 
    предложений по умолчанию несколько, результатом будет ошибка.
    Полный синтаксис switch следующий:
        switch [-regex|-wildcard|-exact][-casesensitive] ( pipeline ) 
    или
        switch [-regex|-wildcard|-exact][-casesensitive] -file filename
    с последующим
        { 
            "string"|number|variable|{ expression } { statementlist } 
            default { statementlist } 
        }
    
    Если не использовать никакие параметры, оператор Switch выполняет 
    действие, как если бы было обнаружено точное совпадение без учета 
    регистра. Если результатом конвейера является массив, проверяться 
    будут все элементы массива в восходящем порядке, начиная с 
    нулевого элемента (0).  
    В блоке кода Switch могут присутствовать только один условный 
    элемент и только одно предложение по умолчанию. При наличии нескольких 
    предложений по умолчанию возникает исключение ParseException.
    Инструкция Switch имеет следующие параметры.
        Regex	        Указывает, что удовлетворяющее критерию 
                        предложение, являющееся строкой, обрабатывается как стр
ока Regex. 
                        Использование этого параметра отключает параметры Wildc
ard и Exact. 
                        Если удовлетворяющее критерию предложение не является с
трокой, 
                        этот параметр игнорируется.
        Wildcard	Указывает, что удовлетворяющее критерию предложение, 
                        являющееся строкой, обрабатывается как строка с 
                        подстановочным символом. Использование этого параметра 
                        отключает параметры Regex и Exact. Если удовлетворяющее
 критерию 
                        предложение не является строкой, этот параметр игнориру
ется.
        Exact	        Указывает, что удовлетворяющее критерию 
                        предложение, являющееся строкой, должно точно соответст
вовать критерию. 
                        Использование этого параметра отключает параметры Wildc
ard и Regex. Если 
                        удовлетворяющее критерию предложение не является строко
й, этот параметр 
                        игнорируется.
        CaseSensitive	Указывает, что удовлетворяющее критерию предложение, 
                        являющееся строкой, изменяется с учетом регистра. Если 
удовлетворяющее
                        критерию предложение не является строкой, этот параметр
 игнорируется.
        File	        Источник берется из файла (или представителя), а не из инс
трукции. 
                        При наличии нескольких параметров File используется тол
ько 
                        последний. Каждая строка файла считывается и передается
 через
                        блок switch.
    Допускается многократное использование параметров Regex, Wildcard 
    или Exact. Однако на действие влияет только последний 
    использованный параметр.
    Ключевое слово Break означает, что обработка больше не выполняется и 
    инструкция Switch завершает работу. 
    Ключевое слово Continue указывает, что обработка текущего токена 
    не будет продолжаться и начнется оценка следующего токена в 
    условии. При отсутствии токенов оператор Switch завершает работу.
    Блок вида "{ expression }" может быть блоком кода, который будет 
    оцениваться при сравнении. Текущий объект привязывается к 
    автоматической переменной $_ и доступен во время проверки выражения. 
    Считается, что результатом сравнения было совпадение, если выражение 
    принимает значение "true". Это выражение вычисляется в новой области.
    Ключевое слово Default в инструкции switch указывает, что если 
    соответствия не найдены, начнется проверка кодового блока, 
    следующего за ключевым словом. Программному потоку будет запрещено 
    переключение с блока на блок, поскольку закрывающая скобка ( } ) в 
    составном списке является явным остановом. 
    При обнаружении нескольких соответствий каждое соответствие 
    приводит к запуску выражения. Во избежание этого для предотвращения 
    дальнейшего сравнения можно использовать ключевые слова Break или 
    Continue.
СМ. ТАКЖЕ
    about_Break
    about_Continue
    about_If
    about_Script_Blocks



about_Throw

РАЗДЕЛ
    about_Throw
КРАТКОЕ ОПИСАНИЕ
    Описание ключевого слова Throw, генерирующего ошибку с 
    завершением работы.
ПОЛНОЕ ОПИСАНИЕ
    Ключевое слово Throw вызывает ошибку с завершением работы. 
    Ключевое слово Throw можно использовать для остановки обработки 
    команды, функции или скрипта. 
    Например, ключевое слово Throw можно использовать в блоке скрипта 
    инструкции If для отклика на условие или в блоке Catch инструкции 
    Try-Catch-Finally. Ключевое слово Throw можно использовать и при 
    декларировании параметров, чтобы сделать параметр функции 
    обязательным. 
    Ключевое слово Throw может выводить любой объект, в том числе 
    строку сообщения для пользователя или объект, вызвавший ошибку. 
 СИНТАКСИС
    Ключевое слово Throw имеет следующий синтаксис:
        throw [<expression>]
    Выражение в синтаксисе Throw является необязательным. Если 
    ключевое слово Throw не входит в блок Catch и не включает 
    выражение, оно генерирует ошибку ScriptHalted.
        C:\PS> throw
        ScriptHalted
        At line:1 char:6
        + throw 
            + CategoryInfo          : OperationStopped: (:) [], RuntimeExceptio
n
            + FullyQualifiedErrorId : ScriptHalted
    Если ключевое слово Throw используется в блоке Catch без 
    выражения, оно выводит текущее исключение RuntimeException. 
    Дополнительные сведения см. в разделе about_Try_Catch_Finally.
 ИСПОЛЬЗОВАНИЕ КЛЮЧЕВОГО СЛОВА THROW ДЛЯ СТРОКИ
    Необязательным выражением в составе блока Throw может быть 
    строка, как показано в следующем примере: 
        C:\PS> throw "Это ошибка."
        Это ошибка.
        В строке:1 знак:6
        + throw < "Это ошибка."
            + CategoryInfo          : OperationStopped: (This is an error.:Stri
ng) [], RuntimeException  
            + FullyQualifiedErrorId : Это ошибка.
 ИСПОЛЬЗОВАНИЕ КЛЮЧЕВОГО СЛОВА THROW ДЛЯ ДРУГИХ ОБЪЕКТОВ
    Выражение также может являться объектом, который выводит объект,
    соответствующий процессу PowerShell, как показано в следующем примере.
        C:\PS> throw (get-process powershell)
        System.Diagnostics.Process (powershell)
        At line:1 char:6
        + throw <  (get-process powershell)
            + CategoryInfo          : OperationStopped: (System.Diagnostics.Pro
cess (powershell):Process) [], 
        				RuntimeException
            + FullyQualifiedErrorId : System.Diagnostics.Process (powershell)
    Свойство TargetObject объекта ErrorRecord в автоматической 
    переменной $error можно использовать для изучения ошибки.
        C:\PS> $error[0].targetobject
        Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName  
                                                          
        -------  ------    -----      ----- -----   ------     -- -----------  
                                                          
            319      26    61016      70864   568     3.28   5548 powershell 
   
    Также с помощью ключевого слова Throw может выводиться объект 
    ErrorRecord или исключение платформы Microsoft.NET Framework. В следующем 
    примере ключевое слово Throw используется для вывода объекта 
    System.FormatException.
        C:\PS> $formatError = new-object system.formatexception
        C:\PS> throw $formatError
        Формат одного из идентифицированных элементов неверен.
        В строке:1 знак:6
        + throw < $formatError
            + CategoryInfo          : OperationStopped: (:) [], FormatException
 
	    + FullyQualifiedErrorId : Формат одного из идентифицированных элементов не
верен.
 ВОЗВРАЩАЕМАЯ ОШИБКА
    Ключевое слово Throw может генерировать объект ErrorRecord. 
    Свойство Exception объекта ErrorRecord содержит объект 
    RuntimeException. Остальная часть объекта ErrorRecord и объекта 
    RuntimeException меняются в зависимости от объекта, выводимого 
    ключевым словом Throw.
    Объект RunTimeException заключается в объект ErrorRecord, а 
    объект ErrorRecord автоматически сохраняется в автоматической 
    переменной $Error
 ИСПОЛЬЗОВАНИЕ КЛЮЧЕВОГО СЛОВА THROW ДЛЯ СОЗДАНИЯ ОБЯЗАТЕЛЬНОГО ПАРАМЕТРА
    Ключевое слово Throw можно использовать для превращения параметра 
    функции в обязательный. 
    Это альтернатива использованию параметра Mandatory ключевого 
    слова Parameter. При использовании параметра Mandatory система 
    требует у пользователя ввести обязательное значение параметра. 
    При использовании ключевого слова Throw команда прекращает работу 
    и выводит запись об ошибке.
    Например, ключевое слово Throw в подвыражении параметра делает 
    параметр Path обязательным параметром функции. 
    В данном случае ключевое слово Throw выводит строку сообщения, 
    однако именно присутствие ключевого слова Throw генерирует ошибку 
    с завершением работы, если параметр Path не указан. Выражение 
    после ключевого слова Throw является необязательным.
        function Get-XMLFiles
        {
            param ($path = $(throw "The Path parameter is required."))
            dir -path $path\* -include *.xml -recurse | sort lastwritetime | ft
 lastwritetime, attributes, name  -auto
        }
СМ. ТАКЖЕ
    about_Break
    about_Continue
    about_Scope
    about_Trap
    about_Try_Catch_Finally



about_transactions

РАЗДЕЛ
    about_Transactions
КРАТКОЕ ОПИСАНИЕ
    Описание способов управления операциями транзакций в Windows 
    PowerShell. 
ПОЛНОЕ ОПИСАНИЕ
    Транзакции поддерживаются в Windows PowerShell начиная с версии 
    Windows PowerShell 2.0. Эта функция позволяет начинать 
    транзакции, указывать команды, входящие в транзакции, и 
    фиксировать или откатывать транзакции.
    
    
  О ТРАНЗАКЦИЯХ
      Транзакция в Windows PowerShell - это набор из одной или 
      нескольких команд, которыми можно управлять как логическим 
      блоком. При выполнении ("фиксации") транзакции изменяются 
      данные, на которые повлияла транзакция. Транзакцию также можно 
      полностью отменить ("откатить"), не изменяя этой транзакцией 
      данные, на которые она могла бы повлиять. 
      Поскольку команды в транзакции рассматриваются как единый блок, 
      либо все команды фиксируются, либо все команды откатываются. 
      Транзакции широко используются в обработке данных, особенно при 
      операциях с базами данных и для финансовых транзакций. Чаще 
      всего транзакции используются, если худшим вариантом для набора 
      команд является не ошибка всех команд, а успешное выполнение 
      лишь части из них, сопровождаемое ошибками других, приводящими 
      систему в поврежденное, некорректное или нечитаемое состояние, 
      которое трудно исправить.
            
  КОМАНДЛЕТЫ ДЛЯ ТРАНЗАКЦИЙ
      В Windows PowerShell включено несколько командлетов, 
      предназначенных для работы с транзакциями.
      Командлет              Описание
      --------------         ---------------------------------   
      Start-Transaction      Запускает новую транзакцию. 
      Use-Transaction        Добавляет в транзакцию команду 
      			     или выражение. Команда должна 
			     использовать объекты, поддерживающие 
    		             транзакции.
      Undo-Transaction       Откатывает транзакцию, не изменяя 
     		             транзакцией данные.
      Complete-Transaction   Фиксирует транзакцию. Изменяет данные, 
			     на которые влияет транзакция.
      Get-Transaction        Возвращает сведения об активной транзакции.      
      Чтобы вывести список командлетов транзакции, введите следующую 
      команду:
          get-command *transaction
      Чтобы получить дополнительные сведения о командлетах, введите 
      следующую команду:
	  get-help <имя_командлета> -detailed
      Пример:
	
	  get-help use-transaction -detailed
  ЭЛЕМЕНТЫ, ПОДДЕРЖИВАЮЩИЕ ТРАНЗАКЦИИ
      Для участия в транзакции и командлет, и поставщик должны 
      поддерживать транзакции. Эта функция встроена в объекты, на 
      которые влияет транзакция.
   
      Поставщик Windows PowerShell Registry поддерживает транзакции в 
      Windows Vista. Объект TransactedString 
      (Microsoft.PowerShell.Commands.Management.TransactedString) работает 
      в любой операционной системе, где установлена оболочка Windows 
      PowerShell. 
      Другие поставщики Windows PowerShell могут поддерживать 
      транзакции. Узнать, какие поставщики Windows PowerShell в 
      текущем сеансе поддерживают транзакции, можно с помощью 
      следующей команды, возвращающей значение "Transactions" 
      свойства поставщиков Capabilities:
	  get-psprovider | where {$_.Capabilities -like "*transactions*"}
      Дополнительные сведения о поставщиках см. в справке об этих 
      поставщиках.
      Для получения справки по поставщику введите следующую команду:
	  get-help <имя-поставщика>
      Например, чтобы получить справку для поставщика Registry, 
      введите следующую команду:
	  get-help registry
  
  ПАРАМЕТР USETRANSACTION
      Командлеты, поддерживающие транзакции, имеют параметр 
      UseTransaction. Этот параметр  включает команду в активную 
      транзакцию. Можно использовать полное имя параметра или его 
      псевдоним "usetx".
      Этот параметр можно использовать только при наличии в сеансе 
      активной транзакции. Если активной транзакции нет, команда, 
      введенная с параметром UseTransaction, завершится ошибкой.
      Чтобы найти командлеты с параметром UseTransaction, введите 
      следующую команду:
	  get-help * -parameter UseTransaction  
      Все основные командлеты Windows PowerShell, предназначенные для 
      работы с поставщиками Windows PowerShell, поддерживают транзакции. 
      Поэтому для управления транзакциями можно пользоваться 
      командлетами поставщика. 
      Дополнительные сведения о поставщиках Windows PowerShell см в 
      разделе about_Providers.  
 
  ОБЪЕКТ ТРАНЗАКЦИИ
      Транзакции в Windows PowerShell представлены объектом транзакции 
      System.Management.Automation.Transaction.
      Этот объект имеет следующие свойства.
      RollbackPreference. 
          Содержит параметр отката, установленный для текущей 
          транзакции. Параметр отката можно установить при использовании 
          командлета Start-Transaction для запуска транзакции. 
          Параметр отката определяет условия, при которых транзакция 
          откатывается автоматически. Допустимые значения Error, 
          TerminatingError и Never. По умолчанию используется 
          значение Error.
      Status.              
         Содержит текущее состояние транзакции. Допустимые значения 
         Active, Committed и RolledBack.
      SubscriberCount.              
         Содержит количество подписчиков этой транзакции. Подписчик 
         добавляется в транзакцию, запускаемую во время выполнения другой 
         транзакции. При фиксации транзакции подписчиком количество подписчиков
 
         уменьшается.
    
  АКТИВНЫЕ ТРАНЗАКЦИИ
      В Windows PowerShell в каждый момент времени активна только 
      одна транзакция и управлять можно только одной активной 
      транзакцией. В один сеанс одновременно может выполняться несколько 
      транзакций, но активна только транзакция, запущенная последней. 
      Поэтому при использовании командлетов транзакций нельзя выбирать 
      определенные транзакции. Команды всегда применяются к активной транзакции
.
      Это хорошо иллюстрирует поведение командлета Get-Transaction. 
      Команда Get-Transaction при вводе всегда возвращает только один 
      объект транзакции. Этот объект представляет активную транзакцию. 
      Для управления другой транзакцией нужно сначала закончить активную 
      транзакцию, зафиксировав или откатив ее. После этого предыдущая транзакци
я 
      автоматически становится активной. Транзакции становятся активным в 
      порядке, обратном запуску, то есть транзакция, запущенная последней, 
      всегда активна.
  ПОДПИСЧИКИ И НЕЗАВИСИМЫЕ ТРАНЗАКЦИИ
      При запуске транзакции во время выполнения другой транзакции Windows 
      PowerShell по умолчанию не запускает новую транзакцию. Вместо этого в 
      текущую транзакцию добавляется "подписчик".
      Если у транзакции несколько подписчиков, одна команда 
      Undo-Transaction в любой момент откатывает всю транзакцию для всех 
      подписчиков. При этом для фиксации транзакции необходимо ввести по 
      одной команде Complete-Transaction для каждого подписчика.
      Чтобы узнать количество подписчиков в транзакции, проверьте свойство 
      SubscriberCount объекта транзакции. Например, следующая команда используе
т 
      командлет Get-Transaction, чтобы вернуть значение свойства SubscriberCoun
t 
      активной транзакции:
          (Get-Transaction).SubscriberCount
        
      Добавление подписчика - поведение по умолчанию, потому что 
      большинство транзакций, запускаемых при выполнении другой 
      транзакции, связаны с этой исходной транзакцией. В обычной 
      ситуации скрипт, содержащий транзакцию, вызывает вспомогательный
      скрипт, содержащий собственную транзакцию. Эти транзакции 
      связаны, поэтому их нужно откатывать или фиксировать единым блоком.
      Однако с помощью параметра Independent командлета Start-Transaction 
      можно запустить транзакцию, независимую от текущей.
      При запуске независимой транзакции командлет Start-Transaction 
      создает новый объект транзакции и новая транзакция становится 
      активной. Независимую транзакцию можно зафиксировать или 
      откатить, не затрагивая первоначальную транзакцию.
      По завершении (фиксации или отката) независимой транзакции 
      первоначальная транзакция снова становится активной.
  ИЗМЕНЕНИЕ ДАННЫХ
      При использовании транзакций для изменения данных данные, на 
      которые влияет транзакция, не изменяются до фиксации транзакции.
      Однако те же данные можно изменять с помощью команд, не входящих в 
      транзакцию. 
      Об этом следует помнить при использовании транзакций для 
      управления общими данными. Обычно у баз данных есть механизмы, 
      блокирующие данные при работе с ними, чтобы их не могли 
      изменить другие пользователи, команды, скрипты и функции.
      Однако блокирование обеспечивается базой данных. Оно не связано с 
      транзакциями. При работе в файловой системе или другом хранилище данных, 
      поддерживающем транзакции, данные могут изменяться во время 
      выполнения транзакции.
ПРИМЕРЫ
    Примеры в данном разделе используют поставщик Windows PowerShell 
    Registry, поэтому предполагается, что вы с ним знакомы. Чтобы получить 
    сведения о поставщике Registry, введите команду "get-help registry".
  ПРИМЕР 1: ФИКСАЦИЯ ТРАНЗАКЦИИ
    Чтобы создать транзакцию, используйте командлет Start-Transaction.
    Следующая команда запускает транзакцию с параметрами по умолчанию.
 
 	start-transaction
    Для включения в транзакцию команд используется параметр командлета 
    UseTransaction. По умолчанию команды не включаются в транзакцию. 
    Например, следующая команда, назначающая текущим расположением 
    раздел Software на диске HKCU:, не включена в транзакцию.
        cd hkcu:\Software
    Следующая команда, создающая раздел MyCompany, использует параметр 
    UseTransaction командлета New-Item, чтобы включить команду в активную 
    транзакцию.
        new-item MyCompany -UseTransaction
    Команда возвращает объект, представляющий новый раздел, но реестр 
    еще не изменяется, потому что команда входит в транзакцию.
        Hive: HKEY_CURRENT_USER\Software
        SKC  VC Name                           Property
        ---  -- ----                           --------
          0   0 MyCompany                      {}
    Чтобы зафиксировать транзакцию, используйте командлет Complete-Transaction.
    
    Транзакцию указать нельзя, потому что командлет всегда влияет на 
    активную транзакцию.
	complete-transaction  
    В результате в реестр добавляется раздел MyCompany..
	dir m*
       
        Hive: HKEY_CURRENT_USER\software
        SKC  VC Name                           Property
        ---  -- ----                           --------
         83   1 Microsoft                      {(default)}
          0   0 MyCompany                      {}
  ПРИМЕР 2: ОТКАТ ТРАНЗАКЦИИ
    Чтобы создать транзакцию, используйте командлет Start-Transaction.
    Следующая команда запускает транзакцию с параметрами по умолчанию.
 
 	start-transaction
    Следующая команда, создающая раздел MyOtherCompany, использует 
    параметр UseTransaction командлета New-Item, чтобы включить 
    команду в активную транзакцию.
        new-item MyOtherCompany -UseTransaction
    Команда возвращает объект, представляющий новый раздел, но реестр 
    еще не изменяется, потому что команда входит в транзакцию.
        Hive: HKEY_CURRENT_USER\Software
        SKC  VC Name                           Property
        ---  -- ----                           --------
          0   0 MyOtherCompany                 {}
    Чтобы откатить транзакцию, используйте командлет Undo-Transaction.
    Транзакция не указывается, потому что командлет всегда влияет на 
    активную транзакцию.
	Undo-transaction  
    В результате раздел MyOtherCompany не добавляется в реестр.
	dir m*
       
        Hive: HKEY_CURRENT_USER\software
        SKC  VC Name                           Property
        ---  -- ----                           --------
         83   1 Microsoft                      {(default)}
          0   0 MyCompany                      {}
 
  ПРИМЕР 3: ПРЕДВАРИТЕЛЬНЫЙ ПРОСМОТР ТРАНЗАКЦИИ
    Обычно команды, использующиеся в транзакции, изменяют данные. Но 
    команды, возвращающие данные, тоже полезны в транзакции, потому 
    что они возвращают данные внутри транзакции. Это позволяет 
    узнать, как будут выглядеть изменения после фиксации транзакции.
    В следующем примере показано использование команды Get-ChildItem 
    (ее псевдоним "dir") для предварительного просмотра изменений в 
    транзакции.
    Следующая команда запускает транзакцию.
	start-transaction
    Следующая команда использует командлет New-ItemProperty, чтобы 
    добавить в раздел MyCompany запись реестра MyKey. Команда 
    использует параметр UseTransaction для включения команды в транзакцию.
        new-itemproperty -path MyCompany -Name MyKey -value 123 -UseTransaction
    Команда возвращает объект, представляющий новую запись реестра, 
    но не изменяет саму запись реестра.
        MyKey
        -----
        123
    Для получения текущих элементов в реестре используйте команду 
    Get-ChildItem ("dir") без параметра UseTransaction. Следующая команда 
    возвращает элементы, начинающиеся на "M".
	dir m*
    В результатах показано, что в раздел MyCompany записи еще не 
    добавлены.
        Hive: HKEY_CURRENT_USER\Software
        SKC  VC Name                           Property
        ---  -- ----                           --------
        83   1 Microsoft                      {(default)}
         0   0 MyCompany                      {}
    Чтобы узнать, как будет выглядеть эффект от фиксации транзакции, 
    введите команду Get-ChildItem ("dir") с параметром UseTransaction.
    Эта команда содержит представление данных из транзакции.
	dir m* -useTransaction
    В результатах показано, что при фиксации транзакции в раздел 
    MyCompany будет добавлена запись MyKey.
        Hive: HKEY_CURRENT_USER\Software
        SKC  VC Name                           Property
        ---  -- ----                           --------
        83   1 Microsoft                      {(default)}
         0   1 MyCompany                      {MyKey}
     
  ПРИМЕР 4: ОБЪЕДИНЕНИЕ КОМАНД В РАМКАХ ТРАНЗАКЦИЙ И ВНЕ ТРАНЗАКЦИЙ
    Во время транзакции можно вводить команды, не входящие в 
    транзакцию. Команды, не входящие в транзакцию, влияют на данные 
    немедленно, но не влияют на транзакцию.
    Следующая команда запускает транзакцию в разделе реестра 
    HKCU:\Software.
	start-transaction
    Три следующие команды добавляют в реестр разделы с помощью 
    командлета New-Item. Первая и третья команды включаются в 
    транзакцию с помощью параметра UseTransaction. Во второй команде 
    этот параметр опускается. Поскольку вторая команда не входит в 
    транзакцию, она действует немедленно.
        new-item MyCompany1 -UseTransaction
        new-item MyCompany2
        new-item MyCompany3 -UseTransaction
    Для просмотра текущего состояния реестра используйте команду 
    Get-ChildItem ("dir") без параметра UseTransaction. Эта команда 
    возвращает элементы, начинающиеся на "M".
	dir m*
    В результатах показано, что раздел MyCompany2 добавлен в реестр, 
    а разделы MyCompany1 и MyCompany3, которые являются частью 
    транзакцию, не добавлены.
     
        Hive: HKEY_CURRENT_USER\Software
        SKC  VC Name                           Property
        ---  -- ----                           --------
        83   1 Microsoft                      {(default)}
         0   0 MyCompany2                     {}
    Следующая команда фиксирует транзакцию. 
        complete-transaction
    Теперь разделы, добавленные как часть транзакции, появятся в реестре.
	dir m*
     
        Hive: HKEY_CURRENT_USER\Software
        SKC  VC Name                           Property
        ---  -- ----                           --------
        83   1 Microsoft                      {(default)}
        0    0 MyCompany1                     {}
        0    0 MyCompany2                     {}
        0    0 MyCompany3                     {}
  ПРИМЕР 5: ИСПОЛЬЗОВАНИЕ АВТОМАТИЧЕСКОГО ОТКАТА
    Если команда в транзакции выдает какую-либо ошибку, транзакция 
    автоматически откатывается. 
    Это поведение по умолчанию предназначено для скриптов, выполняющих 
    транзакции. Скрипты обычно тщательно тестируются и содержат логику 
    обработки ошибок, поэтому ошибки не ожидаются и должны 
    прерывать транзакцию. 
    Первая команда запускает транзакцию в разделе реестра HKCU:\Software.
	start-transaction
    Следующая команда использует командлет New-Item, чтобы добавить в 
    реестр раздел MyCompany. Команда использует параметр 
    UseTransaction (псевдоним - "usetx") для включения команды в 
    транзакцию.
	New-Item MyCompany -UseTX
    Так как раздел MyCompany уже есть в реестре, команда завершается 
    неудачей и выполняется откат транзакции. 
        New-Item : раздел по этому пути уже существует В строке:1 знак:9
        + new-item < MyCompany -usetx
    Команда Get-Transaction подтверждает, что выполнен откат 
    транзакции и что количество подписчиков равно 0.
        RollbackPreference:  SubscriberCount:  Status
        ------------------   ---------------   ------
        Error                0                 RolledBack 
        
  ПРИМЕР 6: ИЗМЕНЕНИЕ ПАРАМЕТРА ОТКАТА
    Если нужно, чтобы транзакция была менее чувствительна к ошибкам, можно 
    использовать параметр RollbackPreference командлета Start-Transaction,
    чтобы изменить параметр отката.
    Следующая команда запускает транзакцию с параметром отката "Never".
         start-transaction -rollbackpreference Never
    В этом случае при ошибке команды транзакция не откатывается 
    автоматически.
	New-Item MyCompany -UseTX
        New-Item : раздел по этому пути уже существует В строке:1 знак:9
        + new-item < MyCompany -usetx
   
     
    Так как транзакция еще активна, команду можно повторно ввести как 
    часть транзакции. 
	New-Item MyOtherCompany -UseTX
  ПРИМЕР 7: ИСПОЛЬЗОВАНИЕ КОМАНДЛЕТА USE-TRANSACTION
    Командлет Use-Transaction позволяет непосредственно выполнять 
    скрипты над поддерживающими транзакции объектами Microsoft .NET 
    Framework.
    Use-Transaction принимает блок скрипта, который может содержать 
    только команды и выражения, использующие объекты .NET Framework, 
    поддерживающие транзакции, такие как экземпляры класса 
    Microsoft.PowerShell.Commands.Management.TransactedString.
    Следующая команда запускает транзакцию.
         start-transaction
    Следующая команда New-Object создает экземпляр класса 
    TransactedString и сохраняет его в переменной $t.
         $t = New-Object Microsoft.PowerShell.Commands.Management.TransactedStr
ing
    Следующая команда с помощью метода Append объекта TransactedString
     добавляет текст к строке. Поскольку команда не является частью 
     транзакции, изменение вступает в силу немедленно.
	 $t.append("Windows") 
    Следующая команда использует для добавления текста тот же метод 
    Append, но добавляет текст как часть транзакции. Команда 
    заключена в фигурные скобки и устанавливается как значение параметра 
    ScriptBlock командлета Use-Transaction. Параметр UseTransaction 
    (UseTx) является обязательным.
	 use-transaction {$t.append(" PowerShell")} -usetx
    Для просмотра текущего содержимого в $t строки, над которой 
    выполняется транзакция, используйте метод ToString объекта 
    TransactedString.
                 
	 $t.tostring()   
    В выходных данных показано, что имеют силу только изменения, не 
    связанные с транзакцией.
	 Windows	
    Для просмотра текущего содержимого в $t строки, над которой 
    выполняется транзакция, из транзакции, внедрите выражение в 
    команду Use-Transaction. 
	 use-transaction {$s.tostring()} -usetx   
    В выходных данных показано представление транзакции.
	 Windows PowerShell
    Следующая команда фиксирует транзакцию.
	 complete-transaction
    Для просмотра итоговой строки введите:
	 $t.tostring()
	
	 Windows PowerShell
  ПРИМЕР 7: УПРАВЛЕНИЕ ТРАНЗАКЦИЯМИ С НЕСКОЛЬКИМИ ПОДПИСЧИКАМИ
    При запуске транзакции во время выполнения другой транзакции Windows 
    PowerShell по умолчанию не создает вторую транзакцию. Вместо этого в 
    текущую транзакцию добавляется подписчик. 
    В этом примере показано, как просматривать и управлять транзакциями с 
    несколькими подписчиками.
    Сначала нужно запустить транзакцию в разделе HKCU:\Software.
	
        start-transaction
    
    Следующая команда с помощью команды Get-Transaction получает активную 
    транзакцию.
	get-transaction
    Результат показывает объект, представляющий активную транзакцию.
        RollbackPreference:  SubscriberCount:  Status
        ------------------   ---------------   ------
        Error                1                 Active 
     
    Следующая команда добавляет в реестр раздел MyCompany.
    Команда использует параметр UseTransaction для включения команды 
    в транзакцию.
                 
        new-item MyCompany -UseTransaction
    Следующая команда запускает транзакцию с помощью команды 
    Start-Transaction. Хотя эта команда введена в командную строку, 
    скорее всего события будут разворачиваться таким образом при 
    выполнении скрипта, содержащего транзакцию.
        start-transaction
    Команда Get-Transaction показывает, что количество подписчиков объекта 
    транзакции увеличилось. Новое значение - 2.   
        RollbackPreference:  SubscriberCount:  Status
        ------------------   ---------------   ------
        Error                2                 Active 
    Следующая команда использует командлет New-ItemProperty, чтобы 
    добавить в раздел MyCompany запись реестра MyKey. Она использует 
    параметр UseTransaction для включения команды в транзакцию.
        new-itemproperty -path MyCompany -name MyKey -UseTransaction
    Раздела MyCompany в реестре нет, но команда выполняется успешно, 
    потому что эти две команды - часть одной транзакции.
    Следующая команда фиксирует транзакцию. Если бы она откатила 
    транзакцию, откат транзакции был бы выполнен для всех подписчиков.
	complete-transaction
    Команда Get-Transaction показывает, что количество подписчиков объекта 
    транзакции равно 1, но значение Status все еще Active (а не Committed).   
        RollbackPreference:  SubscriberCount:  Status
        ------------------   ---------------   ------
        Error                1                 Active 
    Для завершения фиксации транзакции введите вторую команду Complete-
    Transaction. Чтобы зафиксировать транзакцию с несколькими 
    подписчиками, необходимо ввести по одной команде Complete-Transaction 
    для каждой команды Start-Transaction.
     	complete-transaction
      
    Еще одна команда Get-Transaction показывает, что транзакция 
    зафиксирована.
        RollbackPreference:  SubscriberCount:  Status
        ------------------   ---------------   ------
        Error                0                 Committed 
  ПРИМЕР 8: УПРАВЛЕНИЕ НЕЗАВИСИМЫМИ ТРАНЗАКЦИЯМИ
    При запуске транзакции во время выполнения другой транзакции можно 
    использовать параметр Independent командлета Start-Transaction, чтобы 
    новая транзакция была независима от первоначальной.
    При этом командлет Start-Transaction создает новый объект 
    транзакции и новая транзакция становится активной.
    Сначала нужно запустить транзакцию в разделе HKCU:\Software.
	
        start-transaction
     
    Следующая команда с помощью команды Get-Transaction получает активную 
    транзакцию.
	get-transaction
    Результат показывает объект, представляющий активную транзакцию.
        RollbackPreference:  SubscriberCount:  Status
        ------------------   ---------------   ------
        Error                1                 Active 
     
    Следующая команда добавляет раздел реестра MyCompany в состав 
    транзакции. Она использует параметр UseTransaction (UseTx) для 
    включения команды в активную транзакцию.
	new-item MyCompany -use
    Следующая команда запускает новую транзакцию. Команда использует 
    параметр Independent, означающий, что эта транзакция не является 
    подписчиком активной транзакции.
         start-transaction -independent
    При создании независимой транзакции новая (созданная последней) 
    транзакция становится активной. С помощью команды Get-Transaction 
    можно получить активную транзакцию. 
	get-transaction
    Обратите внимание, что количество подписчиков транзакции равно 1, 
    то есть других подписчиков нет и транзакция новая.
        RollbackPreference:  SubscriberCount:  Status
        ------------------   ---------------   ------
        Error                1                 Active 
    Новую транзакцию нужно завершить (зафиксировать или откатить) 
    перед тем, как управлять первоначальной транзакцией.
    Следующая команда добавляет в реестр раздел MyOtherCompany.
    Она использует параметр UseTransaction (UseTx) для включения команды в 
    активную транзакцию.
        new-item MyOtherCompany -usetx
    Теперь откатим транзакцию. Если бы это была одна транзакция с двумя 
    подписчиками, откат транзакции откатил бы всю транзакцию для всех 
    подписчиков.
    Однако из-за того, что транзакции независимы, откат последней 
    транзакции отменяет изменения реестра, а первоначальная 
    транзакция становится активной.
        undo-transaction
    Команда Get-Transaction подтверждает, что первоначальная 
    транзакция в этом сеансе все еще активна.
	get-transaction
        RollbackPreference:  SubscriberCount:  Status
        ------------------   ---------------   ------
        Error                1                 Active 
    Следующая команда фиксирует активную транзакцию.
        complete-transaction
    Команда Get-ChildItem показывает, что реестр изменен.
	dir m*
        Hive: HKEY_CURRENT_USER\Software
        SKC  VC Name                           Property
        ---  -- ----                           --------
        83   1 Microsoft                      {(default)}
         0   0 MyCompany                      {}
СМ. ТАКЖЕ
    Start-Transaction
    Get-Transaction
    Complete-Transaction
    Undo-Transaction
    Use-Transaction
    Registry (поставщик)
    about_Providers
    Get-PSProvider
    Get-ChildItem
	



about_trap

РАЗДЕЛ
    about_Trap
КРАТКОЕ ОПИСАНИЕ
    Описывает ключевое слово, обрабатывающее прерывающие ошибки.
ПОЛНОЕ ОПИСАНИЕ
    Прерывающая ошибка останавливает выполнение инструкции. Если 
    Windows PowerShell не обрабатывает каким-либо образом прерывающую 
    ошибку, Windows PowerShell прерывает и функцию или скрипт в 
    текущем конвейере. В других языках, например C#, прерывающие 
    ошибки называются исключениями.
    Ключевое слово Trap определяет список инструкций, которые нужно 
    выполнить при возникновении прерывающей ошибки. Инструкции Trap 
    обрабатывают прерывающие ошибки и обеспечивают продолжение 
    выполнения скрипта или функции.
  Синтаксис
      Синтаксис инструкции Trap следующий:
          trap [[<тип_ошибки>]] {<список_инструкций>}
      Инструкция Trap включает список инструкций, которые нужно 
      выполнить при возникновении прерывающей ошибки. Ключевое слово 
      Trap может, кроме того, задавать тип ошибки. Тип ошибки 
      указывается в квадратных скобках. 
      Скрипт или команда могут содержать несколько инструкций Trap. 
      Инструкции Trap можно помещать в любое место скрипта или команды. 
  Перехват всех прерывающих ошибок
      При возникновении прерывающей ошибки, которая не обрабатывается 
      скриптом или командой, Windows PowerShell проверяет, нет ли 
      инструкции Trap для обработки этой ошибки. Если инструкция Trap 
      есть, Windows PowerShell продолжает выполнять скрипт или 
      команду в инструкции Trap.
 
      Ниже показан пример простейшей инструкции Trap:
          trap {"Обнаружена ошибка."}
      Эта инструкция Trap перехватывает все прерывающие ошибки. Ниже 
      показан пример функции, содержащей эту инструкцию Trap:
          function TrapTest {
              trap {"Обнаружена ошибка."}
              nonsenseString
              }
      Эта функция включает бессмысленную строку, вызывающую ошибку. 
      При выполнении эта функция возвращает следующие результаты:
          C:\PS> TrapTest
          Обнаружена ошибка.
      Ниже показан пример инструкции Trap, выводящей ошибку с помощью 
      автоматической переменной $_:
          function TrapTest {
              trap {"Обнаружена ошибка: $_"}
              nonsenseString
              }
      При выполнении эта версия функции возвращает следующие результаты:
          C:\PS> TrapTest
          Обнаружена ошибка: условие "nonsenseString" не распознано 
          как имя командлета, функции, файла скрипта или выполняемой 
          программы. Проверьте правильность написания имени, наличие 
          и правильность пути и повторите попытку. 
      Инструкции Trap могут быть и сложнее. Инструкция Trap может 
      включать несколько условий или вызовов функций. Она может 
      записывать ошибку в журнал, тестировать или даже запускать 
      другую программу.
   Перехват определенных прерывающих ошибок
      Ниже показан пример инструкции Trap, перехватывающей ошибки типа 
      CommandNotFoundException:
          trap [System.Management.Automation.CommandNotFoundException]
              {"Перехвачена ошибка команды"}
      Когда функция или скрипт обнаруживает строку, не совпадающую с 
      какой-нибудь известной командой, эта инструкция Trap отображает 
      строку "Перехвачена ошибка команды". После выполнения 
      инструкций списка Trap Windows PowerShell записывает объект 
      ошибки в поток ошибок и продолжает выполнять скрипт.
      Windows PowerShell использует типы исключений Microsoft .NET 
      Framework 3.0. В показанном ниже примере задается тип ошибок 
      System.Exception:
          trap [System.Exception] {"Перехвачена ошибка"}
      Тип ошибок CommandNotFoundException наследуется от типа 
      System.Exception. Эта инструкция перехватывает ошибку, которую 
      создает неизвестная команда. Она, кроме того, перехватывает 
      другие типы ошибок.
      В скрипте может быть несколько инструкций Trap. Одна ошибка 
      может быть перехвачена только одной инструкцией Trap. Если 
      происходит ошибка и при этом доступно несколько инструкций 
      Trap, Windows PowerShell использует ту инструкцию Trap, тип 
      ошибок которой лучше всего соответствует ошибке. 
      В следующем примере скрипта содержится ошибка. Скрипт включает 
      общую инструкцию Trap, перехватывающую любые прерывающие 
      ошибки, и определенную инструкцию Trap, для которой задан тип 
      CommandNotFoundException.
          trap {"Перехвачена другая прерывающая ошибка" } trap 
          [System.Management.Automation.CommandNotFoundException] {"Перехвачена
 
	  ошибка команды"} nonsenseString
      Выполнение скрипта приводит к таким результатам:
          Перехвачена ошибка команды
          Условие "nonsenseString" не распознано как имя командлета, 
          функции, файла скрипта или выполняемой программы. Проверьте 
          правильность написания имени, наличие и правильность пути и 
          повторите попытку.
          В C:\PS>testScript1.ps1:3 знак:19
          +   nonsenseString < 
      Так как Windows PowerShell не распознает "nonsenseString" как 
      командлет или другой элемент, возвращается ошибка 
      CommandNotFoundException. Эта прерывающая ошибка перехватывается
      определенной инструкцией Trap.
      Ниже показан пример скрипта с теми же инструкциями Trap, но с 
      другой ошибкой:
          trap {"Перехвачена другая прерывающая ошибка" } 
	  trap [System.Management.Automation.CommandNotFoundException] 
              {"Перехвачена ошибка команды"}
          1/$null
      Выполнение скрипта приводит к таким результатам:
          перехвачена другая прерывающая ошибка;
          попытка деления на ноль.
          В C:PS> errorX.ps1:3 знак:7
          +   1/ < $null
      Попытка поделить на ноль не создает ошибку CommandNotFoundExcept
      ion. Эта ошибка перехватывается другой инструкцией Trap, 
      предназначенной для любых прерывающих ошибок. 
  Перехват ошибок и область
      Если прерывающая ошибка происходит в той же области, где 
      находится инструкция Trap, Windows PowerShell после выполнения 
      инструкций Trap продолжает с инструкции после ошибки. Если 
      ошибка и инструкция Trap находятся в разных областях, 
      выполнение продолжается со следующей инструкции из области, в 
      которой находится инструкция Trap.
 
      Например, если ошибка происходит в функции, а инструкция Trap 
      находится в этой функции, скрипт продолжается со следующей 
      инструкции. Например, следующий скрипт содержит ошибку и 
      инструкцию Trap:
          function function1 {
              trap { "Ошибка: " }
              NonsenseString
              "function1 выполнена"
              }
      Выполнение функции Function1 в следующей части скрипта приводит 
      к таким результатам: 
          function1
          Ошибка: 
          Условие "NonsenseString" не распознано как имя командлета, 
          функции, файла скрипта или выполняемой программы. Проверьте 
          правильность написания имени, наличие и правильность пути и 
          повторите попытку.
          В C:\PS>TestScript1.ps1:3 знак:19
          +   NonsenseString 
          function1 выполнена 
 
      Инструкция Trap в функции перехватывает ошибку. После вывода 
      сообщения Windows PowerShell продолжает выполнять функцию. 
      Обратите внимание, что функция Function1 была выполнена.
      Сравните это со следующим примером, в котором содержатся те же 
      ошибка и инструкция Trap. В этом примере инструкция Trap 
      выполняется вне функции:
          function function2 {
              NonsenseString
              "function2 выполнена"
              }
          trap { "Ошибка: " }
              . . .
          function2
      Выполнение функции Function2 в следующей части скрипта приводит 
      к таким результатам:
          Ошибка: 
          Условие "NonsenseString" не распознано как имя командлета, 
          функции, файла скрипта или выполняемой программы. Проверьте 
          правильность написания имени, наличие и правильность пути и 
          повторите попытку.
          В C:\PS>TestScript2.ps1:4 знак:19
          +   NonsenseString 
      В этом примере не была выполнена команда "function2 завершена". 
      Несмотря на то что обе прерывающие ошибки произошли внутри 
      функции, Windows PowerShell не возвращается обратно в функцию 
      после выполнения инструкции Trap, потому что инструкция 
      находилась вне функции.
  Использование ключевых слов Break и Continue
      Ключевые слова Break и Continue можно использовать в инструкции 
      Trap, чтобы определить, будет ли скрипт или команда продолжать 
      выполняться после прерывающей ошибки. 
      Если в список инструкций Trap включена инструкция Break, 
      Windows PowerShell прерывает функцию или скрипт. Следующий 
      пример функции использует ключевое слово Break в инструкции Trap:
          C:\PS> function break_example {
              trap {"Перехвачена ошибка"; break;}
              1/$null
              "Функция выполнена."
              }
          C:\PS> break_example
          Перехвачена ошибка
          Попытка деления на ноль.
          В строке:4 знак:7
      Инструкция Trap включала ключевое слово Break, поэтому функция 
      перестала выполняться и строка "Функция выполнена" запущена не была.
      Если в инструкцию Trap включена инструкция Continue, Windows 
      PowerShell продолжает после утверждения, вызвавшего ошибку, как 
      если бы ключевых слов Break или Continue не было. Но с ключевым 
      словом Continue Windows PowerShell не записывает ошибку в поток 
      ошибок. 
      Следующий пример функции использует ключевое слово Continue в 
      инструкции Trap:
          C:\PS> function continue_example {
              trap {"Перехвачена ошибка"; continue;} 
	      1/$null
              "Функция выполнена."}
          C:\PS> continue_example
          Перехвачена ошибка
          Функция выполнена. 
      Функция продолжает выполнение после перехвата ошибки, и 
      запускается инструкция "Функция выполнена". Ошибка не 
      записывается в поток. 
СМ. ТАКЖЕ
    about_Break
    about_Continue
    about_Throw
    about_Try_Catch_Finally
    about_Scopes
    about_Try_Catch_Finally



about_try_catch_finally

РАЗДЕЛ
    about_Try_Catch_Finally
КРАТКОЕ ОПИСАНИЕ
    Описание использования блоков Try, Catch и Finally для обработки 
    прерывающих ошибок.
ПОЛНОЕ ОПИСАНИЕ
    Блоки Try, Catch и Finally используются для ответа или обработки 
    прерывающих ошибок в скриптах. Для обработки прерывающих ошибок в 
    скриптах можно использовать также инструкцию Trap. Дополнительные 
    сведения см. в разделе about_Trap.
    Прерывающая ошибка останавливает выполнение инструкции. Если Windows 
    PowerShell не обрабатывает каким-либо образом прерывающую ошибку, Windows 
    PowerShell прерывает и функцию или скрипт, использующий текущий 
    конвейер. В других языках, например C#, прерывающие ошибки называются 
    исключениями. Дополнительные сведения об ошибках см. в разделе 
    about_Errors.
    С помощью блока Try определяется раздел скрипта, в котором Windows 
    PowerShell следует следить за ошибками. Если в блоке Try происходит 
    ошибка, она сначала сохраняется в автоматическую переменную $Error. 
    Затем Windows PowerShell ищет блок Catch для обработки ошибки. Если у 
    инструкции Try нет соответствующего блока Catch, Windows PowerShell 
    продолжает искать подходящий блок Catch или инструкцию Trap в 
    родительских областях. По завершении блока Catch (или если не удается 
    найти подходящий блок Catch или инструкцию Trap) выполняется блок Finally. 
    Если ошибку обработать невозможно, она записывается в поток ошибок.
    Блок Catch может включать команды для отслеживания ошибок или для 
    восстановления нормального потока исполнения скрипта. Блок Catch 
    может указывать типы перехватываемых им ошибок. Инструкция Try может 
    включать несколько блоков Catch для разных типов ошибок.
    Блок Finally можно использовать для высвобождения ресурсов, 
    которые больше не нужны скрипту. 
    Try, Catch и Finally напоминают ключевые слова Try, Catch и 
    Finally, которые используются в языке программирования C#.
  Синтаксис
      Инструкция Try содержит блок Try, ноль или больше блоков Catch 
      и ноль или больше блоков Finally. Инструкция Try должна 
      содержать как минимум один блок Catch или один блок Finally.
      Ниже показан синтаксис блока Try:
          try {<список_инструкций>}
      За ключевым словом Try следует список инструкций в фигурных 
      скобках. Если во время выполнения инструкций из списка происходит 
      прерывающая ошибка, скрипт передает объект ошибки из блока Try 
      соответствующему блоку Catch. 
      Ниже показан синтаксис блока Catch: 
          catch [[<тип_ошибки>][',' <тип_ошибки>]*] {<список_инструкций>}
      Типы ошибок указываются в квадратных скобках. Внешние скобки 
      означают, что этот элемент необязателен.
      За ключевым словом Catch идет необязательный список 
      спецификаций типов ошибок и список инструкций. Если в блоке Try 
      происходит прерывающая ошибка, Windows PowerShell ищет 
      подходящий блок Catch. Если он найден, выполняются инструкции в 
      блоке Catch.
      Блок Catch может указывать один или несколько типов ошибок. Тип 
      ошибки - это исключение Microsoft .NET Framework или исключение, 
      наследуемое от исключения .NET Framework. Блок Catch обрабатывает ошибки 
      указанного класса исключений .NET Framework или любого класса, 
      наследуемого от указанного класса.
      Если блок Catch указывает тип ошибок, этот блок Catch 
      обрабатывает этот тип ошибок. Если блок Catch не указывает тип 
      ошибок, этот блок обрабатывает любые ошибки, возникающие в 
      блоке Try. Инструкция Try может включать несколько блоков Catch 
      для разных определенных типов ошибок. 
      Ниже показан синтаксис блока Finally:
          finally {<список_инструкций>}
      За ключевым словом Finally следует список инструкций, 
      выполняющийся при каждом запуске скрипта, даже если инструкция 
      Try была выполнена без ошибок или ошибка была перехвачена 
      инструкцией Catch. 
      Обратите внимание, что при нажатии сочетания клавиш CTRL+C конвейер 
      останавливается. Объекты, отправляемые в конвейер, не попадут в набор 
      выходных данных. Поэтому, если должно отображаться какое-нибудь 
      предложение, например "Выполнен блок Finally", после нажатия 
      сочетания клавиш CTRL+C его отображение не произойдет, даже если блок 
      Finally был выполнен.
  Перехват ошибок
      В приведенном ниже примере скрипта показан блок Try с блоком Catch:
          try { NonsenseString }
          catch { "Произошла ошибка." }
      Ключевое слово Catch должно располагаться непосредственно за 
      блоком Try или другим блоком Catch. 
      Windows PowerShell не распознает "NonsenseString" как командлет 
      или другой элемент. Выполнение скрипта возвращает такие результаты:
          Произошла ошибка.
      Когда скрипт сталкивается с "NonsenseString", он выдает прерывающую 
      ошибку. Блок Catch обрабатывает ошибку, выполняя список инструкций в 
      блоке.
  Использование нескольких инструкций Catch
      Инструкция Try может содержать любое число блоков Catch. Например, 
      следующий скрипт содержит блок Try, загружающий файл MyFile.doc. Блок Try
 
      содержит два блока Catch:
          try
          {
             $wc = new-object System.Net.WebClient 
             $wc.DownloadFile("http://www.contoso.com/MyDoc.doc") 
          }
          catch [System.Net.WebException],[System.IO.IOException] 
          {
              "Не удается загрузить MyDoc.doc с сайта http://www.contoso.com." 
          }
          catch
          {
              "Произошла неразрешимая ошибка." 
          }
      Первый блок Catch обрабатывает ошибки типов System.Net.WebExcept
      ion и System.IO.IOException. Второй блок Catch не указывает тип 
      ошибок. Второй блок Catch обрабатывает любые другие возникающие 
      прерывающие ошибки.
      Windows PowerShell сопоставляет типы ошибок по наследованию. 
      Блок Catch обрабатывает ошибки указанного класса исключений 
      .NET Framework или любого класса, наследуемого от указанного 
      класса. В следующем примере содержится блок Catch, 
      перехватывающий ошибку "Команда не найдена".
          catch [System.Management.Automation.CommandNotFoundException] 
              {"Inherited Exception" }
      Указанный тип ошибок CommandNotFoundException наследуется от типа 
      System.SystemException. Фрагмент в следующем примере тоже 
      перехватывает ошибку "Команда не найдена":
          catch [System.SystemException] {"Base Exception" }
      Этот блок Catch обрабатывает ошибку "Команда не найдена" и 
      другие ошибки, наследуемые от типа SystemException.
      Если указывается класс ошибок и один из производных классов, 
      блок Catch для производного класса следует расположить перед 
      блоком Catch для общего класса.
  Освобождение ресурсов с помощью Finally
      Чтобы высвободить ресурсы, используемые скриптом, добавьте 
      после блоков Try и Catch блок Finally. Инструкции блока Finally 
      выполняются независимо от того, происходит ли в блоке Try прерывающая 
      ошибка. Windows PowerShell выполняет блок Finally перед завершением 
      скрипта или перед тем, как текущий блок выйдет из области действия. 
      Блок Finally выполняется даже при нажатии сочетания клавиш 
      CTRL+C для прекращения скрипта. Блок Finally выполняется, и 
      если ключевое слово Exit останавливает скрипт из блока Catch.
СМ. ТАКЖЕ
    about_Errors
    about_Trap



about_type_operators

РАЗДЕЛ
    about_Type_Operators
КРАТКОЕ ОПИСАНИЕ
    Описывает операторы, работающие с типами Microsoft .NET Framework.
ПОЛНОЕ ОПИСАНИЕ
    Операторы логического типа (-is и -isnot) определяют, является ли 
    объект экземпляром указанного типа .NET Framework. Оператор -is 
    возвращает значение TRUE, если тип соответствует объекту и 
    значение FALSE, если нет. Оператор -isnot возвращает значение 
    FALSE, если тип соответствует объекту, и значение TRUE, если нет.
 
    Оператор -as пытается преобразовать объект ввода в указанный тип 
    платформы Microsoft .NET Framework. В случае успеха он возвращает 
    преобразованный объект. В случае неудачи он не возвращает ничего. 
    Он не возвращает ошибку.
    В следующей таблице перечислены операторы типов в Windows PowerShell.
    Оператор  Описание                    Пример  
    --------  ------------------------    --------------
    -is       Возвращает TRUE, если на    C:\PS> (get-date) -is [datetime] 
	      вводе экземпляр указанного  True
	      типа .NET Framework.       
    -isnot    Возвращает TRUE, если на 	  C:\PS> (get-date) -isnot [datetime]
	      вводе не экземпляр 	  False
	      указанного типа 
	      .NET Framework.        
 
    -as       Преобразует объект ввода    C:\PS> 12/31/07 -as [datetime]
	      в указанный тип .NET        Monday, December 31, 2007 12:00:00 AM
    	      Framework.         
     
    Операторы типов используются со следующим синтаксисом:
        <входные_данные> <оператор> [тип .NET]
    Можно использовать также следующий синтаксис:
        <входные_данные> <оператор> "тип .NET"
 
    Тип .NET Framework указывается следующим образом: заключите его 
    имя в квадратные скобки ([ ]) или введите тип как строку, 
    например [DateTime] или "datetime" для типа System.DateTime. Если 
    тип находится не в корневом пространстве имен системы, укажите 
    полное название типа объекта. Можно опустить "System.". Например, 
    чтобы указать System.Diagnostics.Process, введите [System.Diagnost
    ics.Process], [Diagnostics.Process] или "diagnostics.process". 
    Операторы типов всегда возвращают логическое значение, даже если 
    на вводе была коллекция объектов. При этом, если на вводе 
    коллекция, операторы типов находят тип .NET Framework коллекции. 
    Они не находят типы для каждого объекта, даже если все объекты 
    имеют один тип.
    Чтобы найти тип .NET Framework объекта, используйте командлет 
    Get-Member. Можно также использовать метод GetType всех объектов 
    вместе со свойством FullName этого метода. Например, следующая 
    инструкция возвращает тип значения, которое возвращает команда 
    Get-Culture:
        C:\PS> (get-culture).gettype().fullname
        System.Globalization.CultureInfo
 
ПРИМЕРЫ
    Ниже показаны примеры использования операторов Type.
        C:\PS> 32 -is [Float]
        False
        C:\PS> 32 -is "int"
        True
        C:\PS> (get-date) -is [DateTime]
        True
        C:\PS> "12/31/2007" -is [DateTime]
        False
        C:\PS> "12/31/2007" -is [String]
        True
        C:\PS> (get-process powershell)[0] -is [System.Diagnostics.Process]
        True
        C:\PS> (get-command get-member) -is [System.Management.Automation.Cmdle
tInfo]
        True
 
    Следующий пример показывает, что если на вводе коллекция 
    объектов, соответствующий тип - тип .NET Framework коллекции, а 
    не тип отдельных объектов коллекции.
    В этом примере, несмотря на то что оба командлета Get-Culture и 
    Get-UICulture возвращают объекты System.Globalization.CultureInfo,
     коллекция этих объектов - массив System.Object.
        C:\PS> (get-culture) -is [System.Globalization.CultureInfo]
        True
        C:\PS> (get-uiculture) -is [System.Globalization.CultureInfo]
        True
        C:\PS> (get-culture), (get-uiculture) -is [System.Globalization.Culture
Info]
        False
        C:\PS> (get-culture), (get-uiculture) -is [Array]
        True
 
        C:\PS> (get-culture), (get-uiculture) | foreach {$_ -is [System.Globali
zation.CultureInfo])
        True
        True
        C:\PS> (get-culture), (get-uiculture) -is [Object]
        True
 
    В следующих примерах показано, как использовать оператор -as.
        C:\PS> "12/31/07" -is [datetime]
        False
        C:\PS> "12/31/07" -as [datetime]
        Monday, December 31, 2007 12:00:00 AM
        C:\PS> $date = "12/31/07" -as [datetime]
        C:\PS>$a -is [datetime]
        True
        C:\PS> 1031 -as [System.Globalization.CultureInfo]
        LCID             Name             DisplayName
        ----             ----             -----------
        1031             de-DE            German (Germany)
    На следующем примере показано, что если оператор -as не может 
    преобразовать объект ввода в тип .NET Framework, он ничего не 
    возвращает.
        C:\PS> 1031 -as [System.Diagnostic.Process]
        C:\PS>
 
СМ. ТАКЖЕ
    about_Operators



about_types.ps1xml

РАЗДЕЛ
    about_Types.ps1xml
КРАТКОЕ ОПИСАНИЕ
    Описывает, как с помощью файлов Types.ps1xml расширить типы 
    Microsoft .NET Framework объектов, используемых в Windows PowerShell. 
ПОЛНОЕ ОПИСАНИЕ
    Файл Types.ps1xml в каталоге установки Windows PowerShell 
    ($pshome) - это текстовый файл на основе XML, позволяющий 
    добавлять свойства и методы к объектам, использующимся в Windows 
    PowerShell. Windows PowerShell содержит встроенный файл 
    Types.ps1xml, добавляющий к типам .NET несколько элементов. Для 
    большего расширения типов можно создавать дополнительные файлы 
    Types.ps1xml.
    Например, по умолчанию объекты массивов (System.Array) имеют 
    свойство Length, которое указывает количество объектов в массиве. 
    Но так как название "length" (длина) описывает свойство 
    недостаточно четко, Windows PowerShell добавляет свойство-псевдони
    м под названием "Count" (количество), отображающее то же 
    значение. Следующий фрагмент XML добавляет к типу System.Array 
    свойство Count.
        <Type>
            <Name>System.Array</Name>
            <Members>
                <AliasProperty>
                    <Name>Count</Name>
                    <ReferencedMemberName>
                        Length
                    </ReferencedMemberName>
                </AliasProperty>
            </Members>
        </Type>
    Чтобы получить новое свойство AliasProperty, примените команду 
    Get-Member к любому массиву, как показано в следующем примере.
        Get-Member -inputobject (1,2,3,4)
    Эта команда возвращает следующий результат.
	Name           MemberType    Definition
	----           ----------    ----------
	Count          AliasProperty Count = Length
	Address        Method        System.Object& Address(Int32 )
	Clone          Method        System.Object Clone()
	CopyTo         Method        System.Void CopyTo(Array array, Int32 index):	
	Equals         Method        System.Boolean Equals(Object obj)
	Get            Method        System.Object Get(Int32 )
	...
    В результате в Windows PowerShell можно использовать свойство 
    массивов Count или свойство Length. Пример:
	C:\PS> (1, 2, 3, 4).count
	4
	C:\PS> (1, 2, 3, 4).length
	4
 
  Создание новых файлов Types.ps1xml
      Файлы PS1XML, устанавливаемые вместе с Windows PowerShell, 
      имеют цифровую подпись, защищающую их от искажения, поскольку 
      форматирование может включать блоки скриптов. Поэтому, чтобы 
      добавить к типу .NET Framework свойство или метод, создавайте 
      собственные файлы Types.ps1xml и добавляйте их в консоль 
      Windows PowerShell.
      Для создания нового файла сначала скопируйте имеющийся файл 
      Types.ps1xml. Новый файл может иметь любое имя, но он должен 
      иметь расширение PS1XML. Новый файл можно поместить в любой 
      каталог, доступный оболочке Windows PowerShell, однако 
      рекомендуется помещать его в каталог установки Windows 
      PowerShell ($pshome) или в подкаталог каталога установки.
      После сохранения добавьте новый файл с помощью командлета 
      Update-TypeData в консоль Windows PowerShell. Если новые типы 
      должны иметь приоритет перед типами, определенными во 
      встроенном файле, следует использовать параметр PrependData 
      командлета Update-TypeData. Действие командлета Update-TypeData 
      распространяется только на текущую консоль. Чтобы изменение 
      распространялось на все будущие консоли, экспортируйте консоль 
      или добавьте команду Update-TypeData в профиль Windows PowerShell.
  Types.ps1xml и командлет Add-Member
      Файлы Types.ps1xml добавляют свойства и методы ко всем 
      экземплярам объектов указанного типа .NET Framework в 
      задействованной консоли Windows PowerShell. Если же нужно 
      добавить свойства или методы только к одному экземпляру 
      объекта, используйте командлет Add-Member.
      Дополнительные сведения см. в разделе Add-Member.
  Пример: добавление члена возраста в объекты FileInfo
      В данном примере показано, как добавить свойство Age к объектам 
      файлов (System.IO.FileInfo). Возраст файла - это разница в днях 
      между временем его создания и текущим временем.
      В качестве шаблона для нового файла проще всего использовать 
      первоначальный файл Types.ps1xml. Следующая команда копирует 
      первоначальный файл в файл MyTypes.ps1xml в каталоге $pshome.
          copy-item Types.ps1xml MyTypes.ps1xml
      Затем откройте файл Types.ps1xml в любом редакторе XML или 
      текста, например в Блокноте. Так как свойство Age 
      рассчитывается с помощью блока скрипта, найдите тег 
      <ScriptProperty>, который будет использоваться как модель для 
      нового свойства Age. 
      Для создания свойства скрипта скопируйте XML между тегами кода 
      <Type> и </Type>. Затем удалите оставшуюся часть файла, кроме 
      открывающих тегов <?xml> и <Types> и закрывающего тега 
      </Types>. Чтобы предотвратить возникновение ошибок, нужно 
      удалить и цифровую подпись.
      Начните со свойства скрипта-модели, такого как следующее 
      свойство скрипта, скопированное из первоначального файла 
      Types.ps1xml.
          <?xml version="1.0" encoding="utf-8" ?>
          <Types>
              <Type>
                 <Name>System.Guid</Name>
                    <Members>
                        <ScriptProperty>
                            <Name>Guid</Name>
                            <GetScriptBlock>$this.ToString()</GetScriptBlock>
                        </ScriptProperty>
                    </Members>
              </Type>
          </Types>
      Затем измените имя типа .NET Framework, имя свойства и значение 
      блока скрипта, создав свойство Age для объектов файлов.
          <?xml version="1.0" encoding="utf-8" ?>
          <Types>
              <Type>
                 <Name>System.IO.FileInfo</Name>
                    <Members>
                        <ScriptProperty>
                            <Name>Age</Name>
                            <GetScriptBlock>
                               ((get-date) - ($this.creationtime)).days
                            </GetScriptBlock>
                        </ScriptProperty>
                    </Members>
              </Type>
          </Types>
      Сохранив и закрыв файл, добавьте новый файл Types.ps1xml в 
      текущую консоль с помощью команды Update-TypeData, такой как 
      приведенная ниже. В этой команде используется параметр 
      PrependData, чтобы задать для нового файла более высокий 
      приоритет по сравнению с исходным файлом. (Дополнительные 
      сведения о командлете Update-TypeData см. в разделе 
      Update-TypeData.)
          update-typedata -prependpath $pshome\MyTypes.ps1xml
      Для проверки изменений используйте команду Get-ChildItem, чтобы 
      вернуть файл PowerShell.exe в каталоге $pshome, а затем 
      передайте файл по конвейеру командлету Format-List, чтобы 
      получить список всех свойств файла. В результате изменений в 
      списке появилось свойство Age.
        get-childitem $pshome\powershell.exe | format-list -property *	
        PSPath            : Microsoft.PowerShell.Core\FileSystem::C:\WINDOWS...
        PSParentPath      : Microsoft.PowerShell.Core\FileSystem::C:\WINDOWS...
        PSChildName       : powershell.exe
        PSDrive           : C
        PSProvider        : Microsoft.PowerShell.Core\FileSystem
        PSIsContainer     : False
        Age               : 16
        VersionInfo       : File:             C:\WINDOWS\system32\WindowsPow...
                    InternalName:     POWERSHELL
                    OriginalFilename: PowerShell.EXE
	...
      Вывести свойство файла Age можно также с помощью следующей команды.
	  (get-childitem $pshome\powershell.exe).age
          16
 
  XML в файлах Types.ps1xml
      Тег <Types> включает все типы, которые определены в файле.
      Должна быть только одна пара тегов <Types>.
      Каждый тип .NET Framework, отмеченный в файле, должен быть 
      представлен парой тегов <Type>. 
      Теги типов должны содержать следующие теги.
          <Name>: пара тегов <Name>, включающих имя задействованного 
                  .типа .NET Framework.
          <Members>: пара тегов <Members>, включающих теги для 
                     новых свойств и методов, определяемых для типа 
                     .NET Framework.
      Любые следующие теги членов могут находиться внутри тегов <Members>.
      <AliasProperty>: определяет новое имя существующего свойства.
         Тег <AliasProperty> должен иметь пару тегов <Name>, 
         определяющих имя нового свойства, и пару тегов 
         <ReferencedMemberName>, которые задают существующее свойство. 
         Например, свойство-псевдоним Count - псевдоним свойства 
         Length объектов массивов.
             <Type>
                 <Name>System.Array</Name>
                 <Members>
                     <AliasProperty>
                         <Name>Count</Name>
                         <ReferencedMemberName>Length</ReferencedMembe
                         rName>
                     </AliasProperty>
                 </Members>
             </Type>
      <CodeMethod>: ссылается на статический метод класса .NET Framework.
         Тег <CodeMethod> должен иметь пару тегов <Name>, 
         определяющих имя нового метода, и пару тегов <GetCodeReferenc
         e>, указывающих код, в котором определен метод. 
         Например, свойство каталогов (объектов System.IO.DirectoryInf
         o) Mode - свойство кода, определенное в провайдере Windows 
         PowerShell FileSystem.
        
             <Type>
                 <Name>System.IO.DirectoryInfo</Name>
                 <Members>
                     <CodeProperty>
                        <Name>Mode</Name>
                        <GetCodeReference>
                           <TypeName>Microsoft.PowerShell.Commands.FileSystemPr
ovider</TypeName>
                           <MethodName>Mode</MethodName>
                        </GetCodeReference>
                     </CodeProperty>
                 </Members>
             </Type>
 
      <CodeProperty>: ссылается на статический метод класса .NET 
      Framework.
         Тег <CodeProperty> должен иметь пару тегов <Name>, 
         определяющих имя нового свойства, и пару тегов 
         <GetCodeReference>, указывающих код, в котором определено 
         свойство. 
         Например, свойство каталогов (объектов System.IO.DirectoryInf
         o) Mode - свойство кода, определенное в провайдере Windows 
         PowerShell FileSystem.
             <Type>
                 <Name>System.IO.DirectoryInfo</Name>
                 <Members>
                     <CodeProperty>
                        <Name>Mode</Name>
                        <GetCodeReference>
                           <TypeName>Microsoft.PowerShell.Commands.FileSystemPr
ovider</TypeName>
                           <MethodName>Mode</MethodName>
                        </GetCodeReference>
                     </CodeProperty>
                 </Members>
             </Type>
      <MemberSet>: определяет коллекцию членов (свойств и методов). 
         Теги <MemberSet> содержатся внутри основных тегов <Members>. 
         Они должны включать пару тегов <Name>, в которых находится 
         имя набора членов, и пару вторичных тегов <Members>, в 
         которых находятся члены (свойства и методы) этого набора. 
         Членами набора могут быть любые теги, создающие свойства 
         (например, <NoteProperty> или <ScriptProperty>), или методы 
         (например, <Method> или <ScriptMethod>).
         В файлах Types.ps1xml тег <MemberSet> используется, чтобы 
         определить 
         представления объектов .NET Framework в Windows PowerShell 
         по умолчанию. В этом случае именем набора членов (значение в 
         тегах <Name>) всегда является "PsStandardMembers", а имена 
         свойств тега (значение <Name>) могут быть следующими.
	    - DefaultDisplayProperty: одно свойство объекта.
            - DefaultDisplayPropertySet: одно или несколько свойств 
              объекта.
            - DefaultKeyPropertySet:одно или несколько ключевых 
              свойств объекта. Ключевое свойство определяет 
              экземпляры значений свойств, такие как идентификационные
              номера элементов в журнале сеанса.
         Например, следующий фрагмент XML определяет вывод по 
         умолчанию служб (объектов System.ServiceProcess.ServiceContro
         ller), которые возвращает командлет Get-Service. Он 
         определяет набор членов "PsStandardMembers", состоящий из 
         следующего набора свойств по умолчанию: Status, Name и 
         DisplayName.
             <Type>
                <Name>System.ServiceProcess.ServiceController</Name>
                <Members>
                   <MemberSet>
                       <Name>PSStandardMembers</Name>
                       <Members>
                           <PropertySet>
                             <Name>DefaultDisplayPropertySet</Name>
                             <ReferencedProperties>
                                <Name>Status</Name>
                                <Name>Name</Name>
                                <Name>DisplayName</Name>
                             </ReferencedProperties>
                           </PropertySet>
                       </Members>
                   </MemberSet>
                </Members>
             </Type>
   
      <Method>: ссылается на собственный метод основного объекта. 
      <Methods>: коллекция методов объекта.
      <NoteProperty>: определяет свойство со статическим значением.
         Тег <NoteProperty> должен иметь пару тегов <Name>, 
         определяющих имя нового свойства и пару тегов <Value>, 
         определяющих значение свойства.
         Например, следующий фрагмент XML создает для каталогов (объектов 
         System.IO.DirectoryInfo) свойство Status. Свойство Status всегда 
         имеет значение "Success".
             <Type>
                 <Name>System.IO.DirectoryInfo</Name>
                 <Members>
                     <NoteProperty>
                        <Name>Status</Name>
	                <Value>Success</Value>
                     </NoteProperty>
                 </Members>
             </Type>
      <ParameterizedProperty>: свойства, принимающие аргументы и 
      			       возвращающие значение.
      <Properties>: коллекция свойств объекта.
      <Property>: свойство базового объекта.
      <PropertySet>: определяет коллекцию свойств объекта.
         Тег <PropertySet> должен иметь пару тегов <Name>, 
         определяющих имя набора свойств, и пару тегов <ReferencedProp
         erty>, определяющих свойства. Имена свойств заключены в пары 
         тегов <Name>.
 
         В файле Types.ps1xml с помощью тегов <PropertySet> 
         определяется набор свойств для отображения объекта по 
         умолчанию. Отображение по умолчанию можно определить значением 
         "PsStandardMembers" в теге <Name> тега <MemberSet>.
         Например, следующий фрагмент XML создает для каталогов (объектов 
         System.IO.DirectoryInfo) свойство Status. Свойство Status всегда 
         имеет значение "Success".
             <Type>
                 <Name>System.ServiceProcess.ServiceController</Name>
                 <Members>
                     <MemberSet>
                         <Name>PSStandardMembers</Name>
                         <Members>
                             <PropertySet>
                                 <Name>DefaultDisplayPropertySet</Name>
                                 <ReferencedProperties>
                                     <Name>Status</Name
                                     <Name>Name</Name>
                                     <Name>DisplayName</Name>
                                 </ReferencedProperties>
                             </PropertySet>
                         <Members>
                     <MemberSet>
                 <Members>
             <Type>
     <ScriptMethod>: определяет метод, значением которого является 
		     результат выполнения скрипта.
         Тег <ScriptMethod> должен иметь пару тегов <Name>, 
         определяющих имя нового метода и пару тегов <Script>, 
         включающих блок скрипта, который возвращает результат метода. 
         Например, методы ConvertToDateTime и ConvertFromDateTime 
         управляющих объектов (System.System.Management.ManagementObje
         ct) - это методы- скрипты, использующие статические методы 
         ToDateTime и ToDmtfDateTime класса 
         System.Management.ManagementDateTimeConverter. 
             <Type>
                 <Name>System.Management.ManagementObject</Name>
                 <Members>
                     <ScriptMethod>
                         <Name>ConvertToDateTime</Name>
                         <Script>
                             [System.Management.ManagementDateTimeConverter]::T
oDateTime($args[0])
                         </Script>
                     </ScriptMethod>
                     <ScriptMethod>
                         <Name>ConvertFromDateTime</Name>
                         <Script>
                             [System.Management.ManagementDateTimeConverter]::T
oDmtfDateTime($args[0])
                         </Script>
                     </ScriptMethod>
                 </Members>
             </Type>
      <ScriptProperty>: определяет свойство, значением которого 
		        является результат выполнения скрипта.
         Тег <ScriptProperty> должен иметь пару тегов <Name>, 
         определяющих имя нового свойства, и пару тегов 
         <GetScriptBlock>, включающих блок скрипта, возвращающий 
         значение свойства.
         Например, свойство файлов (объектов System.IO.FileInfo) 
         VersionInfo - это свойство скрипта, которое получается в 
         результате использования свойства FullName статического 
         метода GetVersionInfo объектов System.Diagnostics.FileVersion
         Info.
             <Type>
                <Name>System.IO.FileInfo</Name>
                <Members>
                    <ScriptProperty>
                       <Name>VersionInfo</Name>
                       <GetScriptBlock>
                           [System.Diagnostics.FileVersionInfo]::GetVersionInfo
($this.FullName)
                       </GetScriptBlock>
                    </ScriptProperty>   
                </Members>
             </Type>
      Дополнительные сведения см. в пакете средств разработки 
      программного обеспечения (SDK) Windows PowerShell в библиотеке 
      MSDN (Microsoft Developer Network) по адресу 
      http://go.microsoft.com/fwlink/?LinkId=144538.
  Update-TypeData
    
      Для загрузки файлов Types.ps1xml в консоль Windows PowerShell 
      используется командлет Update-TypeData. Если типы в этом файле 
      должны иметь приоритет перед типами во встроенном файле 
      Types	.ps1xml, следует использовать параметр PrependData 
      командлета Update-TypeData. Действие командлета Update-TypeData 
      распространяется только на текущую консоль. Чтобы изменение 
      распространялось на все будущие консоли, экспортируйте консоль 
      или добавьте команду Update-TypeData в профиль Windows PowerShell.
  Подпись файлов Types.ps1xml
      Для защиты пользователей файла Types.ps1xml его можно подписать 
      с помощью цифровой подписи. Дополнительные сведения см. в 
      разделе about_Signing.
    	
СМ. ТАКЖЕ
    about_Signing
    Copy-Item
    Get-Member
    Update-TypeData



about_Variables

РАЗДЕЛ
    about_Variables
КРАТКОЕ ОПИСАНИЕ
    Описание хранения переменными значений, используемых в Windows 
    PowerShell.  
ПОЛНОЕ ОПИСАНИЕ
    Переменная - это единица памяти, в которой хранятся значения. В 
    Windows PowerShell переменные представлены строками текста с 
    одним словом, которые начинаются со знака доллара ($), например 
    $a, $process и $my_var.
    В Windows PowerShell несколько разных типов переменных.
    -- Созданные пользователем переменные: эти переменные создаются и 
       поддерживаются пользователем. По умолчанию переменные, 
       создаваемые в командной строке Windows PowerShell, существуют, 
       только пока открыто окно Windows PowerShell, и теряются после 
       того, как окно закрывается. Для сохранения переменную следует  
       добавить в профиль Windows PowerShell. Переменные можно 
       создавать в скриптах в глобальных или локальных областях или в
       областях скриптов.  
    -- Автоматические переменные: автоматические переменные хранят 
       состояние Windows PowerShell. Эти переменные создаются Windows 
       PowerShell, и Windows PowerShell изменяет их значения по мере 
       необходимости для поддержания их точности. Пользователи не 
       могут изменять значения этих переменных. Например, переменная 
       $PSHome содержит путь к каталогу установки Windows PowerShell. 
       Дополнительные сведения, список и описание автоматических 
       переменных см. в разделе about_Automatic_Variables.
    -- Привилегированные переменные: привилегированные переменные 
       хранят настройки пользователя для Windows PowerShell. Эти 
       переменные создаются оболочкой Windows PowerShell и 
       заполняются значениями по умолчанию. Пользователи могут 
       изменять значения этих переменных. Например, переменная 
       MaximumHistoryCount определяет максимальное число записей в 
       журнале сеанса. Дополнительные сведения, список и описание 
       привилегированных переменных см. в разделе about_Preference_Var
       iables.
    
 РАБОТА С ПЕРЕМЕННЫМИ
    Чтобы просмотреть список всех переменных в сессии Windows 
    PowerShell, наберите команду:
       get-variable
    Для отображения значения любой переменной введите имя переменной 
    после знака доллара ($). Windows PowerShell в ответ отобразит ее 
    значение.
       $<имя_переменной>
    Пример:
        PS> $pshome
        C:\Windows\System32\WindowsPowerShell\v1.0
    Для создания новой переменной или для изменения значения 
    переменной используйте инструкцию присваивания в следующем формате:
        $<переменная> = <значение>
    Пример:
        PS> $my-variable = 1, 2, 3
        или
        PS> $VerbosePreference = "Continue"
    Для получения объекта, представляющего переменную, используйте 
    команду Get-Variable, например:
        PS> get-variable pid
    Для использования переменной введите в команде или выражении имя 
    переменной, включая знак доллара ($). Если команда или выражение 
    не заключены в кавычки или заключены в двойные кавычки ("), 
    значение переменной используется в команде или выражении. Если 
    команда заключена в одиночные кавычки ('), в выражении 
    используется имя переменной.
    Например, первая команда находит значение переменной $profile, то 
    есть путь к файлу профиля пользователя Windows PowerShell. Вторая 
    команда открывает файл в Блокноте.
        PS> $profile
        C:\Documents and Settings\User01\My Documents\WindowsPowerShell\Microso
ft.PowerShell_profile.ps1
        PS> Notepad $profile
    В переменной можно хранить любые типы объектов, включая целые 
    числа, строки, массивы и хэш-таблицы, объекты, представляющие 
    процессы, службы, журналы событий и компьютеры.  
  
  СОХРАНЕНИЕ ПЕРЕМЕННЫХ
      Создаваемые переменные доступны только во время сеанса, в 
      котором были созданы. Они пропадают при завершении сеанса.
     
      Для сохранения переменную следует добавить в профиль Windows PowerShell. 
     
      Переменные в профиле добавляются в каждый открываемый сеанс 
      Windows PowerShell.
      Например, чтобы изменить значение переменной $VerbosePreference 
      во всех сеансах Windows PowerShell, необходимо добавить в 
      профиль Windows PowerShell следующую команду.
	  $VerbosePreference = "Continue"
      Эту команду можно добавить в профиль, открыв файл профиля в 
      текстовом редакторе, например в Блокноте, или воспользовавшись 
      командой Add-Content, такой как следующая.
      Следующая команда добавляет новое значение переменой 
      $VerbosePreference в профиль CurrentUser,AllHosts.
	  add-content -path $profile.CurrentUserAllHosts -value '$VerbosePreference = 
"Continue"'
      Дополнительные сведения о профилях Windows PowerShell см в 
      разделе about_profiles.
 ИМЕНА ПЕРЕМЕННЫХ СО СПЕЦИАЛЬНЫМИ ЗНАКАМИ
    Чтобы оболочка Windows PowerShell интерпретировала имя переменной 
    буквально, можно использовать фигурные скобки. Это особенно 
    полезно при создании или обращении к имени переменной, 
    содержащему специальные знаки, например дефисы, точки, двоеточия 
    и скобки. 
    Для создания имени переменной, содержащего дефис, заключите его в 
    фигурные скобки. Следующая команда создает переменную "save-items".
        C:\PS> ${save-items} = "a", "b", "c"
        C:\PS>${save-items}
        a
        b
        c
    Для обращения к имени переменной, содержащему скобки, заключите 
    его в фигурные скобки. 
    Например, следующая команда возвращает дочерние элементы в 
    хранилищах каталогов в переменной среды "ProgramFiles(x86)".
        C:\PS> Get-childitem ${env:ProgramFiles(x86)}
    Для обращения к имени переменной, содержащему фигурные скобки, 
    заключите его в фигурные скобки и поставьте перед внутренними 
    фигурными скобкам escape-символ в виде обратного апострофа. 
    Например, для создания переменной "this{value}is" со значением 1 
    введите следующую команду: 
        C:\PS> ${this`{value`}is} = 1
        C:\PS> ${this`{value`}is}
        1
 ДИСК VARIABLE:
     Windows PowerShell включает диск Variable:, который выглядит и 
     работает как диск файловой системы, но содержит переменные 
     текущего сеанса. 
     Чтобы перейти на диск variable, введите следующую команду:
        set-location variable:
        
         (или "cd variable:")
     
     На диске Variable можно с помощью командлета Get-ChildItem 
     вывести список элементов (переменных). Пример:
         get-childitem
         (или "dir" или "ls")
     
     Чтобы получить дополнительные сведения о диске Variable: и 
     поставщике Windows PowerShell Variable, введите следующую команду:
         get-help variable
СМ. ТАКЖЕ
    about_Automatic_Variables
    about_Environment_Variables
    about_Preference_Variables
    about_Scopes



about_While

РАЗДЕЛ
    about_While
КРАТКОЕ ОПИСАНИЕ
    Описывает инструкцию языка, которую можно использовать для 
    выполнения блока команд на основании результатов проверки условий.
ПОЛНОЕ ОПИСАНИЕ
    Инструкция While (цикл While) - конструкция языка для создания 
    цикла, в котором команды в командном блоке выполняются, пока 
    проверяемое условие принимает значение true. Построить инструкцию 
    While проще, чем инструкцию For, так как ее синтаксис менее сложен.
    Кроме того, она гибче инструкции Foreach, так как число 
    повторений цикла в инструкции While определяется заданным проверяемым 
    условием.
 
    Ниже показан синтаксис инструкции While:
        while (<условие>){<список_инструкций>}
    При выполнении инструкции While оболочка Windows PowerShell 
    вычисляет раздел <условие> инструкции, прежде чем перейти к разделу 
    <список_инструкций>. Условие в инструкции принимает значение
    true или false. Пока условие имеет значение true, Windows PowerShell 
    повторяет выполнение раздела <список_инструкций>.
    Раздел инструкции <список_инструкций> содержит одну или несколько 
    команд,
    выполняющихся при каждом входе в цикл или его повторении.
    Например, следующая инструкция While отображает числа от 1 до 3, 
    если не была создана переменная $val, или она была создана и 
    инициализирована значением 0.
        while($val -ne 3)
        {
            $val++
            Write-Host $val
        }
    В данном примере условие ($val не равно 3) имеет значение true, 
    если $val = 0, 1, 2. При каждом повторении цикла значение $val 
    увеличивается на 1 с использованием унарного оператора увеличения 
    значения ++ ($val++). При последнем выполнении цикла $val = 3. 
    Если $val равно 3, инструкция условия принимает значение false и цикл 
    завершается.
 
    Команду удобно записать в командной строке Windows PowerShell 
    следующим образом:
        while($val -ne 3){$val++; Write-Host $val} 
    Обратите внимание, что точка с запятой отделяет первую команду, 
    которая добавляет 1 к переменной $val, от второй команды, которая 
    записывает значение $val в консоль.
 
СМ. ТАКЖЕ
    about_Comparison_Operators
    about_Foreach
    about_For
    



about_wildcards

РАЗДЕЛ
    about_Wildcards
КРАТКОЕ ОПИСАНИЕ
    Описывает использование подстановочных знаков в Windows PowerShell.
 
ПОЛНОЕ ОПИСАНИЕ
    Во многих случаях требуется запустить командлет для обработки не 
    отдельных элементов, а их группы. Например, может потребоваться 
    найти все файлы с расширением PPT в каталоге C:\Techdocs. Если 
    запустить следующую команду, будут возвращены все элементы каталога:
        Get-ChildItem c:\techdocs
    Проблема с этой командой заключается в том, что придется 
    просмотреть все документы, перечисленные в каталоге, чтобы 
    выяснить, какие файлы имеют расширение PPT. Однако набор возвращаемых 
    элементов можно ограничить с помощью подстановочных знаков в параметрах 
    командлета. Подстановочный знак - это тип заполнителя, который 
    позволяет искать среди неизвестных значений и возвращать конкретные 
    результаты. Процесс использования подстановочных знаков иногда именуется 
    "глобализацией" (globbing). Например, предыдущий пример можно 
    изменить так, чтобы получить только PPT-файлы.
        Get-ChildItem c:\techdocs\*.ppt
    В этом случае звездочка (*) используется в качестве 
    подстановочного знака, чтобы указать, что перед расширением PPT могут 
    располагаться любые знаки. Поскольку указано расширение файла, все файлы, 
    возвращаемые командой, должны иметь это расширение, но при этом имена 
    файлов могут быть любыми. В результате возвращаются только нужные файлы.
    Оболочка Windows PowerShell поддерживает несколько подстановочных 
    знаков наряду с подстановочным знаком звездочки.
        Описание подстановочного знака        Пример   Совпадает         Не сов
падает
        -------- ------------------ 	      -------- ----------------- --------
        *        Совпадает с нулем или 	      a*       A, ag, Apple      banana
		 большим числом знаков        
                    
        ?        Совпадает точно с одним      ?n       an, in, on        ran
		 знаком в указанной позиции   
        [ ]      Совпадает с диапазоном       [a-l]ook book, cook, look  took
		 знаков    
 
        [ ]      Совпадает с указанными       [bc]ook  book, cook        hook
              	 знаками
    Большинство командлетов позволяют использовать подстановочные знаки в 
    некоторых параметрах. В разделе справки для каждого командлета 
    описано, в каких параметрах допускаются подстановочные знаки, если 
    они вообще разрешены. В параметрах, в которых допускаются 
    подстановочные знаки, они используются без учета регистра. Например, 
    ?n возвращает An, an, In, in, On и on.
    Можно сочетать подстановочные знаки в одном параметре. Например, чтобы 
    показать все TXT-файлы в каталоге C:\Techdocs, которые начинаются с 
    букв от "a" до "l", можно использовать следующую команду:
        Get-ChildItem c:\techdocs\[a-l]*.txt
    Используемый в команде подстановочный знак диапазона ([a-l]) 
    указывает, что имя файла должно начинаться с букв от "a" до "l". 
    Затем в команде используется подстановочный знак звездочки в качестве 
    заполнителя для любых знаков между первой буквой и расширением файла.
СМ. ТАКЖЕ
    about_Language_Keywords



about_Windows_PowerShell_2.0

РАЗДЕЛ
    about_Windows_PowerShell_2.0
КРАТКОЕ ОПИСАНИЕ
    Описание новых возможностей Windows PowerShell версии 2.0.
 
ПОЛНОЕ ОПИСАНИЕ
    Windows PowerShell 2.0 включает несколько важных компонентов, 
    расширяющих возможности этой оболочки, повышающих удобство ее 
    использования и позволяющих без труда управлять и следить за 
    всеми аспектами сред на основе Windows.
    Программа Windows PowerShell 2.0 совместима с предыдущей версией. 
    Командлеты, поставщики, оснастки, скрипты, функции и профили, 
    предназначенные для Windows PowerShell 1.0, работают в Windows 
    PowerShell 2.0 без изменений.
НОВЫЕ ВОЗМОЖНОСТИ
    Windows PowerShell 2.0 включает следующие новые возможности.
  Удаленное взаимодействие
    
      Windows PowerShell 2.0 позволяет выполнять команды на одном или 
      нескольких удаленных компьютерах с помощью одной команды 
      Windows PowerShell. Можно выполнять отдельные команды или создавать 
      постоянное соединение (сеанс) для выполнения последовательности 
      связанных команд. Можно также запустить сеанс на удаленном 
      компьютере, чтобы вводимые команды выполнялись непосредственно на 
      удаленном компьютере.
      Функции удаленного взаимодействия Windows PowerShell основаны 
      на удаленном управлении Windows (WinRM). WinRM - это 
      выполненная Майкрософт реализация протокола WS-Management, 
      стандартного протокола связи на основе SOAP, совместимого с 
      брандмауэром.
      На удаленных компьютерах должны быть установлены Windows 
      PowerShell 2.0, платформа .NET Framework 2.0 и служба WinRM. 
      Удаленные команды поддерживаются всеми операционными системами, 
      в которых работает Windows PowerShell. Текущий пользователь должен 
      располагать разрешениями на выполнение команд на удаленных компьютерах. 
      Дополнительные сведения см. в разделе about_Remote_Requirements.
      Для поддержки удаленного взаимодействия добавлены командлеты 
      Invoke-Command, Enter-PSSession и Exit-PSSession и другие 
      командлеты, содержащие элемент PSSession. Эти командлеты 
      позволяют создавать постоянные соединения и управлять ими.
      Некоторые командлеты, в том числе Get-Process, Get-Service и 
      Get-Eventlog, теперь содержат параметр ComputerName. Этот 
      параметр позволяет получать сведения об удаленных компьютерах.
      Эти командлеты используют для получения данных методы .NET 
      Framework, поэтому они не зависят от удаленного взаимодействия 
      Windows PowerShell. Они не требуют установки новых программ или 
      конфигураций. Дополнительные сведения см. в разделах справки для  
      отдельных командлетов.
      Дополнительные сведения об удаленных командах см. в разделе 
      about_Remote и about_Remote_FAQ. Дополнительные сведения о 
      сеансах см. в разделе about_PSSessions. 
  Среда Windows PowerShell ISE
    
      Windows PowerShell 2.0 включает интегрированную среду скриптов 
      (ISE) Windows PowerShell, ведущее приложение, позволяющее 
      выполнять команды и разрабатывать, писать, тестировать и 
      отлаживать скрипты с использованием графического интерфейса с 
      цветовым кодированием, основанного на Юникоде.
 
      Для Windows PowerShell ISE требуется платформа Microsoft .NET 
      Framework 3.0 или более поздней версии.
      Windows PowerShell ISE включает следующее.
      -  Область команд, позволяющая выполнять интерактивные команды 
         так же, как в консоли Windows PowerShell. Просто введите 
         команду и нажмите клавишу ВВОД. Выходные данные появятся в 
         области вывода.
      -  Область скриптов, позволяющая составлять, редактировать, 
         отлаживать и выполнять функции и скрипты. 
      -  Несколько вкладок, на каждой из которых есть собственные 
         области команд и скриптов, позволяют независимо выполнять 
         одну или несколько задач.
      Среда Windows PowerShell ISE предназначена как для новичков, 
      так и для опытных пользователей. 
  Фоновые задания
    
      Фоновые задания - это команды, выполняющиеся асинхронно. При запуске 
      фонового задания командная строка возвращается немедленно, даже если 
      команда продолжает выполняться. Функцию фоновых заданий можно 
      использовать для выполнения сложных команд в фоновом режиме, 
      позволяющем использовать сеанс для другой работы, не дожидаясь 
      выполнения команды.
      Фоновое задание можно выполнять на локальном или удаленном 
      компьютере, результаты можно сохранить на любом из них. Для 
      выполнения задания в удаленном режиме используйте командлет 
      Invoke-Command.
    
      Оболочка Windows PowerShell включает набор командлетов, 
      содержащих элемент Job (командлеты Job). Эти командлеты 
      используются для создания, запуска, управления и удаления 
      фоновых заданий и для получения результатов фонового задания. 
      Чтобы получить список командлетов заданий, введите следующую 
      команду:
          get-command *-job
      
      Дополнительные сведения о фоновых заданиях см. в разделе about_Jobs.
  Отладчик скриптов
    
      Windows PowerShell 2.0 включает отладчик скриптов и функций на 
      основе командлетов. Этот отладчик поддерживается открытым API, 
      имеющим полную документацию, который можно использовать для сборки 
      собственного отладчика или настройки и расширения имеющегося.
      Командлеты отладчика позволяют устанавливать точки останова на 
      строках, столбцах, переменных и командах. Эти командлеты 
      позволяют управлять точками останова и отображать стек вызова. Можно 
      создавать условные точки останова и определять настраиваемые действия 
      для точек останова, такие как выполнение скриптов диагностики и 
      записи в журнал.
      При достижении точки останова Windows PowerShell приостанавливае
      т выполнение и запускает отладчик. Отладчик включает набор 
      пользовательских команд для пошаговой проверки кода. Для отображения 
      значений переменных можно выполнять и стандартные команды Windows 
      PowerShell, а для изучения результатов можно пользоваться командлетами.
      
      Дополнительные сведения об отладке см. в разделе about_Debuggers.
  Раздел данных
    
      Скрипты, предназначенные для Windows PowerShell 2.0, могут 
      содержать один или несколько разделов DATA, отделяющих данные 
      от логики скрипта. Данные в новом разделе DATA ограничены 
      определенным поднабором языка скриптов Windows PowerShell.
      Раздел DATA используется в Windows PowerShell 2.0 для поддержки 
      вывода сообщений скриптов на различных языках. Раздел DATA можно 
      использовать для отделения определенных строк сообщений для 
      пользователей, которые будут переведены на различные языки 
      пользовательского интерфейса. 
      Дополнительные сведения см. в разделе about_Data_Sections.
  Вывод сообщений скриптов на различных языках
    
      Функции вывода сообщений скриптов на различных языках в Windows 
      PowerShell 2.0 позволяют улучшить обслуживание пользователей по 
      всему миру. Вывод сообщений скриптов на различных языках позволяет 
      отображать для пользователей сообщения и текст справки скриптов и 
      функций на нескольких языках.
 
      Функции вывода сообщений скриптов на различных языках при выполнении 
      запрашивают язык и региональные параметры пользовательского интерфейса 
      ($PsUICulture) операционной системы и затем импортируют соответствующие 
      переведенные строки текста, которые можно выводить пользователю.
      Раздел данных позволяет хранить строки текста отдельно от кода, 
      чтобы их было легко найти. Новый командлет ConvertFrom-StringData 
      преобразует текстовые строки в напоминающие словарь хэш-таблицы для 
      упрощения перевода.
 
      Дополнительные сведения см. в разделе about_Script_International
      ization.
  КОМАНДЛЕТЫ WMI
    
      Возможности инструментария управления Windows (WMI) в Windows 
      PowerShell 2.0 расширены за счет добавления следующих командлетов.
          - Remove-WmiObject
          - Set-WmiInstance
          - Invoke-WmiMethod
      В командлет Get-WmiObject добавлены новые параметры. Все 
      командлеты WMI теперь поддерживают следующие параметры.
          - EnableAllPrivileges
          - Impersonation
          - Authentication
          - Authority
      Эти новые параметры позволяют точнее контролировать конфигурацию 
      безопасности операций WMI, не используя непосредственно типы из 
      библиотеки классов платформы .NET Framework.
 
      Чтобы получить список командлетов WMI, введите следующую команду:
          get-help *wmi*
      Для получения справки по определенному командлету, введите 
      командлет get-help и имя командлета.
	
  Командлет Get-WinEvent
    
      Командлет Get-WinEvent возвращает события из журналов средства 
      просмотра событий и из файлов журналов событий средства 
      отслеживания событий для Windows (ETW), находящихся на 
      локальном компьютере и на удаленных компьютерах. Он может 
      возвращать события из обычных журналов событий и из журналов  
      событий Windows, реализованных в Windows Vista.
 
      Командлет Get-WinEvent используется для получения объектов, 
      представляющих журналы событий, поставщиков журналов событий и 
      события в журналах. Get-WinEvent позволяет объединять события 
      из различных источников в одной команде. Он поддерживает 
      расширенные запросы на языке пути XML (XPath), XML и в формате 
      хэш-таблиц.
      Для выполнения командлета Get-WinEvent требуется Windows Vista 
      или Windows Server 2008 и платформа Microsoft .NET Framework 3.5. 
  Командлет Out-Gridview
    
      Командлет Out-GridView отображает результаты других команд в 
      интерактивной таблице, позволяющей искать, сортировать, 
      группировать и фильтровать результаты. Например, можно 
      отправить результаты команд Get-Process, Get-WmiObject, 
      Get-WinEvent или Get-Eventlog командлету Out-GridView и затем 
      изучать данные с помощью функций таблицы.
        help out-gridview -full
  Командлет Add-Type
    
      Командлет Add-Type позволяет добавлять в Windows PowerShell 
      типы .NET Framework из исходного кода другого языка .NET Framework.
 
      Add-Type компилирует исходный код, создающий типы, и делает сборки, 
      содержащие новые типы .NET Framework.
      Затем можно использовать в командах Windows PowerShell эти типы .NET 
      Framework вместе со стандартными типами объектов, предоставляемыми 
      .NET Framework.
      Add-Type можно также использовать для загрузки сборок в текущий 
      сеанс для использования типов в этих сборках в Windows PowerShell.
      Add-Type позволяет разрабатывать новые типы .NET Framework, 
      использовать типы .NET Framework в библиотеках C# и получать 
      доступ к Win32 API.
    
      Дополнительные сведения см. в разделе Add-Type.
  Оповещение о событиях
    
      В Windows PowerShell 2.0 реализовано оповещение о событиях. 
      Пользователи могут регистрироваться и подписываться на события 
      Windows PowerShell, WMI или .NET Framework. Кроме того, 
      пользователи могут ожидать и перенаправлять события и 
      предпринимать действия при системных событиях и событиях 
      управления как в синхронном, так и в асинхронном режиме.
      Разработчики могут писать приложения, использующие архитектуру 
      событий для получения уведомлений об изменениях состояния. 
      Пользователи могут писать скрипты, подписывающиеся на различные 
      события и реагирующие на содержимое.
   
      В Windows PowerShell включены командлеты, создающие новые события, 
      возвращающие события и подписки на события, регистрирующие и отменяющие 
      регистрацию событий, ожидающие событий и удаляющие события. Чтобы получит
ь 
      дополнительные сведения об этих командлетах, введите следующую команду:
          get-command *-event
   
  Модули
    
      Модули Windows PowerShell позволяют разделять и систематизироват
      ь скрипты Windows PowerShell в рамках независимых самодостаточных 
      многократно используемых блоков. Код в модуле выполняется в 
      собственном контексте, поэтому он не добавляет, не вступает в 
      конфликт и не перезаписывает переменные, функции, псевдонимы и другие 
      ресурсы сеанса.
    
      Для создания простых скриптов и сложных приложений модули можно 
      писать, распространять, комбинировать, публиковать и использовать 
      многократно. 
      В Windows PowerShell 2.0 входят командлеты, добавляющие, 
      возвращающие и удаляющие модули, а также экспортирующие члены 
      модуля. Чтобы получить дополнительные сведения о командлетах, 
      связанных с модулями, введите следующую команду:
          get-command *-module* 
 
  Транзакции
    
      Windows PowerShell 2.0 поддерживает транзакции. Транзакции позволяют 
      отменить целую последовательность операций. Транзакции доступны только дл
я 
      операций, поддерживающих транзакции. Она предназначены для 
      приложений, требующих атомарности, согласованности, изоляции и возможност
и 
      восстановления, таких как базы данных и очереди сообщений.
      Командлеты и поставщики, поддерживающие транзакции, имеют новый 
      параметр UseTransaction. Для запуска операции в рамках транзакции 
      используется командлет Start-Transaction. После этого при использовании 
      командлетов, выполняющих операцию, команды можно сделать частью 
      транзакции с помощью параметра UseTransaction для каждого командлета. 
      Если какая-либо из команд в транзакции выдает в некий момент ошибку, 
      используйте командлет Rollback-Transaction для отмены всех команд 
      транзакции.Если все команды выполняются успешно, используйте командлет 
      Commit-Transaction, чтобы зафиксировать действие команд.
      В Windows PowerShell 2.0 входят командлеты, запускающие, 
      использующие, фиксирующие и откатывающие транзакции. Для 
      получения сведений об этих командлетах введите следующую команду:
          get-command *transaction*
 Критические изменения для Windows PowerShell 1.0
     -- Значение записи реестра PowerShellVersion в 
        HKLM\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngine изменено на 2.0.
     -- Добавлены новые командлеты и переменные. Эти новые элементы 
        могут вступать в конфликт с переменными и функциями в 
        профилях и скриптах.
     -- Оператор -IEQ выполняет сравнение символов без учета регистра.
     -- Кроме командлетов, командлет Get-Command по умолчанию возвращает и 
        функции.
     -- Собственные команды, создающие интерфейс пользователя, нельзя 
        передавать по конвейеру командлету Out-Host.
     -- Новые ключевые слова языка Begin, Process, End и Dynamic 
        Param могут вступать в конфликт со сходными словами, 
        используемыми в скриптах и функциях. Если эти слова 
        интерпретируются как ключевые слова языка, могут возникать ошибки 
        синтаксического анализа. 
     -- Изменено разрешение имен командлетов. В Windows PowerShell 1.0 при 
        экспорте двумя оснастками Windows PowerShell командлетов с 
        одинаковыми именами возникала ошибка среды выполнения. В Windows 
        PowerShell 2.0 при вводе названия команды выполняется командлет, 
        добавленный в сеанс последним. Для выполнения команды, которая не 
        запускается по умолчанию, используйте имя командлета вместе с именем 
        оснастки или модуля, из которого он добавлен.
     -- Имя функции с символами '-?' после него возвращает раздел 
        справки для этой функции, если он есть. 
    --  Изменено разрешение параметров для методов Microsoft .Net 
        Framework. В Windows PowerShell 1.0 при вызове перегруженного  
        метода .NET, для которого было несколько подходящих вариантов 
        синтаксиса, не создавалось сообщение об ошибке. В Windows 
        PowerShell 2.0 создается сообщение об ошибке, связанной с 
        неоднозначностью. 
        Кроме того, в Windows PowerShell 2.0 значительно улучшен 
        алгоритм выбора самого подходящего метода, что уменьшает 
        количество неоднозначностей.
     -- При перечислении коллекции в конвейере и попытке изменить 
        коллекцию в конвейере Windows PowerShell создает исключение.
    
        Например, следующие команды будут работать в Windows 
        PowerShell 1.0, но в Windows PowerShell 2.0 выдадут ошибку 
        после первой итерации конвейера.
            $h = @{Name="Hello"; Value="Test"}
            $h.keys | foreach-object {$h.remove($_)}
        Этой ошибки можно избежать, создав для перечислителя 
        вложенное выражение с помощью символов $(). Пример:
            $($h.keys) | foreach-object {$h.remove($_)}
      Дополнительные сведения о Windows PowerShell 2.0 см. на 
      следующих веб-сайтах.
 
      -- Веб-сайт Windows PowerShell 
         http://go.microsoft.com/fwlink/?LinkID=106031
      -- Блог команды Windows PowerShell:
         http://go.microsoft.com/fwlink/?LinkId=143696
СМ. ТАКЖЕ
    about_Data_Sections
    about_Debuggers
    about_Functions_Advanced
    about_Jobs
    about_Join
    about_PSSessions
    about_Remote
    about_Script_Internationalization
    about_Split



about_Windows_PowerShell_ISE

РАЗДЕЛ
    about_Windows_PowerShell_ISE
КРАТКОЕ ОПИСАНИЕ
    Описание функций интегрированной среды скриптов (ISE) Windows 
    PowerShell и ее требований к системе.
ПОЛНОЕ ОПИСАНИЕ
    Windows PowerShell ISE - это ведущее приложение для Windows 
    PowerShell.
    В среде Windows PowerShell ISE можно выполнять команды, а также 
    создавать, тестировать и отлаживать скрипты с помощью единого 
    графического пользовательского интерфейса на базе Windows. В ней 
    имеются функции многострочного редактирования, автозавершения при 
    помощи клавиши TAB, цветового выделения синтаксических конструкций, 
    выборочного выполнения, контекстной справки и поддержки языков с 
    написанием справа налево.
    Примечание. Поскольку для этой функции требуется пользовательский 
                интерфейс, она не работает в ОС Windows Server, 
                установленной в варианте Server Core.
                Среда Windows PowerShell ISE разработана на основе Windows 
                Presentation Foundation (WPF). Если графические элементы Window
s 
                PowerShell ISE отображаются некорректно, эту проблему, возможно
, 
                удастся устранить повышением или изменением графических настрое
к 
                системы. Это может потребоваться в случае, если в системе 
                установлен устаревший видеодрайвер или используется ПО 
                виртуализации.
                Дополнительные сведения см. в разделе "Настройки реестра 
                графического рендеринга" в библиотеке MSDN по адресу 
                http://go.microsoft.com/fwlink/?LinkId=144711.
    
 Выполнение интерактивных команд
    В среде Windows PowerShell ISE можно выполнять любые выражения и 
    команды Windows PowerShell. Можно использовать командлеты, поставщики, 
    оснастки и модули так же, как и в консоли Windows PowerShell.
    В области команд можно вводить команды с клавиатуры или вставлять 
    их из буфера обмена. Для выполнения команд можно использовать 
    кнопки, пункты меню и сочетания клавиш. 
    С помощью функции многострочного редактирования в области команд можно 
    вводить (или вставлять из буфера обмена) несколько строк кода 
    одновременно. При повторе предыдущей команды с помощью клавиши 
    СТРЕЛКА ВВЕРХ повторно вводятся все строки этой команды. При вводе 
    команд можно вставить пустую строку после текущей строки с помощью 
    сочетания клавиш SHIFT+ВВОД.
 Просмотр выходных данных
    Результаты выполнения команд и скриптов отображаются в области вывода. 
    Результаты можно копировать и перемещать из области вывода с помощью 
    сочетаний клавиш или панели инструментов вывода, и результаты можно 
    вставлять из буфера обмена в другие программы. Также можно очистить 
    область вывода с помощью кнопки "Очистка области вывода" или любой из 
    следующих команд:
        clear-host
        cls
 
 Разработка скриптов и функций
    В области скриптов можно отрывать, составлять, редактировать и 
    выполнять скрипты. Область скриптов позволяет редактировать скрипты с 
    помощью кнопок и сочетаний клавиш. В областях скриптов и команд также 
    можно копировать и вырезать текст в буфер обмена и вставлять его.
    Функция выборочного выполнения позволяет выполнять скрипты полностью 
    или частично. Чтобы выполнить часть скрипта, выберите текст, который 
    требуется выполнить, и нажмите кнопку "Выполнить скрипт" или клавишу F5. 
 Отладка скриптов
    С помощью отладчика Windows PowerShell ISE можно отлаживать скрипты и 
    функции Windows PowerShell. При отладке скрипта можно с помощью 
    пунктов меню и сочетаний клавиш выполнять многие задания из тех, что 
    обычно выполняются в консоли Windows PowerShell. Например, чтобы 
    вставить точку останова строки в скрипт, щелкните строку в коде 
    правой кнопкой мыши и выберите "Переключить точку останова". 
    Командлеты отладчика Windows PowerShell можно использовать в 
    области команд так же, как и в консоли.
 Функция автозавершения при помощи клавиши TAB
    В среде Windows PowerShell ISE предусмотрена функция 
    автозавершения при помощи клавиши TAB для имен командлетов, 
    параметров и статических типов Microsoft .NET Framework. Чтобы 
    воспользоваться этой функцией, введите начало имени команды и нажмите 
    клавишу TAB.
 Получение справки
    В Windows PowerShell ISE имеется единый файл справки с 
    возможностью поиска, в котором описываются среда Windows 
    PowerShell ISE и оболочка Windows PowerShell. Этот файл справки 
    содержит всю справочную информацию, которая выводится с помощью 
    командлета Get-Help. Чтобы просмотреть файл справки в среде Windows 
    PowerShell ISE, откройте меню "Справка" или нажмите клавишу F1.
    Справка является контекстной. Например, если ввести команду 
    Invoke-Item и нажать клавишу F1, откроется раздел о командлете 
    Invoke-Item, содержащийся в файле справки.
    Кроме того, командлет Get-Help можно использовать в Windows 
    PowerShell ISE так же, как и в консоли Windows PowerShell.
 Настройка вида
    В Windows PowerShell ISE предусмотрены функции перемещения и изменения 
    размера областей команд, вывода и скриптов. Можно скрыть или отобразить 
    область скриптов, изменить размер текста во всех областях.
  
    Также можно изменять некоторые параметры вида интерфейса Windows 
    PowerShell ISE с помощью переменной $Host, включая тексе 
    заголовка окна и цвета переднего плана и фона области вывода. 
    Кроме того, в Windows PowerShell ISE предусмотрена собственная 
    переменная настройки ведущего приложения $psgHost. С ее помощью можно 
    настраивать Windows PowerShell ISE, в том числе добавлять новые меню 
    и пункты меню.
 Профиль Windows PowerShell ISE
    У Windows PowerShell ISE имеется собственный профиль Windows 
    PowerShell с именем Microsoft.PowerShellISE_profile.ps1. В этом 
    профиле можно хранить функции, псевдонимы, переменные и команды, 
    используемые в Windows PowerShell ISE.
    Элементы в профилях AllHosts для Windows PowerShell 
    (CurrentUser\AllHosts и AllUsers\AllHosts) также доступны в среде 
    Windows PowerShell ISE, как и в любой другой ведущей программе Windows 
    PowerShell. Впрочем, элементы в профилях консоли Windows PowerShell 
    недоступны в среде Windows PowerShell ISE.
    Инструкции по перемещению и изменению конфигурации профилей имеются в 
    справке по Windows PowerShell ISE и в разделе about_Profiles.
 Требования к системе
    -Операционные системы: 
         - Windows 7;
         - Windows Server 2008;
         - Windows Server 2003 с пакетом обновления 2;
         - Windows Vista с пакетом обновления 1;
         - Windows XP с пакетом обновления 2;
    - Microsoft .NET Framework 3.0. 
    - Для средств удаленного взаимодействия Windows PowerShell требуется 
      удаленное управление Windows версии 2.0.
    
 Примечания
    - Для выполнения командлета Get-WinEvent требуется Windows Vista (или 
      последующая версия Windows) и Microsoft .NET Framework 3.5.
    - Командлет Export-Counter выполняется только в Windows 7.
  
 Запуск Windows PowerShell ISE
    - Чтобы запустить Windows PowerShell ISE, нажмите кнопку "Пуск", 
      выберите пункт "Все программы", затем "Windows PowerShell" и 
      "Windows PowerShell ISE".
    - Или введите "powershell_ise.exe" в консоли Windows PowerShell, 
      в программе Cmd.exe или в окне "Выполнить". 
 
СМ. ТАКЖЕ
    about_Profiles
    Get-Help



about_WMI_Cmdlets

РАЗДЕЛ
    about_WMI_cmdlets
    
КРАТКОЕ ОПИСАНИЕ
    Содержит общие сведения об инструментарии управления Windows (WMI)
    и Windows PowerShell.
           
ПОЛНОЕ ОПИСАНИЕ
    В этом разделе содержатся сведения о технологии WMI, командлетах
    WMI для Windows PowerShell, удаленном взаимодействии с
    использованием WMI, ускорителях WMI и устранении неполадок WMI.
    Кроме того, в этом разделе приведены ссылки на более подробные
    сведения о WMI.
                 
  Об инструментарии управления Windows (WMI) 
      Инструментарий управления Windows (WMI) представляет собой
      подготовленную корпорацией Майкрософт реализацию технологий
      WBEM (Web-Based Enterprise Management) - отраслевой инициативы
      по разработке стандартной технологии работы с информацией
      по управлению в корпоративной среде. В WMI для представления
      систем, приложений, сетей, устройств и других управляемых
      компонентов используется отраслевой стандарт CIM. Модель CIM
      разрабатывается и поддерживается организацией Distributed
      Management Task Force (DMTF). С помощью инструментария WMI
      можно управлять как локальными, так и удаленными компьютерами.
      Например, с помощью WMI можно выполнять следующие операции.
      
          -- Запуск процесса на удаленном компьютере.
          -- Удаленный перезапуск компьютера.
          -- Получение списка установленных на локальном или удаленном
             компьютере приложений.
          -- Создание запросов к журналам событий Windows на локальном
             или удаленном компьютере.
 
  Командлеты WMI для Windows PowerShell
      В Windows PowerShell функциональность WMI реализована с помощью
      набора командлетов, которые доступны в Windows PowerShell
      по умолчанию. С помощью этих командлетов можно выполнять
      полный набор задач, необходимых для управления локальными
      и удаленными компьютерами.
 
      Доступны следующие командлеты WMI.
      Командлет              Описание
      ------------------     ----------------------------------------------
      
      Get-WmiObject          Получает экземпляры классов WMI либо
                             сведения о доступных классах.
      Invoke-WmiMethod       Вызывает методы WMI.
      Register-WmiEvent      Создает подписку на событие WMI.
      Remove-WmiObject       Удаляет классы WMI и экземпляры
                             этих классов.
      Set-WmiInstance        Создает или изменяет экземпляры
                             классов WMI.
    
  Примеры команд
      Следующая команда выводит сведения BIOS для
      локального компьютера.
         
          C:\PS> get-wmiobject win32_bios | format-list *
        
      Следующая команда выводит сведения о службе WinRM для трех
      удаленных компьютеров.
        
          C:\PS> get-wmiobject -query "select * from win32_service
          where name='WinRM'" -computername server01, server01,
          server03
                 
      Следующая более сложная команда закрывает все
      экземпляры программы.
         
          C:\PS> notepad.exe
          C:\PS> $np = get-wmiobject -query "select * from win32 _process where
 name='notepad.exe'" 
          C:\PS> $np | remove-wmiobject
  Удаленное взаимодействие с использованием WMI 
      Хотя возможности управления с помощью WMI локальной системой
      бывают полезны, именно поддержка удаленного взаимодействия
      делает инструментарий WMI по-настоящему мощным средством администрировани
я.
      В WMI для подключения к управляемым системам используется
      модель DCOM корпорации Майкрософт. Чтобы сделать возможными
      подключения DCOM, может потребоваться настроить некоторые
      системы. Параметры брандмауэра и заблокированные разреения
      DCOM могут препятствовать удаленному управлению системами
      с помощью WMI. 
   
  Типизированные ускорители WMI
      Windows PowerShell включает типизированные ускорители WMI. Эти типизирова
нные
      ускорители WMI позволяют быстрее обращаться к объектам WMI
      по сравнению с нетипизированными ускорителями. 
      В WMI поддерживаются следующие типизированные ускорители.
          [WMISEARCHER] - ускоритель для поиска объектов WMI.
          [WMICLASS] - ускоритель для обращения к статическим
                       свойствам и методам класса.
          [WMI] - ускоритель для получения одного экземпляра класса.
      [WMISEARCHER] - это типизированный ускоритель для ManagementObjectSearche
r.
      
      Он принимает строковый конструктор и создает модуль поиска, с
      помощью которого затем можно применять операцию GET().
      Пример:
    
      PS> $s = [WmiSearcher]'Select * from Win32_Process where Handlecount > 10
00'
      PS> $s.Get() |sort handlecount |ft handlecount,__path,name -auto
      handlecount  __PATH                                              name
      -----------  ------                                              ----
      1105         \\SERVER01\root\cimv2:Win32_Process.Handle="3724"   powershe
ll...
      1132         \\SERVER01\root\cimv2:Win32_Process.Handle="1388"   winlogon
.exe
      1495         \\SERVER01\root\cimv2:Win32_Process.Handle="2852"   iexplore
.exe
      1699         \\SERVER01\root\cimv2:Win32_Process.Handle="1204"   OUTLOOK.
EXE
      1719         \\SERVER01\root\cimv2:Win32_Process.Handle="1912"   iexplore
.exe
      2579         \\SERVER01\root\cimv2:Win32_Process.Handle="1768"   svchost.
exe
      [WMICLASS] - это типизированный ускоритель для ManagementClass.
      У него имеется строковый конструктор, который принимает локальный или
      абсолютный путь WMI к классу WMI и возвращает связанный с
      этим классом объект. 
      Пример:
      PS> $c = [WMICLASS]"root\cimv2:WIn32_Process"
      PS> $c |fl *
      Name             : Win32_Process
      __GENUS          : 1
      __CLASS          : Win32_Process
      __SUPERCLASS     : CIM_Process
      __DYNASTY        : CIM_ManagedSystemElement
      __RELPATH        : Win32_Process
      __PROPERTY_COUNT : 45
      __DERIVATION     : {CIM_Process, CIM_LogicalElement, CIM_ManagedSystemEle
ment}
     
      __SERVER         : SERVER01
      __NAMESPACE      : ROOT\cimv2
      __PATH           : \\SERVER01\ROOT\cimv2:Win32_Process
      [WMI] - это типизированный ускоритель для ManagementObject. У
      него имеется строковый конструктор, который принимает
      локальный или абсолютный путь WMI к экземпляру WMI и
      возвращает связанный с этим экземпляром объект. 
      Пример:
      PS> $p = [WMI]'\\SERVER01\root\cimv2:Win32_Process.Handle="1204"'
      PS> $p.Name
      OUTLOOK.EXE
 
  Устранение неполадок WMI 
      Ниже описаны наиболее распространенные неполадки, которые могут
      возникнуть при попытке подключения к удаленному компьютеру.
      
    Неполадка 1. Удаленный компьютер не подключен к сети. 
      Если компьютер находится вне сети, подключиться к нему с помощью
      WMI невозможно. При этом появляется следующее сообщение об
      ошибке:
          "Удаленный сервер не существует или недоступен"
      При получении этого сообщения об ошибке проверьте, что компьютер
      подключен к сети. Попробуйте выполнить проверку связи с 
      удаленным компьютером.
 
 
    Неполадка 2. Отсутствуют права администратора на
    удаленном компьютере.
 
      Для удаленного использования WMI требуются права администратора
      на удаленном компьютере. Если эти права отсутствуют, в доступе
      к компьютеру будет отказано.
      Чтобы проверить безопасность пространства имен, выполните
      следующие действия.
          a. Нажмите кнопку "Пуск", правой кнопкой мыши щелкните "Мой
             компьютер" и выберите пункт "Управление".
          b. В диалоговом окне "Управление компьютером" разверните
             узел "Службы и приложения", щелкните правой кнопкой
             мыши узел "Управляющий элемент WMI" и выберите пункт
             "Свойства".
          c. В диалоговом окне "Свойства: Управляющий элемент WMI"
             перейдите на вкладку "Безопасность".
     
 
    Неполадка 3. Брандмауэр блокирует доступ к удаленному компьютеру. 
      Инструментарий WMI использует для сетевого взаимодействия
      протоколы DCOM и RPC (удаленный вызов процедур). По умолчанию
      многие брандмауэры блокируют трафик DCOM и RPC. Если используемый 
      брандмауэр блокирует эти протоколы, осуществить удаленное 
      подключение не удастся. Например, "Брандмауэр Windows" в Microsoft 
      Windows XP с пакетом обновления 2 (SP2) автоматически настраивается 
      на блокировку всего нежелательного сетевого трафика, включая
      трафик DCOM и WMI. В конфигурации по умолчанию "Брандмауэр
      Windows" отклоняет все входящие запросы WMI; при этом
      появляется следующее сообщение об ошибке:
          "Удаленный сервер не существует или недоступен" 
       
  Дополнительные сведения о WMI
      Дополнительные сведения об инструментарии WMI см. в следующих
      разделах библиотеки MSDN (Microsoft Developer Network):
          "Об инструментарии управления Windows (WMI)"
          http://go.microsoft.com/fwlink/?LinkId=142212
          "Устранение неполадок WMI"
          http://go.microsoft.com/fwlink/?LinkId=142213
      Кроме того, ознакомьтесь с разделом "Секреты WMI - устранение
      неполадок и советы" в центре скриптов Microsoft TechNet:
          http://go.microsoft.com/fwlink/?LinkId=142214
 
CМ. ТАКЖЕ
    Интернет-версия: http://go.microsoft.com/fwlink/?LinkId=142219
    Get-WmiObject
    Invoke-WmiMethod
    Register-WmiEvent
    Remove-WmiObject
    Set-WmiInstance
 



about_WS-Management_Cmdlets

РАЗДЕЛ
    about_WS-Management_Cmdlets
КРАТКОЕ ОПИСАНИЕ
    Содержит общие сведения о протоколе WS-Management, помогающие
    использовать командлеты WS-Management в Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
    В этом разделе содержатся общие сведения о протоколе 
    WS-Management, помогающие использовать командлеты WS-Management
    в Windows PowerShell. Кроме того, в этом разделе приведены
    ссылки на более подробные сведения о WS-Management. Реализация
    спецификации WS-Management корпорации Майкрософт также известна
    под именем WinRM (удаленное управление Windows).
  О WS-Management 
      Удаленное управление Windows представляет собой подготовленную
      корпорацией Майкрософт реализацию протокола WS-Management -
      основанного на стандарте SOAP и поддерживающего брандмауэры
      протокола, позволяющего взаимодействовать между собой
      оборудованию и операционным системам различных производителей.
      В спецификации протокола WS-Management определен единый способ
      получения информации по управлению и обмена ею в рамках ИТ-инфраструктуры
.
      Протокол WS-Management, интерфейс IPMI (Intelligent Platform
      Management Interface), а также служба сборщика событий,
      являются компонентами модуля управления оборудованием Windows.
      
      В основе протокола WS-Management лежат следующие стандартные
      спецификации веб-служб: HTTPS, SOAP поверх HTTP (профиль 
      WS-I), SOAP 1.2, WS-Addressing, WS-Transfer, WS-Enumeration
      и WS-Eventing. 
  WS-Management и WMI
      С помощью WS-Management можно получать данные, предоставляемые
      инструментарием управления Windows (WMI). Данные WMI можно получать 
      с помощью скриптов и приложений, использующих интерфейс скриптов API
      WS-Management, или с помощью программы командной строки WinRM.
      Протокол WS-Management поддерживает больiинство привычных
      классов и операций WMI, включая внедренные объекты. 
      WS-Management позволяет с помощью WMI получать данные о 
      ресурсах и управлять ресурсами на компьютерах с ОС Windows. 
      Это означает, что при помощи существующего набора классов WMI
      можно получать данные о таких объекта предприятия, как диски,
      сетевые адаптеры, службы или процессы. Кроме того, можно
      обращаться к данным об оборудовании, доступным через
      стандартный поставщик WMI IPMI.
  Поставщик WS-Management Windows PowerShell
      Поставщик WS-Management позволяет работать с иерархическим
      предоставлением доступных параметров конфигурации 
      WS-Management. Он дает возможность просматривать и устанавливать
      различные параметры конфигурации WS-Management. 
               
  Конфигурация WS-Management
      Если протокол WS-Management не установлен и не настроен,
      удаленное взаимодействие Windows PowerShell недоступно,
      командлеты и скрипты WS-Management выполнять невозможно, а
      поставщик WS-Management не может выполнять операции с данными.
      Работа программы командной строки WS-Management (WinRM) и
      функций перенаправления событий также зависят от конфигурации
      WS-Management.
  Командлеты WS-Management
      Функциональность WS-Management реализована Windows PowerShell с
      помощью модуля, содержащего набор командлетов и поставщик
      WS-Management. С помощью этих командлетов можно выполнять полный 
      набор задач, необходимых для управления параметрами WS-Management
      на локальных и удаленных компьютерах.
 
      Доступны следующие командлеты WS-Management.
     Командлеты для подключения
     -- Connect-WSMan: подключает локальный компьютер к службе 
        WS-Management (WinRM) на удаленном компьютере.
     -- Disconnect-WSMan: отключает локальный компьютер от службы 
        WS-Management (WinRM) на удаленном компьютере.
     Командлеты управления данными
     -- Get-WSManInstance: отображает сведения об управлении для
        экземпляра ресурса, заданного кодом URI ресурса.
     -- Invoke-WSManAction: вызывает действие на целевом объекте,
        заданном при помощи кода URI ресурса и селекторов.
     -- New-WSManInstance: создает новый экземпляр ресурса управления.
     -- Remove-WSManInstance: удаляет экземпляр ресурса управления.
     -- Set-WSManInstance: вносит изменения в относящиеся к ресурсу
        сведения об управлении.
 
     Командлеты установки и настройки
     -- Set-WSManQuickConfig: настраивает локальный компьютер для
        удаленного управления. С помощью командлета Set-WSManQuickConfig можно
        настроить WS-Management таким образом, чтобы разреить
        удаленные подключения к службе WS-Management (WinRM). Командлет
        Set-WSManQuickConfig выполняет следующие операции.
	
	- Он определяет, запущена ли служба WS-Management (WinRM). Если
        служба WinRM не запущена, командлет Set-WSManQuickConfig
        запускает службу.
	- Он устанавливает для службы WS-Management (WinRM) тип запуска
        "Авто".
	- Он создает прослушиватель, принимающий запросы с любого IP-адреса.
        Протоколом транспорта по умолчанию является протокол HTTP.
	- Он устанавливает исключения брандмауэра для трафика WS-Management.
	
	Примечание. Чтобы использовать этот командлет в Windows Vista,
                    Windows Server 2008 и более поздних версиях Windows, 
                    необходимо запускать Windows PowerShell в режиме "Запуск 
                    от имени администратора".
     -- Test-WSMan: проверяет, что служба WS-Management установлена и
        настроена.  Командлет Test-WSMan проверяет, что служба 
        WS-Management (WinRM) запущена и настроена на локальном и
        удаленном компьютерах.
     -- Disable-WSManCredSSP: отключает проверку подлинности CredSSP
        на клиентском компьютере.
     -- Enable-WSManCredSSP: включает проверку подлинности CredSSP на
        клиентском компьютере.
 
     -- Get-WSManCredSSP: получает конфигурацию CredSSP для
        клиентского компьютера.
     Командлеты, относящиеся только к WS-Management
     -- New-WSManSessionOption: создает объект WSManSessionOption,
        используемый в качестве одного или нескольких параметров
        командлета WS-Management.
    
  Дополнительные сведения о WS-Management
   
    Дополнительные сведения о протоколе WS-Management см. в следующих
    разделах библиотеки MSDN (Microsoft Developer Network):
 
      "Удаленное управление Windows"
      http://go.microsoft.com/fwlink/?LinkId=142321
    
      "Об удаленном управлении Windows"
      http://go.microsoft.com/fwlink/?LinkId=142322
      "Установка и настройка удаленного управления Windows"
      http://go.microsoft.com/fwlink/?LinkId=142323
      "Архитектура удаленного управления Windows"
      http://go.microsoft.com/fwlink/?LinkId=142324
      "Протокол WS-Management"
      http://go.microsoft.com/fwlink/?LinkId=142325
      "Удаленное управление Windows и WMI"
      http://go.microsoft.com/fwlink/?LinkId=142326
      "Коды URI ресурсов"
      http://go.microsoft.com/fwlink/?LinkId=142327
      "Удаленное управление оборудованием"
      http://go.microsoft.com/fwlink/?LinkId=142328
      "События"
      http://go.microsoft.com/fwlink/?LinkId=142329
CМ. ТАКЖЕ
    Интернет-версия: http://go.microsoft.com/fwlink/?LinkId=142331 
    Connect-WSMan
    Disable-WSManCredSSP
    Disconnect-WSMan
    Enable-WSManCredSSP
    Get-WSManCredSSP
    Get-WSManInstance
    Invoke-WSManAction
    New-WSManInstance
    Remove-WSManInstance
    Set-WSManInstance
    Set-WSManQuickConfig
    Set-WSManSessionOption 
    Test-WSMan
 
КЛЮЧЕВЫЕ СЛОВА
    about_WSMAN about_WinRM



default

РАЗДЕЛ
    Get-Help
КРАТКОЕ ОПИСАНИЕ
    Отображает справочные сведения о командлетах и концепциях Windows
    PowerShell. 
ПОЛНОЕ ОПИСАНИЕ
СИНТАКСИС
    get-helphelp {<имя_командлета> | <название_раздела>}
    help {<имя_командлета> | <название_раздела>}
    <имя_командлета> -?
    Команды "Get-help" and "-?" отображают справку на одной странице. 
    Команда "Help" - на нескольких.
	
    Примеры
      get-help get-process   :отображает справку о командлете 
                              Get-Process.
      get-help about_signing :отображает справку о
                              подписании скриптов.
      help where-object      :отображает справку о командлете 
                              Where-Object.
      help about_foreach     :отображает справку о циклах foreach
                              в PowerShell.
      set-service -?         :отображает справку о командлете 
                              Set-Service.
    В командах справки можно использовать подстановочные знаки
    (исключая команду "-?"). Если поисковому запросу соответствует 
    несколько разделов справки, оболочка PowerShell отображает список
    этих разделов. Если запросу соответствует только один раздел, 
    оболочка PowerShell отобразит его сразу. 
    Примеры
      get-help *      :отображает все разделы справки.
      get-help get-*  :отображает разделы, начинающиеся с get-.
      help *object*   :отображает разделы, имя которых содержит слово
                       "object".       
      get-help about* :отображает все концептуальные разделы.
    Чтобы получить сведения о подстановочных знаках, введите:
      get-help about_wildcard
ПРИМЕЧАНИЕ
    Дополнительные сведения о Windows PowerShell см. в следующих
    разделах справки:
      get-command  :получает сведения о командлетах из
                    кода командлета.
      get-member   :получает свойства и методы объекта.
      where-object :фильтрует свойства объекта.
      about_object :возвращает сведения об использовании объектов в
                    Windows PowerShell.
      about_remote :возвращает сведения о выполнении команд на
                    удаленных компьютерах.  
 
    Концептуальные разделы справки (с именем "about_<раздел>"),
    например:
      about_regular_expression.
    Названия файлов концептуальных разделов нужно вводить на
    английском языке, даже если используется локализованная версия
    Windows PowerShell.
	
    С помощью команд справки можно также узнать псевдонимы
    командлетов. Это альтернативные имена, которые обычно проще
    вводить. Например, командлет Invoke-Command имеет
    псевдоним remote.
    Чтобы узнать псевдонимы, введите команду: 
	
      get-alias