16+
ComputerPrice
НА ГЛАВНУЮ СТАТЬИ НОВОСТИ О НАС




Яндекс цитирования


Версия для печати

Модуль поиска не установлен.

nnCron LITE - прост, но не простак

09.09.2005

Виктор Куц

Одной из наименее приятных особенностей работы на компьютере, без всякого сомнения, является необходимость более или менее регулярного выполнения большого количества достаточно рутинных операций: резервировать наиболее важную информацию, дефрагментировать жесткие диски, очищать временные каталоги, подключаться к локальной сети и/или к Интернету и многое, многое другое.

Подавляющее большинство из этих операций можно и нужно автоматизировать, поэтому нет ничего удивительного в том, что еще со времен Windows 98 в состав дистрибутива всех своих ОС Microsoft включает специальную утилиту "Scheduler", в русской версии называемой "Планировщиком задач". С его помощью можно назначить запуск программы или открытие документа на наиболее удобное для пользователя время. К сожалению, этим его возможности и ограничиваются.

Но многим такой функциональности недостаточно - хороший планировщик просто обязан уметь учитывать многочисленные комбинации условий запуска, да и многих других дополнительных факторов, а для обеспечения должной гибкости использования он должен, как минимум, поддерживать программирование на одном из популярных скриптовых языков. Таким образом, идеальный планировщик должен быть не просто планировщиком, а планировщиком-скриптером-менеджером автоматизации, короче, настоящим "монстром", эффективно работать с которым по силам лишь избранным.

В принципе, так оно и есть. За одним исключением - крошечной утилиты nnCron LITE, написанной программистом из Пскова Николаем Немцевым. В ее основе лежит идеология популярной в мире UNIX-программы cron. nnCron позволяет создавать, редактировать и управлять самыми различными задачами с помощью простейших текстовых кронтаб-файлов, формат которых совместим с форматом кронтаб-файлов Unix-систем и освоить которые вполне по силам даже и неискушенному пользователю. В распоряжении более "продвинутых" имеется возможность использования регулярных выражений и скриптовых языков VBScript и JScript, ну а уж настоящие "гуру" могут позволить себе и "побаловаться" с программированием на языке высокого уровня Форт (SP-Forth).

К числу безусловных достоинств nnCron LITE следует отнести возможность ее запуска не только как обычного приложения, но и в качестве службы (сервиса) Windows NT/2000/XP. Она также умеет отслеживать и перезапускать просроченные задачи, задавать и использовать переменные окружения (Environment Variables), запускать плагины (скрипты произвольной сложности), написанные на языке программирования Форт.

Утилита работает под управлением Windows 95/98/ME/NT/2000/XP и совершенно не требовательна к ресурсам компьютера, она будет работать даже на самых слабых машинах, не оказывая отрицательного влияния на производительность. Косвенное свидетельство тому - размер системной памяти компьютера, "отъедаемой" запущенным сервисом nnCron LITE. Он никогда не превышает 200 - 300 Кбайт, а большую часть времени колеблется в районе 100-150 Кбайт.

Работа с nnCron LITE

В ходе инсталляции программы никакие системные настройки ОС не изменяются, файлы копируются только в выбранный пользователем каталог, а сам nnCron запускается вместе с системой как сервис "cron" (для Windows 2000/XP).

Удалить ранее установленный сервис можно, запустив расположенный в каталоге программы файл "uninstall_svc.bat", а снова установить его - файл "install_svc.bat". В том же каталоге находятся еще 2 командных файла - startcron.bat и stopcron.bat, с помощью которых можно или загрузить nnCron LITE в память компьютера, или выгрузить его оттуда.

Все настройки утилиты хранятся в файле "cron.ini", а текущие задачи - в кронтабах (файл cron.tab). При переустановке системы оба этих файла лучше сохранить, чтобы потом не пришлось настраивать программу заново.

Cron-формат

Cron.tab - самый обыкновенный текстовый файл, который может быть отредактирован в любом доступном текстовом редакторе.

Для запуска какого-либо приложения достаточно всего лишь указать время старта задачи (в cron-формате) и, через пробел, команду, которую следует выполнить:

<time_in_cron_format> <command>

Cron-формат состоит из шести полей, разделенных пробелами:

- Минуты - диапазон значений: 0 - 59;
- Часы - диапазон значений: 0 - 23;
- Дни месяца - диапазон значений: 1 - 31;
- Месяцы - диапазон значений: 1 - 12;
- Дни недели - диапазон значений: 1 - 7;
- Годы - если и используется, то крайне редко.

Любое из этих полей может содержать, помимо числового значения, еще и символ * (звездочка), означающий полный диапазон возможных значений (например, каждая минута, каждый час и т.д.).

Помимо одного значения, в каждом поле допускается использование списка значений (разделенных запятыми - 1,3,7) или интервал значений (через дефис, например: 1-5). В полях "Месяцы" и "Дни недели" можно вместо числовых значений использовать сокращенные до трех букв названия месяцев (Jan, Feb ... Dec) и дней недели (Mon, Tue ... Sun).

Например, если мы хотим запускать файл "Caldron" (расположенный по адресу C:\Program Files\Games\Caldron.exe), в полночь 13 числа любого месяца, если оно выпало на пятницу, то следует записать:

0 0 13 Fri * C:\Program Files\Games\ Caldron.exe

В первых четырех полях cron-формата также можно использовать еще и символ "?", означающий время старта nnCron.

Помимо традиционного UNIX-овского синтаксиса кронтабов, nnCron LITE предлагает пользователю несколько удобных расширений, позволяющих управлять сохранением информации в лог-файл (символ тильды '~' перед командой), запускать полноценные скрипты произвольной сложности, написанные на языке Форт (символ '!' перед командой), и управлять запуском "просроченных" задач.

Просроченная задача - это задача, которая должна была выполниться в запланированное время, но этого не произошло, потому что компьютер в этот момент был выключен или nnCron LITE не был загружен. Чтобы гарантировать запуск важных задач в таких непростых условиях, существует специальный синтаксис (символ @ перед полем времени в крон-формате), который позволяет запускать задачу в запланированное время или при первой же возможности, если в запланированное время задачу выполнить не удалось. При каждом перечитывании кронтаба, которое осуществляется при запуске системы или при любом обновлении файла "cron.tab", nnCron LITE проверяет - не появились ли "просроченные" задачи, и сразу запускает таковые, если их удалось обнаружить.

В качестве команды обычно используется имя исполняемого или батч-файла. Однако nnCron LITE предоставляет дополнительные возможности для тех, кто хорошо знает язык программирования SP-Forth, на котором, кстати, написан и сам nnCron LITE. Более того, утилита может работать и с достаточно сложными программами, написанными на этом языке и подключаемыми к nnCron LITE в качестве плагинов.

Настройки nnCron LITE

Все настройки nnCron LITE хранятся в текстовом конфигурационном файле "cron.ini", расположенном в каталоге программы. Здесь можно задать имя и формат отображения информации лог-файла nnCron LITE; установить приоритет и размер рабочего окна, запускаемого утилитой приложения; указать максимальное время (в часах и минутах), в течение которого может стартовать просроченная задача; а также "подключить" плагины (скрипты), написанные на языке Форт. После того как плагин подключен, его можно запускать непосредственно из nnCron LITE. Помимо этого в файле "cron.ini" прописывается ключ "YearField", разрешающий использовать дополнительное поле "Год" в кронтабе.

nnCron - "старший брат" nnCron LITE

Всем тем, кто уже "перерос" возможности nnCron LITE, стоит обратить внимание на nnCron. В отличие от своего "младшего брата", nnCron сочетает в себе функции планировщика и мощнейшего менеджера автоматизации рутинных компьютерных операций.

Полный перечень возможностей nnCron впечатляет. Он умеет:

- запускать произвольные программы как сервисы;

- запускать задачи "от имени" указанных пользователей;

- отслеживать и перезапускать просроченные задачи;

- выключать или "усыплять" компьютер в заданное время;

- "пробуждать" компьютер, чтобы запустить плановую задачу;

- выполнять любые операции с заданными окнами;

- выводить на экран и в лог-файл любые сообщения, в том числе и запросы на выполнение указанных действий;

- работать с буфером обмена, файлами и реестром;

- эмулировать клавиатурный ввод и операции с мышкой;

- "звонить" по телефону и разрывать соединение;

- подавать определенные сигналы через системный динамик;

- воспроизводить аудиофайлы;

- синхронизировать системное время;

- прерывать работу любых запущенных процессов или изменять их приоритет.

Кроме того, nnCron способен отслеживать файлы, флаги, окна, процессы, движения мыши, периоды простоя и степень загруженности памяти компьютера, определенные клавиатурные комбинации, вход в Интернет или выход из него, установку диска в накопитель, определять количество свободного места на дисках и многое другое... nnCron позволяет использовать в задачах скриптовые языки VBScript и JScript, а также регулярные выражения, выполнять произвольные программы на языке SP-Forth, расширяется за счет плагинов. Поскольку программа призвана выполнять важные и даже критические для системы задачи, в ней предусмотрено специальное средство для обеспечения повышенной "живучести" - так называемый "непотопляемый режим", обеспечивающий автоматический перезапуск nnCron после фатальных ошибок системы.

Для тех, кто не мыслит работу на компьютере без использования графического интерфейса, автор программы предусмотрел компактную графическую оболочку, из которой можно удалять/добавлять/редактировать и запускать различные задачи, а также менять настройки программы (см. рис.).

В nnCron встроено несколько дополнительных инструментов, еще больше расширяющих его и без того немалые возможности. Это, в первую очередь, утилита WinSpy, которая позволяет узнать текущие координаты мыши, а также выяснить класс объекта, над которым находится указатель мыши, получить информацию о координатах основного и дочернего окна. Вторая дополнительная утилита - Console - обеспечивает удобное интерактивное общение с nnCron на языке Форт.

Так же как и nnCron LITE, nnCron бесплатен для граждан стран бывшего СССР (при условии частного и некоммерческого использования). Размер дистрибутива nnCron - около 800 Кбайт (вместе с документацией). Скачать программы nnCron LITE и nnCron, а также получить дополнительную информацию о них можно на сайте
http://www.nncron.ru.



статьи
статьи
 / 
новости
новости
 / 
контакты
контакты