gpt4 book ai didi

linux - 在 bash 中取消失败的反向搜索,但保留我输入的内容

转载 作者:IT王子 更新时间:2023-10-29 00:22:33 29 4
gpt4 key购买 nike

我几乎每次运行命令时都按 Ctrl+R,但在输入一个词(例如查找)后,我意识到该命令不在我的历史记录中,所以我按预期得到了:

(failed reverse-i-search)`find`: cat fire.txt

现在如何取消搜索但在我的命令行中保留“查找”?无论我按什么键,'cat fire.txt' 都会出现在我的命令行中,我必须再次删除并重新输入我的命令。

我正在使用 Ubuntu。谢谢。

最佳答案

我不知道您是否可以完全按照自己的意愿行事,但您可以得到一些模糊的结果(尽管它牺牲了反向搜索的其他功能)。

将键序列绑定(bind)到 history-search-backward并通过输入起始词然后点击绑定(bind)序列来进行搜索。

history-search-backward ()

Search backward through the history for the string of characters between the start of the current line and the point. The search string must match at the beginning of a history line. This is a non-incremental search. By default, this command is unbound.

但这只适用于以您正在搜索的单词开头的命令(并且不是增量的)。

更新:刚刚在寻找其他东西时发现,在 bash 中 NEWS对于 4.3,有一个条目说

b. There are new bindable commands to search the history for the string of characters between the beginning of the line and the point (history-substring-search-forward, history-substring-search-backward)

所以这意味着使用足够新的 readline 版本(在 NEWS 的 readline 部分)你仍然可以使用这个版本进行子字符串历史搜索。

关于linux - 在 bash 中取消失败的反向搜索,但保留我输入的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33358049/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com