• 请不要在回答技术问题时复制粘贴 AI 生成的内容
binaryify
V2EX  ›  程序员

Windows 上有 zsh 的替代品吗

  •  
  •   binaryify · Apr 8, 2021 · 9554 views
    This topic created in 2036 days ago, the information mentioned may be changed or developed.

    上班用 Mac,回家用 Windows,但是这么多年了,还是没找到比较好的使用 zsh 的解决方案,wsl 倒是可以,但是感觉太小题大做了,我就想要和 zsh 相同的命令补全和命令历史补全体验,但是 2021 年了还是不行,cmder 的历史能用,但是体验差好多

    Supplement 1  ·  Apr 8, 2021
    Windows Terminal + oh my posh 确实很舒服
    54 replies  •  2021-04-10 19:39:33 +08:00
    finallyeva
    finallyeva
    Apr 8, 2021❤️1
    1
    windows terminal
    zhuangzhuang1988
    zhuangzhuang1988
    Apr 8, 2021❤️3
    2
    powershell 啊.
    https://ohmyposh.dev/
    nicevar
    nicevar
    Apr 8, 2021❤️1
    3
    windows terminal+oh my posh
    binaryify
    binaryify
    OP
    Apr 8, 2021
    4
    @zhuangzhuang1988 稳,晚上回去我试试
    binaryify
    binaryify
    OP
    Apr 8, 2021
    5
    @nicevar 可以,晚上回去我试试
    Tumblr
    Tumblr
    Apr 8, 2021❤️1
    6
    Windows Terminal + PowerShell + PSReadLine + Oh-My-Posh


    PSReadLine 和 PowerShell 都对版本有要求,直接最新就 OK 了。
    hellowmykami
    hellowmykami
    Apr 8, 2021
    7
    就我用的 cmder 吗...
    root01
    root01
    Apr 8, 2021
    9
    @Tumblr 我看了下 安装好麻烦
    root01
    root01
    Apr 8, 2021
    10
    我用 xshell 敲 win 命令也不错啊
    nightwitch
    nightwitch
    Apr 8, 2021
    11
    zsh 也有 msys2 的移植版,自己装一个就行
    binaryify
    binaryify
    OP
    Apr 8, 2021
    12
    @root01 #10 zsh 用了就很难回去了,真的好用
    lithiumii
    lithiumii
    Apr 8, 2021
    13
    PowerShell 也还行吧,折腾了一番 oh-my-posh 等等插件
    (但平时还是在 WSL 里用 zsh

    https://vip2.loli.io/2021/04/08/XnHtvkA7qyN8KOY.png
    Tumblr
    Tumblr
    Apr 8, 2021
    14
    @root01 #9 麻烦?直接 store 里安装 terminal,PowerShell 下载解压就可以用了。。。然后一行命令安装 psreadline + oh-my-posh 。。。
    不太明白你说的麻烦是哪一点。。。除非是 Windows 版本不够或没有 store 。
    ysn2233
    ysn2233
    Apr 8, 2021
    15
    wsl 有什么不好的呢,也不麻烦
    wangkun025
    wangkun025
    Apr 8, 2021
    16
    没啥好的替代品,真的。
    root01
    root01
    Apr 8, 2021
    17
    @Tumblr 我 ltsc 版本
    root01
    root01
    Apr 8, 2021
    18
    @root01 而且系统本来就自带 powershell
    root01
    root01
    Apr 8, 2021
    19
    @binaryify 我不会搞啊
    Nerv
    Nerv
    Apr 8, 2021❤️2
    20
    set-psreadlineoption -predictionsource history
    在 powershell 配置文件中加入以上命令即可开启历史补全。
    madao2015
    madao2015
    Apr 8, 2021❤️1
    22
    windows terminal + git bash + zsh, https://gist.github.com/fworks/af4c896c9de47d827d4caa6fd7154b6b, 高亮和补全插件都能装
    binaryify
    binaryify
    OP
    Apr 8, 2021
    23
    @ysn2233 #15 wsl 里的我装了,但是有开销,很多项目没必要在 wsl 里面跑,很多时候就想简单跑下
    lepig
    lepig
    Apr 8, 2021
    24
    可能真的就我一个在用 babun !!!
    ysc3839
    ysc3839
    Apr 8, 2021 via Android
    25
    msys2 + zsh 吧
    ClutchBear
    ClutchBear
    Apr 8, 2021
    26
    @madao2015 大神 ,厉害, 我弄好了好久, 就是需要这个.
    zhizunzz
    zhizunzz
    Apr 8, 2021
    27
    babun
    madao2015
    madao2015
    Apr 8, 2021
    28
    @ClutchBear 哈哈,我也是前段时间才找到的,zsh 的补全插件太好用了
    GlobalNPC
    GlobalNPC
    Apr 8, 2021 via Android
    29
    @lepig
    @zhizunzz
    你们用的 babun 卡吗?我用着为啥很卡
    msg7086
    msg7086
    Apr 8, 2021 via Android
    30
    为啥要替代?直接 Windows 下用 zsh 不香吗?
    lepig
    lepig
    Apr 8, 2021
    31
    @infun 不卡。 我是 win7 上用的。 就是每次打开的时候得等等。
    bthulu
    bthulu
    Apr 8, 2021
    32
    真的有人用 terminal 吗, 难道你们就只需要连那么几台机器?
    实际工作当中, 哪个不是几十台上百台机器的, 用 terminal 真的记得住哪台是哪台吗
    jhdxr
    jhdxr
    Apr 8, 2021
    33
    @bthulu 谁没事直接连那几十上百台机器。。。要直接连的也就几台。剩下的都有控制台啊
    cjh1095358798
    cjh1095358798
    Apr 8, 2021
    34
    @Tumblr 很 6 哦
    bthulu
    bthulu
    Apr 8, 2021
    35
    @jhdxr 那不还是走控制台嘛, terminal 就为了连那几台机器么, 用的着这么折腾, 随便找个用用就行了
    ScepterZ
    ScepterZ
    Apr 8, 2021
    36
    我是基于 msys2 配置了一下,不过说实话挺麻烦的,也不算特别快(相比 Linux
    jhdxr
    jhdxr
    Apr 8, 2021
    37
    @bthulu 日常开发机啊。。。开发环境还不对自己好一点?
    bthulu
    bthulu
    Apr 8, 2021
    38
    @jhdxr 我一直很奇怪, 到底是什么样得开发需要用原生 shell 而不是用 xshell 这类工具.
    我自己是 Java 后端开发, ssh 连到服务器, 不仅仅是改改脚本, 看看日志, 还要经常性得上传下载 jar 包, 遇到大得日志文件也是下到本地来进行分析. 开发过程中上传下载是比较频繁得, 难道用 shell 上传下载么, 也不是不能用, 就是比较难用. 而且测试+开发环境服务器零零碎碎也有十几台机器要连, 用 shell 那还不得把这些机器名字记下来了? 再说我办公室里几百号开发人员, 除了运维, 我也没见哪个开发不用 xshell 这类工具而用原生 shell 的.
    我真的是特别好奇原生 shell 的强需求场景, 谁能帮我解解惑?
    FurN1
    FurN1
    Apr 8, 2021
    39
    @bthulu 如果从 unix 哲学出发使用类 unix 系统的人,会想要在 win 里使用 terminal 。如果是 GUI 和鼠标使用哲学,xshell 当然更加易用。
    jhdxr
    jhdxr
    Apr 8, 2021
    40
    @bthulu 你喜欢 xshell 没问题啊,我日常 windows terminal+WSL+fish 我觉得也很爽啊。

    java 我也写,但你的这种开发模式坦白说可能是我接近于 10 年前的做法了。现在谁还传 jar 包?不说 docker,maven/gradle 不香吗?大的日志文件我直接在 server 上 less 查找一下一般也就可以了,基于日志的数据统计也都是传输到别的地方汇总处理。为啥还要下载到本地?

    至于机器多,上面也已经说了,整个环境几十台机器每台你都『经常』要上去吗?偶尔上去一次的情况是有的,直接从控制台 copy paste 一下也很快啊。你加一大堆书签难道不也得从里边找出来么?
    FurN1
    FurN1
    Apr 8, 2021
    41
    @bthulu
    @jhdxr
    ssh config 里面是可以加一堆 alias 的。更何况还有好多 CLI 软件来让 ssh alias 的管理变得更加方便。不知道不代表它不存在。
    yazoox
    yazoox
    Apr 8, 2021
    42
    @hellowmykami 我也用!挺好用的,开箱即用,不用瞎折腾
    drealism
    drealism
    Apr 8, 2021
    43
    @hellowmykami cmder vim 鼠标普通模式和插入模式不能区分我不知道怎么设置,找了好久没设置好,就放弃了
    FurN1
    FurN1
    Apr 8, 2021
    44
    @loveuer 如果用 cmder 的时候把 bash 作为默认 shell 就可以通过这样:
    https://github.com/g6ai/dotfiles/wiki/inputrc#vi-mode-string
    来设置 vi mode 的光标。如果是 vim 的话也能在同一个 repo 里找到配置和 wiki
    msg7086
    msg7086
    Apr 9, 2021 via Android
    45
    @jhdxr #40 书签不难用啊,树结构分类的,不同公司组织,不同项目,都可以分类整理好,不需要找很久。
    bthulu
    bthulu
    Apr 9, 2021
    46
    @jhdxr 书签不比 copy paste 简单多了? 传 jar 包, 下载日志, 只是我这边的需求, 我打个比方的意思是, 上传下载的需求还是比较多的.
    按你的意思来说, 用 shell 的前提条件就是: 要连的机器不能太多, 不能有较频繁的上传下载需求.
    真能满足这两个条件的, 应该是极少数了吧.
    bthulu
    bthulu
    Apr 9, 2021
    47
    @IgniteWhite 我知道 alias 的存在, 也用过, 真是难用, 不直观不方便, 用倒也能用.
    wsseo
    wsseo
    Apr 9, 2021
    48
    @bthulu 这属于品牌效应,爱屋及乌,很多人都会觉得系统自带的比第三方的好用。
    walpurgis
    walpurgis
    Apr 9, 2021 via Android
    49
    @bthulu 楼主想要本地 zsh,显然不是用来连接服务器,而且 xshell 和 zsh 都不是一类东西,可以共存
    codder
    codder
    Apr 9, 2021
    50
    @hellowmykami 我也用的它
    Chenamy2017
    Chenamy2017
    Apr 9, 2021
    51
    @bthulu 个人习惯而已,有人用 vim,有人用 IDE,不用去试图说服别人,可以建议或者说说你用的,别人会得到有用提示的。
    binaryify
    binaryify
    OP
    Apr 9, 2021
    52
    @walpurgis 上面确实楼歪了
    twor2
    twor2
    Apr 9, 2021
    53
    @bthulu 哪个不是? 我不是
    FurN1
    FurN1
    Apr 10, 2021
    54
    @bthulu sftp 客户端我用 cyberduck 。和用 zsh 写代码是两码事。我说的 ssh 是需要在服务器的 shell 里写代码的时候,如果要 sftp 传文件的话大家都会用专门的软件吧
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5148 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 144ms · UTC 06:10 · PVG 14:10 · LAX 22:10 · JFK 01:10
    ♥ Do have faith in what you're doing.