Tuyen Pham Asked: 2019-11-21 10:52:18 +0800 CST2019-11-21 10:52:18 +0800 CST 2019-11-21 10:52:18 +0800 CST 从保存到历史记录中排除特定命令 772 我想从保存到 zsh 历史记录中排除一些特定的命令。 例如:无论是否设置,都将 mpv/mpc 命令从保存到 zsh 历史记录中排除HIST_IGNORE_SPACE。 我在这里找到了答案,但是当我测试它时它不起作用。 zsh command-history 1 个回答 Voted Best Answer Jeff Schaller 2019-11-21T11:32:14+08:002019-11-21T11:32:14+08:00 在添加到历史文件之前考虑一个钩子函数来检查命令: zshaddhistory() { case ${1%% *} in (mpv|mpc) return 1;; esac return 0; } 引用手册页的部分(man zshmisc在“钩子函数”下): 如果任何钩子函数返回状态 1(或除 2 之外的任何非零值,尽管对于未来版本的 shell 不能保证),历史行将不会被保存,尽管它会在历史中徘徊直到下一行被执行,允许您立即重用或编辑它。 如果任何钩子函数返回状态 2,历史行将保存在内部历史列表中,但不会写入历史文件。如果发生冲突,则采用第一个非零状态值。
在添加到历史文件之前考虑一个钩子函数来检查命令:
引用手册页的部分(
man zshmisc
在“钩子函数”下):