1

Я пытаюсь найти способ автоматизации процесса с помощью командного файла.

Процесс - это тот, который записывает вывод в файл на неопределенный срок, пока не получит команду break (ctrl+c) через клавиатуру.

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

По сути, я хочу выполнить эту команду в течение 24 часов (или как можно ближе), отменить ее, выполнить перемещение / переименование файла, а затем снова запустить команду.

Пока что у меня есть:

e:
md e:\aculogs
cd e:\aculogs
del 14daysago00.txt
ren 13daysago00.txt 14daysago00.txt
ren 12daysago00.txt 13daysago00.txt
ren 11daysago00.txt 12daysago00.txt
ren 10daysago00.txt 11daysago00.txt
ren 9daysago00.txt 10daysago00.txt
ren 8daysago00.txt 9daysago00.txt
ren 7daysago00.txt 8daysago00.txt
ren 6daysago00.txt 7daysago00.txt
ren 5daysago00.txt 6daysago00.txt
ren 4daysago00.txt 5daysago00.txt
ren 3daysago00.txt 4daysago00.txt
ren 2daysago00.txt 3daysago00.txt
ren yesterday00.txt 2daysago00.txt
copy e:\Port00.txt D:\aculogs\yesterday00.txt
del e:\Port00.txt

cd %PROGRAMFILES%\aculab\v6\bin
v6trace -port 188746 0 -trace_high > e:\Port00.txt

Мне нужно завершить эту последнюю команду как можно ближе к 24 часам, чтобы я мог заставить планировщик задач сразу же ее запустить. Я достигаю пределов того, что я могу сделать в пакетных файлах? Я нуб ко всему этому ...

1 ответ1

0

Простейшим способом сделать это было бы иметь следующее в строке 1:

taskkill /im v6trace.exe /f

Это убьет приложение v6trace. Затем вы можете запланировать это через диспетчер задач Windows для ежедневного выполнения в полночь.

Первое, что он должен сделать - это убить v6trace (последняя запущенная команда в последнем запуске) - эффективно завершить предыдущий пакет, а затем снова запустить процесс while.

Надеюсь это поможет,

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .