软件使用技巧

CentOS 7 磁盘清理脚本

一台磁盘空间仅 5GB 的 VPS 主机磁盘耗尽。用 du -sh /* 命令检查了一下,除了 swap 占用的 1GB 空间外,剩下就是 /var 目录占用了大头。其中,记录登录失败事件的日志文件 /var/log/btmp 就有上百兆大小。 使用如下命令清理日志和缓存,腾出了 1.5GB 左右的空间: SHjournalctl --vacuum-size=50K docker system prune -af yum clean all rm -f /var/log/audit/audit.log.* rm -f /var/log/boot.log-* rm -f /var/log/dmesg.old echo > /var/log/btmp echo > /var/log/wtmp echo > /var/log/corn echo > /var/log/dmesg echo > /var/log/firewalld echo > /var/log/secure echo >……

Cloudflare 代理自签名 HTTPS 证书的源站

源站使用 Cloudflare 的 CDN 服务非常方便,只要将 DNS 托管在 Cloudflare 平台,然后设置 DNS 记录时,代理状态勾选「已代理」就行了。不过这一步操作无法选择源站使用的是 HTTP 协议还是 HTTPS 协议,依稀记得有个地方是可以设置的。翻了一遍操作菜单,在左侧导航菜单的「STL/TLS > 概述」里找到了,加密模式有如下四个选项: 关闭(不……

WSL 使用技巧

Windows Subsystem for Linux 是 Windows 上运行 Linux 环境的兼容层。WSL 有两个版本,分别是 WSL 1 和 WSL 2,后者现在是 Windows 默认安装的版本。两个版本在底层实现上有很大区别,WSL 1 通过 lxss.sys 和 lxcore.sys 这两个 Windows 内核驱动来模拟 Linux 内核,而 WSL 2 通过 Hyper-V 虚拟机托管运行了一个经过优化过的 Linux 内核,能够提供完整的 Linux 系统调用,并支持 systemd 和 IPv6。缺点……

判断用户是否删除过浏览器历史记录

本文仅适用于 Google Chrome, Microsoft Edge 等使用 Chromium 内核的浏览器。此内核的浏览器会将浏览器的访问历史记录储存在一个 SQLite 数据库文件中,可以用任何支持 SQLite 数据库 GUI 工具打开。常用的免费 SQLite 数据库 GUI 工具有: SQLiteStudio DB Browser for SQLite HeidiSQL DBeaver 在不同的操作系统下, Google Chrome 的历史记录数据库文件默认保存路径如下: Windows: %LOCALAPPDATA%\Google\Chrome\User Data\Default\History Linux: ~/.config/google-chrome/Default/History macOS: /Users/<username>/Library/Application Support/Google/Chrome/Default/History 在 Windows 下, Microsoft Edge 的历史记……

文本编辑器 CudaText 简体中文汉化包

不久之前,我在 Windows 平台上最常用的文本编辑器还是 Notepad3 和 Notepad++ 。前者用来替换系统自带的记事本;后者用来处理一些稍微复杂,但还没有上升到需要动用专业 IDE 的文本编辑工作。最近发现新版本的 Notepad++ 会频繁卡顿,但由于拖延症和考虑到更换新软件的适应成本,就一直没有想过要换掉它。直到前几周 Notepad++ 被爆出存在多个缓冲区……

    用 RunDLL32.exe 命令实现 xdg-open

    xdg-open 是 Linux 下的一个命令,可以调用对应的程序来打开目标文件,等同于在文件管理器中双击打开该文件。Ubuntu 用户可以通过执行 sudo apt install xdg-utils -y 来安装 xdg-open 命令,这个命令的用法也很简单: xdg-open { file | URL } 遗憾的是, Windows 系统并没用提供类似的命令,不过我们可以通过 Windows 自带的 rundll32.exe 命令来实现一个类似功能的脚本。 RunDLL32.exe 用来加……

    Windows 下的 GNU/Linux 命令行工具

    通常想要在 Windows 下运行 Linux 命令有以下几种选择: WSL Cygwin MinGW / MinGW-w64 MSYS2 不过以上几种方案除了要安装体量巨大(包含完整的工具链)的软件外,还需要切换到相应的运行环境才能执行 Linux 命令,无法在 Windows 命令行中直接运行。 本文收集了一些 GNU/Linux 命令行工具,它们都可以通过 Scoop 进行安装。 工具集 以下几种轻量化的命令行工具集,仅包含……

    从 HeidiSQL 配置文件中找回数据库密码

    HeidiSQL 是 Windows 平台上一个开源数据库管理工具,支持 MariaDB, MySQL, SQL Server, PostgreSQL, SQLite, Interbase 和 Firebird 。HeidiSQL 使用 Delphi 编写,和其他诸如 Navicat, DBeaver 等专业数据库管理工具相比, 它更加轻量、启动和响应速度更快。 HeidiSQL 将数据库密码加密后保存在配置文件中,不过这种加密方式非常简单。可以在 HeidiSQL 的源代码文件 source/apphelpers.pas 中找到加密和解密算法: PASCAL{*** Password-encryption, used to store session-passwords……

    通过 Starship 个性化定制 PowerShell 终端

    之前一直使用 Oh My Posh 美化终端提示符。不过 Oh My Posh 配置起来比较麻烦,就一直在使用官方提供的默认配置。然而在默认配置下, Oh My Posh 某些特性在 Windows 下体验不太友好。比如,在提示符中显示无意义的用户名;又或者当前路径过长导致输入命令换行。 最近试用了一款名叫 Starship 的类似的软件。也许是受到其官网宣传的蛊惑,……

    使用 Neovim 进行 Python 开发

    本文仅以 Windows 下的 LazyVim 配置环境为例。 启用 Python 支持 可启用 LazyVim 自带的 Python 语言插件。在 %LOCALAPPDATA%\nvim\lua\config\lazy.lua 文件中加入以下高亮代码: LUA -- import any extras modules here { import = "lazyvim.plugins.extras.lang.python" }, -- { import = "lazyvim.plugins.extras.lang.typescript" }, -- { import = "lazyvim.plugins.extras.lang.json" }, -- { import = "lazyvim.plugins.extras.ui.mini-animate" }, 选择 Virtualenv 当 Neovim 打开一个 Python 项目时,默认会加载项目根目录下的 venv 路径下的 Virtualenv 。可以使用 venv-selector.nvim 插件为当前项目选择指定的 Virtualenv 。使用命令 :VenvSelect 或者快捷键 <leader>cv……