编码 - 设置 win10 下 cmd 编码格式

北慕城南 提交于 2020-02-27 01:43:58
  1. 概述
    1. cmd 编码格式修改
  2. 背景
    1. 之前尝试过修改 gitbash(mingw) 的 Character Set
    2. 这次尝试修改一下 cmd 的编码格式
  3. 准备
    1. os
      1. win10.1903

1. 查看 当前编码

  1. 概述
    1. 查看当前 cmd 窗口的默认编码
    2. 因为我没有修改过, 所以这个应该也是 win10 下 cmd 的默认编码
  2. 步骤

    1. 打开 cmd

2. 查看当前编码

  1. 命令

    # 大写也行, 搞不懂
    > chcp
    活动代码页: 936
  2. 结果
    1. 936
      1. 什么鬼
    2. 常用编码
      1. 936
        1. GBK
      2. UTF-8
        1. 65001

2. 修改 当前窗口 编码格式

  1. 概述
    1. 修改 当前cmd 窗口的编码
  2. 步骤

    1. 打开 cmd

2. 修改当前编码

  1. 命令

    > chcp 65001
    # 窗口重启
    # 重启后 第一行如下
    Active code page: 65001
  2. 结果
    1. 窗口重启
    2. 第一行有提示编码改变
    3. 输入 chcp 查询, 结果是 Active code page: 65001
      1. 居然都不用中文了
    4. 尝试命令

      > dir
      # 结果
      # 1. 内容正常显示
    5. 惊了, 字体都变了
      1. 字体变换
        1. gbk 的时候, 默认是 宋体
        2. 切换到 utf-8 的时候, 会换成 Lucida Console
      2. 为什么 字体会改变 呢?
        1. 因为 宋体 无法完全支持 utf-8 的所有符号
          1. 不换的话, 可能会出现乱码
        2. 所以说, 换了个字体, 避免尴尬
  3. 问题: 修改只能管一个窗口
    1. 问题
      1. 我开个 别的 cmd 窗口, 编码又 变回去gbk 了
      2. 有没有办法

3. 修改 所有窗口

  1. 概述
    1. 尝试修改 所有窗口 的编码
  2. 步骤

    1. 注册表编辑器

2. 找到 cmd 对应的 项

  1. 路径

    计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor

3. 添加 配置

  1. 右键单击 Command Processor
    1. 弹出菜单
    2. 选择 新建 > 字符串值
  2. 新建项
    1. 名称
      1. autorun
    2. 内容

      chcp 65001
  3. 验证
    1. 重新打开 cmd
      1. 打开成功
      2. 第一行提示 65001

ps

  1. ref
    1. windows cmd命令行如何恢复默认代码页936
      1. 简单介绍了 常用编码 的意义
    2. 如何修改cmd控制台默认编码为utf-8
      1. 这个是 win10 的
      2. win7 版本的对我不适用, 我也没法验证, 所以就不贴出来了
  2. 后续
    1. 老实说, 我也不知道我为了啥, 来修改这个东西
      1. 也不知道, 修改了之后, 会有什么影响
    2. 其实我更想知道 编码显示 的原理
      1. 以及一些问题出现的原因
      2. 顺带还有 解决方案...
    3. 最初希望理解的, 是 网络传输 中, unicode 的相关内容
      1. 现在怎么感觉 越走越远 了...
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!