一、为什么 Windows 仍需要"终端三件套"
2013 年的 Windows 8 时代,PowerShell 3.0 已经成熟,但日常开发还是 cmd + Git Bash + PowerShell 三选一。本文整理 cmd / Git Bash / PowerShell 的常用配置,外加 Markdown 编辑、Mermaid 图表、Navicat 数据库工具这三条"终端之外的工具链"。
阅读建议:本文不重复 “PowerShell 基础命令” 类的入门内容,重点在配置 + 排错。
二、cmd:被低估的"老古董"
2.1 时间显示到秒
cmd 默认 time /t 只显示 HH:MM,要看到秒:
| |
更简单的办法:用 prompt:
| |
效果:12:34:56.78 C:\>
2.2 常用快捷键
| 快捷键 | 作用 |
|---|---|
F7 | 显示命令历史 |
F8 | 搜索历史 |
Tab | 路径自动补全(Win 7+) |
Ctrl+C | 中断当前命令 |
Ctrl+Insert / Shift+Insert | 复制 / 粘贴(Win 10+) |
2.3 中文编码
cmd 默认 GBK。chcp 65001 切到 UTF-8,但部分老 exe 还会乱码——这是 cmd 一直存在的老问题。2013 时代推荐用 cmder / ConEmu 替代 cmd(Unicode + 多 Tab)。
2.4 提升到管理员
| |
三、Git Bash:Windows 上最像 Linux 的终端
3.1 安装
安装 Git for Windows(https://git-scm.com/download/win)时默认带 Git Bash。关键选项:
Use Git from the Windows Command Prompt:勾选(让 cmd 也能用 git)Checkout Windows-style, commit Unix-style line endings:推荐(文件保留 CRLF,提交时自动转 LF)Use Windows' default console window:默认即可,追求美化用 Windows Terminal / cmder
3.2 中文乱码
Git Bash 早期(<= 2.10)ls 中文文件名乱码。两种解决:
| |
git config --global core.quotepath false 这一条最关键——ls 看到的中文文件名会正常显示。
3.3 常用别名(~/.bashrc)
| |
3.4 winpty 与交互式程序
Git Bash 调用 Windows 原生 python.exe、mysql.exe 等交互式程序会丢失方向键/历史。解决:
| |
2025 时代:微软推出 Windows Terminal + WSL 才是真"现代终端"——但 2013 时代 Git Bash 已经是最佳选择。
四、Markdown 工具链
4.1 Markdown 语法速查
Markdown 在 2013 年已经开始从极客玩具走向主流。三个层次的语法:
- 基础(CommonMark):标题、列表、引用、链接、图片、代码块
- GFM(GitHub Flavored):表格、删除线、任务列表、
```代码围栏 - 扩展:数学公式(
$...$)、Mermaid 图表、PlantUML、目录(TOC)
4.2 数学公式
VSCode / Typora / Obsidian 都支持 KaTeX 风格的数学公式:
| |
常用符号速查:
| 符号 | 代码 | 描述 |
|---|---|---|
| $\sum$ | $\sum$ | 求和 |
| $\prod$ | $\prod$ | N 元乘积 |
| $\int$ | $\int$ | 积分 |
| $\partial$ | $\partial$ | 偏导 |
| $\nabla$ | $\nabla$ | 梯度 |
| $\alpha$ | $\alpha$ | 希腊字母 alpha |
| $\leq$ / $\geq$ | $\leq$ / $\geq$ | 小于等于 / 大于等于 |
| $\in$ | $\in$ | 属于 |
| $\emptyset$ | $\emptyset$ | 空集 |
| $\forall$ | $\forall$ | 任意 |
| $\exists$ | $\exists$ | 存在 |
4.3 Mermaid 图表
Mermaid 2014 年由 Knut Sveidqvist 开源,用纯文本写流程图、时序图、类图、状态图、ER 图。在 GitHub README / VSCode / Typora 里都原生支持。
流程图:
饼图:
4.4 类图(UML)
6 种关系:
| 关系 | 标记 | 含义 |
|---|---|---|
| 泛化 | <|-- | 子类继承父类 |
| 实现 | <|.. | 实现接口 |
| 组合 | *-- | 强拥有(生命周期一致) |
| 聚合 | o-- | 弱拥有(可独立) |
| 关联 | --> | 知道对方 |
| 依赖 | ..> | 使用关系 |
4.5 PlantUML
PlantUML 2009 年开源,写 UML 还能保留 .puml 文本文件——比 Visio 强在"可版本控制"。需要 Graphviz 支持:
| |
VSCode 装 PlantUML 插件 + jebbs/plantuml 即可一键预览。
五、Navicat:多数据库管理瑞士军刀
5.1 定位
Navicat Premium 是 PremiumSoft 公司开发的多数据库 GUI 工具,一个客户端同时支持:
- MySQL、MariaDB
- PostgreSQL、SQL Server、Oracle
- SQLite、MongoDB
- Redis(早期版本,2020+ 才完善)
5.2 连接配置
新建连接,关键选项:
Host:MySQL 默认 3306,PostgreSQL 默认 5432SSH通道:先 SSH 到堡垒机再连数据库(生产环境必备)SSL:MySQL 5.7+ 强制要求Advanced → Connection timeout:默认 30s,建议 60sAdvanced → Keepalive interval:120s(防止隧道中断)
5.3 常用功能
- 数据传输:跨库同步(MySQL → PostgreSQL 异构)
- 数据同步:表级双向同步
- 结构同步:表结构差异对比 → 自动生成 ALTER
- 查询构建器:可视化 SELECT,自动生成 SQL
- 数据建模:画 ER 图(替代 PowerDesigner 的核心功能)
- 计划任务:定时备份、转储
5.4 备份与还原
自动运行 → 新建批处理作业:
- 数据库右键 →
转储 SQL 文件 - 调度 →
每日 02:00 - Windows 任务计划程序配合调用
5.5 与 PowerDesigner 协作
- PowerDesigner 做概念模型 (CDM) → 物理模型 (PDM) → 建库 SQL
- Navicat 做日常管理 + 数据同步 + 报表
详见 [2014-10-15 设计建模工具:Axure / PowerDesigner / VSCode]
六、PowerDesigner 16.x 速查
6.1 安装
PowerDesigner 16.5/16.6 是 SAP 时代的最后一版。安装路径默认 C:\Program Files\Sybase\PowerDesigner 16。注意:16.7 是民间称呼,实际是 16.6 升级包。
6.2 名称转注释
PD 默认表名/字段名是**逻辑名(Name)+ 物理名(Code)**双轨。批量把 Name 复制到 Comment:
| |
| |
6.3 全局通用字段
每个表都加 create_by / create_time / update_by / update_time / sys_org_code 字段。用 PD 的 Global Field 模板:
Tools → Model Options → Naming Convention → Default Field,新增:
| 字段 | 类型 | 注释 |
|---|---|---|
create_by | varchar(50) | 创建人 |
create_time | datetime | 创建时间 |
update_by | varchar(50) | 更新人 |
update_time | datetime | 更新时间 |
sys_org_code | varchar(64) | 机构代码 |
6.4 MySQL 8.0 关键字
MySQL 8.0 大量新关键字(EMPTY、OFF、ZONE、PATH、OFFSET 等)——字段名撞关键字会报错。常用对策:
- 字段加反引号
`field` - 改字段名(推荐)
- PD 导出时勾选
Quote identifiers
完整关键字表见 MySQL 8.0 官方文档 https://dev.mysql.com/doc/refman/8.0/en/keywords.html。
七、常见问题
7.1 Git Bash 启动慢
~/.bashrc 加载太多东西会卡。用 time bash -c "echo hello" 测试,把慢的命令移到 if [ -n "$PS1" ] 之后。
7.2 cmd 中 UTF-8 编码显示错乱
chcp 65001 后部分 exe 仍乱码——是字体问题。cmd 标题右键 → 属性 → 字体 → Consolas 或 Lucida Console。
7.3 Navicat 连不上 MySQL 8.0
MySQL 8.0 默认 caching_sha2_password 鉴权插件,Navicat 11 之前不支持。两种解决:
| |
或升级 Navicat 12+。
7.4 Mermaid 中文乱码
某些 Mermaid 版本类名有中文会报错,用引号包起来:
八、下一步
- 想看 IDE 编码主战场:[2014-04-15 IntelliJ IDEA 全攻略]
- 想看数据库建模:[2014-10-15 设计建模工具:Axure / PowerDesigner / VSCode]
- 想看 Git 工作流:[2014-11-15 Git 与版本控制]
本文写于 2013 年,回看当时:cmd 至今没被 Windows Terminal 完全替代,大量运维老脚本还在用 bat 写;Navicat 至今仍是国产 DBA 的"事实第一选择"——这套工具的生命力超乎想象。
