愛と勇気と缶ビール

ふしぎとぼくらはなにをしたらよいか

shflagsでござる

ちょっとした理由でgit-flow (https://github.com/nvie/gitflow) のソースをちょっとちょっと眺めていたんだけど、内部でコマンドライン引数をパースするためにshflagsというツールが使われていたのでメモ。

shflags http://code.google.com/p/shflags/


見ての通り、shell scriptでコマンドライン引数を簡単に扱うためのツールのようでごわす。

#!/bin/sh

# source shflags
. ./shflags

# define a 'name' command-line string flag
DEFINE_string 'name' 'world' 'name to say hello to' 'n'

# parse the command-line
FLAGS "$@" || exit 1
eval set -- "${FLAGS_ARGV}"

# say Hello!
echo "Hello, ${FLAGS_name}!"

sourceするだけで簡単に使えて、便利そうなのでござるよ。


でも、多くの人はコマンドライン引数の解析が必要になった時点で自分の扱えるスクリプト言語スクリプト言語じゃなくてもいいけど)に逃げると思うので、あんまり使う機会はないと思うのでござるよ。

どうしてもshellじゃないといけない場合とか、どうしても特定の言語に依存したくない時ぐらいでござろうか。


ニンニン。