我正在寻找一种从stdin读取字节并将它们传递给stdout的方法。我发现了这个问题,讨论了如何使用文本编码从stdin读取。我希望使用原始或二进制编码进行读写。
Getting stdin into the Powershell stream
问题是处理解码和编码是非常重要的。如果它有助于这是我在VBScript中这样做的方式:
Do While Not WScript.StdIn.AtEndOfStream
WScript.StdOut.Write(WScript.StdIn.Read(1024))
Loop
以下内容不起作用,因为编码错误。我使用重定向仅用于说明目的。我需要能够从标准输入读取。
powershell -NoProfile -Command "$Input" <file1.exe >file2.exe