Как копировать файл по определенному содержимому
Есть файлы XML вида *.DAT, нужно при нахождении в определенных из них тега </ED211>, копировать эти файлы в определенный каталог C:\ED211
|
Код:
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFolder=C:\Песочница\019
set sDestFolder=C:\ED211
if exist "%sSourceFolder%" (
if exist "%sDestFolder%" (
for /f "usebackq delims=" %%i in (
`findstr.exe /m /c:"</ED211>" "%sSourceFolder%\*.dat"`
) do >nul copy "%%~i" "%sDestFolder%\*.*"
) else (
echo Can't find destination folder [%sDestFolder%].
)
) else (
echo Can't find source folder [%sSourceFolder%].
)
endlocal
exit /b 0
|
Спасибо большое, попробую!
|
Код:
#Powershell script.
#Don't forget unlock script executing by
#using command "Set-ExecutionPolicy RemoteSigned" or "Set-ExecutionPolicy Unrestricted"
#Save this file with ".ps1" extension
gci -Path 'C:\Песочница\019\*' -Include "*.dat" | foreach {
if (($_ | Get-Content | Select-String -Pattern "</ED211>") -ne $null) {
$_ | Copy-Item -Destination 'C:\ED211' -ErrorAction SilentlyContinue
}
}
|
Время: 04:54.
© OSzone.net 2001-