进一步阅读

进一步阅读

由于某种原因,我没有终端中的命令历史记录,也无法完成路径或命令。按箭头还会显示像^[[D和 这样的符号^[[C

shell 是 bash,并且 .bashrc 具有必要的自动完成配置。

一些输出的结果:

echo $SHELL: /bin/bash
echo $PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin
echo $HISTFILE: 
echo $HISTSIZE: 
echo $HISTFILESIZE: 
echo $TERM: xterm-256color

此外,我的用户名和密码未在$或之前显示#

答案1

通过没有HISTFILEand HISTSIZE/ HISTFILEZISEundefined,您已经表明bash您不想要历史记录。

以下是bash我为运行的每个进程获取一个日志文件的方法:

~/.bashrc

[[ -d ~/.history ]] || mkdir --mode=0700 ~/.history
[[ -d ~/.history ]] && chmod 0700 ~/.history
HISTFILE=~/.history/history.$(date +%y%b%d-%H%M%S).$$
# close any old history file by zeroing HISTFILESIZE  
HISTFILESIZE=0  
# then set HISTFILESIZE to a large value
HISTFILESIZE=4096  
HISTSIZE=4096 

答案2

您已运行 Debian Almquist shell,并且当前正在与其对话。所有症状均符合:

  • 提示是$
  • 没有光标键控制序列识别
  • +o vi+o emacs在输出中set -o
  • 没有改变set -o emacs

Almquist 外壳有行编辑功能。FreeBSD Almquist shell 有此功能,BusyBox Almquist shell 也有此功能。DebianAlmquist shell 缺少它,因为它没有被编译进去。DebianAlmquist shell 在 Ubuntu(和 Debian)上被刻意简化,大约十五年前 Ubuntu 和 Debian 就切换/bin/sh到了它,这显著提高了许多系统脚本的速度,确切地说因为这个壳缺少其他壳的花哨功能。

如果您通过运行来调用它sh,这很可能是由于环境变量的值SHELLexit该 shell 将返回到您原来的 Bourne Again shell。

进一步阅读

  • 破折号。 2007 年。Ubuntu 维基百科。

相关内容