Powershell:从变量中查找替换

Powershell:从变量中查找替换,powershell,powershell-2.0,Powershell,Powershell 2.0,我是Powershell的新手,我的代码不起作用,我不明白为什么尽管花了几个小时尝试 我想做的是: 1) 要求用户键入IP地址 2) 用此IP地址查找并替换文本 我的变量 $demande_server=读取主机“IP地址”>>c:\temp\SQLtemp.txt $address=获取内容-路径“c:\temp\SQLtemp.txt” 然后 (获取内容-路径c:\temp\SQL.txt)| foreach{$_ -替换(“NomServeur=”,“NomServeur=$address

我是Powershell的新手,我的代码不起作用,我不明白为什么尽管花了几个小时尝试

我想做的是: 1) 要求用户键入IP地址 2) 用此IP地址查找并替换文本

我的变量

$demande_server=读取主机“IP地址”>>c:\temp\SQLtemp.txt

$address=获取内容-路径“c:\temp\SQLtemp.txt”

然后

(获取内容-路径c:\temp\SQL.txt)| foreach{$_ -替换(“NomServeur=”,“NomServeur=$address”)}>>c:\temp\SQL.txt

谢谢您的帮助:)

尝试以下逻辑:

$IPAddress=Read-Host "Enter the IP Address: "
$file_Content= Get-Content "c:\temp\SQLtemp.txt"
foreach($file in $file_Content)
{
$file.replace("NomServeur=","NomServeur=$IPAddress") >> c:\temp\new_OUTPUT.txt
}
因此,“new_OUTPUT.txt”将有新的输出,其中应该有替换的文本

注意:如果要将其设置回旧文件,请将整个结果存储在变量中,然后使用整个结果集覆盖旧文件

希望能有帮助

样本输出:

这是我的文件内容:

这是替换的文件内容:


我的输入是192.168.1.1

有很多错误。语法上和逻辑上也是如此。实际上,您根本没有将内容设置回原来的位置。执行输入重定向在这方面没有帮助。谢谢您为我指明了正确的方向!