[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

no way to compare when less than two revisions

Diferencias

Muestra las diferencias entre dos versiones de la página.


Próxima revisión
es:howtos:software:at [2019/02/28 01:42 (UTC)] – creado slackwarespanol
Línea 1: Línea 1:
 +<!-- Reviewed 2013-10-16 mfillpot -->
 +<!-- Add your text below. Start with a Headline (see button bar above). -->
 +====== at - Task Scheduling ======
 +**at** is a task scheduling tool which one-time enables tasks to be
 +performed on your system. The **batch** is
 +like **at** but permforms the one-time tasks when system load permits it, all
 +command and functions of **at** can be replicated by **batch** with the same
 +arguments.
 +
 +===== Related Commands =====
 +The following commands are included to monitor the **at** command:
 +  * **at** - The program used to submit a one-time task.
 +  * **atq** - The program used to review the queue of jobs submitted with **at**
 +.
 +  * **atrm** - The program used to remove jobs from the at queue.
 +
 +===== at Command Use =====
 +The **at** command can be issued to allow you to write a custom script or
 +point it to a pre-built script. In addition, the broad time specifications
 +allowed increase the complexity.
 +
 +The //-m// argument can be added to any command telling the daemon to mail
 +the user on the local system advising of the completion of the task.
 +
 +==== Scheduling an Existing Script ====
 +This example will tell the **at** application to run the script
 +///home/user/testscript.sh// at 4PM today and e-mail the user upon
 +completion.
 +<code>
 +user@darkstar$ at 16:00 -m -f /home/user/testscript.sh
 +</code>
 +
 +As you can see the //-f// argument means **file** as it points to the
 +file that will be executed.
 +
 +==== Scheduling a New Action ====
 +As seen below, when no file is specified the **at** application opens a
 +prompt for the user to enter the new script.
 +
 +<code>
 +user@darkstar$ at 19:40 -m
 +warning: commands will be executed using /bin/sh
 +at> ping -c 4 www.google.com
 +at> echo $?
 +at> <EOT>
 +job 4 at Sun Dec 30 19:40:00 2012
 +</code>
 +
 +The user will need to type the sequence of commands that will be issued
 +within the prompt, upon completion you close the prompt with the
 +<key>Ctrl</key>+<key>'d'</key>
 + 
 +The command above instructed **at** to ping google 4 times at 7:40PM, return
 +the application status and e-mail the results to the user.
 +
 +<note important>
 +Be sure to note the job number, it is the only visible identifier for the job
 +and must be referenced if you wish to remove the job later.
 +</note>
 +
 +==== Reviewing Queued Tasks ====
 +The command **atq** lists the user's pending jobs. The output is Job Number,
 +date, hour, queue and username.
 +<code>
 +user@darkstar$ atq
 +4 Sun Dec 30 19:40:00 2012 a user
 +</code>
 +
 +Once the task number has been noted you can review the commands that are
 +included in the job by issuing the command //at -c {jobnumber}//, and example is shown below.
 +
 +<code>
 +user@darkstar$ at -c 4
 +#!/bin/sh
 +# atrun uid=1000 gid=1000
 +# mail user 1
 +umask 22
 +....Environment Details....
 +cd /home/user || {
 +   echo 'Execution directory inaccessible' >&2
 +   exit 1
 +}
 +ping -c 4 www.google.com
 +echo $?
 +
 +</code>
 +
 +==== Removing Queued Tasks ====
 +The command **atrm** removes jobs from the pending queue, it does not present
 +any confirmation that the job is removed so it may be advisable to run
 +**atq** after **atrm** to confirm the job has been removed.
 +<code>
 +user@darkstar$ atrm 4
 +</code>
 +
 +====== Further Resources ======
 +  * [[http://unixhelp.ed.ac.uk/CGI/man-cgi?at|at manual page]]
 +  * [[http://www.brunolinux.com/02-The_Terminal/The_at_Command.html|BrunoLinux]]
 +  * [[http://sathyaphoenix.wordpress.com/2009/01/18/using-at-command-to-schedule-jobs-in-linux/]]
 +
 +
 +====== Sources ======
 +
 +<!-- If you copy information from another source, then specify that source -->
 +<!--  * Original source: [[http://www.linux.com/learn/tutorials/261878-intro-to-
 +slackware-package-management|Linux.com]] -->
 +
 +<!-- Authors are allowed to give credit to themselves! -->
 + * Originally written by [[wiki:user:mfillpot | mfillpot]]
 +
 +<!-- Please do not modify anything below, except adding new tags.-->
 +<!-- You must also remove the tag-word "template" below. Otherwise your page wil
 +l not show up in the Table of Contents -->
 +{{tag>howtos task_scheduling author_mfillpot}}
  
 es:howtos:software:at ()