私はすでに数時間この作業を行っていますが、何が欠落しているのか分かりません。基本的には、フォルダとサブフォルダ内のすべてのXMLファイルのリストを取得しています。これらのファイルをループして、別の文字列に置き換え、同じファイルに書き戻します。以下は、私が働いている行されます。回線が正しくエスケープされていない可能性があります
$destination = "C:\Temp\TestFolder"
$newString = "#NewString#"
Get-ChildItem '$($destination)*.xml' -Recurse | ForEach {
$currFile = $_.FullName;
(Get-Content $_ | ForEach {
$_ -Replace '#OldString#', '$($newString)'
}) | Set-Content -Path $currFile;
}
こんにちは、問題は何ですか?エラーメッセージが表示されますか? – sodawillow
エラーはありませんが、ファイル内で実際に行われた変更は表示されません。 –
''$($ destination)\ *。xml''(バックスラッシュに気付く) –