terminal - iTerm2 - zsh - 打开新窗格时保留命令历史记录
问题描述
使用zsh
on MacOS Catalina
,当我iTerm2
通过打开一个新窗格拆分当前窗口时,我希望能够在这个新窗格中保留前一个窗格的命令历史记录(仍处于打开状态)。
这是我当前的配置~/.zshrc
:
# History
export HISTFILE="$HOME/.zsh_history"
HISTSIZE=10000000
export SAVEHIST=$HISTSIZE
# Avoid duplicates
#setopt HIST_IGNORE_ALL_DUPS
# Remove duplicates in history
function remove_duplicates() {
echo "$(history 0 | sort -k2 -k1nr | \
uniq -f1 | sort -n | cut -c8-)" > $HISTFILE
}
remove_duplicates();
setopt inc_append_history
# When the shell exits, append to the history file instead of overwriting it
shopt -s histappend
在此配置中缺少什么或我做错了什么?
只是一个问题:当我打开一个新窗格时,~/.zshrc
是否执行了文件(我的意思是来源类似source ~/.zshrc
)?
解决方案
您可以使用:
setopt share_history
根据man zshoptions
:
此选项既从历史文件中导入新命令,也使您键入的命令附加到历史文件中(后者就像指定 INC_APPEND_HISTORY,如果此选项有效,则应将其关闭)。
推荐阅读
- r - 如何在 excel/sql/R 中将具有两种不同日期格式的日期列标准化为具有单一日期格式的列
- python - ^ 不表示 python 中的行首
- reactjs - react-native-gifted-chat 多次显示相同的消息
- c++ - 如何将 const char* str 解压到模板中
? - c++11 - C++:如何在不定义参数化构造函数的情况下正确初始化基类成员变量?
- java - 带有类型参数的方法和泛型方法类型参数声明之间的理论区别是什么
- javascript - 如何根据网站中的反应路由删除不需要的 CSS?
- applescript - 使用 AppleScript 移动整个文件夹
- python - 如何将 2D 列表 python 转换为一个列表并连接它们
- ios - Fabric 回答 SDK 在 [Fabric with:@[ [Answers class] ]] 上崩溃;