Public feed #528802

recursive combine in shell

public text v1 · immutable
Raw Edit
·published 2007-06-01 18:01 UTC
rendered paste body

# Usage: domains_invent.sh <length> <suffix> <delay> <retries> <output> <tested>         

length=$1; suffix=$2; delay=$3; retries=$4; output=$5; tested=$6

while true; do

    # Create a name
    #
    name="$(create_names -u -C 0 $length).$suffix"

    # Make sure it's unique, if not keep trying
    #
    if ! grep -q "^$name$" "$tested" 2>/dev/null; then echo "$name" >> "$tested"; else continue; fi

    # If it's available, let us know
    #
    tries=0

    while ((tries<retries)); do

        result=$(whois "$name" 2>&1) || { ((tries++)); sleep 1; continue; }

        if grep -q 'No match' <<< "$result"; then echo "+ $name"; echo $name >> "$output"; else echo "- $name"; fi

        break

    done

    # If there's an error
    #
    if ((tries==3)); then echo "/ $name"; fi

    # Get some rest
    #
    sleep $delay

done