nnCron — планировщик задач для операционной системы Windows, обладающий широкими возможностями автоматизации. В программу встроен собственный скриптовый язык, основанный на языке Forth, и представляющий собой расширение отечественной форт-системы SP-Forth[3].
Разработан программистом из Пскова Николаем Немцевым. Первая версия появилась в середине 2000 года. Первоначально распространялся с поддомена сайта eservnemtsev.eserv.ru[4]. В конце 2002 года проект переехал на собственный сайт[5].
Автором распространяется также облегчённая, бесплатная для всех версия планировщика nnCron LITE[6].
Исходные коды программы свободно доступны[7].
Особенности
Поверх форт-системы, в числе прочего, в nnCron реализован простой DSL, обратно совместимый с cron-форматом. Программа может работать под управлением текстовых кронтаб-файлов[8]. Имеется GUI-оболочка из которой можно удалять/добавлять/редактировать/планировать и запускать задачи, менять настройки программы. При написании заданий можно использовать все возможности форт-системы, что делает nnCron чрезвычайно гибким и расширяемым.
nnCron способен запускать в указанное время программы (в том числе как сервисы и/или от имени указанных пользователей), открывать документы[9] и выводить сообщения-«напоминалки», прерывать работу любых запущенных процессов[10], а также:
- выключать[11] или «усыплять» компьютер,[12] а также «будить» его для запуска задачи[13];
- управлять указанными окнами[14]: отображать/скрывать/закрывать/удалять/сворачивать/разворачивать и прятать в системный трей[15];
- выводить на экран и в лог-файл различные сообщения, делать запросы к пользователю на выполнение тех или иных действий[16];
- работать с буфером обмена, файлами и реестром[17];
- эмулировать ввод с клавиатуры[18] и операции с мышкой[19];
- звонить и класть трубку;
- воспроизводить аудиофайлы, а также звуки заданной продолжительности и частоты через встроенный динамик (см. beep)[20];
- синхронизировать системное время по NTP[21];
- запускать JScript и VBScript-сценарии[22];
Вышеперечисленные задачи могут также запускаться при возникновении определённых событий, например, при старте системы, изменении каталога (или файла), запуске/завершении определённого процесса, нажатии клавиатурной комбинации, создании определённого окна, вставке компакт-диска в привод и др. Возможен запуск одной задачи из другой задачи, однако без самостоятельного написания соответствующего скрипта не обойтись.
Дополнительные возможности могут быть добавлены путём подключения плагинов, написанных на SP-Forth[23].
Программа имеет так называемый «непотопляемый режим», позволяющий ей автоматически перезапускаться в случае фатальных ошибок[24]. Это достигается путём запуска дополнительной службы/процесса nnguard.exe.
nnCron позволяет не только выполнять некоторые действия в определённые моменты времени, но и отслеживать файлы, флаги, окна, процессы, движения мыши, время просто́я компьютера, горячие клавиши, выход в онлайн/офлайн, появление диска в дисководе, наличие хоста в сети (пинг), количество свободного места на диске и т. д.
Примечания
- ↑ 12https://nncron.ru/help/EN/working/crontab.htm
- ↑Лицензия на использование и распространение nnCron. Дата обращения: 3 августа 2011. Архивировано 7 августа 2011 года.
- ↑nnCron и язык программирования Форт. Дата обращения: 7 августа 2011. Архивировано 7 ноября 2011 года.
- ↑Валерий Кондаков.Автоматизация по-малому // Компьютерра. — 2002. — 8 октября. (Дата обращения: 2 июня 2018)
- ↑nnCron (знаменитый планировщик, написанный Николаем Немцевым на SPF) переехал на собственный одноименный домен. Дата обращения: 7 августа 2011. Архивировано 4 марта 2016 года.
- ↑nnCron LITE - прост, но не простакАрхивная копия от 5 августа 2012 на Wayback Machine, Виктор Куц, 09.09.2005, comprice.ru
- ↑nnSoft: скачать. Дата обращения: 7 августа 2011. Архивировано 16 августа 2011 года.
- ↑Кронтаб-файл. Дата обращения: 7 августа 2011. Архивировано 24 июля 2011 года.
- ↑Запуск приложений и открытие документов. Дата обращения: 7 августа 2011. Архивировано 12 октября 2011 года.
- ↑Работа с процессами, KILL. Дата обращения: 7 августа 2011. Архивировано 12 октября 2011 года.
- ↑Урок 2: выключаем компьютер в указанное время. Дата обращения: 7 августа 2011. Архивировано 9 декабря 2011 года.
- ↑Включение/выключение компьютера, энергосбережение. Дата обращения: 7 августа 2011. Архивировано 9 декабря 2011 года.
- ↑Плагин wakeup.spf. Дата обращения: 7 августа 2011. Архивировано 5 августа 2011 года.
- ↑Работа с окнами. Дата обращения: 7 августа 2011. Архивировано 12 октября 2011 года.
- ↑Плагин win2tray.spf. Дата обращения: 7 августа 2011. Архивировано 4 октября 2011 года.
- ↑Сообщения, напоминания, подсказки. Дата обращения: 7 августа 2011. Архивировано 22 сентября 2011 года.
- ↑Работа с реестром (registry). Дата обращения: 7 августа 2011. Архивировано 9 декабря 2011 года.
- ↑Эмуляция ввода с клавиатуры. Дата обращения: 7 августа 2011. Архивировано 1 ноября 2011 года.
- ↑Эмуляция движений мыши. Дата обращения: 7 августа 2011. Архивировано 9 декабря 2011 года.
- ↑Работа со звуком. Дата обращения: 7 августа 2011. Архивировано 9 декабря 2011 года.
- ↑Плагин timesync.spf. Дата обращения: 7 августа 2011. Архивировано 4 октября 2011 года.
- ↑Встраивание JScript и VBScript. Дата обращения: 7 августа 2011. Архивировано 11 октября 2011 года.
- ↑Общие сведения о плагинах. Дата обращения: 7 августа 2011. Архивировано 9 декабря 2011 года.
- ↑Запуск и остановка nnCron. Непотопляемый режим. Дата обращения: 7 августа 2011. Архивировано 25 августа 2011 года.