Question: How can I edit this script to allow for the replacement of strings containing ? Additionally, How can I edit it so that the

How can I edit this script to allow for the replacement of strings containing \ ? Additionally, How can I edit it so that the modified date only changes on the files that the string was replaced in? Right now it modifies the date on all files. Also, is there another way to attempt to make it case -insensitive? -ireplace does not seem to work well

$filePath = "C:\Users\staging\*.bat"

# Get the files from the folder and iterate using Foreach

Get-ChildItem $filePath -Recurse | ForEach-Object {

$originalContent = Get-Content $_

$modifiedContent = $originalContent -ireplace 'fort\tester','fortress\success'

# Check if the content was modified

if ($originalContent -ne $modifiedContent) {

$modifiedContent | Set-Content $_

# Update the modified date

(Get-Item $_).LastWriteTime = (Get-Date)

}

}

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!