![]() |
|
| Правила Форума редакция от 22.06.2020 |
|
|||||||
|
|
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже. |
|
![]() |
|
|
Опции темы | Опции просмотра |
Language
|
|
|
#1
|
|
Постоялец
![]() ![]() ![]() ![]() ![]() Пол:
Регистрация: 15.09.2007
Сообщений: 695
Репутация: 218
|
Хочу в CMD проверять включён ли комп в сети и если да, то выполнять определённые действия.
Логика такая: Если команда1 выполнена успешно, то идти на метку m1 - иначе выполнить команду2 if ping 10.0.0.99 goto m1 C:\WINDOWS\pid.exe Как правильно? Запутался с else и exist и ещё cmd ругается, что 10.0.0.99 - неопознанная команда. :/ |
|
|
|
| Реклама: | лист нержавейки цена | сергей катышев | Фиброцементные плиты - производитель фиброцементные - у нас на fibro-cement.ru | керамический гриль kamado | Заходите на сайт MebelStol.ru: Стулья без подлокотников - отличные цены и большой выбор! |
|
|
#2
|
|||||||||||||||||||||||
|
Постоялец
![]() ![]() ![]() ![]() Пол:
Регистрация: 28.01.2008
Адрес: Пермь
Сообщений: 438
Репутация: 172
|
Не совсем так. Как вариант: Код:
ping -n 1 10.0.0.99 if errorlevel 1 goto no_ping Не очень понял, правда, что такое PID.EXE? Эту прогу надо запустить, если удалённый комп включен? Тогда можно так: Код:
ping -n 1 10.0.0.99 if not errorlevel 1 c:\windows\pid.exe Последний раз редактировалось vmunt; 05.04.2008 в 20:03.. Причина: Добавлено сообщение |
|||||||||||||||||||||||
|
|
|
| Сказали спасибо: |
|
|
#3
|
|
Постоялец
![]() ![]() ![]() ![]() ![]() Пол:
Регистрация: 15.09.2007
Сообщений: 695
Репутация: 218
|
Просто раньше было 4 задания, а я захотел сделать одно, одним файлом: проверяем есть ли связь с сервером, если нет - запускаем авторизатор, который открывает туда доступ. Затем NET USE... делаем локальную копию архива с сервера, очищаем папку и закрываем соединение.
Радует, что можно проверить ещё кучу всего, но для этой задачи достаточно того, что есть. Первый вариант заработал, мне нужен был лишь синтаксис, спасибо. С остальным я разобрался. Просто в справочной системе маловато примеров и как-то всё туманно. За if not я сообразил сразу. Прекрасно работает. ![]() Тему можно удалить. |
|
|
|
|
|
#4
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Постоялец
![]() ![]() ![]() ![]() Пол:
Регистрация: 28.01.2008
Адрес: Пермь
Сообщений: 438
Репутация: 172
|
Кхм... Во-первых, улыбнула постановка задачи:
Хаароший сервер, надо сказать... Во-вторых:
Тут слабо понял, как соотносится PING и авторизация на сервере? Здесь, скорее всего, больше в тему проверка наличия файла в расшаренной папочке... А по поводу архивной копии: 1. Надо. 2. NET USE, имхо, тоже лишнее... Код:
copy \\10.0.0.99\ARCH\*.* c:\archieve echo y|del \\10.0.0.99\ARCH\*.*
Ах это в справочной системе туманно?! Паанятно... ![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
#5
|
|||||||||||||||||||
|
Постоялец
![]() ![]() ![]() ![]() ![]() Пол:
Регистрация: 15.09.2007
Сообщений: 695
Репутация: 218
|
vmunt,
Алгоритм резервного копирования с сервера под Samba используется мною уже не один год. Естественно, что там всё запаролено. И ваш метод без авторизации здесь не пройдёт. Если интересует, то в целом файл резервного копирования выглядит теперь просто и без лишних изворотов:
Справка в командной строке cmd по поводу оператора IF действительно запутана. А стандартная виндовая сейчас недоступна - на машине много задач выполняется, не хочу пока беспокоить её экспериментами. ![]() Последний раз редактировалось Kucher2; 05.04.2008 в 21:50.. |
|||||||||||||||||||
|
|
|
|
|
#6
|
|
Постоялец
![]() ![]() ![]() ![]() Пол:
Регистрация: 28.01.2008
Адрес: Пермь
Сообщений: 438
Репутация: 172
|
Интересует...
1. Не очень понятно, зачем подключать ресурс paint$, если в этом пакетнике он не используется вообще. 2. Зачем вообще после авторизации вводить дополнительные пароли на доступ к ресурсу? Клиент в InetAccess (не знаю, что такое) может залогиниться пользователем, которому запрещено подключаться к ресурсу paint$? 3. ping 127.0.0.1 -n 5 - это что за заморочки? Это вариант задержки такой? А зачем? Какие-то нюансы при работе с Linux-овским сервером? |
|
|
|
|
|
#7
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Постоялец
![]() ![]() ![]() ![]() ![]() Пол:
Регистрация: 15.09.2007
Сообщений: 695
Репутация: 218
|
Я ошибся. Исправил.
Клиент не логинится, он просто сообщает серверу, что такой-то юзер хочет пройти (юзер этот имеет отношение лишь к билингу, прав к доступу в самой системы у него нет) и сервер открывает правила фаервола, пуская меня к себе по IP-протоколу.
Да, вариант задержки "по-быстрому". Иначе надо использовать доп. утилиты. А этот вариант универсален. Я ж сказал: всё просто. Зачем задержки - я выше написал. Вообще в Nix'ах для этого есть команда задержки.. по-моему sleep. А MS почему-то пожмотились на такое. Последний раз редактировалось Kucher2; 05.04.2008 в 22:16.. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
#8
|
|||||||||||||||||||||||
|
Постоялец
![]() ![]() ![]() ![]() Пол:
Регистрация: 28.01.2008
Адрес: Пермь
Сообщений: 438
Репутация: 172
|
Почему пожмотилась? Вот... Только там про Nix-ы ни слова... ![]() Спасибо за ответы. Всё стало понятно. ![]() |
|||||||||||||||||||||||
|
|
|
|
|
#9
|
|||||||||||||||||||||||
|
Постоялец
![]() ![]() ![]() ![]() ![]() Пол:
Регистрация: 15.09.2007
Сообщений: 695
Репутация: 218
|
Это отдельный модуль. А в NIX'ах эта функция встроена уже. Если использовать её сейчас, то на другой машине такое решение работать не будет - надо снова файлик этот брать где-то. А мне важна универсальность и простота. |
|||||||||||||||||||||||
|
|
|
|
|
#10
|
|
Постоялец
![]() ![]() ![]() ![]() Пол:
Регистрация: 28.01.2008
Адрес: Пермь
Сообщений: 438
Репутация: 172
|
Я понял (про отдельный модуль)... Если что, намёк... У меня sleep.exe лежит вместе с пакетником, в котором используется...
![]() |
|
|
|
|
|
#11
|
|||||||||||||||||||
|
Постоялец
![]() ![]() ![]() ![]() ![]() Пол:
Регистрация: 15.09.2007
Сообщений: 695
Репутация: 218
|
А вот ещё, паровозом, вопросик:
Вот в этом фрагменте:
Если, скажем, два компа находятся на большом удалении, то 1-2 пакета могут потеряться (к примеру я хочу сделать сервер VPN и коннектиться к нему из любой точки мира). Как правильно настроить такое условие, чтобы при прохождении большинства пакетов - оно считалось бы правдивым? |
|||||||||||||||||||
|
|
|
|
|
#12
|
|
Постоялец
![]() ![]() ![]() ![]() Пол:
Регистрация: 28.01.2008
Адрес: Пермь
Сообщений: 438
Репутация: 172
|
Насколько я понимаю, errorlevel после ping-а взводится, если _ни_один_ из пакетов не дошёл. Доку по нему сейчас искать тяжко уже (баиньки хоца), но думаю, можно просто попробовать нарисовать пакетник типа:
Код:
ping -n 20 10.0.0.10 if errorlevel 10 echo 10 if errorlevel 9 echo 9 ... if errorlevel 1 echo 1 А у меня в пакетнике проверки, если первый пинг не проходит, то я перехожу на посылку второго пинга, и только потом обрабатываю облом. Таким образом можно, например, делать 3,4,5 последовательных проверок ping -n 1 x.x.x.x... |
|
|
|
| Сказали спасибо: |
|
|
#13
|
|
Пользователь
Пол:
Регистрация: 10.10.2005
Сообщений: 163
Репутация: 244
|
Такой vbs скрипт использую для проверки с утра работоспособность серверов висит в назначенных заданиях + cmd2sms.exe найдите на сайте для своего региона и оператора скрипт отправки смс, может кому нибудь пригодиться
Скрипт
__________________
Не все ври, что знаешь... Последний раз редактировалось Plesha; 07.04.2008 в 06:41.. |
|
|
|
![]() |
Похожие темы
|
||||
| Тема | Автор | Раздел | Ответов | Последнее сообщение |
| Установка сафта в консоли? | Калина | Вопросы и проблемы | 15 | 24.06.2010 18:55 |
| crop на все фотки, но условие: отрезать 1см снизу и 1см сверх.как сделать так Action? | tasheal | Школа Photoshop / Photoshop School | 1 | 28.09.2008 16:02 |
| Рисование в консоли на C# | Ivan_32 | .NET | 9 | 21.04.2008 17:46 |
| Запрет консоли CS 1.6 | whitevolf | Помощь по играм | 3 | 13.04.2007 13:40 |
|
|