超雑にまとめました。修正してください。
登場人物
- アプリケーション先輩: いつも忙しい。横に広がるのが得意(デブじゃない)。
- 後輩: 頼んでばっかしで役に立たない。
- サーバー先輩: アプリケーション先輩と仲がいい。Unix Socket でつながるくらい仲良し。
- プロクシ先輩: アプリケーション先輩とかサーバー先輩と後輩の間を取り持って代わりに伝えたりしてくれる。たまに勝手にレスポンスを書き換える。
オレは高校生シェル芸人 sudo
新一。幼馴染で同級生の more
利蘭と遊園地に遊びに行って、黒ずくめの男の怪しげな rm -rf /
現場を目撃した。端末をみるのに夢中になっていた俺は、背後から近づいてきたもう1人の --no-preserve-root
オプションに気づかなかった。
俺はその男に毒薬を飲まされ、目が覚めたら・・・ OS のプリインストールから除かれてしまっていた!
『 sudo
がまだ $PATH
に残っていると奴らにバレたら、また命を狙われ、他のコマンドにも危害が及ぶ』
上田博士の助言で正体を隠すことにした俺は、 which
に名前を聞かれて、とっさに『gnuplot
』と名乗り、奴らの情報をつかむために、父親がシェル芸人をやっている蘭の $HOME
に転がり込んだ。ところが、このおっちゃん・・・とんだヘボシェル芸人で、見かねた俺はおっちゃんになりかわり、持ち前の権限昇格能力で、次々と難タスクを解決してきた。おかげで、おっちゃんは今や世間に名を知られた名エンジニア、俺はといえばシェル芸 bot のおもちゃに逆戻り。クラスメートの convert
や ojichat
や textimg
にお絵かきコマンドと誤解され少年ワンライナーお絵かき団を結成させられる始末。
ではここで、博士が作ってくれたメカを紹介しよう。最初は時計型麻酔 kill
。ふたについた照準器にあわせてエンターを押せば、麻酔シグナルが飛び出し、プロセスを瞬時に sleep
させることができる。
次に、蝶ネクタイ型 banner
。裏についているダイヤルを調整すれば、ありとあらゆる大きさのメッセージを標準出力できる。必殺のアイテムなら fork
力増強シューズ。電気と磁力で足を刺激し、 :(){ :|:& };:
でプロセステーブ
i=0;eval( source= %w?"zl ib,bas e64,securerand om".split( ', ').eac | |
h{|x|require(x)};data=Zlib.inflate (Base64.urls afe_decode64(sou rce.split("#")[4+i ])).unpack("C* ").flat_ma p{|x|[x/8,x/ | |
8,x%8,x%8]};palette=[0x48b0d5,0x8d cee5,0xffffff,0x3a90 ad,0xe0c3b8,0xef d5c6,0].map{|x|[x> >16,(x>>8)&0xff, x&0xff]};all_source=('i='+((i+1)%2 | |
).to_s+';eval(source=%w'+63.chr+source +63.chr+".join)");ch ars=al l_sour ce.chars;width=46; height=24;missin g=width*2*height-chars.size;chars+ | |
=["^"]*missing;c hars=c hars.e ach_slice( width* 2).fla t_map{ _1.join.gs ub(/\x5e{2,}/) {|x|"#"+Se cureRandom.urlsafe_base6 | |
4(x.size-1)[0,x. size-1 ]}.cha rs};pu ts(cha rs .zip(dat a).map{| l,c|"\e[ 48 | |
;2;#{palette[c].join (";")}m" +l}. |