使用| Powershell脚本命令中的符号

时间:2013-06-12 21:01:02

标签: powershell

查看以下代码:

$securePassword = $password | ConvertTo-SecureString -AsPlainText -Force

|符号做什么以及它在命令中扮演什么角色?

3 个答案:

答案 0 :(得分:4)

| 或管道,因为它更常见,基本上是一个运算符,它从左边的表达式获取输出并“管道”或将它作为输入传递给表达式on管道特征的右侧。

对于您的示例,它采用$password变量中的值并将其作为输入传递给ConvertTo-SecureString cmdlet,该cmdlet捕获纯文本密码并在受保护的字符串内保护它。您可以在没有管道的情况下完全相同地编写上述命令:

$securePassword = ConvertTo-SecureString $password -AsPlainText -Force

TechNet上有一个不错的,虽然较旧的解释,它更深入地讲述了管道及其对PowerShell的意义:http://technet.microsoft.com/en-us/library/ee176927.aspx

答案 1 :(得分:2)

|是管道运营商。它“管道”来自$ password的输出,这可能是一个字符串。管道的另一端是命令ConvertTo-SecureString -AsPlainText -Force。通过名称,此命令将明文管道从$ password变量转换为securestring。这一切都被$securePassword放入=变量。

Pipes使程序员能够将命令链接在一起。

答案 2 :(得分:1)

这是管道命令。您可以使用它将一个命令的输出发送到另一个命令。

例如:Get-ChildItems -filter ".cs" | Select-string -pattern "Hello World"

这组命令搜索目录中的所有.cs文件,然后在每个文件中查找“Hello World”。

Piping Explanation