Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 为什么我的mac终端在使用向上箭头键时会出现问题?_Macos_Terminal - Fatal编程技术网

Macos 为什么我的mac终端在使用向上箭头键时会出现问题?

Macos 为什么我的mac终端在使用向上箭头键时会出现问题?,macos,terminal,Macos,Terminal,我通常使用向上箭头键在终端中滚动浏览以前的命令。我注意到在过去的几个月里,当我这样做的时候,我没有得到以前的命令,而是一种“错误行为”。例如,当我按下向上箭头键时,它可能会输入乱码和明显的随机空格以及我命令的一小部分。有人知道是什么导致了这一切吗?有时有效,有时无效。开始变得很烦人了。(仅供参考,我正在使用yosemite和osx,如果有任何关联的话)在我的例子中,在我将.bashrc更改为使用“HISTSIZE=-1”后不久,向上箭头在osx中就停止正常工作了。我未经证实的猜测是bash版本太

我通常使用向上箭头键在终端中滚动浏览以前的命令。我注意到在过去的几个月里,当我这样做的时候,我没有得到以前的命令,而是一种“错误行为”。例如,当我按下向上箭头键时,它可能会输入乱码和明显的随机空格以及我命令的一小部分。有人知道是什么导致了这一切吗?有时有效,有时无效。开始变得很烦人了。(仅供参考,我正在使用yosemite和osx,如果有任何关联的话)

在我的例子中,在我将.bashrc更改为使用“HISTSIZE=-1”后不久,向上箭头在osx中就停止正常工作了。我未经证实的猜测是bash版本太旧,无法处理-1选项,因此bash完全停止记录历史。我的向上箭头键被正确解释,但没有可检索的历史记录。一旦我更改了HISTSIZE,新终端中的向上箭头(和history命令)又开始工作了


说清楚点,我不能说你的问题是否来自同一个原因。我不记得在历史上有过什么胡言乱语,尽管我确实在ls命令中看到了一些奇怪的行为,比如“跑偏”。尽管如此,如果有人在使用向上箭头检索以前的bash命令时遇到问题,似乎值得一试。尝试检查HISTSIZE设置,和/或直接调用history命令,以确保您有向上箭头可检索的历史记录。

我知道这是一个老问题,但我最近遇到了同样的问题。问题可能是您的PS1提示符。您可能没有用
\[…\]

要解决的问题:

  • 在您的终端
    echo$PS1
    -这将显示您当前的PS1设置
  • 确保所有选项(如颜色选项)都包含在
    \[
    \]
    中,并进行设置。e、 g.
    PS1='\[\e[95m\]\u\[\e[93m\]\w:\[\e[92m\]\$”
  • 将新PS1永久保存在.bash_配置文件中或保留bash设置的任何位置
  • 示例:

    我有故障的PS1是
    \[\e[95m\]\u\[\e[93m\]\w:\e[92m\]\$

    我丢失了开头的封套,
    \[
    \w:


    我更正的PS1是
    \[\e[95m\]\u\[\e[93m\]\w:\[\e[92m\]\$

    我自己在工作计算机上遇到这个问题有一段时间了,当从ksh shell更改为bash shell时,我能够解决它

    我推荐这门Lynda课程,它解释了您需要的大部分内容,但只需键入bash即可更改shell


    你试过用不同的键盘打字吗?我在笔记本电脑上,这似乎与键盘无关。我的键盘在其他任何情况下都能正常工作。这更多的是一个评论,而不是一个答案。恕我直言,我不明白为什么我的回答最好归类为评论。他对h中的向上箭头有问题是OSX控制台,我最近遇到了类似的症状,所以我发布了对我有效的修复程序。我的答案中有一些不确定性,但不确定性不会将答案变成评论。用“澄清”、“批评”或“暂时信息”来描述评论.我的回答如何符合这些类别?谢谢,这为我解决了问题。