hroft_clone3: (Default)
[personal profile] hroft_clone3
Многие незаслуженно игнорируют командную строку в Windows.
Однако, с ее помощью можно творить чудеса.
Представляю маленькую задачу.
Дано.
Есть программа, выдающая запрос в интернет, получающая несколько файлов данных, долго их обрабатывающая, а потом убивающая.
Задача запускается по таймеру.
Требуется.
Перехватить файлы данных и скопировать на другой сервер.
Решение.

Создаем командный файл file1.cmd В него помещаем вызов программы, прием данных которой надо перехватить. Ставим вызов этого командника в шедулер.

Потом немного обвешиваем этот вызов дополнительной хренью.

===== file1.cmd ===========
echo 1 > ~\run.flag
rem в папке ..\~ создаем флаг
start ttt.cmd
rem запускаем второй файлик, вот он-то и будет утаскивать данные. Так как работает параллельно.

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

del ~\run.flag
rem убиваем флаг

Второй файлик, собственно ворюга тут :)
===== tt.cmd =====
echo Test > ~\tt.txt
echo Begin > ~\tt.txt
rem Ну это просто для теста строчки, так, чтобы смотреть как много раз скопировалось подряд.
:begin
rem ну begin и есть begin, метка такая будет у нас
if not exist ~\run.flag goto end
rem Если флага нет, выходим
echo once more >> ~\tt.txt
rem Создаем засечку в логе
copy ***** c:\up\*.* >>\tt1.txt
rem вот и копируем куда-то в сторону эти файлики/
rem Заодно и вывод команды копирования посмотрим :)
goto begin
Rem Вот и и в начало вернемся, вдруг не все файлики спёрли :)
:end
rem Ну а сюда идем, когда нету флага. Соответственно дальше на выход и передачу того, что сперли
c:
rem Уходим на диск C:
cd \up
rem Переходим в каталог UP
rar m receive.rar *.ххх
rem Перемещаем в архив receive.rar то, что сперли.
copy /z receive.rar "\\***\***\Robot v2\*.*"
rem копируем на другой сервер.
del receive.rar
Rem Зачищаем файлик.
exit
rem закрываем окошко.


Теперь все красиво, файлики спёрты, можно и обработать спокойненько на другой системе.



Ну что, кто-нибудь догадался как эту задачку решить иначе? Притом только штатными средствами Windows.


This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

Profile

hroft_clone3: (Default)
hroft_clone3

April 2022

S M T W T F S
     12
3456789
10111213141516
17181920 212223
24252627282930

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 12th, 2025 04:40 pm
Powered by Dreamwidth Studios