我是前端,如果要给 windows 的 cmd 套一个壳,加一些快捷短语之类功能,需要了解哪方便的知识呢? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
20498860
V2EX    前端开发

我是前端,如果要给 windows 的 cmd 套一个壳,加一些快捷短语之类功能,需要了解哪方便的知识呢?

  •  
  •   20498860 2020-11-21 15:39:55 +08:00 2767 次点击
    这是一个创建于 1835 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前大概了解了一下,找到了两种解决方案: 1,xterm.js ,但是这个似乎是 SSH 的,我需要 CMD 的 2,electron + node.js 再用 node 的一些接口来调用 Windows 的 cm

    有没有懂的老哥讲讲,我的需求很简单,其实就是打开 cmd 的时候 cd 到项目给我执行 yarn serve 就行,所以想做一个支持自定义短语的功能,感觉应该很多人需要吧,CD 路径实在是太烦人了

    21 条回复    2020-11-22 22:31:48 +08:00
    PerFectTime
        1
    PerFectTime  
       2020-11-21 15:42:15 +08:00
    WSL 搞个 alias 不是很好?
    gwy15
        2
    gwy15  
       2020-11-21 15:43:22 +08:00
    为什么不直接写个 cmd / ps1 执行呢
    20498860
        3
    20498860  
    OP
       2020-11-21 15:48:50 +08:00
    @gwy15 想做个东西出来给别人用撒
    20498860
        4
    20498860  
    OP
       2020-11-21 15:49:45 +08:00
    @PerFectTime WSL 是指 Windows Subsystem for Linux 吗?我好像不需要这玩意
    noe132
        5
    noe132  
       2020-11-21 16:04:50 +08:00
    powershell -NoExit "cd C:\src\repo; yarn serve"
    20498860
        6
    20498860  
    OP
       2020-11-21 16:49:39 +08:00
    @noe132 这样的话 和复制粘贴没啥区别呀
    cyitao
        7
    cyitao  
       2020-11-21 17:12:06 +08:00 via iPhone
    为什么不用 windows terminal 呢?不仅解决你的需求,害比 cmd 好看很多。
    zhangshine
        8
    zhangshine  
       2020-11-21 17:26:56 +08:00
    生成一个 bat 文件,然后执行。

    会说我也想做个来着,但是你想做了我就等着你的大作了
    20498860
        9
    20498860  
    OP
       2020-11-21 17:30:32 +08:00
    @cyitao 我电脑装的是 LTSC 版,装不了 windows terminal,我现在用的是 termius,体验上没啥问题,主要是嫌麻烦
    20498860
        10
    20498860  
    OP
       2020-11-21 17:31:45 +08:00
    @zhangshine 如果是 xterm.js 那样的用法,其实做起来并不麻烦。。感觉最多 electron 要踩下坑
    hihipp
        11
    hihipp  
       2020-11-21 17:35:21 +08:00 via iPhone
    如果只是执行这个命令,那就用注册表,给右键菜单添加一个「从这个目录执行」的功能项就好了。

    可参考
    https://zhuanlan.zhihu.com/p/68389277
    akira
        12
    akira  
       2020-11-21 17:42:18 +08:00
    打开记事本,写入
    --------
    cd 要去目录
    yarn server
    ------
    保存文件为 yarn.bat
    双击执行
    cmdOptionKana
        13
    cmdOptionKana  
       2020-11-21 17:44:37 +08:00   1
    我以前也有过类似的需求,最后选择了 AutoHotkey, 你可以参考我的做法 https://github.com/ahui2016/mima-go/blob/master/mima-gui.ahk

    我这个有 GUI 界面,可进行简单设置,还有 show console 键与 hide console 键,主要是考虑到如果程序出错,还可以点击 show console 键来看出错信息。

    一共也没多少代码,如果你不需要这么多功能,还可以简单很多。
    imn1
        14
    imn1  
       2020-11-21 18:01:22 +08:00
    快捷键还是 alias?

    alias 很简单

    alias.cmd
    ==========
    @echo off
    DOSKEY py36=...DOSKEY py37=...
    DOSKEY py38=...
    ...
    ===========


    alias.reg
    ==========
    Windows Registry Editor Version 5.00

    [HKEY_CURRENT_USER\Software\Microsoft\Command Processor]
    "AutoRun"="PATHtoAlias\\alias.cmd"
    ==========

    想修改提示符就用 PROMPT 命令,颜色等等自己研究吧


    快捷键就找工具吧
    imn1
        15
    imn1  
       2020-11-21 18:03:41 +08:00
    补充,这个 alias.cmd 就是个 bat,启动 cmd 时执行,你想要自动跳转或其他立即执行的命令,写进去就是
    3dwelcome
        16
    3dwelcome  
       2020-11-21 18:26:11 +08:00 via Android
    输入法可以做到自定义短语,比如你打一个命令的缩写,出来的是全称,还有智能提示。
    3dwelcome
        17
    3dwelcome  
       2020-11-21 18:30:23 +08:00 via Android
    用 nodejs 的话,好像不能给 cmd 发送指定。最多操控一下粘贴板,也做不到你这种自定义短语的需求。
    前端的话,大多都写各种缩写批处理,感觉不是强需求。
    AndyAO
        18
    AndyAO  
       2020-11-21 18:44:53 +08:00
    为什么用 CMD?这是个已经停更的老东西,如果不是为了兼容的话,应该早就不用了.
    请用 PowerShell,在 Gallery 找 BookMark 模块,很完美实现目录书签功能.
    当然 PowerShell 几乎可以实现一切功能,因为能调用.NET
    AndyAO
        19
    AndyAO  
       2020-11-21 18:51:53 +08:00   3
    从你的描述来看,对 PowerShell 完全没有了解.
    除了之前说的模块有目录书签,"自定义短语"在 PowerShell 中有函数 /alias 都能实现这些功能,放在$Profile 里面,每次启动会自动设置.
    都是非常基本的东西.
    建议简单学习 PowerShell,会对工作有很大帮助.
    lxilu
        20
    lxilu  
       2020-11-22 01:19:48 +08:00 via iPhone
    electron 新动向:从 100B 到 100M
    人有多大胆,地有多大产
    20498860
        21
    20498860  
    OP
       2020-11-22 22:31:48 +08:00
    @AndyAO 之前完全没用过 powershell 我去看下吧
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2600 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 11:45 PVG 19:45 LAX 03:45 JFK 06:45
    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