在Powershell管道中使用命令行工具的控制台输出

时间:2012-04-20 07:03:36

标签: powershell command-line pipeline

在我的PowerShell脚本中,我想使用 git 等工具的输出。

例如,命令行

git status

返回

# On branch master
nothing to commit (working directory clean)

现在我尝试在以下管道命令中使用此输出:

git status | $_.Contains("nothing to commit")

但是我收到了错误

Expressions are only allowed as the first element of a pipeline.

我做错了什么?

2 个答案:

答案 0 :(得分:2)

$msg = [string](git status) | where { $_.Contains("nothing to commit") }

答案 1 :(得分:2)

您可以使用select-string

git status | select-string "nothing to commit"