让Linux下的SQL*Plus具有历史回调功能
2012-02-03 14:27
519 查看
Linux上使用SQL*Plus有一个相当不方便的地方,那就是没有历史回调功能。在Windows上的SQL*Plus可以用"向上向下"箭头来调用之前使用过的命令,修改、编辑、重复之前的命令都相当方便。如何解决这个问题呢?
答案是安装一个小工具:Uniread
2.安装Uniread之前先安装 readline,Term,IO这3个工具。
可以从这里下载:
uniread-1.01.tar.gz:http://download.csdn.net/source/384464\\
readline-5.2.tar.gz:http://download.csdn.net/source/384466
Term-ReadLine-Gnu-1.17a.tar.gz:http://download.csdn.net/source/384470
IO-Tty-1.07.tar.gz:http://download.csdn.net/source/384468
perl-5.8.8-10
#说明已经安装了
2.下载IO-Tty-1.07.tar.gz readline-5.2.tar.gz Term-ReadLine-Gnu-1.17a.tar.gz uniread-1.01.tar.gz 这四个文件,我放到了/tmp下。 [root@pcmxexweb tmp]# ll IO-Tty-1.07.tar.gz readline-5.2.tar.gz Term-ReadLine-Gnu-1.17a.tar.gz uniread-1.01.tar.gz
-rw-r--r-- 1 root root 22004 03-14 16:44 IO-Tty-1.07.tar.gz
-rw-r--r-- 1 root root 2037705 03-14 16:44 readline-5.2.tar.gz
-rw-r--r-- 1 root root 66489 03-14 16:44 Term-ReadLine-Gnu-1.17a.tar.gz
-rw-r--r-- 1 root root 16118 03-14 16:44 uniread-1.01.tar.gz
3.安装readline-5.2.tar.gz# tar -zxvf readline-5.2.tar.gz
# cd readline-5.2
# ./configure
#make
#make install
4. 安装IO-Tty-1.07.tar.gz 和 Term-ReadLine-Gnu-1.17a.tar.gz# tar -zxvf IO-Tty-1.07.tar.gz (或tar -zxvf Term-ReadLine-Gnu-1.17a.tar.gz)
# cd IO-Tty-1.07(或 cd Term-ReadLine-Gnu-1.17)
# perl Makefile.pl
# make
# make install
5.安装readline-5.2.tar.gz#tar -xzvf uniread-1.01.tar.gz
#cd uniread-1.01
#perl Makefile.pl
#make
#make install
6.使用方法:# su - oracle
$ uniread sqlplus /nolog
7.清空历史记录:$ echo ''>.uniread/sqlplus
[oracle@FOO oracle]$ echo ''>.uniread/sqlplus
[oracle@FOO oracle]$
[oracle@FOO oracle]$ ls -ltr .uniread/
total 4
-rw------- 1 oracle oracle 1 Oct 31 15:57 sqlplus
[oracle@FOO oracle]$
[oracle@FOO oracle]$ uniread sqlplus
[uniread] Loaded history (1 lines)
答案是安装一个小工具:Uniread
安装Uniread的要求
1.Linux系统上必须已经安装了Perl2.安装Uniread之前先安装 readline,Term,IO这3个工具。
可以从这里下载:
uniread-1.01.tar.gz:http://download.csdn.net/source/384464\\
readline-5.2.tar.gz:http://download.csdn.net/source/384466
Term-ReadLine-Gnu-1.17a.tar.gz:http://download.csdn.net/source/384470
IO-Tty-1.07.tar.gz:http://download.csdn.net/source/384468
安装过程:
1.检查是否已经安装过Perl[root@pcmxexweb tmp]# rpm -qa perlperl-5.8.8-10
#说明已经安装了
2.下载IO-Tty-1.07.tar.gz readline-5.2.tar.gz Term-ReadLine-Gnu-1.17a.tar.gz uniread-1.01.tar.gz 这四个文件,我放到了/tmp下。 [root@pcmxexweb tmp]# ll IO-Tty-1.07.tar.gz readline-5.2.tar.gz Term-ReadLine-Gnu-1.17a.tar.gz uniread-1.01.tar.gz
-rw-r--r-- 1 root root 22004 03-14 16:44 IO-Tty-1.07.tar.gz
-rw-r--r-- 1 root root 2037705 03-14 16:44 readline-5.2.tar.gz
-rw-r--r-- 1 root root 66489 03-14 16:44 Term-ReadLine-Gnu-1.17a.tar.gz
-rw-r--r-- 1 root root 16118 03-14 16:44 uniread-1.01.tar.gz
3.安装readline-5.2.tar.gz# tar -zxvf readline-5.2.tar.gz
# cd readline-5.2
# ./configure
#make
#make install
4. 安装IO-Tty-1.07.tar.gz 和 Term-ReadLine-Gnu-1.17a.tar.gz# tar -zxvf IO-Tty-1.07.tar.gz (或tar -zxvf Term-ReadLine-Gnu-1.17a.tar.gz)
# cd IO-Tty-1.07(或 cd Term-ReadLine-Gnu-1.17)
# perl Makefile.pl
# make
# make install
5.安装readline-5.2.tar.gz#tar -xzvf uniread-1.01.tar.gz
#cd uniread-1.01
#perl Makefile.pl
#make
#make install
6.使用方法:# su - oracle
$ uniread sqlplus /nolog
7.清空历史记录:$ echo ''>.uniread/sqlplus
FAQ
如果要删除命令行历史,可以简单的用如下操作即可:[oracle@FOO oracle]$ echo ''>.uniread/sqlplus
[oracle@FOO oracle]$
[oracle@FOO oracle]$ ls -ltr .uniread/
total 4
-rw------- 1 oracle oracle 1 Oct 31 15:57 sqlplus
[oracle@FOO oracle]$
[oracle@FOO oracle]$ uniread sqlplus
[uniread] Loaded history (1 lines)
相关文章推荐
- 让Linux下的SQL*Plus具有历史回调功能
- 在linux下使SQLPLUS历史回调功能
- 配置linux下oracle sqlplus/rman等历史记录回调功能
- 转:linux下sqlplus的历史sql回调功能实现方法
- [Oracle] 利用Uniread 解决 Linux下的SQL*Plus 命令行历史回调功能
- 解决Linux下SQL*Plus历史回调功能
- 解决Linux下SQL*Plus命令行历史回调功能
- 解决Linux下SQL*Plus历史回调功能
- 利用uniread 解决 Linux下的SQL*Plus 命令行历史回调功能
- 解决Linux下Oracle SQL*Plus命令行历史回调功能
- 配置linux下oracle sqlplus/rman等历史记录回调功能
- 解决Linux下Oracle SQL*Plus命令行历史回调功能
- 利用Uniread 解决 Linux下的SQL*Plus 命令行历史回调功能
- 配置linux下oracle sqlplus/rman等历史记录回调功能
- 利用uniread 解决 Linux下的SQL*Plus 命令行历史回调功能
- 利用uniread 解决 Linux下的SQL*Plus 命令行历史回调功能
- Linux上实现Windows的SQLPlus保存SQL历史记录功能
- 利用rlwrap配置linux下oracle sqlplus 历史记录回调
- rlwrap: command not found和解决linux下sqlplus 提供浏览历史命令行的功能
- linux下sql*plus历史命令回调问题