为什么这不写文件的任何内容?

时间:2016-10-26 08:42:13

标签: powershell

我正在从IIS日志中搜索字符串列表中的某个字符串。我想将结果输出到文本文件。以下代码将搜索结果正确输出到控制台;当我将内容重定向到文件时,文件中没有任何内容。我不知道为什么会这样,因为所有写入文件的指南都显得简单。

$items = ('item1', 'item2', 'item3')
$searchresults = 'e:\temp\IISSearch.txt'
foreach ($item in $items) 
{
Select-String -Path e:\logs\*.log -Pattern $item | out-file $searchresults -Encoding utf8   
}

1 个答案:

答案 0 :(得分:2)

试试这个

  $items = ('item1', 'item2', 'item3')
  $searchresults = 'e:\temp\IISSearch.txt'
  foreach ($item in $items) 
  {
  Select-String -Path e:\logs\*.log -Pattern $item | out-file $searchresults -Encoding utf8 -Append  
  }

或只是

   $items = ('123456', 'item2', 'item3')
   $searchresults = 'e:\temp\IISSearch.txt'

   $items | %{Select-String -Path e:\temp\*.txt -Pattern $_} | out-file $searchresults -Encoding utf8