Назад | Перейти на главную страницу

Как мне вводить текст с помощью grep в режиме удаленного взаимодействия

В powershell (2.0) прекрасно работает следующее: cmd / c echo "hello" | выберите строку привет

Выводит «привет».

При запуске в режиме удаленного взаимодействия текст не печатается:

Invoke-Command -ComputerName myserver -Credential user.name@domain.tld { cmd /c echo "hello" | select-string hello }

Почему и как мне вводить grep для текста команд (exe-файлов) в режиме удаленного взаимодействия? (Windows7 на клиенте, 2008r2 на сервере. Команды могут работать нормально, порты открыты и т. д.)

Разве ты не хочешь делать:

Invoke-Command -ComputerName localhost { cmd /c echo "hello"} | select-string "hello"

Выход Select-String это не строка, а MatchInfo, который нельзя вернуть в течение Invoke-Command подключение.

Просто передайте результаты Select-String к Out-String, и вы получите результат ~:

Invoke-Command -ComputerName myserver -Credential user.name@domain.tld 
    { cmd /c echo "hello" | select-string hello | out-string }