SSH中的SQL命令按退格键出现乱码的问题解决

 用SSH调用SQLPLUS输入SQL语句,按backspace(退格键)出现^H的乱码如下所示:

[oracle@even ~]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Fri Jun 6 00:09:23 2014

Copyright (c) 1982, 2005, Oracle.  All rights reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining options

SQL> fafafafafafaf^H^H^H^H

^H不是H键的意思,而是backspace。当你的终端backspace有问题的时候就需要设置。

在linux环境下使用sqlplus,在回(backspace)时往往会出现乱码。出现乱码是由于oracle的sqlplus不使用gnu的readline库造成的。

 

解决方法有两种:

1。要使用回删键(backspace)时,同时按住ctrl键

2。设定环境变量 将stty erase ^H或者把 stty erase ^? 添加到.bash_profile中,设置oracle用户的profile如下所示:

[oracle@even ~]$ vi ./.bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=OMR
export OMS_HOME=$ORACLE_BASE/product/10.2.0/oms10g/oms10g
export AGENT_HOME=$ORACLE_BASE/product/10.2.0/oms10g/agent10g
stty erase ^H

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值