命令行的艺术

这些年陆陆续续学习,整理了一些命令,其中也学到了不少,渐渐的才体会到用一行命令带来的效率。于是乎我几乎所有的设备都可以用 SSH 访问,少则有 BusyBox 这些精简的 Unix 工具集,多则就是完整的 Unix 工具集。不说桌面版的 Linux 系统,Android 上可以用 Termux, 路由器上 OpenWrt 自身就带了一些基本的命令,而 NAS 上也可以选择 OpenMediaVault 或者在威联通 上开启 SSH 登录,进入命令行的世界。 以前需要借助 GUI 才能实现的功能后来发现原来命令行是如此简单,比如设备间互联一个 SSH 就 Read more ...

2020-03-04 command , command-line , linux , ssh , 命令行

Zeal 离线文档阅读

之前也总结过一篇文章,对比了 Zeal 和 Mac 下的 Dash,不过这么长时间过来,已经熟悉了 Zeal,所以再总结一下 Zeal 的使用技巧。 指定文档搜索 Zeal 最常用的方式就是直接搜索方法名或者类名,但是有的时候本地的文档太多,就会出现很多结果,不同语言,不同内容混在一起。所以在 Zeal 搜索框中可以使用前缀来缩小搜索范围。比如想要搜索 java8 中的 ConcurrentMap 那么就可以输入: java8: ConcurrentMap 自定义 Docset 路径 默认情况下 Zeal 会使用 ~/.local/share/Z Read more ...

2020-03-03 zeal , linux , document , offline

TypeScript 初识

最近浏览 GitHub 发现一个有趣的项目 PT Plugin Plus 代码拉下来发现是 TypeScript 语言写的,就顺便了解一下。1 目标很简单,不是为了写 ts 项目,只是为了能看懂项目。 ts in 5 minutes 强类型 在 JavaScript 中,变量是没有类型的,只有运行时赋值了才决定变量的类型(这就是所谓的动态语言),但是 TypeScript 在方法定义的时候可以给参数加上类型校验: function greeter(person: string) { return "Hello, " + person; } Read more ...

2020-03-03 typescript , javascript , web , frontend

清理 macOS 磁盘

在使用一段时间的 macOS 之后,在打开磁盘就会发现其中有一大部分的磁盘被 Other 占用。这一部分内容在磁盘管理里面是看不到详情的,也就没有办法手动进行管理。 磁盘中的 Other 是什么? macOS 可以识别很多类型的文件,比如说音频,视频,应用等等,但是还有很多其他类型的文件系统是无法识别的,那么就会把这些文件统计成 Other。比如说系统临时文件,应用的缓存文件,日志文件等等。 如何清理磁盘中的 Other? 清理磁盘中的 Other 可以帮助释放磁盘空间,提高系统性能。以下是一些方法可以尝试: 使用第三方工具:有很多专 Read more ...

2020-03-01 macos , macos-cleanup , mac , mac-app

NAS 下文件系统比较

记录一下常见的 Linux 的文件系统。 ext4 ext4 是目前 Debian/Ubuntu/Mint 的默认文件系统,比较常见,它其实是第 4 代扩展文件系统 (Fourth extended filesystem), 是 ext3 的延续。 ext4 对大文件有着比较好的支持,最大支持 1 EiB 的卷,标准 4Kib 块大小下支持单文件最大 16 TiB Extents ext4 兼容 ext3, ext2 ext4 允许对一些文件预留空间 (Persistent pre-allocation) Delayed all Read more ...

2020-02-23 nas , filesystem , file , ext4 , owm , zfs

使用 flexget 实现下载更新自动化

FlexGet 官网是这样描述自己的,媒体文件的多功能自动化工具。可以支持 torrents, nzbs, podcasts, comics, TV, movies, RSS, HTML, CSV, 等等作为输入。FlexGet 是 Python 编写的,所以如果想要实现更加复杂的功能,也可以自己写脚本来处理。 简单的来说,FlexGet 解决 BT 客户端没有订阅功能的问题,通过 FlexGet 可以方便的制定一些规则来自动订阅并自动下载特定的种子,比如在追剧集时,按照特定的名字以及文件大小,或者分辨率自动进行下载。 FlexGet 一大被称道的就 Read more ...

2020-02-18 flexget , docker , python , linux , rss , pt , private-tracker

我有一台服务器能做什么:自架的服务整理

很多年前当我拥有第一台 VPS 的时候,我也曾经问我我自己,这一台 VPS 服务器能做什么,当时最简单的想法就是能够假设一个 WordPress,发布一些自己感兴趣的内容,然而时间过去了快 10 年,中间互联网尤其是开源社区的发展让 Self-hosted 成为了我过去 5 年的主要关键字。 而我也逐渐将大厂的服务迁移出来,搬到了我自己的假设的服务器中。虽然确实可能会多出来一些维护成本,但我发现当数据和代码掌握在自己手里的时候才是真正安全的。虽然可能需要考虑到备份,运维等等一系列复杂的问题,但还是比大厂的服务动辄关闭服务要安心许多。 所以这篇文章主要 Read more ...


关于 BitTorrent 和 PT 你需要知道的一切

几个 bt 中经常见到的词汇 bt 其实是 BitTorrent 的缩写,后文为了描述简单统一简称为 bt。 BitTorrent 协议由美国程序员布莱姆·科亨在 2001 年发布。 peer peer 可以理解成节点,或者等同于 client 客户端。只要你在本地打开了 bt 软件,连接了 swarm,有数据传输,就可以认为是一个 peer. 严格的来说,peer 指的是还未下载完成的节点。但通俗的就认为所有连接到 swarm 的客户端都叫做 peer,这个意义上, peer 和 client 有着相同的含义,并不区分是否完成了整个 torrent Read more ...


Zettelkasten 笔记法

在接触到 Obsidian 这款笔记应用的时候听说了 Zettelkasten 笔记法,这些天陆陆续续地阅读了一些相关的材料,说起来 Zettelkasten 是一个非常简单的方法,但要真正理解其背后的思维方式,以及真正地贯彻到现实中来也需要好好的整理一下。 什么是 Zettelkasten? Zettelkasten 是一个德语词,这个词语可以拆分成两个部分,”Zettel”,表示的是笔记或者纸条 (slip of paper),而 “Kasten” 表示的是盒子 (box),两者合起来表示的意思是 box of notes,指通过不同盒子来管理的笔 Read more ...


NAS 上的音乐管理应用 Funkwhale

NAS 上的文件已经有足够多的管理系统 了 12,而电影也有 [[Kodi]], [[Emby]], [[Plex]] 等等工具,图片同样 Chevereto,Lychee,电子书有 Calibre-web,但就是音乐管理工具没有找到一个比较合适的。 构想 我想的应该这个管理系统可以直接通过 Docker 安装,提供一个比较美观的 Web 页面。 Docker 映射本地音乐文件夹 Web 管理界面 可以根据文件的 metadata 自动归类,如果可以手工进行编辑就更好了 能在线播放 于是乎我带着这样的目的在 awesome- Read more ...

2020-02-12 nas , qnap , music , file-manager , docker

最近文章

  • RAGFlow:以深度文档理解为核心的开源 RAG 引擎介绍与部署使用教程 这两年我陆陆续续接触过一些 RAG 小工具,从最早自己用 [[LangChain]] 拼一个 demo,到后来用 [[AnythingLLM]]、[[Dify]] 的知识库功能,有一个体验几乎每次都会重演:拿几篇 Markdown 测试的时候效果惊艳,一旦换成真实的业务材料,比如一份带合并单元格的财报 PDF、一份双栏排版的论文、几页扫描的合同,回答马上就开始胡说八道。追查下去会发现问题根本不在大模型,而在最前面的解析和切块环节,表格被拍平成一串没有表头的数字,左右两栏的文字被交错拼接在一起,模型拿到的上下文本身就是错的。也正是因为这个痛点,我在调查 ESP32 小智 AI 后端的时候发现了 [[RAGFlow]],一个可以「深度文档理解」的开源 RAG 引擎。
  • Git 本地忽略文件:.git/info/exclude 的作用与使用技巧 由于本地 IDE、插件、Agent 的差异,所以经常打开项目之后会出现一些只属于我自己的文件,AI Agent 和一些 MCP,Skill 也喜欢在项目根目录里面添加文件。每次 git status 都能看到这一串红色的 untracked 文件,看着很烦,又不太好意思为了自己的习惯去改项目的 .gitignore。这时候我想起了 .git 目录里一个存在感极低的文件 info/exclude,它刚好就是为这种场景设计的。
  • Meta Muse 使用教程:上手设置、提示词技巧与实用案例 上一篇 Meta Muse 介绍与注册指南:一个会替你跑腿的个人 AI Agent 把 [[Muse]] 是什么、怎么注册、额度怎么算都整理了一遍,但是留了一个结尾:注册完之后到底该让它干什么。Muse 上线这几周,我查阅了一些测评体验,整理了 X 和 Threads 上用户晒出来的用法,发现大家的使用路径其实很像:从提醒和文件这类零风险的任务开始,确认它靠谱之后再慢慢接入邮箱、日历,最后才让它碰钱。这篇就按这个顺序来整理,从界面和设置讲起,再到具体的案例和踩过的坑。
  • Meta Muse 介绍与注册指南:一个会替你跑腿的个人 AI Agent 2026 年 9 月 8 日,[[Meta]] 发布了个人 AI Agent [[Muse]],宣传语只有一句:「它去做,而不是告诉你怎么做」。用 [[ChatGPT]] 或 [[Claude]] 时,我们得到的往往是一份说明书,真正动手的部分,打开网页、填表单、下单付款,还得自己来。Muse 想把这一段也接过去:你交给它的不是一个问题,而是一件事,它会自己打开浏览器一步步做完,需要你拍板时再回来问你。这是 Meta 迄今为止在消费级 AI 上下的最大一笔注,两周后的 Connect 2026 大会几乎整场都围绕它展开。
  • Jev:不聊天只做判断的 System One 决策模型 过去一两年,大模型的发展方向几乎都是更长的思考链、更大的上下文、更强的 Agent 能力。但在日常写代码和搭建自动化流程的过程中,我发现很多地方用到大模型,其实只是为了让它做一个简单的判断,却要付出几秒钟的等待和解析 JSON 的麻烦。TypeSafe AI 发布的 Jev 走了一条相反的路:不聊天、不写代码,只做快速的判断。