Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » nnCron-Планировщик с поддержкой скриптового языка

Модерирует : gyra, Maz

Widok (29-01-2008 15:38): лимит страниц. продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99

   

8AleX8



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nnCron
 
nnCron - это компактный, но мощный планировщик и менеджер автоматизации с собственным скриптовым языком, основанным на синтаксисе языка программирования Форт. Помимо традиционной для планировщика способности запускать в указанное время программы, "напоминалки" и открывать документы ..
 
nnCron способен отслеживать файлы, флаги, окна, процессы, движения мыши, время простоя компьютера, клавиатурные шорткаты, выход в онлайн/оффлайн, появление диска в драйве, наличие хоста в сети (пинг), изменение удаленного ресурса по http-протоколу, количество свободного места на диске, загруженность оперативной памяти и многое другое...
 
nnCron понимает cron-формат (Unix) и управляется с помощью текстовых кронтаб-файлов. Для тех, кто любит работать с GUI есть графическая оболочка из которой можно удалять/добавлять/редактировать и запускать задачи, устанавливать напоминалки, менять настройки программы.  
 
nnCron позволяет использовать в задачах VBScript/JScript, регулярные выражения и расширяется за счет плагинов. Он может быть запущен в качестве службы (сервиса) или как обычное приложение. Обладает средствами удаленного администрирования. Подробнее прочитать о возможностях nnCron вы можете в online-документации.
 
nnCron бесплатен для граждан стран бывшего СССР при условии частного и некоммерческого использования.


история изменений - http://www.nncron.ru/forums/viewforum.php?f=11
форум - http://www.nncron.ru/forums/
 
архив конференции поддержки: » fido7.ru.nncron
 
скачать: http://www.nncron.ru/download_ru.shtml - программу, документацию, плагины, скрипты
 
последняя версия:  
 
v.1.91 (build 1083) - последний релиз от 21 марта 2006 (+ основные плагины и документация на английском языке)  
 
документация:  
 
help_ru.zip  (обновляется регулярно) документация nnCron (на русском языке)
faq_ru.zip nnCron FAQ (на русском языке)  
spf_help.zip (130k  20 Nov 2002)  описание основных слов SP-Forth (на русском языке)  
sf.chm (1.5M  03 Feb 2003)  книга Leo Brodie "Начальный курс программирования на языке Форт" (на русском языке)  
 
полезные ссылки:
* » nnBackup - крошечная (250k) консольная утилита, предназначенная для резервного копирования файлов, синхронизации содержимого каталогов, создания и обработки файл-листов.  
* » Cтатья Валерия Кондакова про возможности nnCron  
* » Канал "nnCron releases" для » WatzNew by 8AleX8
* » Файл расцветки синтаксиса исходников языка Форт и кронтабов nnCron для плагина Colorer (Far Manager)
* » Редактор мелодий для beeper'a под nnCron
Если не работает новая, правильно написанная задача, то попробуйте добавить в опции задачи слово AsLoggedUser (галочка в свойствах новой задачи "Как пользователь, выполнивший login") и, возможно, LoadProfile (галочка "Загрузить профиль").
 

Полезные самодельные задачи для сабжа
 

Всего записей: 1813 | Зарегистр. 11-12-2001 | Отправлено: 23:26 27-04-2002 | Исправлено: lucky_Luk, 18:16 22-09-2007
volodyalipkin



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
 
nnCron 1.89 beta 5

 
Изменения:
+ новые слова для управления громкостью звука: MIXER-STATE, MIXER-MUTE, MIXER-UNMUTE, MIXER-VOLUME@, MIXER-VOLUME!, MIXER+, MIXER-UP, MIXER-DOWN;
+ новые слова для отслеживания system event logs: WatchEventLog: <logname>, FOR-NEW-EVENTS ... FOUND-EVENT ... ;FOR-NEW-EVENTS;
* из ГУИ nnCron можно редактировать задачи с именами в кавычках;
+ французский и финский переводы интерфейса nnCron (Veekee and Ville Pilvio);
+ переработана система логирования;
 
Полный список изменений:
http://www.nncron.ru/history/nncron_ru.shtml
 
 
Добавлено
Новый plugin Winamp
 
Дополнительные слова для управления WinAmp 2.xx (play, pause, stop, vol-up, vol-down, next-track, previous-track и т. д.)
 

Всего записей: 771 | Зарегистр. 12-10-2002 | Отправлено: 04:54 01-06-2003 | Исправлено: volodyalipkin, 04:59 01-06-2003
griin



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть ли какая-нибудь переменная, которая отвечает за то как запущен скрипт вручную или автоматически?  
У меня есть функция, которая запускается каждый час, плюс ведется лог действий которые эта функция делает. Иногда я запускаю эту функцию вручную, так вот нужно вписать в лог как запущена функция руками или автоматом. Можно такое реализовать?..

Всего записей: 567 | Зарегистр. 03-01-2003 | Отправлено: 14:37 05-06-2003
strauss

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
griin
 
Переменной (AFAIK) нет, но эту проблему можно решить проще. Есть слово (Min@), которое кладет на стек значение текущей минуты. При запуске "автоматом" (в твоем случае) значение всегда будет '0'. Значит можно написать что-то вроде:
 

Код:
 
Action:
Min@ 0=
IF
\ здесь логируемый код
THEN
 

 
Идея понятна?
 
CU
VK

Всего записей: 148 | Зарегистр. 19-06-2002 | Отправлено: 11:10 06-06-2003
z_IFIR



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
При выполнении действия мне нужно проверить, не запущена ли программа.
Я выбираю условие "процесс существует", и не знаю, что писать в графе Имя.
Пробовал и имя файла, и имя процесса, и хендл процесса
 
Также интересно, можно ли несколько действий, наприер, запуск нескольких
программ, объединить в одну задачу?
 
Вопросы могут показаться идиотскими , но я тока поставил себе nncron

----------
in суслик we trust!

Всего записей: 1617 | Зарегистр. 13-06-2002 | Отправлено: 12:29 08-06-2003
strauss

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
z_IFIR
 

Цитата:
При выполнении действия мне нужно проверить, не запущена ли программа.  
Я выбираю условие "процесс существует", и не знаю, что писать в графе Имя.  

 
В эту графу надо писать т. н. proc_pattern. Цитата из доки (Работа с процессами):
 
proc_pattern - это имя процесса или маска имени процесса. Обычно имя процесса - это имя исполняемого файла, который запускает интересующий нас процесс. Задавая маску имени или полного пути процесса можно применять символы '*' и '?' или регулярные выражения, заключив их в прямые слеши: /<regexp>/.  
В качестве имени процесса можно указывать не только имя исполняемого файла, но и полный путь к нему. Маска сравнивается с полным путем исполняемого файла, если в ней присутствует хотя бы один обратный слеш ('\').
Также в proc_pattern можно использовать идентификатор процесса (см. PROC-ID, %WATCH-PROC-ID%).
 
Примеры:
 
\ имя процесса
PROC-EXIST: "notepad.exe"
\ маска имени процесса
PROC-EXIST: "notepad*"PROC-EXIST: "*pad.exe"
\ маски имени процесса с учетом пути к исполняемому файлу
PROC-EXIST: "*\notepad*"
PROC-EXIST: "c:\*\notepad.exe"
\ регулярное выражение
PROC-EXIST: "/(note)|(word)pad.exe/i"
\ идентификатор процесса
PROC-EXIST: "1116"PROC-EXIST: "%WATCH-PROC-ID%"PROC-EXIST: "%my_proc_id @%"
 
 

Цитата:
Также интересно, можно ли несколько действий, наприер, запуск нескольких  
программ, объединить в одну задачу?  

 
START-APP: 1.exe
START-APP: 2.exe
\ etc

Всего записей: 148 | Зарегистр. 19-06-2002 | Отправлено: 12:40 08-06-2003
z_IFIR



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
strauss
Не работает
Вот например такой скрипт:
 
WatchConnect
Rule: PROC-EXIST: "TOTALCMD.EXE" NOT
Action:
StartIn: "C:\Program Files\totalcmd\"  
ShowNormal   NormalPriority
START-APP: C:\Program Files\totalcmd\TOTALCMD.EXE
 
 
TOTALCMD все равно запускается, вне завичсимости от того, выполняется он уже или нет...
 
 
Добавлено
strauss
Да, забыл сказать, этот скрипт я тестирую вручную. Но думаю, суть от этого не изменится...
 

Цитата:
START-APP: 1.exe  
START-APP: 2.exe  

 
А так можно:
 
WatchConnect  
Rule: PROC-EXIST: "1.EXE" NOT  
Action:  
StartIn: "C:\Program Files\totalcmd\"  
ShowNormal   NormalPriority  
START-APP: C:\Program Files\totalcmd\1.EXE  
Rule: PROC-EXIST: "2.EXE" NOT  
Action:  
StartIn: "C:\Program Files\totalcmd\"  
ShowNormal   NormalPriority  
START-APP: C:\Program Files\totalcmd\2.EXE
\ etc


----------
in суслик we trust!

Всего записей: 1617 | Зарегистр. 13-06-2002 | Отправлено: 12:55 08-06-2003
strauss

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
z_IFIR
 

Цитата:
Да, забыл сказать, этот скрипт я тестирую вручную. Но думаю, суть от этого не изменится...  

 
Дока, Запуск задачи:
 
запуская задачу вручную, помните, что тем самым вы принудительно отменяете все условия запуска (Time:, Rule:, Watch*), определенные в задаче. Указание "выполнить задачу вручную" имеет безусловный приоритет над всеми остальными условиями!
 

Цитата:
А так можно:  
 
WatchConnect  
Rule: PROC-EXIST: "1.EXE" NOT  
Action:  
StartIn: "C:\Program Files\totalcmd\"    
ShowNormal   NormalPriority  
START-APP: C:\Program Files\totalcmd\1.EXE  
Rule: PROC-EXIST: "2.EXE" NOT  
Action:  
StartIn: "C:\Program Files\totalcmd\"    
ShowNormal   NormalPriority  
START-APP: C:\Program Files\totalcmd\2.EXE  
\ etc  

 
нет, но можно так:
 

Код:
 
WatchConnect
Action:
PROC-EXIST: "1.exe" 0=
IF
START-APP: 1.exe
THEN
PROC-EXIST: "2.exe" 0=
IF
START-APP: 2.exe
THEN
 

 
тогда, кстати, и "вручную" будет корректно работать. Может, пора в доку заглянуть?
 
CU
VK

Всего записей: 148 | Зарегистр. 19-06-2002 | Отправлено: 13:40 08-06-2003
z_IFIR



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
strauss

Цитата:
Может, пора в доку заглянуть?  

Да, конечно. Извини за тупые вопросы. Спасибо.

----------
in суслик we trust!

Всего записей: 1617 | Зарегистр. 13-06-2002 | Отправлено: 14:12 08-06-2003
z_IFIR



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
strauss
Уже не тупой вопрос
 
Когда я завершаю командой KILL какой-то процесс, то если у него в трее
сидела иконка, то она не исчезает по завершении процесса, а остается, пока
не наведешь на нее мышку. Можно ли как-то с этим справится, т.е. заставить иконку
"исчезать" одновременно с завершение процесса? (ось WinME)

----------
in суслик we trust!

Всего записей: 1617 | Зарегистр. 13-06-2002 | Отправлено: 23:54 09-06-2003
strauss

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
z_IFIR
 
Можно. Скачай последнюю бету (1.89b6) и используй слово TRAY-REFRESH после KILL
 
CU
VK

Всего записей: 148 | Зарегистр. 19-06-2002 | Отправлено: 00:15 10-06-2003
volodyalipkin



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nnCron 1.89 beta 6
Изменения:  
 
+ новое слово: TRAY-REFRESH - удаляет из системного трея "залипшие" иконки;
+ новое слово: WatchRegistryKey: "key_path" для слежения за ключами в Registry. (Доступные модификаторы: REG-CHANGE-NAME, REG-CHANGE-ATTRIBUTES, REG-CHANGE-LAST-SET, REG-CHANGE-SECURITY, WatchSubtree);
* исправлена ошибка в системе логирования;
* исправлена ошибка в плагине http.spf;

Всего записей: 771 | Зарегистр. 12-10-2002 | Отправлено: 01:22 10-06-2003
z_IFIR



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
strauss
Спасибо. Однако мой вопрос получился довольно актуальным
 
А вот еще: ставлю событие на комбинацию клавиш (напр. ctrl-alt-z), и по первому нажатию скрипт не запускается, только по второму. Что это - мой глюк?..

----------
in суслик we trust!

Всего записей: 1617 | Зарегистр. 13-06-2002 | Отправлено: 09:58 11-06-2003
strauss

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
z_IFIR
 
пока не понятно о чем речь. может, первый раз ты нажимаешь шорткат, когда nnCron еще не успел перечитать кронтабы? Вроде, все запусается нормально, похожих баг-репортов я не получал.
 
CU
VK

Всего записей: 148 | Зарегистр. 19-06-2002 | Отправлено: 14:30 11-06-2003
z_IFIR



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
strauss
у меня есть скрипт, который звонит в инет,запускает проги и т.д., так вот, когда я жму комбинацию первый раз, nncron вообще никак не реагирует, а когда жму еще раз - скрипт запускается...
 
Добавлено
strauss
а сейчас тестю - все работает...
 
У меня есть подозрение, что просто скрипт я написал кривой - я еще толком не въехал в синтаксис, и у меня вся программа на сплошных if...then .  
 
А вообще, подпрограммы на форте можно как-нибудь выделять (типа как в паскале begin...end или в си {})?

----------
in суслик we trust!

Всего записей: 1617 | Зарегистр. 13-06-2002 | Отправлено: 15:20 11-06-2003 | Исправлено: z_IFIR, 15:25 11-06-2003
strauss

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
z_IFIR
 
Дока - работа с программой - nnCron и язык программирования Форт
 
CU
VK

Всего записей: 148 | Зарегистр. 19-06-2002 | Отправлено: 15:41 11-06-2003
z_IFIR



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
strauss
Посмотри пожалуйста, где в скрипте ошибка:

Цитата:
 
#( интернет-тест
WatchHotKey: "^@z"
Action:
 
CASE
ONLINE? NOT OF
 
PROC-EXIST: "outpost.exe"
 
IF
 
KILL: outpost.exe
KILL: spampal.exe
KILL: AdMunch.exe
KILL: IDMan.exe
 
TRAY-REFRESH  
 
ELSE
 
RASUser: "plog"
                RASPassword: "pas"
                DIAL: "рол" 2 5
 
PROC-EXIST: "outpost.exe" 0=  
IF  
START-APP: C:\Program Files\Agnitum\Outpost Firewall 1.0\outpost.exe
THEN

PROC-EXIST: "spampal.exe" 0=  
IF  
START-APP: C:\Program Files\SpamPal\spampal.exe
THEN

PROC-EXIST: "AdMunch.exe" 0=  
IF  
START-APP: C:\Program Files\Ad Muncher\AdMunch.exe
THEN
 
PAUSE: 1000

PROC-EXIST: "opera.exe" 0=  
IF  
START-APP: C:\Program Files\Opera7\opera.exe
THEN

PAUSE: 3000

PROC-EXIST: "thebat.exe" 0=  
IF  
START-APP: C:\Program Files\The Bat!\thebat.exe
THEN
 
THEN
 
ENDOF
 
ONLINE? OF
 
HANGUP: "рол"
 
KILL: outpost.exe
KILL: spampal.exe
KILL: AdMunch.exe
KILL: IDMan.exe
 
TRAY-REFRESH
ENDOF
ENDCASE
)#
 

 
Выдается следующее сообщение: "Ошибка стека в Action:".
 
Добавлено
я думаю, я неправильно использую синтаксис case..of

----------
in суслик we trust!

Всего записей: 1617 | Зарегистр. 13-06-2002 | Отправлено: 18:11 11-06-2003
WildCat



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
z_IFIR
А нафига ты вообще CASE используешь? Ведь всего-то одно условие.

Всего записей: 883 | Зарегистр. 16-10-2001 | Отправлено: 18:26 11-06-2003
strauss

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
z_IFIR
 
Ты просто не понял, как работает CASE. Если ты хочешь использовать CASE, то твой пример надо переписать примерно так:
 

Код:
 
#( test_case
NoActive
Action:
ONLINE?
CASE
    TRUE OF
        \ ...
        MSG: "Online"
    ENDOF
    FALSE OF
        \ ...
        MSG: "Offline"
    ENDOF
ENDCASE
)#
 

 
CU
VK

Всего записей: 148 | Зарегистр. 19-06-2002 | Отправлено: 19:09 11-06-2003
z_IFIR



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
strauss
Да я уж потом понял, что ступил, только я думал, что будет звучать так:

Цитата:
#( test_case  
NoActive  
Action:  
CASE ONLINE?  
    TRUE OF  
...
)#  

 
Трудно привыкнуть к предусловиям...
 
WildCat
А потому что так мне нужно было бы использовать if в такой форме:

Цитата:
if (условие1) and (условие2) then ...

но не знаю, как записать это на Форте

----------
in суслик we trust!

Всего записей: 1617 | Зарегистр. 13-06-2002 | Отправлено: 00:18 12-06-2003
strauss

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
z_IFIR
 

Цитата:
но не знаю, как записать это на Форте  

 
как это делать описано в доках (работа с программой - задача - условия запуска задачи (Rule))
 
CU
VK
 

Всего записей: 148 | Зарегистр. 19-06-2002 | Отправлено: 00:32 12-06-2003
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99

Компьютерный форум Ru.Board » Компьютеры » Программы » nnCron-Планировщик с поддержкой скриптового языка
Widok (29-01-2008 15:38): лимит страниц. продолжаем здесь


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru