更新 3-更好的解决方案
我一直在 Google 上搜索,直到找到了另一个解决方案。最后我terminfo
从某个地方下载了目录(我忘了在哪里,所以我只是在我的网站上发布了 zip 文件terminfo
)并用新内容替换了我当前的工作目录。
对我来说,该terminfo
目录位于...
/usr/share/terminfo
更新2
巴哈马特帮助我找到了解决方案。我将以下内容添加到我的.profile
...
TERM="xterm"
export TERM
...我仍然能够保留“xterm-256color”。
更新
我弄清楚了为什么会发生这种情况。有一次,我更改了一些设置...
默认是“xterm-color”,我将其更改为“xterm-256color”。发生这种情况有什么原因吗?
我刚刚在全新安装的 Mac OS X Lion 上设置了第二个管理员用户帐户,现在当我尝试清除终端时,出现以下错误...
Hristo $ clear
terminals database is inaccessible
这对两个用户帐户来说都是一个问题,我不知道为什么。我不确定这是否有帮助,但以下是$TERM
设置为...
Hristo $ echo $TERM
xterm-256color
对于为什么会发生这种情况有什么想法吗?
如果我需要出示我的.bashrc
或.profile
,请告诉我。
答案1
您的值似乎TERM
无法识别。您可能在 中设置了 TERM 值.profile
(或类似值),或者 中的文件丢失/损坏或权限无效/usr/share/terminfo/
。
答案2
在 Mac OS X Lion 1.07 中,终端现在支持 256 色、背景颜色擦除 (BCE) 和一些其他功能,使其与现代 xterm 更加兼容,并且 $TERM 的默认值现在是 xterm-256color,而不是 xterm-color(代表 xterm 的一个较旧的分支,功能较少)。
如果您升级到 Lion,任何使用 xterm-color 的设置配置文件都将使用新的默认值。(顺便说一下,“将终端声明为”所做的只是设置 $TERM 的值。)
您看到的错误表明 xterm-256color 的相应 terminfo 文件缺失或无法访问。您可以尝试再次安装 Lion。此外,有些人报告说在 Lion 上安装 Xcode 4 会导致此问题。
您可以使用以下 shell 命令测试 xterm-256color 的有效性:
infocmp xterm-256color
这将显示错误或 xterm-256color 的适当 terminfo 值,如果找到,则显示其使用的 terminfo 文件的路径名。
答案3
xterm-256color 应该存在于/usr/share/terminfo/78
。
运行此命令并仔细检查它是否存在:
ls -laR /usr/share/terminfo
过去,Xcode 存在权限混乱的问题。最糟糕的情况是,使用磁盘实用程序修复您的权限。您需要从安装 DVD 启动并验证/修复您的启动分区。
答案4
非常容易修复...
创建一个符号链接,以便计算机将 xterm-color 视为 xterm-256color:
[作为根]
ln -s /usr/share/terminfo/78/xterm-color /usr/share/terminfo/78/xterm-colorxterm-256color