こんにちは、コンビニに行くたびに店員さんから舌打ちされるdameninngennです。サックリと書きます! 対話的に処理を進めるスクリプト書いたりしますよね!あの[yes/no]とか聞かれて入力するやつです!! 例えばrsyncで--dry-runオプション付きで一旦実行して、そこから[yes/no]を聞いて本当にsyncするかどうかみたいな感じのやつです!!! まず、標準入力から受け取るだけであれば、 my $str = <STDIN>; chomp $str; # do something # ... こんな感じに受け取ったりするかと思いますが、本当に[yes/no]が入力されたのか判定したりそうじゃなかったらもう一回入力求めたりとか書くのめんどくさいですよね。 そこらへんのめんどくささとかを解消してくれるTerm::UIというモジュールがあります。 誤解を招くかもしれませんがTerm
![Term::UI - サクッと対話的に入力を求める - Articles Advent Calendar 2011 Casual](https://cdn-ak-scissors.b.st-hatena.com/image/square/bd309803dbc20279cdbec1ae596c1360ac33d8c6/height=288;version=1;width=512/https%3A%2F%2Fres.cloudinary.com%2Fkfly8%2Fimage%2Fupload%2Fl_text%3ANotoSansJP-Black.otf_50_bold%3ATerm%253A%253AUI%2520-%2520%25E3%2582%25B5%25E3%2582%25AF%25E3%2583%2583%25E3%2581%25A8%25E5%25AF%25BE%25E8%25A9%25B1%25E7%259A%2584%25E3%2581%25AB%25E5%2585%25A5%25E5%258A%259B%25E3%2582%2592%25E6%25B1%2582%25E3%2582%2581%25E3%2582%258B%2Cco_rgb%3A000000%2Cw_900%2Cc_fit%2Fl_text%3ANotoSansJP-Black.otf_30_bold%3Adameninngenn%2Cco_rgb%3A000000%2Cg_south_east%2Cx_130%2Cy_120%2Fv1601626948%2Fog-perl-users-jp.png)