使用什么工具管理 脚本和命令 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
ihwbunny
V2EX    Linux

使用什么工具管理 脚本和命令

  •  
  •   ihwbunny 2023-12-14 03:59:59 +08:00 3471 次点击
    这是一个创建于 716 天前的主题,其中的信息可能已经有所发展或是发生改变。

    好多命令的使用,具体的参数记不住,现在就是用简单的记事本来记,比较

    对于自己的脚本,查找主要根据记忆和文件名来查找,效率不高,备份得自己操心,不同版本不好管理,虽然可以借用 git ,最好是一体化的。git 用得也不太好,不知是否可以根据脚本内容,如注释的部分,来查找,如果可以的话,git 似乎就可以。

    无论是命令行管理还是 web 界面都可以,平台现在主要是 Mac 。最好是这脚本和命令管理两者使用一个系统管理,方便查找。

    看见有一个 pet( https://github.com/knqyf263/pet),可以方便管理搜索、给命令注释等的 有人说一个叫 fossil 的貌似挺全能的,但是似乎跟 git 差不多,就是比较轻量适合自己部署

    至于部署,可以忽略。如团队协作等都不需要。 还有看到诸如 github 上 homeshick,主要是工作环境管理的,可以无缝切换到任何其他的电脑。这类的有好多。

    17 条回复    2023-12-27 15:34:45 +08:00
    sigoden
        1
    sigoden  
       2023-12-14 06:41:10 +08:00   1
    你可以使用 https://github.com/sigoden/argc 把脚本和命令封装成一个统一的命令行工具。方便调用,还有自动补全。
    pain2w
        2
    pain2w  
       2023-12-14 07:41:03 +08:00   1
    命令行不是让你用来记得,要先学会构建自己的工作流,再针对工作流去设计命令行流程,再去找命令行的说明书。

    举个例子,我要将项目下将所有 c 和 go 文件移动到一个 z 目录里。就会写一个 bash 脚本 find . \( -name "*.c" -o -name "*.go" \) -type f -not -path "./z/*" -exec mv {} ./z \; 然后我将它命名成一个 mv_c_and_go_to_z.sh 以自己的流程作为文件名的脚本文件。这样我每次就想做这事情的时候就不需要频繁敲命令了,这比那种每次还要去 snippet 里找之类的方便多了,因为所见及所得。

    所以,你与其想想怎么管理脚本和命令,不如先想想自己想用它们来干嘛实在。
    NessajCN
        3
    NessajCN  
       2023-12-14 09:54:45 +08:00
    如果是常用命令,那多敲几次想记不住也难
    如果不常用,你记他干嘛?要用的时候查一下 man 或 google 不就好了
    huangmingyou
        4
    huangmingyou  
       2023-12-14 13:47:59 +08:00
    apropos 和 man,足够了
    liuliancao
        5
    liuliancao  
       2023-12-14 14:49:23 +08:00   1
    挑一个你喜欢的笔记平台 我用的 org-roam
    xingheng
        6
    xingheng  
       2023-12-14 15:09:08 +08:00   1
    要不你试试 just: https://github.com/casey/just
    pet 我也用,目的不一样。
    Al0rid4l
        7
    Al0rid4l  
       2023-12-14 17:21:53 +08:00   1
    beyondstars
        8
    beyondstars  
       2023-12-14 17:39:20 +08:00   1
    你用 mac 的话可以搜索 Warp terminal, 它提供记录常用命令的功能。
    ihwbunny
        9
    ihwbunny  
    OP
       2023-12-16 13:50:10 +08:00
    @sigoden
    argc 看上去挺好的,通过用脚本中的注释行的特殊标记,argc 自动分析脚本的功能。
    这个挺好,可以养成叫统一规范的脚本习惯。
    contributors 不多,starred 就不到 600 ,更新还算比较勤,存在从 2022 二月开始,支持的平台也多。
    挺不错的
    ihwbunny
        10
    ihwbunny  
    OP
       2023-12-16 14:06:14 +08:00
    @pain2w
    个人感觉,脚本来说,更复杂一些,脚本管理更麻烦,跟人感觉。
    简单的如,将一个 Mac 加入到 AD 域,从开始到结束有好多判断+步骤,再加上多域的考虑。从此还派生出的其它问题,判断一台机器是否正常连接 AD ;出问题判断是域账户问题还是断联,还是网络问题,或者配置错了等等。尤其是与给他人使用的时候,说明就得写不少,之后增减功能,又得给别人讲一遍。很多时候,写的时间比较长了,自己还得先看一遍,才能想起来之前写的目的是使用方法。
    ihwbunny
        11
    ihwbunny  
    OP
       2023-12-16 14:12:33 +08:00
    @NessajCN
    有好多命令是不好 google 找的,尤其是 macOS 中的,可气的是,Mac 上好多自己的命令并没 man, 好不容易摸索出点规律心得,和实用例子,都记在记事本的小本本里,还是不好查找。
    ihwbunny
        12
    ihwbunny  
    OP
       2023-12-16 14:30:33 +08:00
    @liuliancao
    在 Reddit 上有人 1 年前也介绍了,还有心得和自己的使用方法。听上去挺不错的东东。就是需要消化理解,学习曲线貌似不会太长,但也是需要点时间。你有没有什么心得可以分享的?
    ihwbunny
        13
    ihwbunny  
    OP
       2023-12-16 14:37:52 +08:00
    @xingheng
    just 这个项目挺悠久了 7 年多了,将近 1 万 5 的 starred ,有中文文档。貌似是 make 的替代。
    你的使用心得如何?
    ihwbunny
        14
    ihwbunny  
    OP
       2023-12-16 14:43:38 +08:00
    @huangmingyou
    这两个用于命令,自己写的脚本没法管理
    xingheng
        15
    xingheng  
       2023-12-16 22:20:19 +08:00   1
    justfile 很容易编辑,还支持多种语言的脚本执行,个人的脚本直接往里扔就对了。其他各种 snippet 工具适合在各种目录全局执行,不需要频繁编辑的情况。
    liuliancao
        16
    liuliancao  
       2023-12-21 17:17:19 +08:00
    @ihwbunny 记笔记个人觉得最重要的是方便操作 比如一个快捷键插入 一个快捷键搜索 如果你喜欢双向链接或者想试用网上有很多,notion 啥的,我是因为用 emacs 所以用了 org-roam ,建议是都尝试一下 最后尽量就不动了
    tangtang369
        17
    tangtang369  
       2023-12-27 15:34:45 +08:00
    我在 mac 上使用的 snippets-lab 这个软件 主要用于快速插入一些常用函数或简单的 demo
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2448 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 01:22 PVG 09:22 LAX 17:22 JFK 20:22
    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