我正在尝试更新我们的VPN配置文件AOVPN设备隧道和用户隧道.我想更新IpinterfaceMetric从0到9.
我在这里举一个例子
IF文件包含类似于以下内容的数据:
\[AOVPN Device Tunnel\]
IpDnsFlus=0
IpInterfaceMetric=0
NetworkOutageTime=0
\[AOVPN User Tunnel\]
IpDnsFlus=0
IpInterfaceMetric=0
NetworkOutageTime=0
字符串
因此,我试图做的是检查是否有IpinterfaceMetric在AOVPN设备隧道部分,如果没有添加IpInterfaceMetric在AOVPN设备隧道部分。同样的事情去AOVPN用户隧道。
我有脚本检查在整个rasphone文件,但我必须检查在节到节,并添加到每一节,如果它不能找到它在每一节。
有人能帮帮我吗?
[CmdletBinding()]
Param (
)
$RasphonePath = Join-Path -Path $env:appdata -ChildPath '\Microsoft\Network\Connections\Pbk\rasphone.pbk'$RasphoneData = Get-Content $RasphonePath
$RasphoneData = Get-Content $RasphonePath
If($RasphoneData.Contains("IpInterfaceMetric=0")){
Write-Verbose 'Updating IpInterfaceMetric setting in rasphone.pbk...'
$RasphoneData | ForEach-Object { $_ -Replace 'IpInterfaceMetric=.*', 'IpInterfaceMetric=9' } | Set-Content -Path $RasphonePath -Force
}
else {
Add-Content -Path $RasphonePath -Value "IpInterfaceMetric=9" | Set-Content -Path $RasphonePath -Force
}
型
1条答案
按热度按时间ldxq2e6h1#
regex时间到了!
字符串
当字符串使用正则表达式转义字符时,
[regex]::escape()
非常方便同样,
[Environment]::NewLine
也非常适合自动添加环境友好的NewLines。