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
Get step-by-step solutions from verified subject matter experts
