中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-16 12:00
47,813 主题排行 / 349,903 发帖 / 今日 0 篇 / 48,258 会员排行
DOS疑难解答 & 问题讨论 (解答室) » 请教:帮忙看看什么地方的问题,让bat或cmd里的中文不能正常运
可打印版本  805 / 12
第1楼 xiaojun 发表于 2004-03-15 00:00
银牌会员 发帖 499 积分 2,202
请教:帮忙看看什么地方的问题,让bat或cmd里的中文不能正常运
请教: 1个文件如X.txt在"我的文档"目录下,写到Bat或Cmd运行后,中文就会成 ? ? 我notepad %userpr~1%\My Doc~1\X.txt ,没成功, 怎样让类似程序运行呢? 谢谢...!
NT的变量如下
USERDOMAIN=XSY7KZ
USERNAME=小 军
USERPROFILE=D:\Documents and Settings\小 军.XSY7KZ
windir=c:\windows

已改正Echo错误...













第2楼 qzwqzw 发表于 2004-03-15 00:00
银牌会员 发帖 636 积分 2,343
中文会成 ? ? 是你的系统不支持16位环境中文啦;
echo %userpr~1%\My Doc~1\X.txt ,没成功,是用type,而不是echo。
第3楼 Climbing 发表于 2004-03-15 00:00
铂金会员 发帖 2,753 积分 6,962 来自 河北保定
应该写成:type "%userprofile%\My Documents\x.txt"

如果中文不能正常显示,说明你在命令行窗口中使用了其它键盘方案的dos命令行程序,单纯使用Windows提供的DOS命令不会这样的。
第4楼 xiaojun 发表于 2004-03-15 00:00
银牌会员 发帖 499 积分 2,202
哦,Echo是写慌了,改正. 在你们的XP中写一个有中文的Bat,直接点它运行,中文难道不是? 号 ? 中文目录下的程序可以运行之?
第5楼 Climbing 发表于 2004-03-15 00:00
铂金会员 发帖 2,753 积分 6,962 来自 河北保定
应该没有问题的吧,但我还真的没有给批处理起过中文名。
第6楼 Climbing 发表于 2004-03-15 00:00
铂金会员 发帖 2,753 积分 6,962 来自 河北保定
“测试中文批处理名.bat”内容:
@echo off
dir
echo.
echo Hello, World!
echo.
type 测试中文批处理名.bat
pause

运行结果:

卷的序列号是 7ED8-C136

D:\TEMP 的目录

2003-09-20 15:45 .
2003-09-20 15:45 ..
2003-09-20 15:45 XPTEMP
2003-11-23 17:14 3,019 Rmlist.txt
2003-10-24 04:00 1,760,587 DEPLOY.CAB
2004-02-15 19:50 DEPLOY
2003-11-23 17:14 3,019 临时.bat
2004-03-15 23:19 84 测试中文批处理名.bat
4 个文件 1,766,709 字节
4 个目录 6,992,461,824 可用字节

Hello, World!

@echo off
dir
echo.
echo Hello, World!
echo.
type 测试中文批处理名.bat
pause
请按任意键继续. . .

从运行及结果上来看,没有任何问题,对了,我是在XP下直接双击批处理文件运行的。
第7楼 xiaojun 发表于 2004-03-16 00:00
银牌会员 发帖 499 积分 2,202
我晕透了,怎么回事呢? 如在System32目录直接运行cmd是E文,在运行框输入CMD还是E文; 发cmd到桌面快捷,运行桌面快捷方式cmd却是中文. 再把bat拖到打开的中文cmd才有中文,bat直接运行会这样:
Directory of D:\Documents and Settings\? ? ?.xuf2gid\??(桌面)

Clipbrd.lnk
cmd.lnk s.txt
ScanDown.lnk ScanTEMP.lnk SysClean.lnk
x.bat ??????--??????.url
????.lnk ?? CMD.lnk ????.lnk
?????.url ????.lnk ??Win98.lnk
????.lnk ????.lnk ?HTTP???.lnk
? ?.lnk ????.lnk ? ?.lnk
? ?.lnk
我需要点击后运行的程序1直无法放到桌面或中文目录,怎么回事呢? 晕透!!!!!!不知是否是装有4NT造成的





第8楼 willsort 发表于 2004-03-16 00:00
元老会员 发帖 1,512 积分 4,432
Re xiaojun:

这个问题相当复杂,不过你可以先看看这里,能不能帮你解决问题。

http://model.chinajewelry.net/dos/dosbbs/dispbbs.asp?boardID=9&ID=9452
第9楼 xiaojun 发表于 2004-03-17 00:00
银牌会员 发帖 499 积分 2,202
6楼版主的bat文件直接双击后,能显示出中文目录或内容,为何我1个简单的bat或cmd:
echo 中文
点击运行,"中文" 这2个字却是乱码,为何先打开cmd的快捷方式,窗口中显示出了中文
后, 再拖它进窗口运行,显示的才是中文呢? 同样的系统,并没有先运行16位的程序呀...!
第10楼 qzwqzw 发表于 2004-03-17 00:00
银牌会员 发帖 636 积分 2,343
楼主啊,是不是你忙中出错,忽略了什么细节啊?
建议你把所有的测试文件删除,重写一次,从头做一遍测试。
要不,你再看看快截方式里的代码页是不是美国的,再看看能不能改;
还可以调整一下快截方式里的字体,一般有两种,有种在某个时候不支持中文,换换看。
第11楼 xiaojun 发表于 2004-03-18 00:00
银牌会员 发帖 499 积分 2,202
我说了呀,快捷方式是正常显示的中文呀; o 你这样做应该和我结果一样了: 不运行快捷方式,直接到System32目录下运行源文件-CMD ,看出来的是中文还是E文 ? (并且cmd源文件的属性里的语言仍然是中文.), 如果您直接运行后的CMD显示的是中文,那么说明关于CMD的Reg被我改错了,这个问题就可以结束讨论了. 我自己再慢慢找原因...! 谢谢各位帮助!



第12楼 aria 发表于 2004-03-19 00:00
高级用户 发帖 243 积分 924
直接运行cmd.exe是中文

Microsoft Windows XP
(C) 版权所有 1985-2001 Microsoft Corp.
第13楼 xiaojun 发表于 2004-03-19 00:00
银牌会员 发帖 499 积分 2,202
啊,原来如此,天啊! 什么地方被我改动了。够忙活,找原因了。感谢大家Help
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023