window下的sqlplus可以通过箭头键,来回看历史命令,用起来非常的方便。
但是在linux里就没有这么方面了,错了一个命令,我们必须重新敲一次,辛苦了手指头叻。
看到一个文章,很方便的一招,给我们带来方便。
通过rlwrap包实现linux里的sqlplus历史命令的功能
可以下载rlwrap包从inthirties里。
这个包依赖readline包,这个包也可以下载
http://inthirties.com:90/thread-1061-1-1.html
下载
rlwrap-0.30.tar.gz
readline-6.1.tar.gz
到本地
然后解压
由于rlwrap依赖readline包,我们先安装readline包
#gunzip readline-6.1.tar.gz
#tar -xf readline-6.1.tar
#cd readline-6.1
#./configure
#make install
安装以后,我们可以安装rlwrap叻
#gunzip rlwrap-0.30.tar.gz
#tar -xf rlwrap-0.30.tar
#cd rlwrap-0.30
#./configure
#make install
现在rlwrap就已经安装到我们的linux里。
我们可以用rlwrap sqlplus执行试试,好悲惨哟,好像有错误
rlwrap: error while loading shared libraries: libreadline.so.6: cannot open shared object file: No such file or directory
报错哟,别着急,这里其实这里是.so库没有load到,
你可以修改/etc/ld.so.conf,设置我们so库的load路径
先找到这个libreadline.so.6的路径
find / -iname libreadline.so.6
/usr/local/lib/libreadline.so.6
在最后的一行下加上/usr/local/lib就可以叻,这里的
include ld.so.conf.d/*.conf
/usr/local/lib
加入要重启生效,不过我们也可以执行ldconfig即时生效
现在我们在试试lrwrap sqlplus命令,是不是很爽呀。
不过每次在前面要多输入lrwrap,确实有些不习惯了,都习惯直接sqlplus,以后要是加上lrwrap也太不习惯了。
解决方法用alias命令就可以叻
alias sqlplus="rlwrap sqlplus"
alias rman="rlwrap rman"
可以在启动文件里加入一上两句,就尅直接的sqlplus,
赶快试试吧,是不是感觉自己的手指头轻松多了呀。