C#:在管道之前获取命令

C#:在管道之前获取命令,c#,powershell,pipeline,C#,Powershell,Pipeline,我正在用C#编写PowerShell二进制模块。 该模块包括多个cmdlet,支持不同cmdlet之间的管道 我有一个场景,仅当输入命令(管道之前的命令)是模块中的特定命令时,我才希望使用管道中的输入数据 如何在管道之前获取命令名,以便仅当它等于一个特定字符串时才会使用它 谢谢。不确定您的意思,您的意思是您有一个格式为“foo | bar”的字符串并希望返回“foo”。如果是,则string命令=“foo | bar”;字符串beforePipe=command.Substring(0,comm

我正在用C#编写PowerShell二进制模块。 该模块包括多个cmdlet,支持不同cmdlet之间的管道

我有一个场景,仅当输入命令(管道之前的命令)是模块中的特定命令时,我才希望使用管道中的输入数据

如何在管道之前获取命令名,以便仅当它等于一个特定字符串时才会使用它


谢谢。

不确定您的意思,您的意思是您有一个格式为“foo | bar”的字符串并希望返回“foo”。如果是,则
string命令=“foo | bar”;字符串beforePipe=command.Substring(0,command.IndexOf(“|”).TrimEnd(“”);Console.WriteLine(在管道之前);//打印foo
?不完全正确。我的模块导出2个cmdlet:
Get Group
Get Items
。我需要管道支持,以便在用户执行
Get Group-Name测试时| Get Item
将返回测试组中的所有项目。两个对象
Group
Item
都有id,因此每当执行上述操作时,组id就会通过管道传输到
Get Item
命令,它将管道id视为
id。所需的条件是,如果管道前面的命令是
Get Group
,我希望搜索属性为
Group/id
。也许不是最好的设计,但我仅限于使用RESTful服务器。谢谢你不确定你的意思,你的意思是你有一个格式为“foo | bar”的字符串并且想要返回“foo”。如果是,则
string命令=“foo | bar”;字符串beforePipe=command.Substring(0,command.IndexOf(“|”).TrimEnd(“”);Console.WriteLine(在管道之前);//打印foo
?不完全正确。我的模块导出2个cmdlet:
Get Group
Get Items
。我需要管道支持,以便在用户执行
Get Group-Name测试时| Get Item
将返回测试组中的所有项目。两个对象
Group
Item
都有id,因此每当执行上述操作时,组id就会通过管道传输到
Get Item
命令,它将管道id视为
id。所需的条件是,如果管道前面的命令是
Get Group
,我希望搜索属性为
Group/id
。也许不是最好的设计,但我仅限于使用RESTful服务器。谢谢