我需要将大量文件复制到备份文件夹,但我想保持它们的相对路径.我只需要特定的文件; 即
C:\scripts\folder\File.ext1
C:\scripts\folder2\file2.ext2
C:\scripts\file3.ext1
Run Code Online (Sandbox Code Playgroud)
但我只需要像这样复制ext1文件:
C:\backup\folder\File.ext1.bak
C:\backup\file3.ext1.bak
Run Code Online (Sandbox Code Playgroud)
源路径具有多个深度.这就是我要复制文件的方法:
$files = gci -path C:\scripts\ -recurse -include *.ext1
$files | % { Copy-Item $_ "$($_).bak"; move-item $_ -destination C:\backup\ }
Run Code Online (Sandbox Code Playgroud)
这只是将所有文件转储到C:\ backup \中,并且似乎没有获得任何路径.不确定该部分将如何完成.
我正在使用正则表达式搜索来匹配和替换一些文本.文本可以跨越多行(可能有也可能没有换行符).目前我有这个:
$regex = "\<\?php eval.*?\>"
Get-ChildItem -exclude *.bak | Where-Object {$_.Attributes -ne "Directory"} |ForEach-Object {
$text = [string]::Join("`n", (Get-Content $_))
$text -replace $RegEx ,"REPLACED"}
Run Code Online (Sandbox Code Playgroud)