我正在尝试使用Powershell从文件中删除字符串。该字符串来自另一个文件。
我的代码可以成功读取文件,但不能从其他文件中删除字符串。什么是错的,我该如何解决?
$inputFile = ".\usermenuTest1.4d"
$outputFile = ".\usermenuTest2.4d"
$destinationFile = "$outputFile.new"
# Read input file into variable
$target = [IO.File]::ReadAllText($inputFile)
# Replace target in output file
(Get-Content $outputFile) | Foreach-Object {
$_ -replace $target, ''
} | Set-Content $destinationFile
答案 0 :(得分:0)
正如@KeithHill已经指出你的脚本当前逐行处理$outputFile
。尝试这样的事情:
$s = [IO.File]::ReadAllText($outputFile)
$r = [IO.File]::ReadAllText($inputFile)
$s -replace $r, '' | Out-File $destinationFile