Signal.list
Signal.listで、シグナル名とシグナル番号の一覧がハッシュで得られます。
s = Signal.list p s p s.sort p s.sort {|a, b| a[1] <=> b[1]} s.sort {|a, b| a[1] <=> b[1]} .each do |sig_val| printf("%-6s %d\n", sig_val[0], sig_val[1]) end
そうか、RubyのHash#sortでは、[key, value]という配列が二つ、ソート用に渡されてくるのですね。
実行結果です。
{"TERM"=>15, "SEGV"=>11, "KILL"=>9, "EXIT"=>0, "INT"=>2, "FPE"=>8, "ABRT"=>22, "ILL"=>4} [["ABRT", 22], ["EXIT", 0], ["FPE", 8], ["ILL", 4], ["INT", 2], ["KILL", 9], ["SEGV", 11], ["TERM", 15]] [["EXIT", 0], ["INT", 2], ["ILL", 4], ["FPE", 8], ["KILL", 9], ["SEGV", 11], ["TERM", 15], ["ABRT", 22]] EXIT 0 INT 2 ILL 4 FPE 8 KILL 9 SEGV 11 TERM 15 ABRT 22