共计 1004 个字符,预计需要花费 3 分钟才能阅读完成。
被低估的文本编辑器
最近排查线上故障时,我不得不快速分析 2GB 的 Nginx 日志。当同事们在 VS Code 中卡死时,我用 Notepad++ 配合正则表达式在 30 秒内提取出所有 500 错误请求——这让我重新审视这个「简单」工具的价值。下面分享的进阶技巧,能让 Notepad++ 变身轻量级开发环境。

原生功能深度挖掘
-
快速时间戳 :按 F5 插入
2024-03-15 14:23:45格式的时间戳,这在记录操作日志时非常实用 -
精准导航:
- Ctrl+ B 跳转到匹配括号
- Ctrl+ G 输入行号直达目标
-
Alt+ 鼠标列选实现多行同步编辑
-
编码转换:
- 通过「编码」菜单转换 ANSI/UTF-8
- 遇到 BOM 头导致脚本执行报错时,使用「转为 UTF- 8 无 BOM」选项
正则表达式实战
分析 Apache 日志示例:
192.168.1.1 - - [15/Mar/2024:10:23:45 +0800] "GET /api/user HTTP/1.1" 200 342
提取关键信息的正则模式:
^(\d+\.\d+\.\d+\.\d+).*?\[(.*?)\].*?(\d{3}) (\d+)$
测试用例说明:
1. (\d+\.\d+\.\d+\.\d+) 捕获 IP 地址
2. \[(.*?)\] 非贪婪匹配时间戳
3. (\d{3}) 匹配 HTTP 状态码
4. (\d+)$ 捕获响应体大小
NppExec 插件开发集成
编译运行 Python 脚本的配置:
# 处理路径含空格的情况
SET local_python = "C:\Program Files\Python310\python.exe"
# 获取当前文件路径
"$(FULL_CURRENT_PATH)" > $(TEMP)\nppexec.tmp
SET local_file = $(OUTPUT)
# 执行并显示输出
"$(local_python)" "$(local_file)"
避坑指南
- 中文乱码:
- 优先使用 UTF- 8 编码
- 遇到乱码时尝试「编码→使用系统字体」
-
CSV 文件建议显式设置为 GB2312 编码
-
大文件处理:
- 开启「设置→首选项→备份→禁用自动备份」
- 使用「仅加载可见部分」模式(View→Fold→Hide Lines)
- 超过 100MB 文件推荐先用
grep预处理
延伸思考
要实现 REST API 调试,可以组合以下方案:
1. 使用 NppExec 调用 curl 命令
2. 安装 JSON Viewer 插件格式化响应
3. 配合 AutoSave 插件实现请求日志持久化
下次遇到紧急调试,不妨试试这个「瑞士军刀」式的解决方案。
正文完
