当在Linux Shell中运行SQL*Plus的时候,并不提供浏览历史命令行的功能.相反的,在Windows操作系统上,当在DOS命令窗口中运行SQL*Plus的时候,可以使用向上,向下键来跳回之前已经执行过的SQL语句.你可以根据需要修改他们,然后按[Enter]重新提交执行.
为了在Linux中达到同样的目的,你可以安装rlwrap,这个程式本身是个Shell,可以运行任何你提供给它的命令包括参数,并添加命令历史浏览功能.The rlwrap program is under the GPL license.
rlwrap最新的版本为rlwrap-0.37.tar.gz,官方主页为http://utopia.knoware.nl/~hlub/uck/rlwrap/
安装过程如下
cd /usr/local/src
# wget http://utopia.knoware.nl/~hlub/uck/rlwrap/rlwrap-0.37.tar.gz
tar xzvf rlwrap-0.37.tar.gz
cd rlwrap-0.37
./configure --prefix=/usr/local/rlwrap
make
make install
详细的使用方法请参考manpage,安装好之后就可以使用了
如下命令
/usr/local/rlwrap/bin/rlwrap sqlplus
然后就可以使用上、下、左、右键来编辑已执行过的命令
如果嫌每次输入这么长的命令很麻烦的话,可以在oracle用户下的.bash_profil中加入一条alias
如下
alias sqlplus='/usr/local/rlwrap/bin/rlwrap sqlplus'
这样每次只要直接输入sqlplus命令就可以使用回调命令的功能了