From 927b681691b293afbb798a65d4340446e7f6fb6c Mon Sep 17 00:00:00 2001 From: Calvin Morrison Date: Tue, 8 Apr 2014 12:30:43 -0400 Subject: add lock --- src/lock | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 src/lock (limited to 'src') diff --git a/src/lock b/src/lock new file mode 100644 index 0000000..22191fe --- /dev/null +++ b/src/lock @@ -0,0 +1,28 @@ +lock() { + + if [[ -f "$1" ]]; then + echo "$1 is not a lock directory." + exit 1 + fi + + if mkdir "$1" &>/dev/null; then + echo "lock $1 created" >&2 + else + echo "lock $1 found, waiting for unlock" >&2 + while true; do + sleep 2; + if [[ ! -d "$1" ]]; then + return + fi + done + fi; + +} + +if [[ "$#" -eq "1" ]]; then + lock "$1" +else + echo "please supply one argument: the lock directory." + exit 1 +fi + -- cgit v1.2.1