The following lock mechanism is used for preventing a cron
job from running concurrently:
#!/bin/bash
echo \"Before critical section\"
(
fl
flock -n -e 200 || exit 1
flock -n
tells you it failed by returning a failure code (something other than zero). You could instead do set -e
at the top of your script to make it exit when it sees any unchecked error.
Depending on your application, you might want to exit 0
to indicate success when the lock can't be acquired.