使用 cmd.exe 或 PowerShell 或 Python 从 Windows 命名管道中读取
Posted
技术标签:
【中文标题】使用 cmd.exe 或 PowerShell 或 Python 从 Windows 命名管道中读取【英文标题】:Read from windows named pipe with cmd.exe or PowerShell or Python 【发布时间】:2012-08-24 13:26:10 【问题描述】:我正在寻找一种快速方法来检查哪些数据进入命名管道(在 Windows 上)。有什么办法可以从 cmd.exe 或 powershell 或 python 中做到这一点?实际上,我只找到了创建命名管道而不是操纵它的方法。但是如何打开由另一个程序创建的命名管道?
【问题讨论】:
【参考方案1】:Powershell 允许您使用整个 .net api,因此您可以使用 pipe function in the framework。
【讨论】:
【参考方案2】:客户端可以像连接任何其他文件一样连接到 Windows 命名管道,前提是它是由另一个程序创建的。低级 API 是 CreateFile
使用 ALWAYS_EXISTING
,但普通语言例程,如 Python 的 open
应该可以工作。文件名将是 \\ server \pipe\ name。
与磁盘文件不同,管道是临时的,当管道的每个句柄都已关闭时,管道及其包含的所有数据都会被删除,因此我个人在必要时使用服务来维护管道。
【讨论】:
以上是关于使用 cmd.exe 或 PowerShell 或 Python 从 Windows 命名管道中读取的主要内容,如果未能解决你的问题,请参考以下文章
cmd.exe --> powershell.exe "-File" 和 "-Command" 在同一行
powershell 使PowerShell脚本可以从任何地方运行(即CMD.EXE,Explorer,Run Dialog等)