如何禁止psql命令历史记录中的重复项

9

如何禁止psql命令历史重复?

能否让psql命令历史在输入新命令时删除所有重复的命令历史记录?


1
为了删除已经存在的重复项,在Linux上我们可以使用 uniq ~/.psql_history ~/.psql_history2; mv ~/.psql_history2 ~/.psql_history 命令。 - nyov
2个回答

11

您可以在psql提示符中尝试设置

\set HISTCONTROL ignoredups

您还可以将其设置在名为.psqlrc的文件中,该文件位于用户主目录中。以下是我的.psqlrc文件示例:

\set HISTCONTROL ignoredups
\set COMP_KEYWORD_CASE upper

9

设置内部变量HISTCONTROL

以下内容来自PostreSQL 9.4手册

如果此变量设置为ignorespace,以空格开头的行将不会被输入到历史记录列表中。如果设置为ignoredups,与前一个历史记录相同的行将不会被输入。值ignoreboth结合了这两个选项。如果未设置,或者设置为除上述值以外的任何其他值,则在交互模式下读取的所有行都将保存在历史记录列表中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接