AT(1) AT(1) НАЗВАНИЕ at - планирование выполнения команд в определенное вре- мя СИНТАКСИС |at время [дата] [+задержка] | |at -r идентификатор_задания ... | |at -l [идентификатор_задания ...] ОПИСАНИЕ Команда at в первом из приведенных вариантов читает со стандартного ввода задание, выполнение которого плани- руется на указанное время. Смысл опций двух других ва- риантов команды at таков: -r Удалить задания, запланированные ранее с помощью at или batch(1), по идентификаторам_заданий. Иден- тификаторы сообщаются командами at и batch. Их можно узнать также по команде at -l. Только супер- пользователь может удалять чужие задания. -l Вывести информацию о запланированных заданиях по идентификаторам_заданий. Если идентификаторы не указаны, выдается список всех заданий, запланиро ванных пользователем и еще не выполненных. Если стандартный вывод и стандартный протокол не пере- назначены, то весь вывод запланированных команд пересы- лается пользователю по почте. Переменные окружения shell'а, текущий каталог, маска режима создания файлов и максимальный размер файлов [см. umask(1) и ulimit(1)] сохраняются, то есть задание выполняется в том же окру- жении, том же каталоге и т.д. Дескрипторы открытых фай- лов, прерывания и приоритет теряются. Пользователю разрешается выполнять команду at только при условии, что его имя встречается в файле /usr/lib/ cron/at.allow. Если этого файла не существует, то про- веряется файл /usr/lib/cron/at.deny, для того чтобы уз- нать, не запрещен ли пользователю доступ к at. Если оба файла отсутствуют, то только суперпользователю разреше но планировать выполнение задания. Если файл at.deny пуст, а at.allow отсутствует, то эти действия могут вы полнять все. Файлы at.allow и at.deny содержат по одно- му имени в строке. Модифицировать эти файлы может толь- ко суперпользователь. Время может быть указано 1, 2 или 4 цифрами. Если время состоит из одной или двух цифр, то оно обозначает часы; четырехзначное число обозначает часы и минуты. Время также может быть задано как два числа, разделенные дво еточием, что понимается как часы:минуты. Могут быть до бавлены суффиксы am (до полудня) или pm (после полуд- ня), в противном случае часы указываются от 0 до 23. Если необходимо указать время по Гринвичу, то можно до- бавить суффикс zulu. Распознаются специальные имена noon (полдень), midnight (полночь), now (сейчас), и next (следующий). Дата может быть указана двумя способами: во-первых, в виде названия месяца, за которым следует число [и, мо- жет быть, год (через запятую)], а во-вторых, как день недели (полностью или сокращенный до 3 букв). Распозна ется два специальных "дня" today (сегодня) и tomorrow (завтра). Если дата не задана, то предполагается сегод няшняя дата, если указанное время больше, чем текущее, и завтрашняя, если меньше. Если заданный месяц меньше, чем текущий и год явно не задан, то предполагается, что имеется в виду следующий год. Дополнительная задержка представляет собой просто чис- ло, за которым следует одно из следующих слов: minutes (минуты), hours (часы), days (дни), weeks (недели), months (месяцы), или years (годы). Можно указывать еди- ницу измерения и без числа, например at now +minutes. Далее приведены примеры корректных команд: |at 0815am Jan 16 |at 8:15am Jan 16 |at now +1 day |at 5 pm Friday Команда at выдает идентификатор задания и запланирован- ное время его выполнения в стандартный протокол. ПРИМЕР Чтобы задание могло снова себя запланировать, следует вызвать at из shell-файла (назовем его sfile), включив в файл текст такого вида: |echo "sh sfile" | at 1900 thursday next week ФАЙЛЫ /usr/lib/cron Основной каталог команд, свя занных со временем. /usr/lib/cron/at.allow Список пользователей, которым разрешено выполнять команды at и batch. /usr/lib/cron/at.deny Список пользователей, которым запрещено выполнять команды at и batch. /usr/lib/cron/queuedefs Информация о планировании. /usr/spool/cron/atjobs Область накопления вывода. СМ. ТАКЖЕ batch(1), mail(1), sh(1), ulimit(1), umask(1). cron(1M) в Справочнике администратора. ДИАГНОСТИКА Сообщается о различных синтаксических ошибках и некор- ректном времени, а также о том, что пользователь не имеет права выполнять команду at. СЮРПРИЗЫ Попытка выполнить команду at now приводит к сообщению |at: too late (слишком поздно).