Аргументы Invoke-Command передаются неправильно

#powershell

#powershell

Вопрос:

Я пытаюсь найти и прочитать определенные события в журнале событий на удаленном сервере, используя Invoke-Command (чтобы я мог передавать учетные данные, которые уже сохранены как переменная) как таковые:

 Invoke-Command -ComputerName $serverName -ArgumentList $zone -ScriptBlock {
Get-EventLog -LogName "DNS Server" -Newest 20 | 
Where-Object { $_.message -match $args[0]} | Format-List } -Credential $Credential
  

Мой -message текст поиска передается неправильно. Это работает, если я заменяю $args[0] допустимой строкой. Что я делаю не так?

Комментарии:

1. Если вы используете «аргументы» во вложенном блоке скрипта, поместите его в другую переменную. $a = $args[0]

2. Спасибо — это сработало отлично. Так многому нужно научиться.