[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] chcp 65001之后无法切换回默认936

本帖最后由 tigerpower 于 2018-10-6 11:05 编辑

本人尝试使用Far manager批量改名(使用7z版本的Far manager 配合Visual renaming files插件)
运行 -> cmd -> 运行far,发现界面字符无法对齐,然后在baidu搜索找到提示
运行 -> cmd -> chcp 65001 -> 运行far -> 改字体为Consolas
这时字符对齐了,Far使用关闭后,问题出现了
运行 -> cmd (此时默认还是65001代码页) -> chcp 936 -> 关闭 -> 再一次 运行 -> cmd (还是65001代码页)
开始 ->  点击命令行提示符的图标,这样打开的是936,但是 运行 -> cmd无法切换回默认936
请高手支招

奇怪,我这里测试不会,是不是注册表还有地方修改

TOP

本帖最后由 tigerpower 于 2018-10-6 11:26 编辑

感谢楼上这位兄弟的测试,我搜索出答案
要修改注册表
HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe
把CodePage改为936

TOP

批处理运行
CHCP 936
PAUSE
不要关闭窗口,右键属性直接点确定就回到默认936了
这么好的论坛你上哪找,运行测试环境为6.1.7601-64
注:请遵守互联网信息安全,勿用于非法用途

TOP

我曾经试过加3秒延时后就好了。
目的,学习批处理

TOP

回复 4# /zhqsystem/zhq

经测试,此方法有效,比修改注册表方便。
没想到PAUSE还有这个功能,谢谢!

TOP

回复 6# tigerpower
你理解错了,pause只是停住bat窗口,实际是需要更改操作界面默认语言代码,与pause没有直接关系,
这么好的论坛你上哪找,运行测试环境为6.1.7601-64
注:请遵守互联网信息安全,勿用于非法用途

TOP

回复 6# tigerpower


    把 pause 改成 timeout /t 3 试试有效果吗?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

本帖最后由 tigerpower 于 2018-10-7 20:23 编辑

回复 7# /zhqsystem/zhq
回复 8# Batcher

我又测试了几次,现在知道问题之所在了,pause不是关键,关键在于点击cmd窗口左上角C:\小图标(或右击cmd窗口标题栏),在弹出的菜单中点击“属性”,之后只要按过属性里的“确定”,代码页就会变成默认的。
因为切换为65001之后,更换Consolas字体时按过一次确定,所以65001变成了默认。
原来如此,现在算是搞清原理了。

TOP

回复 9# tigerpower


    其实你在属性里面做修改,它也是修改的注册表
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表