我有一个aspx文件,我正在尝试用powershell 1.0更新。该文件如下所示:
<html>
<head>
<title>Welcome!</title>我使用:
(Get-Content "C:\documents and settings\login.aspx") | ForEach-Object{$_ -replace "<title>Welcome!</title>","<title>Welcome! Warning...</title>"} | Set-Content "C:\documents and settings\login.aspx"它什么也做不了。
但是,我使用:
(Get-Content "C:\documents and settings\login.aspx") | ForEach-Object{$_ -replace "<title>Welcome!","<title>Welcome! Warning..."} | Set-Content "C:\documents and settings\login.aspx"它取代了它,但显然是错误的方式:
<html>
<head>
<title>Welcome! Warning...</title></title>这里发生了什么事?我希望我的第一个示例能够正常工作
发布于 2014-05-20 00:43:28
Get-Content "C:\documents and settings\login.aspx" |正在读取文件的每一行并立即将其传递到管道中...文件正在使用中,但您试图在最后一个cmdlet =>中更改该文件不太好
(Get-Content "C:\documents and settings\login.aspx") |您正在读取文件,在完成读取之后,将每一行传递到管道中,这很好,并且您可以更新该文件,因为它没有被使用
发布于 2014-05-21 00:05:27
我找出了我的错误。我的原始脚本中有一个打字错误(这里没有显示)。我用类似的代码写出了这个问题,出于隐私的目的,我实际上正在做什么。在这个项目上休息了一天后,我又回来了,看到了打字错误。我纠正了它,现在它可以工作了。
谢谢!
https://stackoverflow.com/questions/23742952
复制相似问题