使用Get-Content -AsByteStream
,可以将文件作为字节流读取。
使用Set-Content -AsByteStream
,可以从字节流创建文件。
然而,我找不到任何方法将这些字节流传递给其他非PowerShell命令。外部命令之间的管道总是将数据解码为String,从而损坏二进制文件。cmd /c --%
或Start-Process -RedirectStandardInput
确实解决了部分问题,但如果涉及的任何命令是另一个cmdlet,则可能会变得有点乏味。是否有一种PowerShell本地方法可以将可执行输入/输出处理为字节流?
1条答案
按热度按时间twh00eeo1#
有一个open issue on GitHub用于此。(通过this answer找到)
编辑:@Geelaw有一个PowerShell Module to wrap native commands,虽然我还没有试过。