Verne in GitHub

每天学习一个命令:pssh 一条命令在多个主机上执行

OpenSSH 毫无疑问是世界上使用最广泛允许用户通过终端安全连接远程主机的工具了,但是 OpenSSH 存在一个比较大的问题就是不能在多台主机中执行相同的命令,OpenSSH 并不是设计做此用途的。所以 Parallel SSH 或者简称 PSSH 就出现了。PSSH 是一个 python 编写的用来在多台主机中并行执行相同命令的工具。 PSSH 工具集包含如下命令: pssh pscp prsync pnuke - 并行在多台机器中杀死进程 pslurp - 从多台主机中拷贝文件到中心主机 installation s Read more ...

2016-04-20 pssh , ssh , openssh

Resilio Sync(原 btsync)使用体验

最近在安装 Resilio Sync 的时候发现,竟然被屏蔽了,官网被屏蔽了竟然连 key 都下载不了,可以使用之前写过的 proxychains 代理 来使用代理下载这个 key。 更新 惊闻 btsync 已经改名字,现在叫 Resilio Sync ,官网地址也改为: https://www.resilio.com/ 可以从 这里 获取不同平台客户端。 Linux 安装 Package 可以参考 https://help.getsync.com/hc/en-us/articles/206178924 这里 创建文件 /etc/apt/so Read more ...

2016-04-18 btsync , 产品体验

小行星视图App review

最近迷上了360度全景,搞了得图800,和理光 theta m15的全景相机玩。然后就对周边的全景处理App都体验了一下。最早接触到 Sphere Photo 也要归功于 Google 的原生 Camera, 然而因为不知道的原因,在 Android kitkat 之后的版本中这个小行星视图就消失不见了。而我还是依然很怀念这样的视图。下面就是一些 Play Store 中存在的制作小行星视图的App。 Android Apps Tiny Planet FX Pro 完整却不够完美 市场上唯一一款收费的小行星app,但是给我的感觉却是做的不够精致和完 Read more ...


Python 标准库网关接口 wsgiref

The Web Server Gateway Interface(WSGI) 是网络服务器软件和网络应用程序之前的标准接口。通过共同的网关标准接口可以让同一个应用支持不同的服务器。只有网络服务器或者编程框架的作者需要熟悉 WSGI 设计,如果使用现存的框架则不太需要关心更底层的网关接口。 wsgiref 是 Python 的 WSGI 标准实现,可以用来帮助实现网络服务器和应用框架。他提供了一系列工具用来操作 WSGI 环境变量和响应头,也提供了基础的类来实现 WSGI 服务器,提供了简单的 HTTP 服务来给 WSGI 应用提供服务器,提供了一个符合 Read more ...

2016-04-06 wsgi , python , wsgiref

MyBatis 自动生成的 Java client 方法区别

MyBatis 自动生成的 Java client generator 会产生如下的方法; countByExample deleteByPrimaryKey deleteByExample insert insertSelective selectByPrimaryKey selectByExample selectByExampleWithBLOBs updateByPrimaryKey (with an override to specify whether or not to update BLOB col Read more ...

2016-04-05 java , mybatis , mysql

Python 容易混淆的知识点

星号解压列表元组 简单的解压列表和元组就省略,如果在解压时想要忽略一个元素,之前我们知道可以使用 _ 来忽略 first, _ = ("Ein", "Verne") 这是第二个元素不关心,也就不取了,但是如果要忽略一批元素呢 >>> record = ('ACME', 50, 3.14, (06,04,1989)) >>> name, *_, (*_, year) = record 这时就可以批量忽略中间的 50, 3.14 还有括号中的月份日期了。 Python 中的 slice 之前在看 slice Read more ...

2016-04-04 python , class , inheritance

Java 查漏补缺之 Thread 类中 interrupt() interrupted() isInterrupted() 区别

Thread 类中有三个方法长得非常像,也特别容易混淆,但是使用起来却非常不同: public void interrupt() // 无返回值 public boolean isInterrupted() // 有返回值 public static boolean interrupted() // 静态,有返回值 解释 interrupt(): 中断本线程 myThread.interrupt();// 中断的是调用 interrupt() 方法的线程 阻塞于 wait/join/sleep 的 Read more ...

2016-04-02 java , thread , interrupt

每天学习一个命令:fdisk 查看磁盘详情

fdisk 命令用于观察硬盘实体使用情况,可以用来列出机器中所有磁盘的个数,也能列出所有磁盘分区情况,也可对硬盘分区(适用于 2T 以下磁盘,高于 2T 磁盘使用 parted)。 常见用法 显示所有磁盘的分区详情 fdisk -l 常见的磁盘标示都是 sda, sdb 类似,而分区则是在磁盘标示后面添加数字,比如 sda1, sda2, … , sdb3 等等。 选择进行操作的磁盘 fdisk /dev/sdb 对 U 盘进行格式化,其他设备同理。 # 查看 U 盘挂载点(此例是 /tmp/mnt/sda1) $ df -h Fil Read more ...

2016-04-02 fdisk , disk , linux , partition , command

MySQL 中的大小写敏感设置

默认情况下 MySQL 中存储内容不是大小写敏感的。MySQL 的大小写和建数据库时的排序规则有关。 utf8_bin 则是将字符串中的每一个字符用二进制存储,bin 是 binary case sensitive collation,区分大小写 utf8_general_ci 不区分大小写,ci 为 case insensitive utf8_general_cs 区分大小写,cs 为 case sensitive 缩写 建表时字段区分大小写 在建表时可以通过 BINARY 来区别 比如 CREATE TABLE test ( Read more ...

2016-04-01 mysql , sql , index

查看当前正在使用哪种 Shell

当前正在运行的 shell 路径被保存在 $0 环境变量中,可以使用如下方式查看 echo $0 根据不同系统的实现,输出可能会是当前正在运行的 shell,或者是当前运行的 shell 的路径。 prompt:~$ echo $0 /bin/bash prompt:~$ sh sh-4.0$ echo $0 sh sh-4.0$ exit exit prompt:~$ /bin/sh sh-4.0$ echo $0 /bin/sh sh-4.0$ $SHELL 变量保存了用户偏好的 shell,而不是当前正在运行的 shell。 更多关于 Read more ...

2016-03-27 linux , shell , bash , sh , zsh

最近文章

  • Nowledge Mem 使用半年体验:让所有 AI Agent 共享同一份记忆 今年 2 月份我把 [[Nowledge Mem]] 装到 MacBook 上,想解决的是一个很常见的问题:我希望在 [[Perplexity]] 网页上查过的资料,直接在 Claude Code 中可以记住。但没想到大半年过去,它已经变成了我每天都在用的软件,而且是那种「不在后台跑着就会觉得别扭」的存在。我在 Claude Code、[[Codex]]、[[OpenClaw]] 里开的每一个会话,开头都会先从它这里拿一份简报;网页上和 AI 聊过的东西会自动同步进去;我做过的决定、踩过的坑、服务器的配置,都沉淀成一条条可以被任何 Agent 检索的记忆。说它是我所有 Agent 的记忆和大脑,一点都不夸张。
  • Aside AI 浏览器介绍:既能自己干活,也能接入 Agent 前两天整理了一篇 AI 浏览器自动化方案怎么选,把 Playwright、MCP、Agent 专用浏览器、WebMCP 这些路线梳理了一遍。在那篇文章里我提到,「内置 Agent 的 AI 浏览器」这一类里我最看好的是 Aside,原因是它的密码管理器设计得很用心,但篇幅有限没有展开。今天就单独写一篇,聊聊这个浏览器到底能做什么、和 [[Comet]]、[[Dia Browser]] 有什么不一样,以及我现在是怎么用它的。如果你看完想试试,可以用我的邀请链接 注册,注册后会额外获得 100 Credits。
  • AI 浏览器自动化方案怎么选:从 Playwright、MCP 到 Agent 浏览器和 WebMCP 的全景梳理 最近我一直在研究「让 AI 用浏览器」这件事。起因是看到 Nowledge 写了一个 browse-now Skill,可以直接让 Claude 控制浏览器,紧接着又偶然发现了 [[Ego Lite]] 这款专门为 Agent 设计的浏览器。顺着这条线,我把 Aside、BrowserOS、Deta Surf 这几款 AI 浏览器挨个调研了一遍,越看越发现它们的侧重点和实现方式差别很大:有人在做测试框架,有人在做浏览器插件,有人从 Chromium 内核开始为 Agent 改造浏览器,还有人在推动新的 Web 标准。它们看起来都在「让 AI 操作网页」,解决的却根本不是同一个问题。
  • 入手 GL.iNet Comet Pro(RM10):支持 Wi-Fi 6 的远程 IP KVM 家里的 [[Homelab]] 一直是一台 4 盘位的小主机跑 [[Proxmox VE]],上面跑着 Ubuntu 虚拟机、一堆 Docker 服务和下载机。平时远程管理全靠 SSH 加 [[Tailscale]],只要系统还活着基本没什么问题。真正让我不放心的是系统起不来的时候:升级内核后卡在启动界面、改网卡配置时手滑导致网络没起来、BIOS 被重置后不再从正确的硬盘启动,这时候 SSH 连不上,Tailscale 也不会在线,人不在家就只能干等。最近正好赶上一波促销,我入手了 [[GL.iNet]] 的 Comet Pro(型号 GL-RM10)远程 [[IP KVM]],叠加各种限时优惠之后实际支付 590.76 元,算是把 Homelab 远程管理的最后一块短板补上了。
  • 用 PowerContext 给多个 Coding Agent 做任务交接 现在我写代码基本是 [[Codex]] 和 [[Claude Code]] 轮着用。有时候是 Codex 的额度先用完了,有时候是某一步我觉得 Claude Code 更合适,于是一个任务经常要在两个 Agent 之间换手。真正麻烦的不是换工具本身,而是换手的那一刻:新会话对前面发生的事一无所知。之前选了哪个库、哪个旧接口不能动、改了哪些文件、测试跑没跑过,这些信息全都留在上一段对话里。我只能手动复述一遍,或者把一大段聊天记录贴回去,前者容易漏掉关键约束,后者浪费 Token,还会让模型在几千行历史里抓不住重点。说到底,我缺的不是一个更大的上下文窗口,而是一份能在 Agent 之间传递、而且接手方可以核对的「当前状态」。在写这篇文章的时候还出现了另外一个思路就是利用 [[magpie]] 将模型路由给充足额度的账号,这个之后再写文章说。