#!/bin/bash set -eu QUEUE_DIR="$1"; shift WAIT_UUID="" while true; do WAITING=false for UUID in "$@"; do if [[ -e "$QUEUE_DIR"/candidates/"$UUID" || -e "$QUEUE_DIR"/in-progress/"$UUID" ]]; then WAITING=true if [[ "$WAIT_UUID" != "$UUID" ]]; then WAIT_UUID="$UUID" echo "$(date -Iseconds) Waiting for: $UUID" fi break else echo "$(date -Iseconds) Complete: $UUID" shift fi done if ! $WAITING; then break fi sleep 1 done