Я не совсем уверен, правильно ли я понял ваш вопрос. Следующий скрипт перебирает все XML-файлы в определенном каталоге и ищет текст 2019
. Если этот текст находится в файле, он будет скопирован в другой каталог
Пожалуйста, имейте в виду, что этот сценарий очень грубый и "грубая сила", но он должен дать вам основу для работы с
$source_dir = ".\S_Export2019" # Directory where the XML files are
$target_dir = ".\Target_Directory" # Directory where "2019" files will be copied to
# Loop through the directory $source_dir and get the fullpath of all XML-files
foreach ($file in (Get-ChildItem "$source_dir\*.xml")) {
# Save the content of the XML file
$file_content = Get-Content $file -raw
# Check if the XML file contains "2019"
if ($file_content -match "2019") {
Write-Host "$file contains '2019'"
Copy-Item $file $target_dir # Copy file to $target_dir
}
}
Редактировать
Спасибо @LotPings за исправление - я добавил параметр -raw
в Get-Content
, а также изменил сравнение if
для использования -match
вместо прежнего -contains