Gnome 终端中的 Vim 说“输出不是终端”

MMC*_*VII 2 terminal gnome-terminal

我有几个理由认为我的终端就像一个控制台。

我使用 GNOME 终端 3.18.3。

当我在 Fedora 23 上从我的终端打开 vim 时,会发出以下警告:“Vim:警告:输出不是终端”。

当我打开命令手册时,它不会将终端切换为“阅读”模式。我的意思是它不会让我进入可以使用 HJKL 滚动并使用 q 退出的手册页。相反,它只是一举将手册的内容打印为像 ls 这样的命令的结果。

ls 之类的命令没有颜色。

我认为这是在我尝试使用 Ctrl+Alt+F3(从控制台)使用我的计算机之后发生的。

如何将我的终端设置回之前的状态?

Tho*_*key 5

您可能(尝试)将 shell 的输出重定向到一个文件,例如,类似

bash -i | tee foo
$ vim
Vim: Warning: Output is not to a terminal
Run Code Online (Sandbox Code Playgroud)

虽然您可以通过这种方法从键盘读取(大多数)命令,但输出不再是终端。您可以通过关闭该 shell 并以不同方式捕获输出来恢复:该script命令可以捕获发送到终端的输出而不会干扰它。例如

script -c bash foo
Run Code Online (Sandbox Code Playgroud)

将在运行该命令时写入发送到终端的所有文本bash,并且输出仍将是终端(而不是管道或文件)。

进一步阅读: