Bash スクリプトを書いていて、文字列処理で難儀になっても、
そのまんま Bash で押し通すことがあるんや。

Ruby で書き直すのが難儀な部分。
(1) getopts と case を GetoptLong に書き直すこと。
全体的な構造の書き直しと、GetoptLong::REQUIRED_ARGUMENT 等の定数が難儀。
(2) -d, -w やらなんやらファイルテスト演算子を、
FileTest.directory?(), FileTest.writable?() に書き直すこと。
# _d, _w で代替したいちうわけや。
(3) -nt, -ot やらなんやらファイルテスト演算子相当メソッド。
FileTest.newer?(file1, file2), FileTest.older?(file1, file2)