我正在尝试找到一种方法来更改 XML 文件中的未知文本(可能是任何内容)以进行打印机迁移。有问题的文本是 PrintProcessor="hpcpp111"
打印处理器部分可以包含任何内容,因为这取决于打印机型号、类型和驱动程序。如果可能的话,我更喜欢使用 powershell,因为我试图理解脚本以及它是如何工作的,但我觉得它有点令人困惑。在迁移 5,500 台打印机时,我可能需要手动编辑数千个此类文件。例如,我找到了一些使其接近的代码
function Reset-InfoPathTemplateLink {
Param(
[string]$FilePath,
[string]$FileExtension,
[string]$OldPath,
[string]$NewPath
)
$files = Get-ChildItem $FilePath -Filter $FileExtension
foreach ($file in $files) {
(Get-Content $file.fullname) |
ForEach-Object {$_ -replace $OldPath,$NewPath} |
Set-Content $file.fullname
} #end foreach
} #end function
如果我点源它然后运行这个命令
重置-InfoPathTemplateLink -FilePath "c:\test2" -FileExtension " .xml" -OldPath "PrintProcessor=" "" -NewPath "PrintProcessor='"WinPrint"'"
WinPrint 被添加到当前打印处理器的开头,这并不理想。如果有人有关于如何让它工作的提示,或者如果他们能提出更好的方法,我将不胜感激