You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从sqlline命令历史中重新执行指定命令?

在sqlline 1.9.0中重新执行历史命令的替代方法

我在sqlline 1.9.0里能用!history查看命令历史,示例如下:

0: jdbc:phoenix:> !history
  139  16:45:44  SELECT DISTINCT BIOBANKSUBJECTID FROM VCF;
  ...
  145  20:06:20  !/139
  146  20:06:30  !rerun 139
  147  20:07:00  !rerun !139

尝试过像Unix系统那样用!139重新执行对应历史命令,但该方式无效;!/139、!rerun 139这些命令也都失败了。除了复制粘贴,还有以下几种可行的方法:

  • 上下箭头快速切换历史命令:直接按↑/↓箭头键就能浏览之前执行过的所有命令,找到目标命令后回车即可重新执行,这是sqlline最常用的历史命令复用方式。
  • 尝试!run <命令编号>语法:部分sqlline版本支持!run加命令编号的方式,比如执行!run 139,如果!rerun失效可以试试这个命令。
  • 导出历史到文件再执行:先用!history save my_history.sql把所有历史命令导出到本地文件,编辑文件保留需要的命令后,用!run my_history.sql执行该文件。

如果上述方法都不适用,可能是sqlline 1.9.0的版本限制,建议升级到1.10及以上版本,新版本对历史命令的支持更完善,已经兼容Unix风格的!n语法。

内容的提问来源于stack exchange,提问作者kc2001

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 11:30:13