V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
SuperMild
V2EX  ›  分享创造

Fav: 命令行收藏夹, 主要用于收藏文件/文件夹路径

  •  
  •   SuperMild ·
    ahui2016 · 2022-11-24 12:24:18 +08:00 · 902 次点击
    这是一个创建于 738 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Fav 是一个只有字符界面的命令行收藏夹, 主要用于收藏文件 /文件夹路径, 另外用来收藏常用的 命令 /网址 也很合适.

    特点:

    1. 基本原理极致简单
    2. 代码非常简单
    3. 意外地好用

    基本用法示例

    假设已经登记了 3 行内容:

    /path/to/folder
    https://example.com
    C:\User\XiaoMei\
    

    使用本程序登记的全部数据, 记录在一个纯文本文件中, 如上所示.
    (不是 JSON, 不是 YAML, 完全不需要考虑格式与字符转义, 就是纯文本, 一行一句.)

    执行命令 fav 会显示收藏列表:

    1. /path/to/folder
    2. https://example.com
    3. C:\User\XiaoMei\abc.txt
    

    执行命令 fav 2 会在屏幕上打印 https://example.com, 同时复制到剪贴板.

    执行命令 vim $(fav 3) 相当于执行 vim C:\User\XiaoMei\abc.txt

    执行命令 fav -del 2 可以删除第 2 行, 结果变成:

    1. /path/to/folder
    2.
    3. C:\User\XiaoMei\abc.txt
    

    重点: 序号与内容的对应关系不会变, 这是本程序的最重要的特性.

    后续使用命令 fav -add 新增内容会自动填补空缺.

    如果要改变顺序, 或修改其中一行的内容, 可以直接打开原始数据文件, 直接修改即可.

    例如, 假设第 1 行就是原始数据文件的路径, 那么执行命令 vim $(fav 1) 就能直接打开文件进行编辑, 非常方便.

    执行命令 fav -info 可以找到原始数据文件的位置, 使用命令 fav -add /path/to/file.txt (其中 '/path/to/file.txt' 改为具体的文件路径) 添加路径到收藏列表中, 以后就可以通过上述方法方便地打开文件了.

    搜索

    可以采用符合命令行习惯方法进行搜索, 例如:

    fav |grep abcd

    如果使用 ripgrep, 则是 fav |rg -i abcd 其中 -i 表示不分大小写.

    源代码

    本程序的源代码基本上就是一个文件 https://github.com/ahui2016/py-scripts/blob/main/src/fav.py

    全部代码只有 100 行左右, 极致简单, 下面介绍了通过源码进行本地安装的方法, 另外你也可以采用其它方法, 比如自己打包发布到 PyPI.

    由于这个小工具的原理与代码是如此之简单, 你也可以用自己熟悉的语言改写, 只要花很少时间即可, 从此拥有一个命令行收藏夹, 还蛮好用的.

    我自己是在 Windows 里使用, 将 Windows Terminal 固定在任务栏第一位, 按 Win+1 就能调出终端使用命令行工具.

    安装与使用

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2720 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 08:55 · PVG 16:55 · LAX 00:55 · JFK 03:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.