使用rlwrap增强Linux中的sqlplus命令行功能
rlwrap是一个基于GNU readline library的工具,能够使一些普通的命令行(比如oracle中的sqlplus、rman等)具有历史输入回溯和错误回退修正的增强功能。
下载
[oracle@zhen-fedora ~]$ wget http://utopia.knoware.nl/~hlub/uck/rlwrap/rlwrap-0.37.tar.gz
--2010-08-10 21:16:52-- http://utopia.knoware.nl/~hlub/uck/rlwrap/rlwrap-0.37.tar.gz
Resolving utopia.knoware.nl... 213.197.30.29
Connecting to utopia.knoware.nl|213.197.30.29|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 251438 (246K) [application/x-gzip]
Saving to: `rlwrap-0.37.tar.gz'
100%[======================================>] 251,438 59.0K/s in 4.2s
2010-08-10 21:16:58 (59.0 KB/s) - `rlwrap-0.37.tar.gz' saved [251438/251438]
准备安装目录
[root@zhen-fedora local]# mkdir rlwrap
[root@zhen-fedora local]# chown oracle.dba rlwrap/
编译安装
[oracle@zhen-fedora ~]$ tar -zxvf rlwrap-0.37.tar.gz
[oracle@zhen-fedora rlwrap-0.37]$ ./configure --prefix=/usr/local/rlwrap
[oracle@zhen-fedora rlwrap-0.37]$ make
[oracle@zhen-fedora rlwrap-0.37]$ make install
在/bin下添加文件link
[root@zhen-fedora rlwrap]# cd /bin
[root@zhen-fedora bin]# ln -s /usr/local/rlwrap/bin/rlwrap rlwrap
[root@zhen-fedora bin]# ll rlwrap
lrwxrwxrwx. 1 root root 28 2010-08-10 21:38 rlwrap -> /usr/local/rlwrap/bin/rlwrap
在oracle用户的./bash_profile中添加下面两句:
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'
然后source一下,再使用sqlplus rman的时候就可以通过上翻来查看历史命令,也可以通过回退键删除输入错误的内容。
转载地址: