У меня есть сервис, работающий, который может вызвать внешний процесс для изменения текстового потока, прежде чем он будет возвращен к службе. Текстовый поток вручен от сервиса до внешнего процесса на stdout, и измененный результат читается из сервиса на stdin. Внешний процесс (команда) может, другими словами, использоваться в качестве текста "фильтр". Я хотел бы использовать powershell сценарий для изменения текстового потока. Я могу успешно запустить сценарий от сервиса на победу 2008r2 использование команды "powershell-executionpolicy обход - неинтерактивный./myscript.ps1".
Я могу сделать текст возврата сценария к сервису на stdout использованием хоста записи cmdlet. Моя проблема состоит в том, что я не могу найти способ прочитать текст на stdin в сценарии. Хост чтения, кажется, не работает, поскольку он требует интерактивной оболочки.
Я хотел бы постараться не писать stdout от сервиса до tmp файла и читать тот файл в сценарии, поскольку сервис является многопоточным (может запустить больше чем одну внешнюю команду за один раз), и tmp управление файлами (блокировка, уникальные имена файлов и т.д.) не желаемо.
Это возможно, или я должен использовать, например, Perl для этого? Powershell кажется востребованным, поскольку он предварительно установлен на всей моей победе 2 008 машин.
Просто догадываюсь - я бы посмотрел на [Console] :: In | gm -статический
.