powershell编辑文件在中间写

时间:2011-12-08 10:03:30

标签: powershell

我想创建一个powershell脚本来编辑配置文件(apache httpd.conf),如果我找到

 #keyword
some data
 #keyword

我替换了#keyword之间的数据,我将#keywords与数据相加。

有人可以给我一些帮助 谢谢

1 个答案:

答案 0 :(得分:0)

$fileName = "..\..\apache\conf\extra\httpd-vhosts.conf"
$found = $false
$contains = $false
$kw = "##xceed.localhost"
$text = "A
BBBB
C"
(Get-Content ( $fileName )) | 
    Foreach-Object{ 
            if($_ -match $kw)
            {
            if($found -eq $false)
            {
                $found=$true
            }else
            {
                $found=$false
            }

            if($found -eq $true)
            {
                $contains=$true
                        #Add Lines after the selected pattern
                $kw
                        $text 
            }       
            }
        if($found -ne $true)
        {
            $_
        }

    } | Set-Content( $fileName )

if($contains -eq $false)
{
$value=($kw+"`r`n"+$text+"`r`n"+$kw)
    Add-Content $fileName $value
}