@
nguoidiqua #123 好像你有什么误区。
> 为无界面程序提供图形窗口支持的工具
> 它只是让 cmd.exe 之类的界面能够和系统相融
这个就是终端模拟器的含义,Linux 下通常说的终端也就是这个概念。你在 cinnamon 下用的 Gnome Terminal 其实也就是个 ConHost。具体来说你通过文件浏览器在 /bin、/usr/bin 下找到的程序比如 bash 双击打开也是开了 Terminal。
这个是更久的历史,关乎电传打字机。
跟 Windows 无关,甚至在 Windows Terminal 之前你不怎么看得到微软提 “ Terminal ” 这个词,XP 时代叫 “ Command Prompt ”,后来叫 “ Console ”。
另外,ConHost 也是可以指定 Shell 的,把 Shell 的可执行文件名作为第一个参数传进去。PowerShell 和 git bash 测试通过。
————
为什么我不喜欢 Linux 呢,你看吧,现在这个命令行工具有一个 Bash,有一个 Zsh,马上又来一个 xterm。……
现在你说的这个吧,有个 Wine 了,马上来个 kvm,共存的,虽然这两个都可以自己手动开启或者关闭,但是我就是感觉特别累赘。
社区总是想搞些新的东西,又不敢抛掉老的东西,全部混在一起。
——
Bash 和 Zsh 就没有终端吗?为什么不能把 shell 和终端分开。xterm 出来后,它们自带的终端肯定还会留着。
——
可以在 /bin/bash 里面用 zsh 吗?删了这个 /bin/bash 有影响吗?总之,能不能自己装个喜欢的终端,然后删掉这两个?
……
至于我前面说 bash 和 zsh,因为我也不知道叫什么,反正说的就是平时执行 bash 命令和 zsh 命令的那两个窗口,叫 bash terminal zsh terminal 吗?我看好像一般说起来都不分那么清楚吧,好像都是 shell 终端混为一谈直接叫 bash、zsh。说实在的,这也是我觉得 linux 有点乱的原因所在。
——
我也不管它们是不是终端叫什么名字是不是和 shell 分开的了能不能卸载了,我不想扯这些名义之争。总之等 xterm 发布,系统内自带三个可以运行命令行的程序了对不对?
我说的 bash 和 zsh 就是指那两个用来运行命令的程序,我想你明白我所指,我当然不会拿 shell 去和 xterm 相提并论,我说的只是这三个窗口。
——
事实证明,大家主要都是把 bash 和 zsh 当终端来的,至于它们的 shell 部分到底是系统内核之上提供的,还是它们和终端工具绑在一起,我真不知道……
——
我自己测试了下,/bin/bash 里面执行 zsh,其实就是打开了 /bin/zsh,两者效果完全一样。而 /bin/zsh 里面执行 bash 和打开 /bin/bash 也完全一样,至于 xterm 里面运行 bash 或是 zsh 是直接调用它们的 shell 还是直接载入 /bin/bash 和 /bin/zsh 目前不清楚,我也懒得去装一个试试了。反正目前这种情况,我觉得叫它们 shell 或是终端都不恰当,我一开始叫它们命令行工具,反而是最准确的说法。
——
我试了下,打开这个 gnome-terminal,默认跳到 /bin/bash,从 zsh 里面打开也是一样。
从我的角度来看,这就是有四个可以打开命令行窗口的工具了(虽然这个 gnome-terminal 并没有在菜单里面出现),而它们其实都可以用到 bash 命令和 zsh 命令,shell 也是可以切换的,所以,真的很累赘。
另外,我看了下它,它好像是为无界面程序提供图形窗口支持的工具,好像并非终端。(真是搞不懂为什么打开它默认跳到 /bin/bash,感觉也不太爽,要跳起码也要给个跳转到 zsh 的选项吧)
————
简单替换,完全一致。如果你能理解 *nix 下的进程间通信机制并能实现一个 terminal (简单的 web terminal 就行),结合上述内容,你就可以看到自己说的话有多蠢。