程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> Linux中Oracle的sqlplus下退格和Del鍵無效的問題解決,sqlplus下退

Linux中Oracle的sqlplus下退格和Del鍵無效的問題解決,sqlplus下退

編輯:Oracle教程

Linux中Oracle的sqlplus下退格和Del鍵無效的問題解決,sqlplus下退


PS:近來因工作需要業余在學習oracle,發現通過SecureCRT或putty等SSH客戶端遠程登錄Linux下oracle的sqplus時,輸錯字符後按Backspace鍵或Del鍵刪除時,會出現^H或其他亂七八糟的的字符,感覺非常別扭不習慣,雖然可以通過Ctrl+Backspace組合鍵實現刪除功能,但是嚴重影響使用效率。google了一番,終於完美解決此問題。總結記錄如下,本文是此問題最完整的總結:

亂七八糟的字符如圖:

20151222173455870.jpg (857×379)

一、SecureCRT終端裡的解決方法:(不完美)

在SecureCRT終端裡,如果要在sqlplus下使用Backspace來刪除字符,有兩種臨時方法。

第一種是使用stty命令重新定義^H,可以在使用sqlplus之前執行stty erase ^H,也可以把這一句放到oracle用戶的.bash_profile文件裡。

stty命令簡介:
Unix或者Linux中有個stty命令,它的作用是打印或更改terminal(終端)的設置。
常用參數:
-a --all 用人類可讀表格,打印出所有現有設置
-g --save 用stty可讀表格,打印出所有現有設置
--help 幫助
--version 版本

查看當前stty現有設置,如圖:

20151222173534907.jpg (1002×257)

第二種是使用SecureCRT的設置,在會話屬性的Terminal->Emulation->Mapped Keys中,選中Backspace sends delete或Delete sends backspace中的其中一個,並確保另一個不被選中。

另一個問題是bash shell下的sqlplus中使用上下箭頭無法顯示上下命令,而只是顯示^[[A,這個問題可以安裝rlwrap這個工具解決!

二、利用rlwrap工具解決方法:(完美)

1、安裝rlwrap和readline庫

CentOS下可以用EPEL的yum源直接安裝,步驟如下:

(1)RHEL/CentOS/SL Linux 6.x 下安裝 EPEL6 yum源:

32位系統選擇:

# rpm -ivh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

64位系統選擇:

# rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

導入key:

# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

默認會在/etc/yum.repos.d/下創建epel.repo和epel-testing.repo兩個配置文件。

(2)安裝rlwrap和readline:

# yum install rlwrap readline readline-devel

其他Linux發行版如果源裡沒有rlwrap和readline的(如SUSE企業版默認沒有這兩個包),要分別下載這兩個源碼包編譯安裝一下。

# wget ftp://ftp.gnu.org/gnu/readline/readline-6.2.tar.gz
# tar zxvf readline-6.2.tar.gz
# cd readline-6.2/
# ./configure
# make
# make install


# wget http://utopia.knoware.nl/~hlub/rlwrap/rlwrap-0.37.tar.gz
# tar zxvf rlwrap-0.37.tar.gz
# cd rlwrap-0.37/
# ./configure
# make
# make install

(3)設置sqlplus的系統別名:

# vim /home/oracle/.bash_profile

在頭部或尾部添加:

alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'

退出oracle用戶再重新登錄就ok。現在sqlplus用起來就很爽很習慣了!

20151222173636868.jpg (799×485)

您可能感興趣的文章:

  • oracle 安裝與SQLPLUS簡單用法
  • oracle sqlplus 常用命令大全

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved