57 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
mini-at                      http://www.lwithers.me.uk/projects/mini-at/
 | 
						|
========================================================================
 | 
						|
(c)2006, Laurence Withers, <l@lwithers.me.uk>.
 | 
						|
Released under the GNU GPLv2. See file COPYING or 
 | 
						|
http://www.gnu.org/copyleft/gpl.html for details.
 | 
						|
 | 
						|
Really Quick Instructions
 | 
						|
-------------------------
 | 
						|
 | 
						|
Install libiso8601 from http://www.lwithers.me.uk/projects/libiso8601/ .
 | 
						|
 | 
						|
To build: ./make.sh
 | 
						|
To install: ./make.sh install
 | 
						|
    (you might want to set PREFIX, by default it's /usr/local)
 | 
						|
 | 
						|
Rationale
 | 
						|
---------
 | 
						|
 | 
						|
Why this and not the standard `at' suite?
 | 
						|
 | 
						|
 1) Deals with non-monotonic time (unfortunately this means we have to
 | 
						|
    wake up once every so often to check if our time is too far out).
 | 
						|
 2) Simpler specification of timestamp (uses ISO8601).
 | 
						|
 3) Allows redirection of stdin from a file which is automatically
 | 
						|
    deleted.
 | 
						|
 4) Flexible user control through use of Uinx sockets.
 | 
						|
 | 
						|
Instructions
 | 
						|
------------
 | 
						|
 | 
						|
Run the programs with `--help' for a summary.
 | 
						|
 | 
						|
The daemon, mini-atd, must be run in the background. It is responsible for keeping track of commands
 | 
						|
to run and for running them at the appropriate time. The client, mini-at, uses a named socket to
 | 
						|
communicate with the daemon. By default, the daemon creates this socket at ``~/.mini-atd''.
 | 
						|
 | 
						|
The daemon can either run in the foreground (default) or in the background, with the `--daemon' or 
 | 
						|
`-d' option. You can change the name of the socket it uses, and the permissions on the socket. By
 | 
						|
default, the permissions are 0600. This means that only the user who ran the daemon (or root) can
 | 
						|
cause commands to be run. Commands are always run as the user who ran the daemon, so it is important
 | 
						|
to ensure that only trusted users have access to the socket.
 | 
						|
 | 
						|
The client uses a time specification in ISO8601. If you don't fully specify the time, it uses the
 | 
						|
earliest possible interpretation (so `2006' would give `2006-01-01T00:00:00'). If no time zone is
 | 
						|
specified, UTC is assumed, but it is best to explicitly indicate this with a Z.
 | 
						|
 | 
						|
If you wish to provide stdin other than /dev/null for a process, then you can specify a file on the
 | 
						|
client commandline using `-f' or `--file'. Note that this file will be deleted once the process is
 | 
						|
run. Alternatively, you can use `-f -' and pipe the content you want to the stdin of the client,
 | 
						|
which will store a copy in a temporary file.
 | 
						|
 | 
						|
If you wish to run one program but pretend that you've run it as something else, you can specify the
 | 
						|
argv0 option in the client. By default, this will just be a copy of the command name.
 | 
						|
 | 
						|
The client will copy its commandline arguments from the shell, and performs no processing on them.
 | 
						|
This means that it does not expand words or perform quoting.
 |