COHERENT manpages
This page displays the COHERENT manpage for at [Execute commands at given time].
List of available manpages
Index
at -- Command Execute commands at given time at [ -v ] [ -c command ] time [ [ day ] week ] [ file ] at [ -v ] [ -c command ] time month day [ file ] at executes commands at a given time in the future. If the -c option is used, at executes the following command. If file is named, at reads the commands from it. If neither is given, at reads the standard input for commands. If time is a one-digit or two-digit number, at interprets it as specifying an hour. If time is a three-digit or four-digit number, at interprets it as specifying an hour and minutes. If time is followed by a, p, n, or m, at assumes AM, PM, noon, or midnight, respectively; otherwise, it assumes that time indicates a 24-hour clock. Note that you should not type a colon `:' in the time string. For example, the command at -c "time | msg henry" 1450 set the time command to be executed at 2:50 PM, and pipe time's output to the msg command, which will pass it to the terminal of user henry. The argument to the -c option had to be enclosed in quotation marks because it contains spaces and special characters; if this were not done, at would not be able to tell when the argument ended, and so would generate an error message. If you wish to pass information to a user's terminal with the at command, you must tell at to whom to send the information. The command at 250p commandfile sets the file commandfile to be read and executed at 2:50 PM. It is not necessary to use the file's full path name. Also, if the suffix p were not appended to the time, the file would be set to be read at 2:50 AM. The time set in at's command line is not the exact time that the command is executed. Rather, the daemon cron periodically executes the command /usr/lib/atrun to see if any commands have been scheduled commands to be executed at or before the present time. The frequency with which cron executes atrun determines the ``granularity'' of at execution times. To change when cron executes atrun, edit file /usr/spool/cron/crontabs/root. For example, the entry 0,5,10,15,20,25,30,35,40,45,50,55 * * * * /usr/lib/atrun sets /usr/lib/atrun to be executed every five minutes. Thus, the at command that is set, for example, to 2:53 PM will actually be executed at 2:55 PM. atrun executes specified commands when it discovers that the given time is past; therefore, at commands are executed even if the system is down at the specified time or if the system's time is changed. The at command has two forms, as shown above. In the first form, the option day names a day of the week (lower case, spelled out). If week is specified, at interprets the given time and day as meaning that time and day the following week. For example, the command at -c "time | msg henry" 1450 friday week executes time and sends its output to henry's terminal one week from Friday at 2:50 PM. In the second form given above, month specifies a month name (lower case, spelled out) and the number day specifies a day of the month. For example, the command at 1450 july 4 commandfile set the file commandfile to be read at 2:50 PM on July 4. If the -v flag is given, at prints the time when the commands will be executed, giving you enough information to plan for the execution of the command. For example, if it is now August 13, 1990, at 2:30 PM, and you type the command at -v -c "/usr/games/fortune | msg henry" 1435 at will reply: Tue Aug 13 14:35:00 indicating that the command will be executed five minutes from now. However, if you type at -v -c "/usr/games/fortune | msg henry" 1435 august 10 at will reply Sun Aug 10 14:35:00 1991 which indicates that on Sunday, August 10 of next year, at 2:35 PM, the COHERENT system will print a fortune onto your terminal. Should you create such a long-distance at file by accident, you can correct the error by simply deleting the file that encodes it from the directory /usr/spool/at. The file will be named after the time that it is set to execute, plus a unique two-character suffix, should more than one command be scheduled to run at the same time. For example, the file for the above command would be named 9108101435.aa. Finally, note that the current working directory, exported shell variables, file creation mask, user id, and group id are restored when the given command is executed. Example The following example invokes the command wall at 11 P.M. to confirm that the at command is working properly: at -c "echo 'testing to see if cron is working' | /etc/wall" 2300 Files /bin/pwd -- To find current directory /usr/lib/atrun -- Execute scheduled commands /usr/spool/at -- Scheduled activity directory /usr/spool/at/ yymmddhhmm.xx -- Commands scheduled at given time See Also at, commands, cron