代码之家  ›  专栏  ›  技术社区  ›  George Mauer

PowerShell:如何从主机捕获输出

  •  4
  • George Mauer  · 技术社区  · 15 年前

    我正在使用PowerShell自动执行一些与在TFS中签出/合并相关的任务。当我呼唤

    tf get * /recurse
    

    我得到了一堆关于要签出的文件的滚动数据。此命令生成的最后一行(假定成功)是一行,指示签入号。我想把它解析出来,以便以后在我的脚本中使用。

    我知道我可以做一些像

    $getOutput = tf get * /recurse
    

    但是输出被完全抑制了 希望 要实时滚动的命令的输出。我基本上想获取刚刚发送到输出缓冲区的所有内容。

    2 回复  |  直到 15 年前
        1
  •  6
  •   Mike Shepard    15 年前

    尝试如下操作:

    tf get*/recurse tee对象-变量getoutput

        2
  •  3
  •   Timothy Lee Russell    15 年前

    这个 tee-object 在PowerShell2.0中,可以将结果通过管道传输到两个源。如果将第二个源留空,结果将转到控制台。

    ls | tee-object -filePath directoryListing.txt
    

    这将把目录列表写入控制台和文本文件。

    推荐文章