PowerShell Get-Content“foreach”来自多个目录的多个文件

时间:2014-08-05 18:53:30

标签: powershell

我想搜索Web.config个文件的特定文件夹的内容。 这是我正在使用的脚本,但它不起作用,也不知道如何调整它。

$folders=get-childitem E:\WebSystems\Configs\ | select Name
foreach($folder in $folders)
{
    get-content E:\WebSystems\Configs\$folder\Web.config
}

3 个答案:

答案 0 :(得分:2)

请尝试以下代码,

$folders=get-childitem E:\WebSystems\Configs\ | select Name
foreach($folder in $folders)
{
$folderName = $folder.Name;
get-content E:\WebSystems\Configs\$folderName\Web.config
}

请确保文件夹* E:\ WebSystems \ Configs *只有子文件夹而没有文件。如果您仍然遇到错误,请发布确切的错误详情。

答案 1 :(得分:0)

怎么样

get-childitem E:\WebSystems\Configs\* -include Web.Config -recurse

您想要对Web.Config文件的集合做什么? (Get-Content可能不是很有用,因为输出不会告诉你哪个文件在哪个目录中。)

答案 2 :(得分:0)

你可以做到

get-content E:\WebSystems\Configs\*\Web.config

获取所有Web.config文件的数组。 如果你想迭代每个文件,你可以做

get-childitem E:\WebSystems\Configs\*\Web.config | foreach{
  get-content $_.fullname }

对于搜索,您可以使用

Get-Help Select-String