対話型での自動応答

windowsでもlinuxでもコンソールで対話型でyes?no?って聞いてくるのがうざかったので、
標準入力を決めた値で答えられないかなーって。
expectなんて上品なツール使えませんですし。

Windows(Windows 7 x64)

echo yes | perl -e "do{ print qq{$_ yes or no\n}; $_=<STDIN>; }while($_ && !/^y|^n/i);"
 yes or no
# ここでyesを応答しているため、終了

echo x | perl -e "do{ print qq{$_ yes or no\n}; $_=<STDIN>; }while($_ && !/^y|^n/i);"
 yes or no
x
 yes or no # 再入力
# EOFなので終了

Linux(CentOS 5.6)

echo yes | perl -e 'do{ print qq{$_ yes or no\n}; $_=<STDIN>; }while($_ && !/^y|^n/i);'
 yes or no
# ここでyesを応答しているため、終了

echo x | perl -e 'do{ print qq{$_ yes or no\n}; $_=<STDIN>; }while($_ && !/^y|^n/i);'
 yes or no
x
 yes or no # 再入力
# EOFなので終了

まとめ

出来そうですね。

追記

Linuxならyesコマンドがあるそうです。metaさんありがとう!

yes xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
xyz
^C