Windows 上有 zsh 的替代品吗 - V2EX
请不要在回答技术问题时复制粘贴 AI 生成的内容
binaryify

Windows 上有 zsh 的替代品吗

  •  
  •   binaryify Apr 8, 2021 9053 views
    This topic created in 1875 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
        1
    finallyeva  
       Apr 8, 2021   1
    windows terminal
    zhuangzhuang1988
        2
    zhuangzhuang1988  
       Apr 8, 2021   3
    powershell 啊.
    https://ohmyposh.dev/
    nicevar
        3
    nicevar  
       Apr 8, 2021   1
    windows terminal+oh my posh
    binaryify
        4
    binaryify  
    OP
       Apr 8, 2021
    @zhuangzhuang1988 稳,晚上回去我试试
    binaryify
        5
    binaryify  
    OP
       Apr 8, 2021
    @nicevar 可以,晚上回去我试试
    Tumblr
        6
    Tumblr  
       Apr 8, 2021   1
    Windows Terminal + PowerShell + PSReadLine + Oh-My-Posh


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

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

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

    至于机器多,上面也已经说了,整个环境几十台机器每台你都『经常』要上去吗?偶尔上去一次的情况是有的,直接从控制台 copy paste 一下也很快啊。你加一大堆书签难道不也得从里边找出来么?
    FurN1
        41
    FurN1  
       Apr 8, 2021
    @bthulu
    @jhdxr
    ssh config 里面是可以加一堆 alias 的。更何况还有好多 CLI 软件来让 ssh alias 的管理变得更加方便。不知道不代表它不存在。
    yazoox
        42
    yazoox  
       Apr 8, 2021
    @hellowmykami 我也用!挺好用的,开箱即用,不用瞎折腾
    drealism
        43
    drealism  
       Apr 8, 2021
    @hellowmykami cmder vim 鼠标普通模式和插入模式不能区分我不知道怎么设置,找了好久没设置好,就放弃了
    FurN1
        44
    FurN1  
       Apr 8, 2021
    @loveuer 如果用 cmder 的时候把 bash 作为默认 shell 就可以通过这样:
    https://github.com/g6ai/dotfiles/wiki/inputrc#vi-mode-string
    来设置 vi mode 的光标。如果是 vim 的话也能在同一个 repo 里找到配置和 wiki
    msg7086
        45
    msg7086  
       Apr 9, 2021 via Android
    @jhdxr #40 书签不难用啊,树结构分类的,不同公司组织,不同项目,都可以分类整理好,不需要找很久。
    bthulu
        46
    bthulu  
       Apr 9, 2021
    @jhdxr 书签不比 copy paste 简单多了? 传 jar 包, 下载日志, 只是我这边的需求, 我打个比方的意思是, 上传下载的需求还是比较多的.
    按你的意思来说, 用 shell 的前提条件就是: 要连的机器不能太多, 不能有较频繁的上传下载需求.
    真能满足这两个条件的, 应该是极少数了吧.
    bthulu
        47
    bthulu  
       Apr 9, 2021
    @IgniteWhite 我知道 alias 的存在, 也用过, 真是难用, 不直观不方便, 用倒也能用.
    wsseo
        48
    wsseo  
       Apr 9, 2021
    @bthulu 这属于品牌效应,爱屋及乌,很多人都会觉得系统自带的比第三方的好用。
    walpurgis
        49
    walpurgis  
       Apr 9, 2021 via Android
    @bthulu 楼主想要本地 zsh,显然不是用来连接服务器,而且 xshell 和 zsh 都不是一类东西,可以共存
    codder
        50
    codder  
       Apr 9, 2021
    @hellowmykami 我也用的它
    Chenamy2017
        51
    Chenamy2017  
       Apr 9, 2021
    @bthulu 个人习惯而已,有人用 vim,有人用 IDE,不用去试图说服别人,可以建议或者说说你用的,别人会得到有用提示的。
    binaryify
        52
    binaryify  
    OP
       Apr 9, 2021
    @walpurgis 上面确实楼歪了
    twor2
        53
    twor2  
       Apr 9, 2021
    @bthulu 哪个不是? 我不是
    FurN1
        54
    FurN1  
       Apr 10, 2021
    @bthulu sftp 客户端我用 cyberduck 。和用 zsh 写代码是两码事。我说的 ssh 是需要在服务器的 shell 里写代码的时候,如果要 sftp 传文件的话大家都会用专门的软件吧
    About     Help     Advertise     Blog     API     FAQ     Solana     2888 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 122ms UTC 15:15 PVG 23:15 LAX 08:15 JFK 11:15
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86