Bashでちょっと凝ったオプションの解析をする

f:id:dojineko:20160630222829j:plain

痒いところに手が届かないのをなんとかしたかったのねん


Bashスクリプトを書いてたら、ちょっと凝ったオプション解析をしたくなった。

  • ロングオプションも使えるようにしたい
  • オプションの第二引数は任意にしたい

Bashスクリプトでオプション解析といえば getopt や getopts を使うと思いますが、

  • getopt はBashのビルトインコマンドなのでどこでも使えるけどロングオプションが使えない
  • getopts は BSD系(macOSなど) と GNU系(Linuxなど) で動きが違う

など微妙に痒いところに手が届かないので、下記のQiita記事を参考に、メモがてらちょっとアレンジしつつオレオレオプション解析を書いてみました。 qiita.com

続きを読む

mruby-cli で ワンバイナリなツールを作ってみた

f:id:dojineko:20160221195105j:plain

今回も長め。


メモツールの移行を思い立ったので、今までのデータを移すべくテキトーなツールをつくって見ました。
移行ツールと言いながらまだ 単一のMarkdownとBoostnote の相互変換くらいにしか対応していませんが、、、

github.com

前回のネタに続いてせっかくなのでGolangでなく、mruby-cli で作ってみました。
今回はその過程でやったことや作ってみて思ったこととかをつれつれなるままに書いてみようと思います。

dojineko.hateblo.jp

続きを読む

mrubyをとりあえず動かしてみただけ

f:id:dojineko:20160211204157j:plain

ちょっと長いよ。


Golangツールを作っていたさなか、とある日の会話。

ぼく 「クロスコンパイルできて、単一バイナリで動くツール作るにはGoいいですよね」
A氏 「それmrubyでやればいいじゃん」
ぼく 「そんな気軽に出来ないんじゃないですか?」
A氏 「mruby触ったこと無いの?できるけど(プークスクス」(意訳)
ぼく「(#^ω^)・・・。」

・・・というわけで、しぶしぶmrubyに触れることにしました。

(※ 意訳のくだりは、あくまでキャッチーなネタとして解釈してネ。)

続きを読む

いつの間にか回線速度がすごーく遅くなってしまっていた

f:id:dojineko:20160124231430j:plain

抗議の眼差し。


えー長らくADSL回線を利用してきたのですが、とうとうフレッツ光が開通しまして、
去年の12月ごろから利用を開始とあいなりまして、開通当初は下りで100Mbps近くでてて
「さっすが光はちゃいますなぁ」なんつって思っていたわけであります。

…が、1月に入ってから家族から

「ネット遅い。どうかなんないの?」

…なんて、ITなお仕事をしてると、家庭内SEをするハメになるなんてのはまぁよくある話で。
そんなバカなと思って改めて回線速度を計測してみたら…

続きを読む