Bash 中的 Parameter Expansion

Parameter Expansion 是一个用来描述命令行中部分参数被展开(内容被替换)的术语。在大部分的场景中,被展开的参数通常会带有 $ 符号,在一些特定的场景中,额外的花括号(curly braces)也是必须的。 比如: echo "'$USER', '$USERs', '${USER}s'" 'testuser', '', 'testusers' 上面的例子展示了基本的 parameter expansions(PE) 是什么,第二个 PE 结果是一个空字符串,那是因为参数 USERs 是空的。其实 s 不是参数的一部分,但是因为 b Read more ...

2021-12-29 linux , bash

使用 HandBrake 压缩转码视频

HandBrake 是一款开源的全平台的视频转码压制工具,基于 [[FFmpeg]],可以算作一个 GUI 版本的 FFmpeg。 官网: https://handbrake.fr/ 安装 macOS: brew install --cask handbrake 基础知识复习 分辨率 resolution 分辨率,也称为解析度,指的是视频中像素点的个数。 帧率 frame rate 帧率指的是每秒在屏幕上刷新的画面个数。 需要显示器硬件支持,大多数屏幕的刷新率在 60Hz 左右。 通常情况下 30FPS 已经能够保证流畅。 码率 b Read more ...


不丢失数据 降级 Android 应用版本

之前一次不消息把 Google Play Store 中的自动更新启用了,之后一个夜里把所有应用都更新了,不过有些应用本来就不想升级的,比如网易云音乐(有一些低版本没有广告,没有乱七八糟的直播什么的),微信。所以想着能不能在不丢失数据的情况下降级应用。简单的搜索了一下果然可以。 这里需要使用到 adb 命令,不同的系统直接安装即可,我现在在 Linux 下之前就已经安装过。 macOS 下: brew cask install android-platform-tools 执行: adb devices 查看是否连接,如果出现了设备 ID Read more ...

2021-12-23 android , apk , adb

使用 Swizzin 从零开始构建自己的 Seedbox

[[Swizzin]] 是一个轻量级、模块化的 [[Seedbox]] 解决方案,可以安装在 Debian 9/10 或 Ubuntu 16.04/18.04/20.04 上。QuickBox 的软件包已经被移植过来,包括 Webmin 控制面板。 Swizzin 可以安装如下的组件: BT/PT 客户端:qBittorrent, rTorrent/ruTorrent, flood, Transmission, Deluge 影音播放:Plex, Emby, ffmpeg 资料同步:rclone, btsync(resilio sync Read more ...


每天学习一个命令:通过 arp 学习地址解析协议

ARP( Address Resolution Protocol) 地址解析解析,用来将 IP 地址解析为 MAC 地址的协议。 主机会维护一张 ARP 表,存储 IP 地址和 MAC 地址映射关系。 arp 直接执行 arp 会列出系统当前的 arp 记录: arp Address HWtype HWaddress Flags Mask Iface 10.236.151.50 ether 50:9a:4c:2d:--:-- C Read more ...

2021-12-19 linux , arp , ip , ipv4

Azure Cosmos DB 简单使用入门

Azure Cosmos DB 是 Azure 提供的一个分布式 NoSQL 数据库,Cosmos DB 提供一定的关系型数据库的能力,并且可以无缝地扩容。 Azure 提供了 30 天免费的试用时长,可以注册一个 Azure 帐号体验一下。该帐户中获得前 1000 RU/s 的免费吞吐量和 25 GB 的免费存储。 Cosmos DB 和其他非关系型数据库区别 Cosmos DB 是微软提供的多区域分布式的数据库,可以根据需要自动缩放吞吐量,自动扩容。 Cosmos DB 的优势 多地区,可以在全球范围能有不错的响应时间,Cosmos Read more ...

2021-12-16 azure , cosmos-db , no-sql , microsoft , database

Obsidian 插件篇之 Dataview

在过去的一年里面,我基本上只用 Obsidian 来记录,并且我也将我过去几年的 Jekyll 的内容作为 submodule 引入到了 Obsidian Vault,所以现在这个仓库中有非常多的笔记。 前些天在 Twitter 上看到有人说 Obsidian 基于 Markdown 的管理方式没有 Roam Research,和 [[Logseq]] 那样基于块的灵活,并且无法动态展示内容,比如有人用 Notion 那种表格的形式来管理读书记录,观影记录,用 Obsidian 就没有太好的办法去做到,但其实只要使用 Dataview 这一个插件就可以 Read more ...


使用 k3s 和 WireGuard 网络部署 Kubernetes 集群

在今年的黑色星期五入手了几个不同 VPS 提供上的机器,包括之前的 A400,以及 HostHatch,手上的机器可以用来学习搭建一个 Kubernetes。 在之前的文章中已经介绍过netmaker,这是一个可以用来管理 [[WireGuard]] 网络的工具,这篇文章就简单介绍一下如何在不同的云服务器提供商的主机之间,利用 WireGuard 构建的局域网,并使用 k3s 来搭建一个简单的 Kubernetes 集群。 概念介绍 Netmaker Netmaker 是一个开源的、基于 WireGuard 网络的组网工具,可以非常方便的构建 Wi Read more ...

2021-12-13 kubernetes , k3s , netmaker , wireguard

搭建临时 socks5 代理

这篇文章简要的介绍一下如何在 VPS 快速使用 Docker 安装一个 socks 代理来满足临时需要 socks 代理的情况,适合直接在 VPS 上安装,然后用完立即删除。 然后搭配 Chrome 下的浏览器插件直接实现快速代理。 或者可以搭配 [[proxychains-ng]] 来实现终端下的代理。 搭建临时 socks5 代理 docker run -d --name socks5 -p 1090:1080 -e PROXY_USER=<USER> -e PROXY_PASSWORD=<PASSWD> --rest Read more ...

2021-12-12 linux , socks5 , proxy-server , vps , docker

使用 Netmaker 快速组建 WireGuard mesh 网络

前段时间在逛 LET 看到有人发帖询问在 VPS 上安装了什么,论坛中的 @Galeej 提到,自己将所有的 VPS 通过 Tailscale 私有网络连接,对其他 VPS 的操作都通过一台新加坡的 relay 服务器转发(并且设置其他 VPS 的网络连接只允许特定的 IP),而所有需要暴露到公开互联网上的端口都隐藏在 Cloudflare 之后,我看到这样的配置之后发现这样的 VPS 配置非常的安全,公开互联网上没有暴露任何可以攻击的端口,所有的服务都在 WireGuard 内网中。 然后在之后的讨论中 @Ouji 又提出,他将用 Netmaker Read more ...


最近文章

  • 利用 Dev3000 优化 Claude Code 代码调试流程 不知道大家在使用 Claude Code 辅助编写代码的过程中,有没有遇到过这样的烦恼,当 Claude Code 生成的代码不完美,发生错误时,我们需要将错误日志文件,这也前端页面截图再反馈给 Claude Code,让其修正错误,或者修复画面的错误。那有没有方法可以让 Claude Code 自己发现错误,并修正呢?那今天要介绍的这一个开源的工具 Dev3000 就是一个辅助 AI 开发的调试工具。
  • AI 浏览器 Comet 初体验 前两天刚介绍完 Dia 浏览器,就听说了 Dia 浏览器的母公司 The Browser Company 被 Atlanssian 以 6.1 亿美元现金收购,而另外一边,Google 的反垄断案也告一段落,不需要拆分 Chrome 和 Android,这边,Perplexity 就推出了以 Perplexity AI 为核心的网页浏览器 Comet。
  • 我买了一条 Thunderbolt 数据线 这两天使用 macOS 的 Migration Assistant 迁移系统,按照应用中的提示,连接同一个 WiFi,或者使用 Peer-to-Peer 方式,但是在使用的过程中 macOS 提交使用 Thunderbolt Cable 连接两台 macOS 的 Type-C 可以将速度提升到 3000MB~4000MB/s 左右。
  • 清理 macOS 上的一些低频使用的应用 之前的几台 MacBook Pro 都是因为钱包有限,所以只购买了 512GB 的空间。虽然也是够用的,但是如果安装的应用比较多的情况下,就会发现存储总是告警的情况。所以想着安装了 CleanMyMac 应用之后,就打开了它的 Uninstaller 功能,然后把我之前所有安装的应用列表都列出来,清理一下其中不是非常高频使用但是却又能解决特定需求的应用。
  • JetBrain AI Agent Junie 使用体验 今天更新了一下 JetBrains IntelliJ IDEA 和 PyCharm,在更新日志中发现 JetBrains 新增了 Junie 代码助手的功能,就顺手安装了,虽然我一直在用 JetBrains AI Assistant,但 AI Assistant 更像是一个常驻 IDEA 侧边栏的代码问答,虽然可以辅助生成代码,但是更偏重代码的自动提示,回答用户的问题,对错误进行解释,以及相关的文档工作,更像是一个更偏向代码的 AI 聊天伴侣(Companion)。但是 Junie 则更像是一个全智能的 Coding Agent,适合用来处理更大规模的,支持多个步骤,可以独立完成编码任务的 AI Agent,功能上更偏向于 Claude Code,Gemini CLI 这样完全自助完成任务的智能体。

赞助