这里记录了我的技术学习和健康生活点滴。
Docker 方式部署 Hugo 博客
背景 这次用 Docker 方式部署 Hugo 博客,避免在本地安装 Hugo 环境,同时支持热重载方便写作。本文记录从零开始到生产部署的完整过程。 环境信息 系统:macOS 博客目录:/Users/xhsui/Library/CloudStorage/SynologyDrive-content/Hugo 容器镜像:hugomods/hugo:exts(支持 Sass/SCSS) 主题:PaperMod 域名:<ADDRESS_INFO_REPLACED> 完整部署步骤 1. 设置环境变量 export HUGO_PATH="/Users/xhsui/Library/CloudStorage/SynologyDrive-content/Hugo" 2. 初始化 Hugo 站点 docker run --rm \ -v "${HUGO_PATH}:/src" \ hugomods/hugo:exts \ new site . --force 3. 安装主题(PaperMod) cd "${HUGO_PATH}" git clone https://github.com/adityatelange/hugo-PaperMod.git themes/PaperMod 4. 创建配置文件 创建 hugo.toml(注意:Hugo 0.110+ 推荐使用 .toml 格式): baseURL = 'https://blog.xhsui.com/' title = 'xhsui blog' theme = 'PaperMod' defaultContentLanguage = 'zh-cn' enableInlineShortcodes = true [params] locale = 'zh-cn' mainSections = ["tech", "health"] showSummary = true showReadingTime = true ShowShareButtons = false ShowPostNavLinks = true ShowCodeCopyButtons = true [params.homeInfoParams] Title = "欢迎来到我的博客" Content = "这里记录了我的技术学习和健康生活点滴。" # 菜单配置 [menu] [[menu.main]] identifier = "tech" name = "技术" url = "/tech/" weight = 10 [[menu.main]] identifier = "health" name = "健康" url = "/health/" weight = 20 [[menu.main]] identifier = "tags" name = "标签" url = "/tags/" weight = 30 [pagination] pagerSize = 10 ⚠️ 关键配置说明: ...
健康日报 - 2026-06-06
📊 今日总览 项目 实际值 目标值 完成度 🔥 总摄入热量 1800 kcal 1750 kcal ⚠️ +50 💪 蛋白质 84 g 120 g ❌ 70% 🍚 碳水化合物 161 g 160 g ✅ 101% 🥑 脂肪 90 g 55 g ❌ 164% 🏃 运动消耗 0 kcal - ❌ 净摄入:1800 kcal(总摄入 - 运动消耗) 🍽️ 三餐记录 ☀️ 早餐(目标 450 kcal) ❌ 未记录 — 用户确认早上没吃东西 🌞 午餐(目标 650 kcal) 食物 份量 热量 蛋白质 碳水 脂肪 和味道泡面(红烧/香辣等) 1 碗 520 kcal 10 g 68 g 22 g 小计 520 kcal 10 g 68 g 22 g 🌙 晚餐(目标 500 kcal) 食物 份量 热量 蛋白质 碳水 脂肪 煎饺 10 个 480 kcal 14 g 55 g 22 g 生炒鸡 1 份 350 kcal 28 g 8 g 24 g 鸡爪 若干 180 kcal 16 g 2 g 12 g 毛豆 1 份 120 kcal 9 g 10 g 5 g 小计 1130 kcal 67 g 75 g 63 g 🍎 加餐/零食 食物 份量 热量 蛋白质 碳水 脂肪 茶叶蛋 1 个 80 kcal 6 g 1 g 5 g 西瓜 1 大块 70 kcal 1 g 17 g 0 g 小计 150 kcal 7 g 18 g 5 g 各餐热量占比: ...
Git 基础命令整理
Git 仓库 `git init // 初始化当前目录为git仓库 git clone \<url\> // 从远程仓库克隆到本地的当前目录为git仓库 ` Git 本地 ` git add \<file\> //将file提交到暂存区 恢复: git checkout -- \<file\> //放弃本地修改,恢复到版本库最后一次commit状态 git rm \<file\> //等于本地删除文件并且git add \<file\>到暂存区(该文件不能处于modified) git rm -f \<file\> //等于本地删除文件,放弃修改并且git add \<file\>到暂存区(这样还未添加到暂存区的数据会被丢失) 恢复: git reset HEAD \<file\> //从版本库中恢复 git checkout -- \<file\> //恢复至版本库的状态 git mv \<file old name\> \<file new name\> //文件重命名并到暂存区 恢复: git mv \<file new name\> \<file old name\> //将文件改回来 //git mv 的好处是,如果直接在本地修改文件名,会产生一个新的新文件名的文件和已删除的老文件名的文件状态,而git mv 命令直接就是文件名的修改 恢复2: git checkout -- \<file old name\> rm \<file new name\> // 将原文件恢复,并将新文件名的文件删除 git checkout -- \<file\> 放弃本地修改,恢复到版本库最后一次commit状态 git diff //查看已修改的文件与暂存区的比较 //配置difftool可以使用vim等编辑器查看修改 ` <!–more–> ...
vi/vim 学习笔记
–作为了一个使用Linux服务器的程序员来说,vi/vim是必学的编辑器了,好记性不如烂笔头,这里做一个学习的笔记。 简介 vi 是一款文本编辑器。vim则是在vi的基础上加入了更多的功能。 使用vi/vim,vi: vi [file] vim:vim [file] 就可以打开vi/vim的界面。 模式 vi/vim 给使用者提供了三种模式,一般指令模式、编辑模式和命令行模式。 一般指令模式(command mode) 用vi打开一个文件,首先进入的就是默认的一般指令模式。一般指令模式可以使用一些 命令 进行复制粘贴删除等等的操作。 编辑模式(insert mode) 在默认的一般指令模式界面中,使用键盘中的"i"键就可以进入编辑模式,使用esc按键可退回一般指令模式,这个模式下可以正常的字符操作的文本编辑了。 命令行命令模式(command-line mode) 命令行模式要区分一下一般指令模式,输入":“键就可以进入该模式,此时光标会移动到文本的最后一行。这个模式可以提供搜索,保存,退出,替换等功能。 切换说明: 一般指令模式 切换到 编辑模式 i:光标在当前字符的左侧 I:光标在当前行的顶头 o:光标所在行上新建一行 O:光标所在行下新建一行 a:光标在当前字符的下一个字符左侧 A:光标所在当前行的最后 r : 光标所在当前字符替换 R:光标在当前字符左侧 ** 注意:除了 r R 以上都是插入模式(–INSERT–)只有r R是替换模式(–REPLACE–)r 与 R 的区别是 r 只能替换一次字符,而 R 可以连续的替换 ** <!–more–> 一般指令模式 切换到 命令行命令模式 ::可输入指令 / :可输入搜索关键词向下搜索 ?:可输入搜索光见此向上搜索 编辑模式 退回到 一般指令模式 [exit]:输入键盘上的[exit]键退出编辑模式回到一般指令模式 命令行命令模式 退回到 一般指令模式 [exit]:输入键盘上的[exit]键退出一般命令行模式回到一般指令模式 切换表格 insert model command model command-line model i I o O a A r R <- -> “:”,”/","?" [exit] -> <- [exit] vi的操作 界面 vi编辑器的主界面是文件内容的主体,游标以及右下角的提示(显示当前文件名以及行数和字符数,当切换模式后显示当前的模式相关提示) ...
Git 学习笔记
Git 仓库 `git init // 初始化当前目录为git仓库 git clone \<url\> // 从远程仓库克隆到本地的当前目录为git仓库 ` Git 本地 ` git add \<file\> //将file提交到暂存区 恢复: git checkout -- \<file\> //放弃本地修改,恢复到版本库最后一次commit状态 git rm \<file\> //等于本地删除文件并且git add \<file\>到暂存区(该文件不能处于modified) git rm -f \<file\> //等于本地删除文件,放弃修改并且git add \<file\>到暂存区(这样还未添加到暂存区的数据会被丢失) 恢复: git reset HEAD \<file\> //从版本库中恢复 git checkout -- \<file\> //恢复至版本库的状态 git mv \<file old name\> \<file new name\> //文件重命名并到暂存区 恢复: git mv \<file new name\> \<file old name\> //将文件改回来 //git mv 的好处是,如果直接在本地修改文件名,会产生一个新的新文件名的文件和已删除的老文件名的文件状态,而git mv 命令直接就是文件名的修改 恢复2: git checkout -- \<file old name\> rm \<file new name\> // 将原文件恢复,并将新文件名的文件删除 git checkout -- \<file\> 放弃本地修改,恢复到版本库最后一次commit状态 git diff //查看已修改的文件与暂存区的比较 //配置difftool可以使用vim等编辑器查看修改 ` <!–more–> ...
Bootstrap 后台模板
前言 Html的后台模版在百度上普天盖地,国外的的后台漂亮功能大多但臃肿复杂,不易修改。国内的模板js嵌入在页面内,插件多少有些小BUG,所以我自己用Bootstrap写了一个后台管理模板。 预览 https://xhsui.github.io/Bootstrap/login.html1 更新日志 2017-01-27 将项目迁入到了github上 修复了兼容ie8 以及ie向下不兼容提示 <!–more–> 2016-06-20 bate1 完成整体布局 完成整体页面样式 表单验证的一个小工具并集成常用规则 GitHub链接: https://github.com/xhsui/Bootstrap2 1: https://xhsui.github.io/Bootstrap/login.html 2: https://github.com/xhsui/Bootstrap
Mysql 命令导入
将sql文件压缩上传服务器 解压sql文件并cd到该目录下 登进mysql client ` mysql -u root -p Enter password: Welcome to the MySQLstatement. mysql\>use 目标表 ` 执行 ` mysql\>source 目标sql文件名.sql `
MySQL 学习笔记二(SQL数据表)
打开数据库 `USE {DATABASE} SELECT DATABASE() --可检查已打开的数据库名称 ` 数据类型 暂留占位1 数据表操作 创建数据表 `CAREATE TABLE [IF NOT EXISTS]() table_name ( column_name data_type, ... //最后一个不需要加分割, ); //e.g. CREATE TABLE test (id int); ` 修改数据表 `ALTER ` 删除数据表 `DROP TABLE [IF EXISTS]() table_name; //e.g. DROP TABLE test; ` <!–more–> 查看数据表列表 `SHOW TABLES [FROM db_name]() [LIKE 'pattern' | WHERE expr](); //e.g. SHOW TABLES; ` 查看数据表结构 `//方法1 SHOW COLUMNS FROM tbl_name; //e.g. SHOW COLUMNS FROM test; //方法2 DESC tbl_name //e.g. DESC test; ` 数据表的CURD 插入数据库 `INSER [INTO]() tb_name [(col]()_name,...)] VALUES (val,...); //注意:如果[(col_name,...)]()列名称省略,则val必须与表的列相对应 //e.g. INSERT test (1,20); //省略的时候val对应每一个字段 INSERT test (age),(20) //不选略可选择性的插入 ` ...
MySQL 学习笔记一(SQL数据库)
简介: MySQL由瑞典MySQL AB公司开发,目前属于Oracle公司; MySQL是一个开源的关系型数据库管理系统 MySQL分为社区版和企业版 安装配置 启用和停止 启动 : net start mysql 停止 : net stop mysql 登录,退出 登录: mysql -u 用户名 -p 用户密码 退出 mysql -> exit mysql -> quit mysql -> \q 操作规范 关键字于函数名称全部大写 数据库名称、表名称、字段名称全部小写 SQL 语句必须以分号结尾 登录相关参数 -D, --database = name 打开指定数据库 -delimiter = name 指定分隔符 -h, --host = name 服务器主机 -p, --port = # 端口号 --prompt = name 设置提示符 -U, --user = name 用户名 -V, --version 输出版本信息并且退出 提示符 -D 完整日期 -d 当前数据库 -h 服务器名称 -u 当前用户 操作数据库 创建数据库 CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [DEFAULT] CHARACTER SET [=] charset_name; //e.g. CREATE DATABASE IF NOT EXISTS test CHARACTER SET UTF8; 查看数据库列表 SHOW {DATABASES | SCHEMA} [LIKE 'pattern' | WHERE expr]; //e.g. SHOW DATABASES; 修改数据库 ALTER {DATABASE | SCHEMA} [db_name] [DEFAULT] CHARACTER SET [=] charset_name; //e.g. ALTER DATABASE test CHARACTER SET UTF8; 删除数据库 DROP {DATABASE | SCHEMA} [IF NOT EXITIS] db_name; //e.g. DROP DATABASE IF EXISTS test; 查看数据库结构 SHOW CREATE DATABASE db_name; //e.g. SHOW CREATE DATABASE test; 查看警告 SHOW WARNINGS;
Markdown 基本语法
Header 1 Header 2 Header 3 Header 4 Header 5 Header 6 普通段落 Markdown 是一个 Web 上使用的文本到HTML的转换工具,可以通过简单、易读易写的文本格式生成结构化的HTML文档。目前 github、Stackoverflow 等网站均支持这种格式。 超链接 强调加粗 强调倾斜 行内代码 区块引用 Blockquotes 区块嵌套 无序列表 ul 无序列表 ul 无序列表 ul 有序列表 ol 有序列表 ol 有序列表 ol function markdown() { //代码区块 } 绘制表格 项目 价格 数量 计算机 $1600 5 手机 $12 12 管线 $1 234