Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Копирование файла по условию его содержимого

Ответить
Настройки темы
CMD/BAT - [решено] Копирование файла по условию его содержимого

Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Здравствуйте, возникла такая проблема:
Ежедневно в папку приходят файлы порядка 20 штук, интересует только один файл, внутри которого есть текст "ED211", его необходимо скопировать в папку с:\temp.
То есть автоматизировать ручной процесс сначала поиска этого файла, затем последующего копирования.
Помогите реализовать данный скрипт.

Отправлено: 13:06, 16-05-2012

 

Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Разобрался сам, на всякий случай выложу код, может кому и пригодится:
Сам файл назван 1.bat , в нем я задаю маску, поэтому в конце он удаляется из каталога назначения.
Листинг:

cls
@echo off
Set Source=C:\0
Set Dest=C:\1
Set Str=ED211

For %%I In ("%Source%\*") Do (
Find "%Str%" "%%I" >nul
If ErrorLevel 1 (
Echo %%~nxI - no matches in file

) Else (
Echo %%~nxI - matches found
copy /Y "%%I" "%Dest%"
)
)
del c:\1\1.bat
pause

Отправлено: 13:24, 16-05-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 23
Благодарности: 4

Профиль | Отправить PM | Цитировать


c:\dir\20120516\ - входная директория с 20 файлами, среди которых есть ED211
с:\temp\ - директория назначения для найденного ED211

rem Копирование файла выписки из лицевого счёта
@echo off
::Получаем текущую дату в формате YYYYMMDD
set date=%DATE:~-4%%DATE:~3,2%%DATE:~0,2%
::Находим выписку из лицевого счёта, зная что в файле содержится текст ED211
For /F "Delims=" %%I In ('Findstr /L /I /M /C:"ED211" \\srv\archive\in\%date%\*.*') Do (
Echo %%~nxI
::Копируем переименовав
Copy "%%~I" с:\temp\propazha.vip >nul
)
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:31, 16-05-2012 | #3


Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


hAUS, спасибо большое , так действительно более правильно!!!

Отправлено: 17:13, 16-05-2012 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Копирование файла по условию его содержимого

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Копирование строк в отдельный файл по условию Seryoga204 Скриптовые языки администрирования Windows 26 24-08-2016 23:33
CMD/BAT - [решено] Сравнение содержимого папок и копирование недостающих файлов Laertes Скриптовые языки администрирования Windows 8 14-05-2013 11:34
Любой язык - Копирование текстовых файлов в зависимости от их содержимого Brigadir_33 Скриптовые языки администрирования Windows 1 28-02-2012 08:02
CMD/BAT - [решено] Копирование и запуск по условию AlexVong Скриптовые языки администрирования Windows 2 25-10-2010 14:03
CMD/BAT - [решено] Поиск каталога и копирование всего его содержимого desk Скриптовые языки администрирования Windows 4 01-07-2009 14:28




 
Переход