我正在编写一个在Perl中作为
shell执行的工具.我希望它有一个历史记录,所以如果你按向上箭头,你会回到上一个命令,就像bash或其他shell一样.我该怎么办呢?
– 编辑 –
感谢daxim将我指向Term :: ReadLine :: Gnu.我能够让它在我的Linux机器上工作,这正是我想要的.但是,我的主开发机器正在运行OS X.当我尝试安装模块时,我收到此错误:
~/Downloads/Term-ReadLine-Gnu-1.19 > perl Makefile.PL Found `/usr/lib/libtermcap.dylib'. gcc-4.2 -arch i386 -arch ppc -g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -I/usr/local/include - DHAVE_STRING_H rlver.c -o rlver -arch i386 -arch ppc -L/usr/local/lib -lreadline -ltermcap !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! The libreadline you are using is the libedit library. Use the GNU Readline Library. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
解决方法
Term::ReadLine::Gnu是最好的模块,Term::ReadLine::Perl是后备.