|
|
|
Cmd-файл для удаления файлов и запуск его в шедулере
|
|||
|---|---|---|---|
|
#18+
Всем привет, не знаю как реализовать, необходимо запускать командный файлик, который будет проверять в папках наличие файлов только с определенным названием и расширением, всё остальное необходимо удалять... Кроме того, его надо запускать используя стандартный планировщик заданий win2003/xp только в последний день месяца(!!!).Подскажите пожалуйста! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2007, 08:48:40 |
|
||
|
Cmd-файл для удаления файлов и запуск его в шедулере
|
|||
|---|---|---|---|
|
#18+
К чему сказано про проверку наличия? Быть может, надо просто удалять все, что не соответствует маске? Можно, например, при помощи RAR упаковать все нужные файлы, а все остальные потереть нафиг, после чего упакованные восстановить обратно. А что касается запуска в последний день месяца, то это легко решается созданием 4 различных заданий, группирующих месяцы с одинаковой продолжительностью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2007, 12:25:23 |
|
||
|
Cmd-файл для удаления файлов и запуск его в шедулере
|
|||
|---|---|---|---|
|
#18+
MZHК чему сказано про проверку наличия? Быть может, надо просто удалять все, что не соответствует маске? Да, я неточно выразился! MZHМожно, например, при помощи RAR упаковать все нужные файлы, а все остальные потереть нафиг, после чего упакованные восстановить обратно. Делаю аналогично, но без архивирования - переносом файлов в другой каталог, удаления всего в папке и возвратом назад перемещённых файлов. Проблема в том, что это выполняется очень медленно, что не устраивает, вот я и задал вопрос, можно ли делетить файлы, которые не соответсвуют некой маске! MZH А что касается запуска в последний день месяца, то это легко решается созданием 4 различных заданий, группирующих месяцы с одинаковой продолжительностью. Так и сделано, но создается несколько расписаний, проблема в феврале, я несколько однократных расписаний до 2010 года, соответсвенно по 28 и 29 числам, но это не очень удачно, так как потом на каждый следующий год надо дополнять ещё одним заданием... Конечно надо ещё дожить до 2010, но всё же как-то неприятно от такого "топорного" решения проблемы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2007, 13:31:21 |
|
||
|
Cmd-файл для удаления файлов и запуск его в шедулере
|
|||
|---|---|---|---|
|
#18+
George-III MZHМожно, например, при помощи RAR упаковать все нужные файлы, а все остальные потереть нафиг, после чего упакованные восстановить обратно. Делаю аналогично, но без архивирования - переносом файлов в другой каталог, удаления всего в папке и возвратом назад перемещённых файлов. Проблема в том, что это выполняется очень медленно, что не устраивает, вот я и задал вопрос, можно ли делетить файлы, которые не соответсвуют некой маске! Архивировать необязательно, достаточно указать RAR'у параметр -m0, тогда он не будет паковать файлы. Насколько знаю, консольные команды move и copy не имеют параметров, позволяющих вытаскивать файлы сразу из всех подкаталогов, что RAR отлично умеет. А для delete не задается маска исключения. George-III Так и сделано, но создается несколько расписаний, проблема в феврале, я несколько однократных расписаний до 2010 года, соответсвенно по 28 и 29 числам, но это не очень удачно, так как потом на каждый следующий год надо дополнять ещё одним заданием... Конечно надо ещё дожить до 2010, но всё же как-то неприятно от такого "топорного" решения проблемы Собственно, что именно надо-чтобы работало или чтобы было эстетично и элегантно? Можно вообще написать один скрипт на WSH, который запускается каждый день, проверяет, не последний ли это день в месяце, после чего производит желаемые действия. А можно в батнике наколбасить многострочную процедуру для определения того же. Вопрос лишь в уровне энтузиазма. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2007, 13:41:56 |
|
||
|
Cmd-файл для удаления файлов и запуск его в шедулере
|
|||
|---|---|---|---|
|
#18+
MZHНасколько знаю, консольные команды move и copy не имеют параметров, позволяющих вытаскивать файлы сразу из всех подкаталогов, что RAR отлично умеет. Спасибо, но в этом нет необходимости для меня, подкаталоги отсутствуют Проверю, если процедура без сжатия занимает меньше времени чем копирование, воспользуюсь Вашим советом, спасибо ещё раз MZHА для delete не задается маска исключения. Понял, спасибо... Вариант отпадает! MZH Собственно, что именно надо-чтобы работало или чтобы было эстетично и элегантно? Просто думал, что по незнанию нагородил огород, думал можно как-то проще! MZH А можно в батнике наколбасить многострочную процедуру для определения того же. [/quot] Если не затруднит, можно примерчик?Или ссылку на похожие варианты, подойдет любой вариант, переделаю под себя! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2007, 13:50:27 |
|
||
|
Cmd-файл для удаления файлов и запуск его в шедулере
|
|||
|---|---|---|---|
|
#18+
George-IIIЕсли не затруднит, можно примерчик?Или ссылку на похожие варианты, подойдет любой вариант, переделаю под себя! Не буду даже пытаться-слишком долго думать над структурой вычисления придется :) Кстати, в качестве "упрощенного" варианта могу предложить следующее. Создать в шедулере задание, запускающееся в произвольный день ежемесячно Создать второе задание, которое запускается ежемесячно первого числа. В скрипте запустить через schtasks изменение дня запуска первого задания на 31-ое число текущего месяца. После этого проверить ERRORLEVEL и, если он ненулевой, попытаться изменить дату на 30, дальше при ненулевом ERRORLEVEL'e попробовать 29-ое и 28-ое. IMHO, это будет гораздо проще, чем вычислять последний день месяца и позволит ограничиться всего двумя заданиями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2007, 14:02:08 |
|
||
|
Cmd-файл для удаления файлов и запуск его в шедулере
|
|||
|---|---|---|---|
|
#18+
Поправка-изменяемое задание лучше поставить на однократное исполнение и ежемесячно корректировать его дату на последний день текущего месяца. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2007, 14:06:22 |
|
||
|
Cmd-файл для удаления файлов и запуск его в шедулере
|
|||
|---|---|---|---|
|
#18+
может проще запускать задание в 23:59, сохранять дату, а через пару минут проверять не изменился ли месяц ? время начала задания соответствует условию, время окончания - не оговорено ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.08.2007, 06:53:05 |
|
||
|
Cmd-файл для удаления файлов и запуск его в шедулере
|
|||
|---|---|---|---|
|
#18+
MZH ... Можно вообще написать один скрипт на WSH, который запускается каждый день, проверяет, не последний ли это день в месяце, после чего производит желаемые действия. ... это пожалуй лучший вариант Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.08.2007, 07:53:48 |
|
||
|
|

start [/forum/topic.php?fid=26&msg=34713833&tid=1506744]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
37ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 355ms |

| 0 / 0 |
