enhance(1)

会社の Solaris10 に enhance というコマンドが入っていた。
これは本来行編集機能を持たないコマンドと端末の間でブリッジとして働き、readline そっくりな行編集機能を提供するものらしい。
このようにして起動すると

$ enhance sqlplus

sqlplus で

履歴もどる
←→ カーソル移動

などの行編集ができるようになる。
Solaris8 には入っていなかったし、↓ここで "introduced" と書いてあるから 10 から導入されたものかもしれない。
http://partneradvantage.sun.com/protected/solaris10/adoptionkit/general/tecla.txt


作者の Martin Shepherd 氏のページを見ると、ほとんどの Unix で動くらしい。
http://www.astro.caltech.edu/~mcs/tecla/index.html
FreeBSD でも動いた。


[追記:2007-11-01]
Perl で書かれた uniread というのもある。
http://sourceforge.net/projects/uniread

Ruby でも簡単に似たスクリプトが作れるらしい。
http://osdir.com/ml/lang.io/2005-03/msg00197.html
http://osdir.com/ml/lang.io/2005-03/msg00198.html
使用例: ./rlwrap.rb cat
pty 関連は Ruby より Python の方が対応プラットフォームが多いとのこと。