From 9e815c8faaf8ab03453b4841642ff64f89eed25c Mon Sep 17 00:00:00 2001 From: Florian Pritz Date: Sat, 23 Oct 2010 21:22:22 +0200 Subject: initial commit Signed-off-by: Florian Pritz --- fb | 161 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 161 insertions(+) create mode 100755 fb diff --git a/fb b/fb new file mode 100755 index 0000000..c4ee2f4 --- /dev/null +++ b/fb @@ -0,0 +1,161 @@ +#!/bin/sh +#---------------------------------------------------- +# Author: Florian "Bluewind" Pritz +# Contributor: Moritz Wilhelmy +# +# Licensed under WTFPL v2 +# (see COPYING for full license text) +# +#---------------------------------------------------- +# Dependencies: curl +# Optional: xclip +#---------------------------------------------------- + +VERSION="0.6.8" + +DELETE= +EXTENSION="" +GET= +TAR= +COMPRESS=0 +TAREXT=".tar" +TAROPTS="" +PASTEBIN="http://paste.xinu.at" +WARNSIZE=10485760 +USERAGENT="fb-client/$VERSION" +CLIPBOARD="" +EXITCODE=0 + +do_upload() { + local EXTRA="" + file="$1" + basefilename="`basename "$file"`" + basedirname="`dirname "$file"`" + if [ -d "$file" ]; then + cd "$basedirname" + tar $TAROPTS -cf "$TMPDIR/$basefilename$TAREXT" "$basefilename" + COMPRESS=0 + file="$TMPDIR/$basefilename$TAREXT" + fi + + if [ "$COMPRESS" == "1" ]; then + gzip -c "$file" > "$TMPDIR/$basefilename.gz" + file="$TMPDIR/$basefilename.gz" + elif [ "$COMPRESS" == "2" ]; then + xz -c "$file" > "$TMPDIR/$basefilename.xz" + file="$TMPDIR/$basefilename.xz" + fi + + if [ "$EXTENSION" ]; then + EXTRA="-F extension=$EXTENSION" + fi + TMPFILE=`mktemp "$TMPDIR/data.XXXXXX"` + if [ `stat -c %s "$file"` -gt "$WARNSIZE" ]; then + WARNSIZE=`curl -s "$PASTEBIN/file/get_max_size"` + if [ `stat -c %s "$file"` -gt "$WARNSIZE" ]; then + echo "Warning: Your upload is too big and would be rejected. Maximum size is: $WARNSIZE bytes. Skipping..." >&2 + EXITCODE=1 + return 1 + fi + fi + if ! curl -# -n -L -A $USERAGENT $EXTRA -F "file=@$file" "$PASTEBIN/file/do_upload" > $TMPFILE; then + EXITCODE=1 + return 1 + fi + sed '$d' $TMPFILE >&2 + URL=`tail -1 $TMPFILE` + echo $URL + CLIPBOARD="$CLIPBOARD $URL" +} + +read_stdin() { + if tty -s; then + echo "^C to exit, ^D to send" + fi + cat > "$1" +} + +help() { + cat </dev/null`" ] && echo -n $CLIPBOARD | nohup xclip >/dev/null 2>&1 + +exit $EXITCODE -- cgit v1.2.3-24-g4f1b