使用PowerShell更改rdp文件的内容

plicqrtu  于 2023-03-02  发布在  Shell
关注(0)|答案(2)|浏览(169)

我有一个目录C:\RDP LINKS\,在其中你可以找到一大堆带有rdp快捷方式的文件夹。
问题是,所有快捷方式中的默认名称最近都被更改了(最初是administrator@testdomain.local,现在是administrator@test2domain.local)。
我想用Powershell更改rdp链接的内容。
如果用记事本打开rdp快捷方式,可以看到属性和默认用户名:

我试过这个脚本:

$configFiles = Get-ChildItem "C:\RDP LINKS\" *.rdp -rec
foreach ($file in $configFiles)
{
    (Get-Content $file.PSPath) |
    Foreach-Object { $_ -replace "administrator@testdomain.local", "administrator@test2domain.local" } |
    Set-Content $file.PSPath
}

脚本运行,但名称没有更改。我做错了什么?

vhmi4jdf

vhmi4jdf1#

请尝试以下操作(使用fullname属性代替pspath):

ls "c:\rdp links\*.rdp" -recurse | %{
     (gc $_ ) -replace "administrator@testdomain.local", "administrator@test2domain.local" |
     set-content $_.FullName -force
}
myzjeezk

myzjeezk2#

你想多了,这是直接替换.

$configFiles = (Get-ChildItem "C:\RDP LINKS\" *.rdp) 
foreach ($file in $configFiles)
    {
    (get-content $file) -replace 'administrator@testdomain.local', 'administrator@test2domain.local' | set-content $file
}

相关问题