BEGIN { $|++; # We use a lockfile to prevent the script from being # called mutiple times simultaneously open $LockFH, "<", $0 or die "Failed to open myself for read! $!"; flock( $LockFH, LOCK_EX | LOCK_NB ) or die "This script is probably already running,". " can't obtain a lock on '$0' : $!"; }