03-15-2009
Doesn't look like you're getting much response here.
I understand that launchd is intended to replace cron, among other things. And I haven't really looked at that aspect of launchd. I have created stuff that runs at startup with it.
What you are talking about has two components. One is the basic running things every 2 hours. If you've got that, then ok. I'd be inclined to just toss it in cron, because that still works.
The other aspect is how to deal with the previous instance still being running. If you create your own shell script, instead of directly running rsync, then you can do a couple of different things. One of the more common approaches is to implement a pid file. When the script runs, it checks to see if the pid file exists. If it does, the script terminates, with maybe a log or error message. If it doesn't it creates it. Then when it is done, it removes it.
So, something like
echo $$ > /var/run/runrsync.pid
would put the process id of the current script into that location.
Anyway, after the book keeping, the script would launch rsync.
Part of the reason I didn't respond sooner was that I don't know what facilities launchd has built in for managing this sort of thing. I could be giving you an outdated solution to something that launchd has solved more elegantly.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi All.
I have a script which has to be run periodically. The frequency of its run will be decided by a Database stored value PollRate.
e.g. If PollRate value is 300secs, then the script should be executed every 5 minutes, if it's 1500secs, it should execute every 15 minutes.
Is there... (5 Replies)
Discussion started by: rahulrathod
5 Replies
2. Shell Programming and Scripting
Hi ,
I am working on the following script . I want this script to run and scan the log file repeatedly after 3 hours. This script will run & scan just for the current date logs and after every 3 hours. Kindly advice what to add in this script for this purpose.
#!/bin/sh
diff common.log... (3 Replies)
Discussion started by: himvat
3 Replies
3. Shell Programming and Scripting
I am using Solaris 9. I wish to run my script every 1 minute inteval. Though i can run it using below entry in crontab.
* * * * /export/home/username/script/file_exist_&_run.sh
in short above script will check whether a specific file exist in a directory. If it found it will inovke another... (10 Replies)
Discussion started by: thepurple
10 Replies
4. UNIX for Dummies Questions & Answers
I have a script I want to run in the background, and I have looked it up but I am not exactly sure how to do. First of all to run it in the background do you have to put something in the script or is it just a command when you go to run it. I found this solution to it but once again I am not to... (2 Replies)
Discussion started by: mauler123
2 Replies
5. Shell Programming and Scripting
Help plz
Does any one have any idea how to compare interval ranges of 2 files.
finding 1-4 (1,2,3,4) of input2 in input1 of same key "a" values (5-10, 30-40, 45-60, 80-90, 100-120 ). Obviously 1-4 is not one of the range with in input1 a. so it should give out of range.
finding 30-33(31,32,33)... (1 Reply)
Discussion started by: repinementer
1 Replies
6. OS X (Apple)
Hi,
I'm trying to use launchd to detect whether certain ports are opened
and if they are then to take some appropriate action, e.g. close the
port or, worst case scenario, down the whole net connection. Apparently,
force closing a port is not possible without killing the offending binary so... (3 Replies)
Discussion started by: ASGR
3 Replies
7. Shell Programming and Scripting
Hello
I'm trying to find interval for packet IN/OUT for a gateway.
log looks like:
02.12.2011 16.28.29:200 PDU IN CI:424 TRID:200 ID:N/A EID:N/A EX:N/A PDU:0000001f0000000100000000000000c874746f700074746f70000034010100
02.12.2011 16.28.29:228 PDU OU CI:424 TRID:200 ID:N/A EID:N/A EX:ACK... (3 Replies)
Discussion started by: samer.odeh
3 Replies
8. UNIX for Dummies Questions & Answers
Ok, so I have been struggling with this for a few days and I think I need an explanation of a few things before I go any further. I'm not sure it's possible to do what I'm trying, so before I pull my hair out, here is what I'm doing:
I have written a program in LiveCode that sits on our... (2 Replies)
Discussion started by: nextyoyoma
2 Replies
9. Shell Programming and Scripting
Hi folks,
Im having trouble with an expect command in a shell script I use to back up mac os x servers. This one is being run on a 10.8.2 Server as part of a larger bash script. The script executes perfectly all the way through when triggered on the command line, but when launchd triggers it at... (4 Replies)
Discussion started by: rowie718
4 Replies
10. Shell Programming and Scripting
Hello,
Since I m new to shell, I had a hard time to sought out this problem.
I have a log file of a utility which tells that batch files are successful with timestamp. Given below is a part of the log file.
2013/03/07 00:13:50 Apache/1.3.29 (Unix) configured -- resuming normal operations... (12 Replies)
Discussion started by: rpm120
12 Replies
CORE(5) BSD File Formats Manual CORE(5)
NAME
core -- memory image file format
SYNOPSIS
#include <sys/param.h>
DESCRIPTION
A small number of signals which cause abnormal termination of a process also cause a record of the process's in-core state to be written to
disk for later examination by one of the available debuggers. (See sigaction(2).) This memory image is written to a file named by default
core.pid, where pid is the process ID of the process, in the /cores directory, provided the terminated process had write permission in the
directory, and the directory existed.
The maximum size of a core file is limited by setrlimit(2). Files which would be larger than the limit are not created.
The core file consists of the Mach-O(5) header as described in the <mach-o/loader.h> file. The remainder of the core file consists of vari-
ous sections described in the Mach-O(5) header.
NOTE
Core dumps are disabled by default under Darwin/Mac OS X. To re-enable core dumps, a privileged user must do one of the following
* Edit /etc/launchd.conf or $HOME/.launchd.conf and add a line specifying the limit limit core unlimited
* A privileged user can also enable cores with launchctl limit core unlimited
* A privileged user can also enable core files by using ulimit(1) or limit(1) depending upon the shell.
SEE ALSO
gdb(1), setrlimit(2), sigaction(2), Mach-O(5), launchd.conf(5), launchd.plist(5), sysctl(8)
HISTORY
A core file format appeared in Version 6 AT&T UNIX.
BSD
June 26, 2008 BSD