ITPub博客

在sqlplus中实现命令的上翻下翻功能

原创 Oracle 作者:jolly10 时间:2012-07-17 16:56:17 0 删除 编辑

在linux下使用Oracle的sqlplus时,缺省情况下箭头键不起到左右移动光标,上下翻动命令的作用。导致使用很不方便。这里我要介绍一 个小工具软件rlwrap(软件卸载地址:http://linux.softpedia.com/get/Terminals/rlwrap-16437.shtml),这是一个“readline wrapper”工具,可以使用左右箭头在一行中左右移动光标,还可以用上下箭头来上翻和下翻回调命令,甚是好用。

下载地址:http://utopia.knoware.nl/~hlub/uck/rlwrap/

[@more@]

我用的是0.24源代码版。安装和简单:
./configure
make
make install

其他一些安装的情况比如用非root用户安装,看看readme和install文件就行了,也非常简单。(这个我没有测试过,大家动手学习吧!)
而且现在已经有rpm版的了。安装后在Oracle用户的.bash_profile文件中加上两句话:
alias sqlplus="rlwrap sqlplus"
alias rman="rlwrap rman"
重新用Oracle用户登录或执行. /home/oracle/.bash_profile,使修改生效。下面就可以在sqlplus和rman中按想象的方式使用箭头键了。

我的测试过程:

将rlwrap-0.37.tar.gz包上传至Linux服务器。

[root@study setup]# rz
rz waiting to receive.
Starting zmodem transfer. Press Ctrl+C to cancel.
100% 245 KB 245 KB/s 00:00:01 0 Errors

将rlwrap-0.37.tar.gz包解压

[root@study setup]# tar -zxvf rlwrap-0.37.tar.gz
rlwrap-0.37/
rlwrap-0.37/completions/
rlwrap-0.37/completions/testclient
rlwrap-0.37/completions/coqtop
rlwrap-0.37/doc/
rlwrap-0.37/doc/rlwrap.man.in
rlwrap-0.37/doc/Makefile.am
rlwrap-0.37/doc/Makefile.in
rlwrap-0.37/filters/

.......

进入到解压后目录

[root@study setup]# cd rlwrap-0.37

运行编译,安装,过程如下:

[root@study rlwrap-0.37]# ./configure
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
.......
config.status: executing depfiles commands

Now do:
make (or gmake) to build rlwrap
make check for instructions how to test it
make install to install it

[root@study rlwrap-0.37]# make
make all-recursive
make[1]: Entering directory `/home/setup/rlwrap-0.37'
Making all in doc
make[2]: Entering directory `/home/setup/rlwrap-0.37/doc'
sed -e 's#@DATADIR@#/usr/local/share#' rlwrap.man > rlwrap.1
make[2]: Leaving directory `/home/setup/rlwrap-0.37/doc'
Making all in src
make[2]: Entering directory `/home/setup/rlwrap-0.37/src'
.......
make[2]: Entering directory `/home/setup/rlwrap-0.37'
make[2]: Nothing to be done for `all-am'.
make[2]: Leaving directory `/home/setup/rlwrap-0.37'
make[1]: Leaving directory `/home/setup/rlwrap-0.37'
[root@study rlwrap-0.37]#
[root@study rlwrap-0.37]# make install
Making install in doc
make[1]: Entering directory `/home/setup/rlwrap-0.37/doc'
.......
make[1]: Leaving directory `/home/setup/rlwrap-0.37'

切换至oracle用户,修改配置文件.bash_profile

[oracle@study ~]$ vi .bash_profile
在文件最后添加
alias sqlplus="rlwrap sqlplus"
alias rman="rlwrap rman"

保存并是配置生效

[oracle@study ~]$ source .bash_profile


这时,我们在登录sqlplus 就是可以使用左右上下键了。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/271283/viewspace-1058832/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-02-20

  • 博文量
    263
  • 访问量
    759703