上班用 Mac,回家用 Windows,但是这么多年了,还是没找到比较好的使用 zsh 的解决方案,wsl 倒是可以,但是感觉太小题大做了,我就想要和 zsh 相同的命令补全和命令历史补全体验,但是 2021 年了还是不行,cmder 的历史能用,但是体验差好多
1
finallyeva 2021-04-08 14:45:35 +08:00 1
windows terminal
|
2
zhuangzhuang1988 2021-04-08 14:45:50 +08:00 3
powershell 啊.
https://ohmyposh.dev/ |
3
nicevar 2021-04-08 14:50:15 +08:00 1
windows terminal+oh my posh
|
4
binaryify OP @zhuangzhuang1988 稳,晚上回去我试试
|
6
Tumblr 2021-04-08 14:56:12 +08:00 1
|
7
hellowmykami 2021-04-08 14:57:06 +08:00
就我用的 cmder 吗...
|
8
CallMeReznov 2021-04-08 14:59:48 +08:00 1
|
10
root01 2021-04-08 15:02:49 +08:00
我用 xshell 敲 win 命令也不错啊
|
11
nightwitch 2021-04-08 15:08:02 +08:00
zsh 也有 msys2 的移植版,自己装一个就行
|
13
lithiumii 2021-04-08 15:13:18 +08:00
PowerShell 也还行吧,折腾了一番 oh-my-posh 等等插件
(但平时还是在 WSL 里用 zsh https://vip2.loli.io/2021/04/08/XnHtvkA7qyN8KOY.png |
14
Tumblr 2021-04-08 15:19:07 +08:00
@root01 #9 麻烦?直接 store 里安装 terminal,PowerShell 下载解压就可以用了。。。然后一行命令安装 psreadline + oh-my-posh 。。。
不太明白你说的麻烦是哪一点。。。除非是 Windows 版本不够或没有 store 。 |
15
ysn2233 2021-04-08 15:20:34 +08:00
wsl 有什么不好的呢,也不麻烦
|
16
wangkun025 2021-04-08 15:24:32 +08:00
没啥好的替代品,真的。
|
20
Nerv 2021-04-08 15:42:41 +08:00 2
set-psreadlineoption -predictionsource history
在 powershell 配置文件中加入以上命令即可开启历史补全。 |
21
Nerv 2021-04-08 15:44:23 +08:00 1
|
22
madao2015 2021-04-08 15:49:47 +08:00 1
windows terminal + git bash + zsh, https://gist.github.com/fworks/af4c896c9de47d827d4caa6fd7154b6b, 高亮和补全插件都能装
|
24
lepig 2021-04-08 17:04:48 +08:00
可能真的就我一个在用 babun !!!
|
25
ysc3839 2021-04-08 17:55:12 +08:00 via Android
msys2 + zsh 吧
|
26
ClutchBear 2021-04-08 17:57:29 +08:00
@madao2015 大神 ,厉害, 我弄好了好久, 就是需要这个.
|
27
zhizunzz 2021-04-08 18:01:12 +08:00
babun
|
28
madao2015 2021-04-08 18:03:29 +08:00
@ClutchBear 哈哈,我也是前段时间才找到的,zsh 的补全插件太好用了
|
30
msg7086 2021-04-08 18:07:51 +08:00 via Android
为啥要替代?直接 Windows 下用 zsh 不香吗?
|
32
bthulu 2021-04-08 18:27:29 +08:00
真的有人用 terminal 吗, 难道你们就只需要连那么几台机器?
实际工作当中, 哪个不是几十台上百台机器的, 用 terminal 真的记得住哪台是哪台吗 |
34
cjh1095358798 2021-04-08 18:36:57 +08:00
@Tumblr 很 6 哦
|
36
ScepterZ 2021-04-08 18:38:17 +08:00
我是基于 msys2 配置了一下,不过说实话挺麻烦的,也不算特别快(相比 Linux
|
38
bthulu 2021-04-08 19:12:27 +08:00
@jhdxr 我一直很奇怪, 到底是什么样得开发需要用原生 shell 而不是用 xshell 这类工具.
我自己是 Java 后端开发, ssh 连到服务器, 不仅仅是改改脚本, 看看日志, 还要经常性得上传下载 jar 包, 遇到大得日志文件也是下到本地来进行分析. 开发过程中上传下载是比较频繁得, 难道用 shell 上传下载么, 也不是不能用, 就是比较难用. 而且测试+开发环境服务器零零碎碎也有十几台机器要连, 用 shell 那还不得把这些机器名字记下来了? 再说我办公室里几百号开发人员, 除了运维, 我也没见哪个开发不用 xshell 这类工具而用原生 shell 的. 我真的是特别好奇原生 shell 的强需求场景, 谁能帮我解解惑? |
39
IgniteWhite 2021-04-08 21:19:37 +08:00
@bthulu 如果从 unix 哲学出发使用类 unix 系统的人,会想要在 win 里使用 terminal 。如果是 GUI 和鼠标使用哲学,xshell 当然更加易用。
|
40
jhdxr 2021-04-08 21:20:54 +08:00
@bthulu 你喜欢 xshell 没问题啊,我日常 windows terminal+WSL+fish 我觉得也很爽啊。
java 我也写,但你的这种开发模式坦白说可能是我接近于 10 年前的做法了。现在谁还传 jar 包?不说 docker,maven/gradle 不香吗?大的日志文件我直接在 server 上 less 查找一下一般也就可以了,基于日志的数据统计也都是传输到别的地方汇总处理。为啥还要下载到本地? 至于机器多,上面也已经说了,整个环境几十台机器每台你都『经常』要上去吗?偶尔上去一次的情况是有的,直接从控制台 copy paste 一下也很快啊。你加一大堆书签难道不也得从里边找出来么? |
41
IgniteWhite 2021-04-08 21:25:03 +08:00
|
42
yazoox 2021-04-08 22:00:55 +08:00
@hellowmykami 我也用!挺好用的,开箱即用,不用瞎折腾
|
43
loveuer 2021-04-08 22:01:06 +08:00
@hellowmykami cmder vim 鼠标普通模式和插入模式不能区分我不知道怎么设置,找了好久没设置好,就放弃了
|
44
IgniteWhite 2021-04-08 22:46:20 +08:00
@loveuer 如果用 cmder 的时候把 bash 作为默认 shell 就可以通过这样:
https://github.com/g6ai/dotfiles/wiki/inputrc#vi-mode-string 来设置 vi mode 的光标。如果是 vim 的话也能在同一个 repo 里找到配置和 wiki |
45
msg7086 2021-04-09 06:57:21 +08:00 via Android
@jhdxr #40 书签不难用啊,树结构分类的,不同公司组织,不同项目,都可以分类整理好,不需要找很久。
|
46
bthulu 2021-04-09 08:37:06 +08:00
@jhdxr 书签不比 copy paste 简单多了? 传 jar 包, 下载日志, 只是我这边的需求, 我打个比方的意思是, 上传下载的需求还是比较多的.
按你的意思来说, 用 shell 的前提条件就是: 要连的机器不能太多, 不能有较频繁的上传下载需求. 真能满足这两个条件的, 应该是极少数了吧. |
47
bthulu 2021-04-09 08:39:00 +08:00
@IgniteWhite 我知道 alias 的存在, 也用过, 真是难用, 不直观不方便, 用倒也能用.
|
49
walpurgis 2021-04-09 11:23:58 +08:00 via Android
@bthulu 楼主想要本地 zsh,显然不是用来连接服务器,而且 xshell 和 zsh 都不是一类东西,可以共存
|
50
codder 2021-04-09 11:25:23 +08:00
@hellowmykami 我也用的它
|
51
Chenamy2017 2021-04-09 11:32:07 +08:00
@bthulu 个人习惯而已,有人用 vim,有人用 IDE,不用去试图说服别人,可以建议或者说说你用的,别人会得到有用提示的。
|
54
IgniteWhite 2021-04-10 19:39:33 +08:00
@bthulu sftp 客户端我用 cyberduck 。和用 zsh 写代码是两码事。我说的 ssh 是需要在服务器的 shell 里写代码的时候,如果要 sftp 传文件的话大家都会用专门的软件吧
|