- 博客(98)
- 问答 (2)
- 收藏
- 关注
原创 WSL2 离线安装流程
好的,下面是完整的 WSL2 离线安装流程,包括所需文件下载、传输、安装命令等内容。这个方案适用于不能联网的 Windows 10/11 设备,只要你有一台能上网的另一台电脑,就能完成。如果你需要,我可以打包一个包含这些内容的离线安装工具目录结构模板。把上述文件复制到你的离线 Windows 机器,比如 U 盘放到 D:\WSL2Offline。🔹 3. (可选)下载 App Installer 依赖组件(有些系统没装)🔸 2. 安装 Ubuntu 离线包(Appx)
2025-07-17 20:05:18
643
原创 错误 0x80370102排查
6. 如果还是失败,请 卸载 Ubuntu 后重装,或执行 wsl --unregister Ubuntu。4. 安装 Ubuntu 前运行 wsl --set-default-version 2;• 安卓模拟器(如 LDPlayer、BlueStacks)默认关闭 Hyper-V。• VirtualBox 版本较旧(需 ≥ 6.1.16 才兼容 Hyper-V)1. 确保 BIOS 中 VT 已开(特别是 VT-x + VT-d);• ✅ Hyper-V(如果你打算用 Hyper-V 同时运行虚拟机)
2025-07-17 19:41:44
251
原创 wsl 0x80370102
* 虚拟机监视器模式扩展: 是 * 固件中启用的虚拟化: 是 * 二级地址转换: 是 * 数据执行保护可用: 是 * 如果任何一项显示“否”,说明底层支持仍有问题(即使你确认 BIOS 开了 VT-x/AMD-V)。* 找到以下服务,确保它们的“启动类型”是“自动”,并且“状态”是“正在运行”: *(尤其是与“Hyper-V”、“虚拟化”、“安全更新”、“服务堆栈更新”相关的)。* 安装完成后,
2025-07-17 12:17:27
499
原创 Aerial大纲中只显示函数名
创建配置文件添加以下配置return {opts = {-- 关键配置:自定义符号显示格式-- 只返回函数名(最后一部分)-- 分割符号名(处理 :: 或 . 分隔符)endreturn parts[#parts] -- 返回最后一部分(函数名)end-- 其他类型保持原样end,-- 可选:忽略所有非函数符号include = {"function", "method"} -- 只显示函数和方法。
2025-07-17 07:46:55
116
原创 LazyVim 中关闭 Mason 安装的 clangd
在 LazyVim 中关闭 Mason 安装的 clangd 需要两步操作:禁用 LSP 服务和阻止 Mason 安装。
2025-07-17 07:37:48
236
原创 lazyvim恢复gt键
下面是一个完整的 LazyVim 键位配置 patch,将 gt / gT 恢复为 “切换标签页(tab page)” 的原始行为,同时保留原本 buffer 切换功能在其他键位上(比如 / )。我可以给你一个 lua/plugins/tabfix.lua 文件直接放进去。✅ 恢复 gt 为 Tab 切换:写入到 lua/config/keymaps.lua。或者直接重启 Neovim,即可恢复 gt/gT 原行为 🎉。– 恢复 gt / gT 为 Tab 页切换。✅ 保存并重启 Neovim。
2025-07-16 23:17:51
226
原创 neovim clangd使用
### 🚨 常见问题排查| 问题现象 | 解决方案 ||---------------------------|-----------------------------------|| 头文件跳转失败 | 检查。只能基于默认配置解析代码,可能导致: - 头文件跳转失败 - 宏定义无法识别 - 条件编译代码误判2.,但该文件能显著提升准确性,尤其在复杂项目中。
2025-07-15 08:13:19
371
原创 深度学习主机配置方案
适合:部署 DeepSeek、训练/微调 LLaMA、Qwen、ChatGLM 等大模型,以及对抗训练、LoRA、推理任务。
2025-07-13 16:00:25
311
原创 deepseek台式机配置
好的!下面是为你精心打造的两套完整配置清单:基于 AMD 平台 + DDR5 + PCIe 5.0 + RTX 4080 Super / 4090D,适合深度学习、大模型部署、对抗学习等 AI 实验用途。⸻🚀 套餐一:高性价比专业实战版(搭配 RTX 4080 Super)💡 适合:学习大模型原理、部署 7B 模型、LoRA 微调、对抗训练等配件 型号推荐 说明 价格(参考)
2025-07-13 15:59:45
817
原创 .gitignore
下面是适用于你这个使用 CMake 和 Makefile 构建系统的 C++ 项目的 .gitignore 文件,适用于排除编译产物、临时文件和系统杂项:⸻。
2025-07-12 09:58:21
310
原创 vscode配置头文件和编译器
### 关键参数说明| 参数 | 作用 | 示例 ||-------------|-------------------------------|-------------------------------||为实际路径 - 重启 VS Code 使配置生效—通过以上步骤,你的 VS Code 即可正确识别头文件并配置编译路径。:添加头文件目录(如标准库、第三方库路径)
2025-07-10 12:33:29
374
原创 clang 编译器怎么查看在编译过程中做了哪些优化
摘要:本文详细解析了C++表达式if(yy == xx.getValue())在编译器内部的语义分解过程。该过程可分解为四个步骤:1)调用getValue()获取临时对象;2)调用类型转换运算符operator Y()进行类型转换;3)调用operator==进行比较;4)根据比较结果执行条件语句。文章还介绍了两种分析编译器优化行为的方法:通过Clang的-Rpass选项查看优化报告,以及通过生成LLVM IR和AST来观察中间过程。最后提供了禁用优化选项的方法来完整保留临时变量的创建过程,便于深入研究编译
2025-07-06 16:57:54
498
原创 CMake是什么
CMake 是一个 跨平台的构建系统生成工具,它不直接构建(编译)你的代码,而是用来生成各种平台下的构建系统(如 Makefile、Visual Studio 工程文件、Xcode 工程等)。你写的 CMakeLists.txt +→ cmake → 生成构建系统 (Makefile / Ninja / .sln / Xcode)CMake 提供了一套 统一、跨平台、模块化、声明式 的语法,解决这些问题。构建工具(如 make、ninja、MSBuild)→ 编译/链接生成可执行文件或库。
2025-07-05 21:58:00
523
原创 json学习路线
• 示例项目:https://github.com/nlohmann/json/tree/develop/examples。// ========== 更多内容请参考官方文档:https://json.nlohmann.me ==========• m_type + m_value 是 basic_json 的底层结构(C++17 以前用手写 union)// 建议阅读 test/src/parse.cpp 和 test/src/operator.cpp。// 转成字符串(2 表示缩进)
2025-07-05 16:36:52
939
原创 nlohmann/json怎么使用
因为它是 header-only(不需要编译链接),只要你能 #include 到它,它就能用了。是的,✅ 最直接、简单的方式就是把 json.hpp 放进你的项目里使用。❗ 结论:是的,你需要把 json.hpp 拷贝进项目里或用包管理器引入。✅ 使用 nlohmann/json 的 3 种方式(推荐顺序)✅ 方式 2:放入 include/ 目录(适合大项目)✅ 方式 1:手动放入项目目录(最常用,适合所有项目)✅ 方式 3:用包管理器(适合用 CMake 的人)
2025-07-05 16:31:54
218
原创 C++项目学习计划
我会根据你这个需求,推荐几类适合学习的 C++ 项目,并说明为什么适合你学 C++,还附带一套“怎么学”指南**。modern-cpp-tutorial C++ 教程形式的代码库 C++11/14/17/20 各特性,标准写法。fmt std::format 的前身,C++ 字符串格式化神器 C++ 高效 API 设计。Catch2 现代 C++ 写的测试框架,代码简洁优雅 模板、RAII、DSL设计。json nlohmann 的 JSON 库,非常火 STL 容器封装、模板元编程。
2025-07-05 13:19:14
375
原创 vscode vim插件示例json意义
你贴的这段是 VSCode 的 settings.json 配置,针对 VSCodeVim 插件 做了定制,融合了 Vim 的高效操作与 VSCode 的现代体验。✅ 把 Vim 插件分配到独立的渲染线程(Affinity 1),避免卡顿(实验性设置,适合大型项目或老机器)。✅ 在插入模式中,连续输入 jj 会被映射为 (即退出插入模式),这是很多 Vim 用户喜欢的快速退出方式。• 兼容 Vim 操作,又保留 VSCode 原生快捷键(如 Ctrl+F)。搜索关键字后会持续高亮,直到你取消高亮。
2025-07-02 23:10:00
919
原创 使用sshfs+vscode 在windows远程开发centos6代码
这个需求是“典型的远程开发场景”,但因为 CentOS 6 很旧,不能用 VSCode Remote-SSH(它需要新版本 glibc),所以我们要用 兼容性强 + 开发体验好的替代方案。如果你愿意,我可以根据你的项目路径、用户名、服务器 IP,帮你生成挂载脚本、rsync 脚本和 VSCode 的 tasks 配置,全部一键可用。🥈 方案二:VSCode 本地开发 + 自动 rsync 同步(适合频繁构建)小项目(C/C++) VSCode + SSHFS + 本地编辑 + 远程构建。
2025-06-26 00:16:52
762
原创 lazyvim cpp dev config
vim.keymap.set(“n”, “ca”, “lua vim.lsp.buf.code_action()”, { desc = “代码操作” })vim.keymap.set(“n”, “ca”, “lua vim.lsp.buf.code_action()”, { desc = “代码操作” })vim.keymap.set(“n”, “”, “lua vim.lsp.buf.rename()”, { desc = “重命名变量” })”, desc = “代码大纲” },
2025-06-25 07:56:10
788
原创 LVM分配剩余空间给逻辑卷
你看到的 /dev/mapper/ubuntu–vg-ubuntu–lv 只有 30G,而你明明在 VMware Fusion 中配置了 64G 磁盘,这是因为你用了 LVM(逻辑卷管理器),而且 还没有把所有的磁盘空间分配给逻辑卷。如果你愿意,我可以根据你的 lsblk 输出或者 vgdisplay 输出,帮你写一个一键扩容脚本。└─ LV(Logical Volume:ubuntu-lv,当前仅用30G)步骤三:扩展文件系统大小(如果你用的是 ext4)🛠 解决方案:扩展逻辑卷并扩容文件系统。
2025-06-22 18:06:40
318
原创 extract_alarm_8.sh
你要的效果是:提取 setIntlkAlarm、createActionAlarm、acceptUnknown 节点的内容,并获取距离它最近的上一级父节点(即它被包裹的直接父节点),而不是随意更上层的祖先节点。⸻✅ 正确脚本(仅 Bash + awk + sed,不依赖第三方工具)这个版本专门修复了“上一级父节点不准确”的问题,用一个栈来追踪 XML 层级结构,始终记录当前的“直接父标签”。/bin/bash。
2025-06-18 08:01:36
358
原创 修改具有 `type=“instance“` 属性的节点及其结束标签,而不影响其子节点
您完全正确,我理解错了问题所在。让我提供正确的解决方案,只修改具有。
2025-06-17 16:32:35
338
原创 修改配对的节点名字
您指出了一个重要问题。之前的脚本只修改了开始标签,没有处理结束标签。让我提供一个完整的解决方案,同时修改开始标签和结束标签:完整解决方案说明修复的问题同时处理开始和结束标签:保留 XML 结构完整性:如果尚未安装 :示例演示输入 XML (input.xml):运行脚本:输出 XML:备选方案(无 xmlstarlet)如果无法安装 ,可以使用这个增强的 方案:注意事项XML 复杂性:备份建议:测试验证:自定义前缀:这个修正后的脚本会确保同时修改开始标签和结束标签
2025-06-17 16:04:50
288
原创 获取节点的内容,并与上一级节点的名字拼接
您指出的问题很关键。让我重新分析并修正脚本,确保父节点名称正确获取并组合到 KEY 中。问题在于 XML 结构中的嵌套关系和标签处理逻辑需要更精确的追踪。
2025-06-17 15:27:46
224
原创 提取节点中的内容
{base}.rc” # 输出文件名(如 Interlock_LA.rc)如你需要扩展支持多种标签名、自动检查字段数量、处理中文、导出 JSON 等,我也可以继续帮你改进。当然可以,下面我会逐行解释这个脚本的作用,方便你理解和之后自行修改。每个字段独占一行,符合你要求的输出结构,并在每组之间加入一个空行。• 输出文件名为原文件名加 .rc 后缀(无扩展名部分)遍历当前目录下所有 .xml 文件,逐个处理。在终端提示用户当前文件已经处理完。• 按格式输出成 .rc 文件。
2025-06-16 23:39:28
818
原创 Linuxkernel学习-deepseek-2
- eBPF 内核编程 - KVM 虚拟化原理 - 容器安全(cgroups/namespaces) -- 任务示例: - 编写字符设备驱动 - 提交内核补丁到邮件列表 -: - 12 个硬核实验(从系统调用到网络栈) - 视频 + 实验全开源 -| 资源 | 特点 | 链接 ||------|------|------||| 自制 OS 开发百科(含内核设计) || 深度技术分析(更新快) |
2025-06-11 20:29:48
1157
1
原创 Linux内核学习资料-deepseek
领域 | 关键技术点 | 学习资源 ||---------------|-------------------------------|-----------------------------||- 《Understanding the Linux Kernel》- 深入VFS、调度器 - 《Linux设备驱动程序》- O’Reilly经典(- 配套书籍《操作系统:原理与实现》(银杏书) -
2025-06-11 20:26:47
745
原创 TMEnIPPath类中Fit与GetPath方法详解
函数是路径生成的核心编码器,负责将CIP元素按协议规范打包到字节数组中。Attribute段处理。Instance段选择。由类型标识符低位决定。
2025-05-29 16:45:54
887
原创 基于socket的sendCmd和reciveRes
好的,以下是 C++98 标准下的实现,去掉了 C++11 的特性(如 std::string 的简洁构造、auto、nullptr、统一初始化等),并严格使用 std::string、传统循环和指针操作方式。1. 请求响应一一配对:sendCommand → recvResponse,双方严格同步,一个请求一个回复,不并发。如果你告诉我你使用的协议(有没有换行、有没有 ID、有没有固定长度等),我可以进一步为你定制。4. 前置长度字段:发送数据前写入长度(如 4 字节),接收时先读长度再读正文。
2025-05-29 07:36:24
211
原创 简单的makefile
创建一个简单的Makefile可以帮助你自动化编译过程,特别是在处理C或C++项目时。下面是一个基础的示例,展示了如何为一个简单的C项目编写Makefile。假设你有一个C项目,包含一个名为main.c的主程序文件,和一个名为math.c的辅助函数文件。你的项目结构可能看起来像这样:project/│├── main.c├── math.c└── MakefileMakefile 示例在你的项目目录中创建一个名为Makefile的文件,并输入以下内容:CC=gccCFLAGS=-I.LDFLAGS
2025-05-27 15:47:01
209
原创 tar+split分卷压缩
使用tar命令结合split工具通过管道操作是实现分卷压缩的核心方法。具体可通过两种方式实现:1. 先压缩再分卷的分步操作;-d使用数字后缀格式(生成filename_part00、filename_part01等)。直接生成分卷文件(filename_part00、filename_part01等)。管道同步操作 tar与split同步完成压缩分卷 高效率的大文件处理场景。-b 100M指定分卷大小为100MB。两种实现方式的对比:。管道同步操作(推荐)。分卷压缩核心方法。
2025-05-27 09:45:44
561
原创 C++ 定义一个结构体,用class还是struct
如果你不需要从该结构体派生其他类,并且希望成员变量默认是公开的,那么使用struct。如果你希望你的结构体中的成员变量默认就是公开的,并且你不需要从该结构体派生其他类,那么使用struct可能更合适。如果你希望你的结构体中的成员变量默认是私有的,或者你需要从这个结构体派生其他类,那么使用class可能更合适。继承方式:继承默认是private的,即派生类默认不能直接访问基类的所有成员,除非显式改变访问权限。默认访问权限:在class中,成员变量的默认访问权限是private。
2025-05-25 17:03:35
265
原创 Cloudflare Tunnel 实现远程访问树莓派的 SSH
要通过 Cloudflare Tunnel 实现远程访问树莓派的 SSH(22端口)服务,你可以使用 cloudflared 工具将树莓派的 SSH 暴露到一个 HTTPS 域名下,然后通过 Cloudflare Zero Trust 实现安全访问。如果你告诉我你的域名(如 example.com)和系统(Raspberry Pi OS / Ubuntu 等),我可以直接为你生成完整的配置文件和一键部署脚本。4. 绑定自己的域名(如 ssh.yourdomain.com)
2025-05-20 07:21:22
647
原创 cloudflare 树莓派一键部署脚本
非常好,下面是一个`,用于在树莓派上:• 安装并配置 Cloudflare Tunnel• 启用 systemd 自动运行 tunnel• 暴露多个本地服务(WebUI、SSH、NAS)⸻🧾 你将需要准备:1. 已注册的域名(在 Cloudflare 上管理)2. 已在树莓派中登录 Cloudflare(我们会自动处理)⸻🛠️ 脚本功能概览:子域 绑定服务 本地端口webui.example.com 树莓派的 Web 服务 localhost:8000。
2025-05-20 07:20:51
833
TA创建的收藏夹 TA关注的收藏夹
TA关注的人