psql shell中返回上一行及调出历史代码块的快捷键是什么?
psql历史SQL块调用方法
- 快速调出上一段完整输入的SQL:使用快捷键
\e,这是psql内置edit命令的缩写,按下后会自动唤起系统默认编辑器,加载你上一次输入的完整SQL内容(哪怕是分多行输入的未执行成功的建表语句也会完整拼接加载),你在编辑器内修改完成后保存关闭,psql会自动执行修改后的整段代码,不需要逐行重新输入,这就是大部分教程讲师使用的一键调出整段代码的操作。 - 单行翻找历史输入:除了上箭头
↑,也可以使用Ctrl+p(上一行)、Ctrl+n(下一行)操作,逻辑和shell通用快捷键一致。 - 搜索历史SQL:按下
Ctrl+r后输入关键词,会自动匹配历史输入中包含对应关键词的语句,找到后按回车即可调出。
你之前输入
);后按上箭头只能调出单行的原因是,psql默认的上箭头单次操作仅调取历史记录中的单条输入行,若建表语句分10行输入,逐行翻找效率很低,使用\e即可直接获取完整拼接后的整段SQL。
额外优化提示:
- 输入
\s可以查看psql的全部历史输入记录,确认之前的建表语句是否已被记录。 - 你可以在
~/.psqlrc配置文件中添加配置项优化使用体验,比如添加set HISTCONTROL ignoredups可以自动去除重复的历史记录。
内容的提问来源于stack exchange,提问作者Harlan Reece
相关产品推荐
相关产品推荐

