Advice from Linux guru needed

Alex Rice alex at mindlube.com
Thu Jan 8 12:18:35 EST 2004


On Jan 8, 2004, at 9:07 AM, jbv wrote:

> Hi folks,
>
> I will have MC (or Rev) CGI running on a Linux server
> with Apache.
> I need to trigger a script at fixed times (say every 24 hrs)
> and don't see any other solution than somehow configuring
> the server to do it.

[on-list, because I think this kind of thing is likely to be useful to 
other Rev programmers. But I am no guru.]

I would log into the Linux server via secure shell (ssh) and setup a 
crontab script (see below).

But if you don't have shell account access on the server, then you 
could setup a CGI script that can be started by a HTTP URL, and then 
make some utility to periodically hit that URL from another computer, 
to do the work as a side effect. The drawback about that approach is 
that often the a server config will put time, memory or cpu limits on a 
CGI script.

Instead, on Unix, including Linux and Mac OS X, the tool for running 
stuff at periodically is called "crontab". Try these commands:

man crontab
man 5 crontab
crontab -l
crontab -e
export EDITOR=/usr/local/bin/youreditor
crontab -e

crontab -e puts you into the vi editor, by default. So you might want 
to set the EDITOR environment variable.

Here is a crontab I use to entry to run every night to download a file 
from another server:

59 1 * * * cd ~/Mindlube/mysql-dumps && curl -O 
ftp://alexr:xxxxx@mindlube.com/mysql.dump.gz

Notice the first 5 fields are time slots, and the rest of the line is a 
shell command. If the command is long, you can put it into a shell 
script file and just call it like ~/path/to/shell-script.sh

Unix uses shell scripting a lot, and crontab is a good chance to learn 
it.

Alex Rice <alex at mindlube.com> | Mindlube Software | 
<http://mindlube.com>

what a waste of thumbs that are opposable
to make machines that are disposable  -Ani DiFranco



More information about the use-livecode mailing list