karahti/karahti

54 lines
838 B
Plaintext
Raw Normal View History

2020-07-02 07:23:20 +00:00
#!/usr/bin/env bash
has() {
if (( $# )); then
hash "$1" 2>/dev/null
else
return 1
fi
}
2020-07-06 04:27:31 +00:00
for prog in curl tail; do
2020-07-02 07:23:20 +00:00
if ! has "$prog"; then
2020-07-06 04:27:04 +00:00
printf "please install %s\n" "$prog" >&2
2020-07-02 07:23:20 +00:00
exit 1
fi
done
declare -A opts
while (( $# )); do
case $1 in
--*=*)
key=${1#--} key=${key%%=*}
val=${1#--"$key"=}
opts[$key]=$val
;;
--no-*)
opts[${1#--no-}]=false
;;
--)
shift
break
;;
--*)
opts[${1#--}]=true
;;
*)
break
;;
esac
shift
done
2020-07-14 22:41:17 +00:00
lang=${opts[lang]:-auto} lang=${lang,,}
2020-07-06 04:27:04 +00:00
expiry=${opts[expire]}
url=${opts[url]:-https://p.ahti.space/nanopaste-get.cgi}
tail -n +1 -- "$@" | curl -sSA karahti/1.0 -w %{redirect_url} \
2020-07-17 20:30:23 +00:00
--data-urlencode paste_content@- -d "language=$lang" -d "expiry=$expiry" \
2020-07-06 04:27:04 +00:00
"$url"
2020-07-02 07:23:20 +00:00
2020-07-02 07:25:40 +00:00
printf "\n"