首页 > 解决方案 > 如何从文件加载fish命令历史

问题描述

有没有办法从文件中加载命令历史记录?

我喜欢定期清除我的历史记录,但始终在历史记录中保留一组有用的命令以便于访问。

在 bash 中,这可以通过以下方式完成:

history -r file.txt

这可以在鱼身上完成吗?

标签: fish

解决方案


根据我的经验,你想要做的并不是真正必要的,因为 a)fish 只记住命令的最新实例,并且 b)通常在使用可用上下文来提供命令历史记录中最合适的条目方面做得非常好, c) 一旦保存的命令数量达到限制,就已经修剪旧条目。

但是,假设您已将首选历史记录子集保存到~/.local/share/fish/fish_history.save

builtin history clear
cp ~/.local/share/fish/fish_history.save ~/.local/share/fish/fish_history
history merge

首先builtin是避免提示询问您是否真的要清除历史记录。请注意,您保存的历史记录必须是有效的 YAML。它是一个文本文件,但比单独一行中的每个命令要复杂一些。


推荐阅读