sprunge.usというサービスがあるのを、いまさら知って驚いてそして大感謝した。
以下に顛末を記す。
sprunge.usってなんだ。
ブラウザでsprunge.usを開くと、manページのような見てくれで何か間違えたかと二度見するようなサイトなのだが、よく見ると凄い事が書いてある。
何らかのコマンドの標準出力をsprunge.usに食わすと、URLが返る。
そのURLへアクセスすると、先の出力結果が見えるというわけ。
sprunge.usの使い方
使い方といっても上記の通りなんだが、やってみるのが早い。
uname -aの結果を食べさせてみる。
$ uname -a | curl -F 'sprunge=<-' http://sprunge.us
http://sprunge.us/CTQL
返ってきたURL、http://sprunge.us/CTQLにアクセスしていただくと、uname -aの結果、すなわち我輩の鯖の詳細が分かる。
使いどころ
このサービスの何が便利なのか。
sprunge.usを使うことで、エラーや設定ファイル、ちょっとしたスクリプト、ソースを手軽に共有できる。
たとえば私が、あるサーバが意図した動作をせず困っているときに、助けを求めるとする。
助けを求める相手が、twitterにいるとする。
twitterには140文字しか書けないので、エラー、使用している設定ファイルの中身をすべて貼り付けるのは無理がある。
ではどこかのサイト(いわゆるアップローダと言われているサイトなど)にアップロードするか?それも面倒。
そこでコマンドラインからsprunge.usにアップロードし、そのURLを相手に送る。
これは便利じゃありませんかみなさん。
まあ、助けを求める相手がいる限りにおいてですが。
いつまで残るの・・・?
sprungeに載せた内容はいつまで残るのか。
調べてみたけど、ちょっと分からなかった。
末尾で触れるpastebinだと、残す期間を選べたりするのだが。
やってもうた時は?
共有すべきでない内容をsprunge.usしてしまった時はどうするのだろうか。
これも検索したけど分からない。
センシティブな情報、IDとかパスワードとかが含まれそうな場合は、後述のpastbinの方がよいかも。
sprungeをもっと便利に使う。
まずですね、aliasを設定しましょう。
こんな長いの、いちいちタイプできんですよ。
設定したらすぐ確かめるのが紳士のたしなみ。ここだとaliasを引数なしですぐさま叩く。
$ alias sprunge="curl -F 'sprunge=<-' http://sprunge.us"
$ alias
alias sprunge='curl -F '\''sprunge=<-'\'' http://sprunge.us'
テストして問題なければ、シェルに合わせた初期設定ファイルに書き込んでおく。
~/.profileとか。
sprungeはファイルの内容だってOK。
sprungeは標準出力を受け付けるので、ファイルの内容だって貼り付けられる。
FreeBSDのftpd起動シェルスクリプトで試してみよう。
どうせなら、上記で作成したaliasで。
$ cat /etc/rc.d/ftpd | sprunge
http://sprunge.us/LQCZ
http://sprunge.us/LQCZ どうだろうか。
構文強調と行番号表示もできる。
sprunge.usに以下のように書いてある。
add ?<lang> to resulting url for line numbers and syntax highlighting
use this form to paste from a browser
上記のftpdシェルスクリプトを例に引く。
シェルスクリプトなので、「sh」を?に続けてURLに加えればよい。
sprungeに意地悪をしてみる。
知る人ぞ知るコマンドにslがある。
これはlsをslとタイプミスしてしまったとき、アスキーアートのSL機関車がターミナルを爆走する豪快なコマンドだ。
slコマンドをご存じなく、UNIX系マシンをお持ちの方はぜひインストールしてその目で確かめてほしい。
ちなみにFreeBSDではportsに収録されている。games/slからどうぞ。
で、これをsprungeに食わせてみた。
$ sl | sprunge
http://sprunge.us/Sijg
http://sprunge.us/Sijg …うん。まあ。仕方ないね。
同様の別サービス
sprunge.usと同様のサービスにpastbinがある。
http://pastebin.com/
世間的にはsprunge.usよりこちらの方が有名な様子。
CUIから使うためにwgetpastといったツールもある。