| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Флейм > Прошу Вашего совета |
| Автор: UG 9.10.2002, 16:20 |
| Две задачи. 1. Проверить дату создания файла, если сегодняшняя, то скопировать его в файл DDMM.* (дата, месяц) 2. Даны две папки. В одной из них каждые несколько минут формируется файл (мы не знаем заранее его имя), нужно скопировать каждый новый файл во вторую папку. Какими средствами лучше реализовать решение задачи. Возможно ли это все сделать только командами bat-файла. |
| Автор: Dexter 9.10.2002, 22:48 |
| Че-то я не понял-какими командами Bat файла? Если ты программулину делаешь, то 1. ищи в WinAPI functions дату создания файла, 2. Через какой-то промежуток времени проверяй все файлы в обоих папках ищи самый поздний и копируй (Тоже наверное проще всего через API) |
| Автор: Vit 9.10.2002, 23:13 |
| http://www.forum.vingrad.ru/cgi-bin/newforum/ikonboard.cgi?act=ST;f=32;t=1924 |
| Автор: UG 10.10.2002, 18:23 |
| Спасибо всем вторую задачу я реализовала по колхозному, но работает: FOR %%f IN (*.fff) DO IF NOT EXIST C:\DIR\%%f copy %%f C:\DIR\%%f А с первой прямо не знаю... Я только в FoxPro и Oracle работала (на заре юности еще и Pascal и C++ изучала). Можно узнать как этот WinAPI устанавливается с Windows или отдельно надо программу покупать? |
| Автор: neutrino 10.10.2002, 19:53 |
| И все таки не понятно: .BAT файлы? Если так, то такой команды нет. Можно попробовать: @echo off if [%1] == [] goto no_param if not exist %1 goto no_file echo.|date|find /i /v "mm" >curdate.dat dir %1| find /i /v %1>filedate.dat rem после выполнения в одном файле будет дата на момент выполнения, rem а во втором дата создания файла. Если можно как-то удалить в первом rem файле фразу "The current date is: ", а во-втором "%1", то выход будет: fc /c /l/ /t curdate.dat flsdate.dat>nul rem и в errorlevel можно проверить какой результат. |
| Автор: Chingachguk 10.10.2002, 21:05 | ||||
| Пример bat-файла, копирующего файл autoexec.bat в файл с именем YYYYMMDD.sav
Байты после REM должны быть:
|
| Автор: neutrino 10.10.2002, 21:53 |
| !!!Очень хитро!!! Мое почтение, Chingachguk! Вопрос: а можно вообше так любую задачу решить? Ведь это зависит от того, как ОС воспримет эти символы. P.S. А прогу на АСМе не покажешь? |
| Автор: Dexter 10.10.2002, 22:00 | ||
WinAPI - это встроеные функции виндов. Блин, забыл как расшифровывается(помню только первые три буквы |
| Автор: Dexter 10.10.2002, 22:04 |
| Во вспомнил - Application Programming Interface. Вроде так |
| Автор: UG 11.10.2002, 18:24 |
| Thank you very much! Вы такие добрые к таким чайникам, как я. |
| Автор: UG 11.10.2002, 18:25 |
| Thank you very much! Вы такие добрые к таким чайникам, как я. |
| Автор: Chingachguk 11.10.2002, 20:42 | ||||||
Идея вообще не моя. Смотри бат-вирусы BatStart... Некоторые из них даже...полиморфные ! Код должен не содержать спецсимволы: 0Dh,0Ah... Смотри пару команд:
Прога на асме:
|
| Автор: neutrino 11.10.2002, 20:49 |
| Спасибо. Я готов это запихать в ФАК, только у нас нет ФАКА по ДОСу. |
| Автор: Chingachguk 11.10.2002, 23:10 |
| А по чему есть и что такое фак ? |
| Автор: Dexter 11.10.2002, 23:26 |
| Фак - FAQ |