Linux 桌面将何去何从?

2019-05-15 01:40:31 +08:00
 Mayuri

前段时候微软宣布了 Windows Terminal 和 WSL 2,这么香,势必又会有一批人“叛教”了。然而这样一来,本来就没多少人用的 Linux 桌面环境乃至 Linux 发行版用的人就更少了,巨硬这么一出究竟是好事还是坏事呢

17457 次点击
所在节点    Linux
147 条回复
nguoidiqua
2019-05-16 15:23:23 +08:00
@qcts33 我试了下,打开这个 conhost,默认跳到 cmd.exe ,从 powershell 里面打开也是一样。

从我的角度来看,这就是有四个可以打开命令行窗口的工具了(虽然这个 conhost 并没有在菜单里面出现),而它们其实都可以用到 cmd 命令和 powershell 命令,shell 也是可以切换的,所以,真的很累赘。

另外,我看了下它,它好像是为无界面程序提供图形窗口支持的工具,好像并非终端。(真是搞不懂为什么打开它默认跳到 cmd.exe ,感觉也不太爽,要跳起码也要给个跳转到 powershell 的选项吧)
qcts33
2019-05-16 15:49:18 +08:00
@nguoidiqua
你说的这些都是为了兼容性的考虑……毕竟早期的 cmd 既是 shell 又是 terminal,所以现在的 cmd 也需要和以前的 cmd 有类似的行为。不过在 Windows Terminal 之后其他这些东西都只是出于兼容性的考虑而存在的,你无视就好,就当只有 Windows Terminal 一个入口就可以了,没啥好困惑的。

不过这个东西在 Linux 中也是一样的,虽然大家都默认使用 bash,但我从 bash 里面调用 zsh,从 zsh 里面调用 fish 啥的不也是可以的……

另外为啥 conhosts 不算终端?我们现在说的不都是终端模拟器吗?终端模拟器不都是为 shell 提供一个输入输出的界面吗?还是我哪里理解错了?
nguoidiqua
2019-05-16 16:16:37 +08:00
@qcts33

其实没困惑,本身也是无视的,只是觉得菜单有几个命令行工具有点多余,还不好自己卸载。我就随便说下,有人非要说 cmd 和 windows terminal 不一样,我管它们是不是一样哦,反正现在会有三个可以打开命令行的东西。Linux 里面,我自己装一个终端就好了,简洁。要用不一样的 shell,在终端里面切换一下就行了嘛。

conhost 根据我查到的资料来看,感觉好像是 Linux 下面的窗口管理器那种东西,它只是让 cmd.exe 之类的界面能够和系统相融,本身应该没有终端的功能实现。不过,你说是终端就是终端吧,随便了,我对 windows 的技术细节毫无兴趣。

其实我只想说一句话—— windows 包袱太多,很多累赘。
qcts33
2019-05-16 16:32:04 +08:00
@nguoidiqua
虽然像 zsh 这种基本上可以保证兼容性,但一般人还是不敢把 bash 卸载掉的把。那我要是喜欢用 zsh fish 啥的,bash 算是累赘吗?
qcts33
2019-05-16 16:39:59 +08:00
@nguoidiqua
另外说到 Linux 下的终端,那你是装 rxvt 呢还是 xterm 呢还是 konsole 呢还是 gnome-terminal 呢?
nguoidiqua
2019-05-16 16:40:45 +08:00
@qcts33 你觉得累赘就累赘咯,反正 shell 又不会出现在菜单里面,我无所谓的。

其实有系统里面有一万个 shell 我也不会觉得多余,但是菜单或者桌面上有多几个终端图标,我就会觉得多余。
nguoidiqua
2019-05-16 16:43:12 +08:00
@qcts33 cinnamon 自带的,不知道什么终端,反正就一个终端。
jackmod
2019-05-16 16:52:44 +08:00
小孩子才做选择,成年人自然是我全都要。
双系统专治各种不服。
no1xsyzy
2019-05-16 17:18:57 +08:00
@nguoidiqua #107 不会同时存在三个可以执行命令的程序。
我对你的话的理解是命令行的 “入口”,也就是说从仅以默认设置安装这些程序而不进行任何私人配置,此时通过某个快捷方式开启一个可以直接输入命令执行的近似纯文本窗口。
那样的话入口要么还是两个,要么是四个,我不清楚你这个三个是怎么来的。
Windows Terminal 还是得运行 CMD 或者 PowerShell,具体是否会取消 Console Host 的入口(就像删 IE 那样)现在不确定,但肯定不会说新给一个入口然后这个只会去运行其中一个。

况且到时候 Windows Terminal 好像是进应用商店,你不去装是不会有的。

另外,实际使用中的入口显然是 Win+X,I,而不是那些花花绿绿的快捷方式。
我连回收站出现在桌面都接受不了,因为会不由自主地去清空,那样回收站存在的意义就消失了。
桌面不显示图标,并且从来不开开始菜单。所有(非开机自启动的或者其他程序 /双击文件调用的)程序都是通过 Win+R 启动的,顺便还写了个短名称维护脚本。
这个操作是如此地方便并被忽视以致于我想写 “教微软高效用 Windows ” 了
charlie21
2019-05-16 17:20:19 +08:00
it is not important
ooxxcc
2019-05-16 17:22:18 +08:00
@sama666 我在用 arch,怎么了
no1xsyzy
2019-05-16 17:24:41 +08:00
@nguoidiqua #126 上面的第三段应该是回复这里的。
菜单和桌面没有任何内容,我启动一次电脑见到桌面基本就两次,一次刚开机,一次将关机。
而开始菜单只有想调设置的时候才用,因为似乎 Win+X 不带,Win+I 又太远,有时一些设置只有搜索是最方便的。
nguoidiqua
2019-05-16 17:38:45 +08:00
@no1xsyzy windows terminal 打开新标签的时候是会给个选择的,选择开启 cmd 还是 powershell,我的意思就是既然如此,那么其实 cmd 和 powershell 应该不需要另外的打开方式了。其实 powershell 那个本身也是可以运行 cmd 的,所以出 powershell 的时候就没必要保留 cmd 的那个入口了。

至于具体数量是几个,其实我的 win10 上面 powershell 在菜单就有四个快捷方式 pw、pw x86、pw ise、pw ise x86,反正多余就是了。

至于打开方式,其实我也一般 win + r win + x 打开,就是因为菜单太长,懒得去翻,菜单上面我一般就用最上面几个常用。这些东西自己当然总是有解决方式的,但是总归优点不太喜欢。
no1xsyzy
2019-05-16 18:11:34 +08:00
@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 就行),结合上述内容,你就可以看到自己说的话有多蠢。
no1xsyzy
2019-05-16 18:25:08 +08:00
@nguoidiqua #193
还是那句,你可以把开始菜单里两个快捷方式删掉,眼不见为净。

你为什么会觉得 PowerShell 可以运行 CMD ?
来试试这句:
```
"C:\Windows\System32\tasklist.exe"
```
包括引号,PowerShell 下和 CMD 下运行结果一样吗?

Python 还有 IDLE 呢,也能同时装上各种版本,32 位 /64 位,2.7/3.7 等。
——其实这点表现的是 M$ 对 PowerShell 的定位不明。我挺赞同前几天看到谁说这其实是个 PowerScript# 的。
……写 Script 真是爽得不行,当 Shell 还是省省。
wenhainan
2019-05-17 09:48:06 +08:00
@no1xsyzy 虽然说出了你个人的原因,但是你黑的点很无厘头,甚至算不上一个上的了台面的例子.
explore2233
2019-05-17 15:00:39 +08:00
@sama666 我我我!我就是那条还在用 Arch 的汉子……哈哈哈
explore2233
2019-05-17 15:02:38 +08:00
@wenhainan 其实 KDE 比 Windows 要好用一些,而且 Gnome 个人观点实在是用不来哈哈哈
biggray0312
2019-05-18 17:04:59 +08:00
感觉现在很多开发人员只是需要一个 linux 的服务器环境, 没有深度使用的需求, 与桌面也就没有关系, WSL 恰恰就是满足了这方面的需求, 所以我觉得对 linux 的桌面来说不会改变什么.

arch 的 aur 超好用, 很省心.
桌面 xfce 我的经验里是最稳的.
linux 适合有耐心有时间的人.
no1xsyzy
2019-05-19 19:46:48 +08:00
@wenhainan 如果你说的是我 #134 和 #135 的内容。
我并非在说出我个人的原因,我纯粹是在仿写 @nguoidiqua 的几段话并把其中的 Windows 相关内容换成 Linux 的,目的是归谬…… 不过我忘了加上每一个的原层数,是我的疏漏。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/564209

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX