我是 Powershell 的新手,我基本上用它来为我的工作分配操作多个 xml 文件。我使用专有的基于 xml 的文件,这意味着它们有自己的扩展名,但基本上都是 xml。如果您能帮助我弄清楚如何使用 ps1 脚本更改以下示例中 'xml:lang' 属性的值,我将不胜感激。假设我有多个扩展名为 *.flprj 的文件,它们都共享以下内容:
<?xml version="1.0" encoding="utf-8"?>
<CatapultProject Version="1" xml:lang="en-gb" />
我想要实现的是在所有包含 *.flprj 文件的子文件夹中递归更改 xml:lang 属性的值,从“en-gb”到“nl-nl”。我想出了如何通过替换字符串来实现这一点,但我宁愿替换值,因为源语言可能不同。我将不胜感激您的建议。
这是一个让你开始的例子。可能必须根据您的 xml(多个 lang 值、位置 ++)对其进行调整。
前任:
Get-ChildItem -Path "C:\Folder\" -Filter "*.flprj" -Recurse | Foreach-Object {
$xml = [xml](Get-Content $_.FullName)
if($xml.CatapultProject.lang -eq 'en-gb') {
$xml.CatapultProject.lang = "nl-nl"
$xml.Save($_.FullName)
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句