Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Alexpo
Зарегистрирован: 14.07.2004 Сообщения: 82 Откуда: Санкт-Петербург
|
Добавлено: Вт Сен 05 2006 17:47 Заголовок сообщения: просмотр исполения bat-файлов из терминальной сесии Windows |
|
|
Здравствуйте, уважаемые эксперты!
Такая ситуация: есть файловый сервер под Win 2000 Server. На нем лежат базы для 1С, отданные в общий доступ (dbf-формат). Также написаны скрипты (архивирование и т. п.) - обычные *.bat-файлы. Чтобы скрипты выполнылись каждый в своё время, используется оснастка Назначенные задания. Файловый сервер стоит рядом с моим раб. местом и доступ к нему имеется с консоли через интерфейсный свич (монитор+клав.+мышь). Возникла необходимость перенести файловый сервер в другое место. Я настроил доступ к серверу через терминальные службы Windows. И тут я обнаружил, что когда выполняются мои батники, я не вижу отображения этих процессов в теминальной сесии. С консоли вижу выполенение батника - сеанс эмуляции MS-DOS открывается.
Вопрос: как увидеть исполнение bat-файла, запущенного из Назначенных заданий в терминальной сессии Windos 2000? Мне это необходимо, т. к. некоторые из батников иногда подвисают и требуют ответа на интерактивный вопрос. |
|
Вернуться к началу |
|
|
And
Зарегистрирован: 02.12.2003 Сообщения: 401 Откуда: Московская обл.
|
Добавлено: Вт Сен 05 2006 20:57 Заголовок сообщения: |
|
|
Хех, смысл автоматизировать все с помощью скриптов, чтобы потом сидеть и постоянно наблюдать за их работой в интерактивном режиме? Теперь по порядку. Первое, что бы я сделал, так это переписал батники таким образом, чтоб они не спрашивали действий пользователя. Второе, от чьего имени в шедуллере (планировщике) запускаются твои батники, и под каким пользователем ты их просматриваешь в интерактивном режиме? Завершение работы батника можно посмотреть в том же планировщике. Там же будет написано удачно или нет он завершился. Подозреваю, что для архивирования используется запуск 1С в режиме конструктора с последующей выгрузкой данных, и если база занята, то выгрузить ее не удается. Хотя может и не так. На всякий случай к своему ответу прилепи текст батника. |
|
Вернуться к началу |
|
|
ANDronis
Зарегистрирован: 16.02.2005 Сообщения: 158
|
Добавлено: Ср Сен 06 2006 08:08 Заголовок сообщения: |
|
|
правильная мысль на счет того, зачем шедулить задания, если они для работы требуют присутствия... а проверить как отработал бантик можно задав для него перенаправление вывода и запускать типа
c:\batfile.bat >> c:\batfile_output.txt с утра приходишь и просматриваешь batfile_output.txt там все будет написано, как батник отработал |
|
Вернуться к началу |
|
|
grf
Зарегистрирован: 05.04.2005 Сообщения: 1242 Откуда: Москва
|
Добавлено: Ср Сен 06 2006 08:45 Заголовок сообщения: |
|
|
У меня подобная задача, архивирование и резервное копирование, организовано дублирующим способом
1. ntbackup
2. RAR
Батник работает автоматом и не требует дополнительных телодвижений.
_________________ Errare humanum est |
|
Вернуться к началу |
|
|
Попавший Ламер
Зарегистрирован: 16.04.2003 Сообщения: 326
|
Добавлено: Ср Сен 06 2006 09:46 Заголовок сообщения: |
|
|
ANDronis писал(а): |
c:\batfile.bat >> c:\batfile_output.txt с утра приходишь и просматриваешь batfile_output.txt там все будет написано, как батник отработал |
c:\batfile.bat >> c:\batfile_output.txt 2>&1 - вот тогда точно прочитаешь, как батник отработал. |
|
Вернуться к началу |
|
|
Alexpo
Зарегистрирован: 14.07.2004 Сообщения: 82 Откуда: Санкт-Петербург
|
Добавлено: Ср Сен 06 2006 10:42 Заголовок сообщения: |
|
|
Спасибо всем, кто откликнулся.
Действительно, смысла особого нет постоянно наблюдать за работой сценариев
Немного подробнее. У меня около 10 батников. Проблемы только с одним возникают. Только 1 раз в день. Так что не так всё плохо. У фирмы есть 2 площадки: офис и склад. Соотв., 2 ЛВС, соединенные между собой. Склад и офис работают каждый в своей базе 1С Торговля (это не правильно, но это отделная тема). Сначала на складском файловом сервере запускается батник, архивирующий складскую базу 1С. Затем на офисном сервере запускается батник, копирующий архив складской базы. Затем, запускается батник, восстанавливающий (разархивирующий) складскую базу в офисе. (В складской базе правильные остатки товаров и сотрудники офиса должны их видеть). Восстановление складской базы происходит в 13.59. Перед этим в 13.55 отрубаются юзеры, которые в офисе работают со складской базой (это настроил в глобальном модуле в 1С). И вот тут и возникает проблема. Иногда кто-то из юзеров не орубается (х. з почему). Батник, разархивирующий архив, пытается перезаписать dbf-файл, а файл этот захвачен другим юзером. Поэтому батник спрашивает: "Перезаписать этот файл?" И вивсит и ждёт ответа, сцуко!!!
Батник запускается от имени админа. Под этим же админом я подключаюсь терминально. С консоли вижу батник висящий с вопросом (сеанс MS-DOS), а терминально не вижу |
|
Вернуться к началу |
|
|
And
Зарегистрирован: 02.12.2003 Сообщения: 401 Откуда: Московская обл.
|
Добавлено: Ср Сен 06 2006 11:25 Заголовок сообщения: |
|
|
Можно перед запуском батника средствами операционки закрывать сетевые подключения к этой папке. Имеется ввиду папка с базой 1С. Тогда уж точно все поотваливаются : )) А вообще гонять полные базы по Internet или WAN медленно и дорого, дабы, IMHO, SQL & распределенная БД реализованная его средствами рулит. Гоняется только разница в данных с помощью репликаций и всегда в режиме реального времени (с незначительной задержкой) видно все изменения в базе : )) |
|
Вернуться к началу |
|
|
a-m-d
Зарегистрирован: 09.09.2004 Сообщения: 1498 Откуда: SPb
|
Добавлено: Ср Сен 06 2006 13:08 Заголовок сообщения: |
|
|
Alexpo писал(а): | ...Затем, запускается батник, восстанавливающий (разархивирующий) складскую базу в офисе. ... Восстановление складской базы происходит в 13.59. Перед этим в 13.55 отрубаются юзеры, которые в офисе работают со складской базой (это настроил в глобальном модуле в 1С). И вот тут и возникает проблема. Иногда кто-то из юзеров не орубается (х. з почему)... |
Не отрубается в смысле как? 1С остается открытой? Или 1С закрылась, но файлы базы открыты на чтение или запись?
Изучаем справку net /?
Возможных путей дофига (в зависимости от того, что у тебя еще на сервере творится и как народ в папку с базой попадает)
net stop server | net start server
net session \\comp_name /delete (список компов придется придумывать и подсовывать)
net share шара /delete потом ее заново создать
Можно вроде еще через net file xxx /close пойти, только сначала надо список тех файлов получить.
ЗАМЕЧАНИЕ у всех команд есть ключик /y
Alexpo писал(а): | Батник, разархивирующий архив, пытается перезаписать dbf-файл, а файл этот захвачен другим юзером. Поэтому батник спрашивает: "Перезаписать этот файл?" И вивсит и ждёт ответа, сцуко!!!
Батник запускается от имени админа. Под этим же админом я подключаюсь терминально. С консоли вижу батник висящий с вопросом (сеанс MS-DOS), а терминально не вижу |
И чЁ? Если в консоли архиватору ответить "Угу, перезаписать", перезапишет? В таком случае укажи это же "Угу, перезаписать все и больше не задавать глупых вопросов" в командной строке, вызывающей архиватор.
PS а вообще, раз не используется распределенное решение, может кого-нибудь в эту базу через терминал пускать?
База склада лежит на терминальном сервере в офисе, складские лазят в нее через терминал.
Или наоборот, офисные по терминалу лезут на склад. _________________ Век живи - век учись!.. Дураком помрёшь. |
|
Вернуться к началу |
|
|
Alexpo
Зарегистрирован: 14.07.2004 Сообщения: 82 Откуда: Санкт-Петербург
|
Добавлено: Ср Сен 06 2006 15:13 Заголовок сообщения: |
|
|
Проблема решилась.
Всё из-за того, что сервер не успевал отрабатывать. Дал ему побольше времени на отключение юзеров - и всё прошло гладко.
Но за совет по пов. net /? спасибо. Имеет смысл подстраховаться с отключением/подключением шары. Не знаю только что лучше для этого - батник или VBS.
По пов. терминального сервака под 1С - давно принято решение на него переходить, т. к. файловый сервак загибается, особенно дисковая подсистема. Только-только выбрали и купили железо под терминал. Ещё даже не получили его. Будем поднимать...
И по распределённой базе - подумаем, спасибо. |
|
Вернуться к началу |
|
|
vvt
Зарегистрирован: 20.05.2004 Сообщения: 686
|
Добавлено: Чт Сен 07 2006 00:28 Заголовок сообщения: |
|
|
Вот ещё по первоначальному вопросу: у стандартного mstsc.exe есть ключ /console, позволяющий подключаться к нулевой сессии, в которой как раз должно быть видно все ваши чудо-окна. |
|
Вернуться к началу |
|
|
Alexpo
Зарегистрирован: 14.07.2004 Сообщения: 82 Откуда: Санкт-Петербург
|
Добавлено: Пт Сен 15 2006 18:10 Заголовок сообщения: |
|
|
Пытался mstse /console запустить - не показывает окна MS-DOS |
|
Вернуться к началу |
|
|
vvt
Зарегистрирован: 20.05.2004 Сообщения: 686
|
|
Вернуться к началу |
|
|
Alexpo
Зарегистрирован: 14.07.2004 Сообщения: 82 Откуда: Санкт-Петербург
|
Добавлено: Пн Сен 18 2006 16:58 Заголовок сообщения: |
|
|
обыдно, однако... |
|
Вернуться к началу |
|
|
|