54 lines
838 B
Bash
Executable File
54 lines
838 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
has() {
|
|
if (( $# )); then
|
|
hash "$1" 2>/dev/null
|
|
else
|
|
return 1
|
|
fi
|
|
}
|
|
|
|
for prog in curl tail; do
|
|
if ! has "$prog"; then
|
|
printf "please install %s\n" "$prog" >&2
|
|
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
|
|
|
|
lang=${opts[lang]:-auto} lang=${lang,,}
|
|
expiry=${opts[expire]}
|
|
url=${opts[url]:-https://p.ahti.space/nanopaste-get.cgi}
|
|
|
|
tail -n +1 -- "$@" | curl -sSA karahti/1.0 -w %{redirect_url} \
|
|
--data-urlencode paste_content@- -d "language=$lang" -d "expiry=$expiry" \
|
|
"$url"
|
|
|
|
printf "\n"
|