From 358fd928982d8d529b0b13a9ef33fba5a0c7ed7e Mon Sep 17 00:00:00 2001
From: xero <x@xero.nu>
Date: Wed, 7 Jan 2015 22:30:37 -0500
Subject: add ix commandline pastebin

---
 sys/code/sys/ix | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)
 create mode 100755 sys/code/sys/ix

(limited to 'sys/code')

diff --git a/sys/code/sys/ix b/sys/code/sys/ix
new file mode 100755
index 0000000..2cf7fa5
--- /dev/null
+++ b/sys/code/sys/ix
@@ -0,0 +1,35 @@
+#!/usr/bin/env bash
+
+# Examples:
+#     ix hello.txt              # paste file (name/ext will be set).
+#     echo Hello world. | ix    # read from STDIN (won't set name/ext).
+#     ix -n 1 self_destruct.txt # paste will be deleted after one read.
+#     ix -i ID hello.txt        # replace ID, if you have permission.
+#     ix -d ID
+
+ix() {
+    local opts
+    local OPTIND
+    [ -f "$HOME/.netrc" ] && opts='-n'
+    while getopts ":hd:i:n:" x; do
+        case $x in
+            h) echo "ix [-d ID] [-i ID] [-n N] [opts]"; return;;
+            d) $echo curl $opts -X DELETE ix.io/$OPTARG; return;;
+            i) opts="$opts -X PUT"; local id="$OPTARG";;
+            n) opts="$opts -F read:1=$OPTARG";;
+        esac
+    done
+    shift $(($OPTIND - 1))
+    [ -t 0 ] && {
+        local filename="$1"
+        shift
+        [ "$filename" ] && {
+            curl $opts -F f:1=@"$filename" $* ix.io/$id
+            return
+        }
+        echo "^C to cancel, ^D to send."
+    }
+    curl $opts -F f:1='<-' $* ix.io/$id
+}
+
+ix $*
-- 
cgit v1.2.1