1 | ||||||
Самовосстанавливающиеся батники18.08.2013, 19:22. Показов 6697. Ответов 56
Метки нет (Все метки)
Задача такая: есть 2 батника. Они включены и работают постоянно. Если удалить один батник, то он автоматически должен быть восстановлен вторым. Если удалить второй, то он тоже должен быть восстановлен первым.
Я пытался через
0
|
18.08.2013, 19:22 | |
Ответы с готовыми решениями:
56
Самовосстанавливающиеся батники Батники Помогите создать батники Батники для автоматизации использования PuTTY |
101 / 95 / 8
Регистрация: 07.08.2013
Сообщений: 299
|
|
19.08.2013, 18:20 | 21 |
0
|
19.08.2013, 19:15 | 22 | |||||
MihaniX, чтобы сделать такой бат, нужно понять что он еще должен делать, кроме как следить друг за другом.
Да, пожалуйста: Обозвать его либо 1.bat, либо 2.bat
P.S. Я кажется понял, с чем у Вас возникла проблема - с именами файлов. Чтобы один и тот же код мог восстанавливать как из 1-го скрипта 2-ой, так и из 2-го скрипта 1-й. Добавлено через 5 минут Гы, а скрипт то живучий получился у меня: после удаления файла - продолжает работать.
1
|
101 / 95 / 8
Регистрация: 07.08.2013
Сообщений: 299
|
||||||
19.08.2013, 19:19 | 23 | |||||
Dragokas, чет я совсем запутался... зачем такое громоздкое решение?
я правильно понял:
0
|
19.08.2013, 19:26 | 24 |
Borodа, привычка.
Перепишите в виде классического Goto, тогда код будет крутиться в основном потоке и при удалении файла указатель сместится - скрипт должен моментально вырубиться. Теоретически, нужно еще добавить проверку на - запущен ли процесс батника. Не по теме: FraidZZ, почитал про квайны. Мозг сламал.
0
|
101 / 95 / 8
Регистрация: 07.08.2013
Сообщений: 299
|
|
19.08.2013, 19:30 | 25 |
ну мое решение именно такое
заменить его на непрерывный цикл и будет "неубиенный".
0
|
Особый статус
8428 / 1707 / 87
Регистрация: 15.04.2011
Сообщений: 5,515
|
|
19.08.2013, 19:36 | 26 |
ну и в папку с самим сабой не стоит помещать-иначе рекурсивно можно очистить содержимое.
а в разных папках-затроенный батник-будет неубиваем. рандомные директории...рандомные имена... а если еще с правами и настройками поиграться...то тогда может монстр получиться,придется долго этого глиста ловить...
0
|
101 / 95 / 8
Регистрация: 07.08.2013
Сообщений: 299
|
|
19.08.2013, 19:37 | 27 |
Koza Nozdri, как раз интересно с самим собой помещать батник. Ты его убиваешь, а он снова появляется
0
|
Особый статус
8428 / 1707 / 87
Регистрация: 15.04.2011
Сообщений: 5,515
|
|
19.08.2013, 19:39 | 28 |
так я о чем и говорю-тока надо не задваивать а затраивать и имя и место дислокации рандомно подбирать из переменной.
+ cals...короче меня не туда понесло...
0
|
2835 / 1644 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
|
|
19.08.2013, 19:47 | 29 |
0
|
101 / 95 / 8
Регистрация: 07.08.2013
Сообщений: 299
|
|
19.08.2013, 19:50 | 30 |
MihaniX, я чет не понимаю... вам уже два варианта кода предложили.
Причем в виде одного файла, который при первом запуске генерит и второй. Добавлено через 35 секунд Т.е. это два батника с одинаковым содержимым.
0
|
19.08.2013, 20:08 [ТС] | 31 |
Boroda, Ваш вариант... запутался я в нем. Вы его запускали?
UPD Разобрался с Вашим - работает, спасибо. Насчет таких команд которые Вы использовали - не знал. Dragokas правильно понял, что у меня проблемы с именами файлов. Я понял почему не получалось - я не копировал, а перезаписывал. Кстати Dragokas, Что-то у меня не работает... >PS А что если батники разные?
0
|
101 / 95 / 8
Регистрация: 07.08.2013
Сообщений: 299
|
|
19.08.2013, 20:24 | 32 |
Ну как же я мог запостить не проверив.
Я это спрашивал в самом начале. Они будут выполнять какой-то код еще, кроме проверки себя любимых на наличие? Ну и сразу второй вопрос: код должен выполнятся единожды после запуска батника или так же повторяться в цикле? Хотя в любом случае решение будет в замене команды copy на пачку echo c нужным кодом. Хотя... можно попробовать сделать так, чтобы один батник при запуске вычитывал полностью код второго в переменные.
1
|
101 / 95 / 8
Регистрация: 07.08.2013
Сообщений: 299
|
|
19.08.2013, 20:57 | 34 |
MihaniX, ну тогда значит вычитывать содержимое второго батника в переменные.
1
|
19.08.2013, 21:12 | 36 | ||||||||||
Вот и я до сих пор не понимаю - какое техзадание. Только экстрасенсов вызывай
Если нужно чтобы в 2-х батниках выполнялись разные коды. Нужно, чтобы оба этих кода были в обоих батниках. В зависимости от имени самого себя батник переходит на 1-ю (с одним кодом), или на 2-ю (с другим кодом) метку. У меня работает. Бат-файл Вы правильно обозвали? CMD окошко нельзя закрывать. И где код? Этот что-ли? Не по теме:
в исходный файл входят эти самые эхо с этим же исходным файлов... такая рекурсивная завязка. (по сути мы не имеем представления об исходнике.) Вот чего я не могу понять, о чем говорил, что это не возможно. Добавлено через 3 минуты в чем проблема:
0
|
101 / 95 / 8
Регистрация: 07.08.2013
Сообщений: 299
|
|
19.08.2013, 21:14 | 37 |
Мне так кажется в том, что исполняемый код будет в обеих батниках одинаковый. А ТС, на сколько я понял, уже хочет разный.
1
|
19.08.2013, 21:50 [ТС] | 39 |
Будет будет. Надо чтобы были 2 или более батников, которые в независимости от внутреннего (полезного) кода восстанавливали "убитых" собратьев. Проблема в том что код может быть у них разным. Что делать тогда я не знаю. Был вариант записать код другого батника в переменную. Согласен. Но я не знаю как так сделать... Может кто знает?
Добавлено через 52 секунды Я именно из-за этого голову и ломал. Хотел через эхи все сделать. про %~n0 не знал. Да и циклические команды еще не очень освоил...
0
|
101 / 95 / 8
Регистрация: 07.08.2013
Сообщений: 299
|
|
19.08.2013, 21:51 | 40 |
1
|
19.08.2013, 21:51 | |
19.08.2013, 21:51 | |
Помогаю со студенческими работами здесь
40
НЕ Самовосстанавливающиеся предохранители ICP-Nxx Самовосстанавливающиеся вирусное приложение fast serch Батники для компиляции любой версии Delphi Троян, прописывает батники в свойства браузеров и открывает рекламу Где можно скачать батники для 64-разрядной системы? Выбрать один или несколько CheckBox одновременно и по кнопке запустить определенные батники Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |