-- Leo's gemini proxy

-- Connecting to git.thebackupbox.net:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini

repo: uritools
action: blob
revision:
path_from: getsrv
revision_from: refs/heads/master:
path_to:
revision_to:

git.thebackupbox.net

uritools

git://git.thebackupbox.net/uritools

blob of:

uritools

/ getsrv

refs/heads/master:/getsrv
 #!/usr/bin/env bash
 if [ "_$1" = '_-a' ];then
   head="uniq"
   shift
 else
   head="head -n1"
 fi
 record="_$1._$2.$3"
 shift 3
 if [ "_$*" != "_" ];then
   filter='grep -vF "'"$(printf "%s\n" "$*" | tr ' ' '\n')"'"'
 else
   filter=cat
 fi
 if which host >/dev/null;then
   host -t SRV "$record" | cut '-d ' -f5-
   #echo "after host" >&2
 elif which dig >/dev/null;then
   dig +short -t SRV "$record"
   #echo "after dig" >&2
 else
   echo "how am I supposed to get a srv record without dig or host? giving up." >&2
   exit 1
 fi | grep '^[0-9][0-9]* [0-9][0-9]*' \
   | sort -rn \
   | rev \
   | cut -b2- \
   | rev \
   | awk '{print $1, $2, $4":"$3}' \
   | eval "$filter" \
   | awk '{if(NR==1){D=$1}if(D==$1)print $0}' \
   | cut '-d ' -f2- \
   | awk '{for(i=0;i<=$1;i++) {print $0} }' \
   | cut '-d ' -f2- \
   | shuf 2>/dev/null \
   | head -n1 \
 ## that last pipeline tries to get pretty close to printing a properly weighted response, but not perfect.

-- Response ended

-- Page fetched on Sun Jun 2 18:52:26 2024