Powershell 学习: ByPropertyName 管道传输

该方法同样需要前一个命令的输出结果传递给下一个命令。但是与ByValue不同的是,通过ByPropertyName传输,第二个命令的多个参数可以被同时使用。如下命令:

Get-Service -Name *s | Stop-Process

我们再次将命令A的输出结果传递给gm, 之后再查看命令B的帮助语法。

其实该传输方式是很简单的,仅仅是寻找能够匹配参数名称的属性名称。不过shell也需要检查命令B中的该参数是否可以接收来自ByPropertyName管道传输过来的结果。这些信息我们都可以在帮助文档中看到。

比如,我们可以用记事本创建一个这样的CSV文档,并命名为Alias.csv

通过import-csv 命令我们可以看到我们可以看到这些内容;

我们将Import-Csv .\Alias.csv的输出结果传递给gm命令,这样就可以看出通过管道传输的到底是哪些内容了

通过help new-alias -full 命令,我们可以查看new-alias的哪些参数可以接收通过ByPropertyName传输过来的参数。

可以看出new-alias的-Name and -value参数可以接收通过ByPropertyName管道传输过来的数据,而且名称和数据类型与我们Alias.csv文件传输过来的相匹配。那么运行:Import-Csv .\Alias.csv | New-Alias 以后我们就成功的为csv文件中的三个命令创建了alias.

 

 

 

 

 

 

猜你喜欢

转载自blog.csdn.net/weixin_42545594/article/details/81662527