We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
1714 bytes
1714 graphemes
78 linefeeds (\n)
#!/bin/sh -eu
#
# Utility to interact with the Pasticcio pastebin.
#
PASTHOST=${PASTHOST:="https://cvcv.cz"}
usage() {
printf "%s\\n" "Usage: ${0##*/} [options...] [FILE]"
printf "\\t%s\\n" "-h: print this help."
printf "\\t%s\\n" "-p: create a paste."
printf "\\t%s\\n\\n" "-P: make it public."
printf "\\t%s\\n" "FILE: file to submit. If empty or '-', read stdin."
printf "\\n"
printf "\\t%s\\n" "env:"
printf "\\t%s\\n" "PASTHOST: remote host. Default: cvcv.cz."
printf "\\n"
printf "\\t%s\\n" "example 1:"
printf "\\t%s\\n" "\\$ ${0##*/} -p \\$(which ${0##*/})"
printf "\\t%s\\n" "example 2:"
printf "\\t%s\\n" "\\$ echo \\"Maynard J. Keenan\\"|${0##*/} -p -"
}
submit_paste() {
curl \\
-X POST \\
-s \\
-D - \\
-o /dev/null \\
--data-urlencode rand_id_length=4 \\
--data-urlencode public="$make_it_public" \\
--data-urlencode paste_blob@"$1" \\
--no-buffer \\
"$PASTHOST/p/new" \\
2>/dev/null
}
create_paste=0
file_name="-"
make_it_public="n"
while getopts hpP flag
do
case $flag in
h) usage && exit 0 ;;
p) create_paste=1 ;;
P) make_it_public="y" ;;
*) usage && exit 1 ;;
esac
done
shift $(($OPTIND-1))
if [ $create_paste -ne 1 ]; then
# since we only have one option for now, we can fail.
usage
exit 1
fi
if [ $# -eq 1 ]; then
file_name="$1"
fi
if [ $create_paste -eq 1 ];then
resp=$(submit_paste "$file_name")
first_line=$(printf "%s" "$resp" | grep '^HTTP')
if printf "%s" "$first_line" | grep ' 302 ' >/dev/null; then
path="$( \\
printf "%s" "$resp" | \\
grep -i '^Location:' | \\
sed -n 's/^Location: \\(\\S*\\).*$/\\1/pi' \\
)"
printf "%s%s.txt\\n" "$PASTHOST" "$path"
else
printf "%s\\n" "$resp" >&2
exit 1
fi
fi