2013-03-25 67 views
0

是否有一种简单的方法可以访问在Oracle中输入的以前的命令?例如,使用Linux终端时,可以按“向上箭头”键并遍历命令历史记录。 Oracle是否提供了类似的便捷功能?在Oracle中恢复以前的命令

在此先感谢。

回答

1

没有内置,没有。

在DOS下SQL * PLUS会发生这种情况(即向上箭头转到上一个命令)。

in linux sql * plus it does not。话虽如此,linux上有一个很好用的工具叫做rlwrap,可以为我们做。首先安装程序,然后设置一个别名(在.profile坚持这个,这样你就不必每次打开外壳时运行它):当你启动SQL * Plus

[email protected]4:~$ alias sqlplus='rlwrap sqlplus' 

现在:

[email protected]:~$ sqlplus/as sysdba 

你会得到你想要的向上/向下箭头功能。

+0

谢谢你的解决方案。不幸的是,我的Oracle帐户位于大学的企业系统中,所以我不相信我可以安装'rlwrap'。在我的问题中,我应该更清楚这一点。无论如何,谢谢你的解决方案。 – 2013-03-25 18:12:30

0

在Windows客户端中,有两个SQL * Plus命令行实用程序:一个是DOS外观(sqlplus.exe),一个是Windows外观(sqlplusw.exe)。 DOS型版本具有“uparrow”功能,再加上您可以按F7查看以前的命令列表,但请注意,它在多行命令中不能很好地发挥作用。

Windows类型的版本不支持uparrow或F7,但可以突出显示先前的查询,并复制/粘贴。您也可以按住右键点击* nix技巧,同时按住左键以立即进行复制/粘贴。它表现得很好,但我不得不承认,我真的很喜欢这里也有这么高的产量:)

+0

sqlplusw早已被弃用。据我记得它甚至不存在11g – 2013-03-26 01:23:39

+0

感谢您的高举!我没有意识到。在我的Oracle主要客户中,我们一直使用Oracle 11g服务器,但使用9i客户端(或者甚至8i)至少需要几年时间。它工作正常,除非它使我在这里做一个尴尬的帖子,所以:) – 2013-03-26 01:28:36

0

它不是“Oracle”本身的功能,它是客户端的功能和/或OS。例如,如果我在Windows上运行SQL * Plus,则会按照您所描述的向上/向下箭头函数进行操作。