在文件中查找字符串,查找具有相同名称的文件并移动

时间:2018-03-09 12:21:12

标签: powershell

嗨,我想知道是否有人可以帮助我。我试图搜索包含某个字符串的xml文件列表。从那里,如果文件包含该字符串我想获取WAV文件名(通常也与包含该字符串的xml文件同名)并将该WAV文件移动到文件夹。如果更容易,那么在同一XML文件中还有一个字符串,它具有WAV文件名:

<ContentItem Href="./200149.wav">

我目前有以下内容来识别文件中的字符串 - 但它只移动XML文件。我还需要它来找到WAV文件并将其移动到另一个文件夹。关于如何修改它以获取WAV文件的任何想法?

$Path = "FULL PATH NAME TO WHERE FILES ARE LOCATED"
$Text = 'STRING I AM SEARCHING FOR'
$PathArray = @()
$Destination = "FULL PATH NAME TO WHERE FILES ARE TO BE MOVED"

Get-ChildItem $Path -Filter "*.xml" -Recurse | 
   Where-Object { $_.Attributes -ne "Directory"} | 
      ForEach-Object { 
         If (Get-Content $_.FullName | Select-String -Pattern $Text) {
            $PathArray += $_.FullName
            Move-Item -path $_.FullName -destination $Destination
         }
      }

全部谢谢!

0 个答案:

没有答案