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

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

Ответить
Настройки темы
CMD/BAT - [решено] Мониторить папку

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


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

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


Подскажите, как реализовать мониторинг за определенной папкой(в которой сохраняются отчеты в формате txt), то есть при появлении в ней файлов - переносить их в другую папку присвоив произвольное имя (например Дата&время.txt)? Пробывал батником, но он переносит файлы не дождавшись когда их полностью создаст программа.

Отправлено: 21:45, 29-11-2011

 

(*.*)


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

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


AlexVong, в планировщик поставьте выполнение каждые X минут.

-------
Канал Windows 11, etc | Чат @winsiders

Это сообщение посчитали полезным следующие участники:

Отправлено: 22:43, 29-11-2011 | #2



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

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


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


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

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


Vadikan
Скорее всего проблема не в организации копирования по времени, а в том что программа сначала создает файл и потом в течении какого то периода времени дописывает в него данные

AlexVong
Как раз при помощи переименования и можно выяснить в CMD/BAT скрипте занят файл приложением или уже нет

Цитата:
Как в bat файле дождаться появления определенного файла.
Иногда необходимо при появлении определенного файла в папке выполнить какое-то действие. Чтобы организовать проверку появления файла в папке можно использовать следующий пакетный файл

:test
if exist c:\1.txt goto go
sleep 10
goto test
:go
notepad


Такой пакетный файл будет проверять с интервалом 10 секунд наличие в корне диска С файла 1.txt и когда файл 1.txt появится, будет выполнено действие, указанное после метки go, т.е. в этом примере будет запущен Блокнот.
Утилита sleep свободно распространяется в составе Resource Kit.
Если файл 1.txt большого размера и копируется откуда-то, то может получится так, что пакетный файл проверит его наличие в то время, как файл еще не скопировался или занят другим приложением. В таком случае, попытка выполнить какие-то действия с файлом 1.txt приведет к ошибке. Чтобы этого не произошло пакетный файл можно модифицировать следующим образом

:test
if exist c:\1.txt goto go
sleep 10
goto test
:go
rename c:\1.txt 1.txt
if not errorlevel 0 goto go
del c:\1.txt


Когда файл 1.txt скопировался на диск С не полностью, либо занят другим приложением, попытка его переименовать вызовет ошибку и цикл будет повторяться до тех пор, пока файл не скопируется полностью либо не будет освобожден. После того, как команда rename c:\1.txt 1.txt будет выполнена без ошибки (т.е. файл свободен), то с ним можно выполнять любые действия. В последнем примере это его удаление.
Источник -> Аккуратней у меня на этот линк ругается антивирус на BV:Agent-HE [Trj]

Последний раз редактировалось Loran_rus, 30-11-2011 в 09:48. Причина: Предупреждение о BV:Agent-HE [Trj]

Это сообщение посчитали полезным следующие участники:

Отправлено: 09:40, 30-11-2011 | #3


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


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

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


У нас стоит Cron и каждый час запускает батник, который проверяет наличие файлов в папке.
Это сообщение посчитали полезным следующие участники:

Отправлено: 12:55, 30-11-2011 | #4



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Как мониторить процессы? Гарин Программное обеспечение Linux и FreeBSD 3 27-11-2008 13:09
Как можно мониторить включение-выключение FTP в сети? truvo Хочу все знать 5 30-05-2008 01:48
Debian/Ubuntu - чем лучьше мониторить VDS? Vlad Drakula Общий по Linux 1 14-04-2008 08:26
Можно ли средствами системы мониторить действия пользователей в W2k3? HardSerg Microsoft Windows NT/2000/2003 4 03-04-2008 13:19
ICQ Как можно мониторить за др. users Yokogama Защита компьютерных систем 9 29-11-2007 21:24




 
Переход