#!/usr/bin/env bash # Sends file(s) or stdin to http://sprunge.us set -e usage() { more <&2 echo "$OPTARG requires an argument" usage exit 1 ;; esac done shift $((OPTIND-1)) if (($# == 0)) && [[ -t 0 ]]; then >&2 echo "Nothing in stdin and no files specified!" >&2 usage exit 1 fi # Naive lang detection from file extension [[ "$1" = *.* && -z "$lang" ]] && lang="?${1##*.}" # Read from stdin or read file(s) url=$(sprunge $1) # Assemble URL+langstr and send to clipboard printf "%s%s" "$url" "$lang" | pbcopy # Show URL to interactive users [[ -t 0 ]] && pbpaste