#!/bin/sh # WTFPL vadoli_help() { echo "Usage: vadoli COMMAND [options...]" echo "Command line client for http://vado.sh" echo "Commands:" echo " short, s [url,path] Short a url" echo " update, edit, u [url,path,token*] Update url" echo " query, q [url] Query url" echo " list, ls [no-query*] List and queries all your urls (slow as hell)" echo echo "* optional" } vadoli_update(){ url=$1 path=$2 token=$3 if [[ "$token" = "" ]] then token=$(cat ~/.vadoli | grep "http://$path.vado.li" | rev | cut -d : -f 1 | rev) echo $token $path if [[ "$token" = "" ]] then echo "Token not found plz provide token" exit 1 fi fi curl -d "path=$path&url=$url&token=$token" --silent -X POST 'http://vado.li/' } vadoli_short(){ url=$1 path=$2 token=$(curl -d "path=$path&url=$url&token=$token" --silent -X POST 'http://vado.li/' | grep 'modification url' | rev | cut -d "'" -f 2 | cut -d '/' -f 1 | rev) if [[ "$token" = "" ]] then echo "Something went wrong" else echo "http://$path.vado.li:$token" >> ~/.vadoli echo "http://$path.vado.li created!" echo "Modification url is https://vado.li/$path/$token" fi } vadoli_query(){ url=$1 echo $url | grep -Eoq '(http|https)://[^"]*.vado.li' if [[ $? -eq 1 ]] then url="http://$1.vado.li" fi real_url=$(curl --silent -i "$url" | grep "Location:" | cut -d ' ' -f 2-) if [[ "$real_url" = "http://vado.li/404" ]] then echo "Not found!" else echo "$url -> $real_url" fi } vadoli_list(){ while read -r u || [[ -n "$u" ]] do url=$(echo $u | rev | cut -d ':' -f 2- | rev) if [[ "$1" = "no-query" ]] then echo "http://$url.vado.li" else vadoli_query $url fi done < ~/.vadoli } case $1 in short|s) vadoli_short $2 $3 ;; update|edit) vadoli_update $2 $3 $4 ;; query|q) vadoli_query $2 ;; list|ls) vadoli_list ;; *) vadoli_help ;; esac