使用 antigen 来管理 zsh 插件

antigen 是 zsh 的插件管理工具,在他 GitHub 主页上的一句话非常形象的解释了他的功能。 Antigen is to zsh, what Vundle is to vim. 2021 年更新 在过去几年的使用里面 antigen 并没有出现多大的问题,但是随着 antigen 以及 zsh 安装的插件过多,导致每一次打开一个新的终端都会变得很慢,所以我在今年早些的时候切换成了 zinit。 安装 curl -L git.io/antigen > antigen.zsh 或者 apt-get install zs Read more ...

2017-09-07 antigen , zsh , bash , linux , vim , tmux

爬虫相关技术整理

部分内容从 Python 3 网络爬虫开发实战 书 中整理。 Python 模块 主要依赖 Python 模块 requests BeautifulSoup doc celery 介绍 实践 PyMySQL doc 或者 MySQL-python doc SQLAlchemy doc 数据库 MySQL Redis 抓包 Charles 介绍 MitmProxy 介绍 Fiddler wireshare 介绍 工具依赖 Selenium 自动化测试框架 Appium 移动 Read more ...

2017-09-05 crawler , spider , python , mitm , linux

使用 Shell 命令来对 Unix 时间戳和日期进行转换 date 命令

在程序中经常要使用到 Unix timestamp 和日期的转换,通常情况下都是 Google 一个时间戳转换的网页在进行转换,其实 Linux 命令中就有能够快速实现转换的命令。主要都是集中在 date 这个命令。date 命令主要用于显示或设定系统时间和日期。 修改系统的时区 Linux 用来修正系统的时区 sudo dpkg-reconfigure tzdata 选择 Asia > Shanghai date 常用命令 获取当前的 Unix timestamp date +%s # 返回 10 位时间戳,%s 表示从 19 Read more ...

2017-09-04 shell , linux

Mastering the Vim

我已经用了很长一段时间 Vim 了,但是 Vim 最可贵之处便在于你永远达不到 Vim 的天花板,在使用的过程中我永远会发现操作 Vim 的其他便捷方法。最近看了一个关于 Vim 的讲座 ,革新我对 Vim 命令的认识。可以说掌握这样的一个世界观可以对 Vim 的操作上到另外一个层次。下面就总结一下这个视频中的精髓内容。 Text Objects and motions @ChrisToomey 定义了一种 Vim Language,Vim 的语法由数词 + 动词 + 名词 组成,比如: d 删除 w 单词 将两个字母组合起来就是 删除单词 这 Read more ...

2017-09-03 vim , linux , editor

Raspberry pi 自动挂载 NTFS USB 设备

一些相关的命令 sudo fdisk -l # 列出磁盘分区表 结果是这样的: Disk /dev/ram0: 4 MiB, 4194304 bytes, 8192 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk /dev/ram1: 4 MiB, 4194304 byte Read more ...

2017-09-02 linux , raspberrypi , mount , ntfs , usb

Spring MVC 应用处理 CORS

什么是跨域或者说什么是CORS(Cross-origin resource sharing),中文叫”跨域资源共享”。在了解 CORS 之前首先要知道“同源策略”,出于安全考虑,浏览器会限制Ajax中发起的跨站请求。比如,使用 XMLHttpRequest 对象发起 HTTP 请求就必须遵守同源策略(same-origin policy),”同源策略“是浏览器安全的基石。具体而言,Web 应用程序能且只能使用 XMLHttpRequest 对象向其加载的源域名发起 HTTP 请求,而不能向任何其它域名发起请求。阮一峰写的一篇关于 CORS 的文章 介绍得 Read more ...

2017-09-01 Spring , CORS , JS , Web , HTTP , 跨域,

爬虫相关材料整理

这篇文章用来收集整理爬虫相关的资料。 相关技术 如果只想单纯的自己开发,可以使用 Python + Celery + Redis/MySQL 基本能满足 80% 的需求。 如果想要选用框架 Scrapy,pyspider,等等都是非常不错的选择,我甚至在 GitHub 上看到过 Java 的分布式爬虫。 书籍 Python 3 网络爬虫开发实战 这本书在网上有部分 gitbook,链接在这里 网上公开的部分都是无关痛痒的部分,不过提及的工具倒是可以参考一下。大部分我之前的文章也都有提及 mitmproxy wireshark Read more ...

2017-08-29 collection , spider , crawler , python , redis , mysql

树莓派系统安装及设置

树莓派官网有很多系统可以选择,我选了官方维护的 Raspbian 基于 Debian 的衍生版,主要是熟悉他的 APT 包管理,看评价三方维护的 Snappy Ubuntu Core 换用了其他的 snap 的管理,不是很了解,所以还是选择了 Raspbian。 系统安装 官网提供的教程非常方便, 采用开源的镜像烧录工具 Etcher 非常方便的就可以在三大平台上完成镜像到 SD 的烧录。当然如果熟悉各个平台的工具也可以自己手动完成烧制。 启动系统 在将系统写入 microSD 卡之后,将卡插入树莓派板子,启动树莓派,开机即可,可以用 HDMI Read more ...

2017-08-26 raspberrypi , linux

Redis 安全性检查

Redis 在设计上,是用来被可信客户端访问的,也就意味着不适合暴露给外部环境非可信客户端访问。 最佳的实践方法是在 Redis 前增加一个访问控制层,用于校验用户请求。 基本配置 Redis 本身提供了一些简单的配置以满足基本的安全控制。 IP 绑定。如果不需要直接对外提供服务,bind 127.0.0.1 就行了,切忌 bind 0.0.0.0 端口设置。修改默认的 6379,一定程度上避免被扫描。 设置密码。Redis 的密码是通过 requirepass 以明文的形式配置在 conf 文件里的,所以要尽可能得长和复杂,降低被破 Read more ...

2017-08-25 redis , database , nosql , security , key-value , db

Linux 主机在线监控: nodequery

很久没有更新这个分类下的文章了,其实一直在体验不同的产品,只是真的很少有能拿出来讲一下的东西。不管是硬件还是软件,最近几年使用的东西越来越狭窄,越来越收缩,当然对于某一个特定的需求,总有一个产品能够占领绝大多数市场,而也有部分产品能够瓜分小众市场。这里要介绍的这个 NodeQuery 就不是一个大而全的产品,而是一个很精细的小众产品。我用它也一年多了,我的需求很简单,能够实时监控我的 VPS,能够在宕机或者高负载时报警。NodeQuery 完全能够满足我的需求。 用 NodeQuery 自己的话描述自己就是:”一个轻量、易用的 Linux 服务器监控服 Read more ...

2017-08-23 linux , vps , monitor

最近文章

  • Clawalytics:给你的 OpenClaw 花费装上一个仪表盘 自从安装使用 OpenClaw 之后,我一直没有找到一个好办法直接在 OpenClaw 里追踪 Token 的消耗情况。虽然我日常主要用的是月订阅套餐,但偶尔为了测试一些新模型或者跑特定任务,还是会走 API 调用。这部分花费是按量计费的,用多少扣多少,如果不注意很容易超额。之前也试过在 Anthropic 控制台手动查 Usage,但那个粒度太粗了,根本看不出来钱到底花在了哪些项目、哪些模型上。直到最近发现了 [[Clawalytics]] 这个项目,通过它的可视化仪表盘查看 Token 消耗的详细数据,才终于有了一种”心里有底”的感觉。
  • 我购买了 Sony WH-1000XM6 我的第一代 [[Sony WH-1000XM]] 终于在陪伴了我将近七年之后光荣退役了——准确地说,是左耳彻底不出声了。耳罩虽然还算完整,充电也正常,就是左边悄无声息地沉默了。单边失声的降噪耳机拿来当装饰品实在是太可惜,就这样,我的 XM1 结束了它漫长的使命。
  • 花了一个多小时认真听李录在哥大的演讲,对价值投资新的理解 昨天花了一个多小时,认真把李录在 2006 年哥伦比亚大学商学院的演讲从头听到尾。说实话,最开始点开这个视频的时候,我以为只是一节普通的投资课,听完之后发现远不止于此——李录几乎是把自己二十多年的思考框架,通过两个亲身经历的真实案例,完整地摊开在你面前。那种感觉不像是在听一堂课,更像是在听一个老朋友坦诚地聊他是怎么看待这个世界、怎么做决策的。
  • screen.garden:让 Obsidian 拥有 Google Docs 般的实时协作体验 之前我介绍过 Fast Note Sync,这是一款开源的 Obsidian 笔记同步方案,可以实现多设备之间的笔记同步和实时协作。Fast Note Sync 的优势在于完全开源、数据自主可控,但它有一个门槛——你需要自己搭建和维护服务器。对于有技术背景并且享受折腾的朋友来说这不是问题,但如果你不想操心服务器的事情,或者团队里有非技术背景的成员,那么一个开箱即用的托管服务可能是更好的选择。这就是我今天要介绍的 screen.garden,一个为 Obsidian 设计的付费实时协作服务。
  • Clawdbot 深度调研:打造完全属于自己的全平台 AI 助手 最近在折腾各种 AI 工具的时候,发现了一个有意思的现象:市面上大部分 AI 助手要么被牢牢绑定在某个特定平台上(比如只能在 Discord 里用的机器人),要么就是完全依赖某家公司的 SaaS 服务,你的对话数据都在别人的服务器上。作为一个对隐私比较在意的人,我一直在想,能不能有一个完全由自己掌控、可以在所有常用聊天软件里使用的 AI 助手呢?直到我在 GitHub 上发现了 [[Clawdbot]] 这个项目,才发现原来真的有人在认真解决这个问题。