0
得到了以下腳本,我認爲它們會愉快地更新每個C:\users\*\AppData\Local\Greeentram
文件夾中的指定.ini文件。對所有c: users * AppData Local執行函數
function Set-OrAddIniValue {
Param(
[string]$FilePath,
[hashtable]$keyValueList
)
$content = Get-Content $FilePath
$keyValueList.GetEnumerator() | ForEach-Object {
if ($content -match "^$($_.Key)=") {
$content= $content -replace "^$($_.Key)=(.*)", "$($_.Key)=$($_.Value)"
} else {
$content += "$($_.Key)=$($_.Value)"
}
}
$content | Set-Content $FilePath
}
Set-OrAddIniValue -FilePath "C:\Users\*\AppData\Local\Greentram\SDA_Apps.ini" -keyValueList @{
UserName = "Dcebtcv7[[G"
UserEmail = "x}tpwpjmkxmvkYjmklzmx7zv7lr"
UserNo = "*++*(+"
UserKey = "^X(_0[*_/0L)\_0,U,-"
KEM = "H10"
}
它似乎在做什麼是以某種方式將所有.INI文件組合在一起,併爲每個用戶創建一個新的.INI文件。
我錯誤地認爲C:\Users\*\AppData\Local\Greentram\SDA_Apps.ini
會工作。
我只想更新或將這些特定值添加到每個.INI文件。
Set-OrAddIniValue -FilePath "C:\Users\*\AppData\Local\Greentram\SDA_Apps.ini" -keyValueList @{
UserName = "Dcebtcv7[[G"
UserEmail = "x}tpwpjmkxmvkYjmklzmx7zv7lr"
UserNo = "*++*(+"
UserKey = "^X(_0[*_/0L)\_0,U,-"
KEM = "H10"
}
'results = @(); gci c:\ users \ * -Directory | %{$ results + =「$($ _。FullName)\ AppData \ Local \ Greentram \ SDA_Apps.ini」}您可能還想排除某些文件夾,如「Default」或「Allusers」 – 4c74356b41