关于 Mac 终端不能显示历史纪录的问题

2015-10-13 20:13:15 +08:00
 gyzit

我根据网上教程把终端切换到 ZSH 后,想用回 Bash 。
于是切换回 Bash 后,点击键盘上就再也不能显示之前的操作历史记录了。
怎样做能恢复它的显示呢?
PS :在终端未退出前的历史纪录是能看到的,但是退出终端后再打开就看不到之前的历史纪录了。
谢谢~

4957 次点击
所在节点    macOS
11 条回复
kittyoung
2015-10-13 20:31:25 +08:00
set|grep his
gyzit
2015-10-13 20:37:57 +08:00
@kittyoung

GuanYuzhesMBP:~ GuanYuzhe$ set|grep his
HISTFILE=/Users/GuanYuzhe/.bash_sessions/8A86197D-6AEC-4434-AA70-287C19347466.historynew
SHELLOPTS=braceexpand:emacs:hashall:histexpand:history:interactive-comments:monitor
SHELL_SESSION_HISTFILE=/Users/GuanYuzhe/.bash_sessions/8A86197D-6AEC-4434-AA70-287C19347466.history
SHELL_SESSION_HISTFILE_NEW=/Users/GuanYuzhe/.bash_sessions/8A86197D-6AEC-4434-AA70-287C19347466.historynew
SHELL_SESSION_HISTFILE_SHARED=/Users/GuanYuzhe/.bash_history
shell_session_history_allowed ()
if shopt -q histappend; then
shell_session_history_check ()
if shell_session_history_allowed; then
shell_session_history_enable;
if [ "$PROMPT_COMMAND" = "shell_session_history_check" ]; then
if [[ $PROMPT_COMMAND =~ (.*)(; *shell_session_history_check *| *shell_session_history_check *; *)(.*) ]]; then
shell_session_history_enable ()
shell_session_history_allowed && shell_session_save_history;
shell_session_save_history ()
shell_session_history_enable;
history -a;
echo -ne '\n...copying shared history...';
echo -ne '\n...saving history...';
echo -n 'truncating history files...';
gyzit
2015-10-13 20:43:53 +08:00
@kittyoung 接下来要怎么做呢?谢谢
kittyoung
2015-10-13 20:48:49 +08:00
@gyzit
touch ~/.bash_sessions_disable
10.11 的这个功能感觉不实用 禁用掉好了
gyzit
2015-10-13 20:59:51 +08:00
@kittyoung 可是还是不能退出终端后显示上次的历史纪录
按你说的运行了,之后运行 set|grep his 变成这个:
GuanYuzhesMBP:~ GuanYuzhe$ set|grep his
HISTFILE=/Users/GuanYuzhe/.bash_history
SHELLOPTS=braceexpand:emacs:hashall:histexpand:history:interactive-comments:monitor
GuanYuzhesMBP:~ GuanYuzhe$
gyzit
2015-10-13 21:01:18 +08:00
@kittyoung 我之前运行过 oh-my-zsh 自动包的,不知道和这个有无关系。
kittyoung
2015-10-13 21:05:52 +08:00
@gyzit cat ~/.bash_history
还是不能退出终端后显示上次的历史纪录
显示上次的历史纪录 是指 运行 history 吗?
gyzit
2015-10-13 21:08:43 +08:00
@kittyoung 是的没错,是运行过的命令的纪录。我朋友的机器在终端输入 exit 后,会有 saving session 的字样,我就是直接 logout 。
GuanYuzhesMBP:~ GuanYuzhe$ cat ~/.bash_history
cat: /Users/GuanYuzhe/.bash_history: Permission denied
GuanYuzhesMBP:~ GuanYuzhe$ sudo cat ~/.bash_history
sh /Users/GuanYuzhe/Desktop/disable_activation_osx
exit
GuanYuzhesMBP:~ GuanYuzhe$
gyzit
2015-10-13 21:09:56 +08:00
@kittyoung 就是在终端按键盘 上箭头 的那个历史纪录,没有退出终端是能看到的,退出后就看不到了。谢谢
kittyoung
2015-10-13 21:11:45 +08:00
@gyzit sudo chown GuanYuzhe ~/.bash_history
gyzit
2015-10-13 21:12:52 +08:00
@kittyoung 可以了!!! 万分谢谢!!!!!!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/227770

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX