注册
disql在交互模式下无法使用上下左右键以及backspace键进行编辑输入的解决方案
技术分享/ 文章详情 /

disql在交互模式下无法使用上下左右键以及backspace键进行编辑输入的解决方案

BruceCD 2025/09/30 20 0 0

简述

disql功能非常强大,有很多子命令可以使用,并且是命令行模式下唯一可以连接DM数据库进行查询SQL的工具,但是它的交互式命令行功能不够好:

  1. 无法使用左右键进行光标移动,以编辑输入命令;
  2. 无法使用上下按键进行历史输入的调出,方便快速执行命令
  3. 无法使用ctrl+r搜索历史交互命令

为了方便使用disql,可以利用rlwrap进行辅助,它可以对disql命令进行包装,在执行disql命令前加上rlwrap,然后在后续交互式使用时就能使用到上述功能。

安装方法

  1. 下载安装包
    https://github.com/hanslub42/rlwrap/releases/download/v0.47.1/rlwrap-0.47.1.tar.gz
  2. 解压安装包
    tar xf rlwrap-0.47.1.tar.gz
  3. configure配置
    cd rlwrap-0.47.1 && ./configure --prefix=/usr/local/rlwrap --without-libptytty
    可能在执行过程中会报错,提示依赖没有装,比如ncurses-devel, readline-devel等,按照对应的操作系统去使用yum或者apt安装即可
  4. 编译安装
    make -j
    sudo make install
    #install这一步需要有root权限,否则无法安装到目标位置
  5. 配置用户的环境变量
    在用户的~/.bash_profile文件中加上:
    export PATH=/usr/local/bin:$PATH
    然后source ~/.bash_profile让环境变量即时生效
  6. 执行命令验证是否可用:
    rlwrap disql SYSDBA
    可以在交互式模式下尝试使用上下左右键进行切换历史命令,编辑命令,ctrl+r搜索历史命令等常用操作
评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服