标题: 请教:帮忙看看什么地方的问题,让bat或cmd里的中文不能正常运
[打印本页]
作者: xiaojun
时间: 2004-3-15 00:00
标题: 请教:帮忙看看什么地方的问题,让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错误...
作者: qzwqzw
时间: 2004-3-15 00:00
中文会成 ? ? 是你的系统不支持16位环境中文啦;
echo %userpr~1%\My Doc~1\X.txt ,没成功,是用type,而不是echo。
作者: Climbing
时间: 2004-3-15 00:00
应该写成:type "%userprofile%\My Documents\x.txt"
如果中文不能正常显示,说明你在命令行窗口中使用了其它键盘方案的dos命令行程序,单纯使用Windows提供的DOS命令不会这样的。
作者: xiaojun
时间: 2004-3-15 00:00
哦,Echo是写慌了,改正. 在你们的XP中写一个有中文的Bat,直接点它运行,中文难道不是? 号 ? 中文目录下的程序可以运行之?
作者: Climbing
时间: 2004-3-15 00:00
应该没有问题的吧,但我还真的没有给批处理起过中文名。
作者: Climbing
时间: 2004-3-15 00:00
“测试中文批处理名.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下直接双击批处理文件运行的。
作者: xiaojun
时间: 2004-3-16 00:00
我晕透了,怎么回事呢? 如在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造成的
作者: willsort
时间: 2004-3-16 00:00
Re xiaojun:
这个问题相当复杂,不过你可以先看看这里,能不能帮你解决问题。
http://model.chinajewelry.net/dos/dosbbs/dispbbs.asp?boardID=9&ID=9452
作者: xiaojun
时间: 2004-3-17 00:00
6楼版主的bat文件直接双击后,能显示出中文目录或内容,为何我1个简单的bat或cmd:
echo 中文
点击运行,"中文" 这2个字却是乱码,为何先打开cmd的快捷方式,窗口中显示出了中文
后, 再拖它进窗口运行,显示的才是中文呢? 同样的系统,并没有先运行16位的程序呀...!
作者: qzwqzw
时间: 2004-3-17 00:00
楼主啊,是不是你忙中出错,忽略了什么细节啊?
建议你把所有的测试文件删除,重写一次,从头做一遍测试。
要不,你再看看快截方式里的代码页是不是美国的,再看看能不能改;
还可以调整一下快截方式里的字体,一般有两种,有种在某个时候不支持中文,换换看。
作者: xiaojun
时间: 2004-3-18 00:00
我说了呀,快捷方式是正常显示的中文呀; o 你这样做应该和我结果一样了: 不运行快捷方式,直接到System32目录下运行源文件-CMD ,看出来的是中文还是E文 ? (并且cmd源文件的属性里的语言仍然是中文.), 如果您直接运行后的CMD显示的是中文,那么说明关于CMD的Reg被我改错了,这个问题就可以结束讨论了. 我自己再慢慢找原因...! 谢谢各位帮助!
作者: aria
时间: 2004-3-19 00:00
直接运行cmd.exe是中文
Microsoft Windows XP
(C) 版权所有 1985-2001 Microsoft Corp.
作者: xiaojun
时间: 2004-3-19 00:00
啊,原来如此,天啊! 什么地方被我改动了。够忙活,找原因了。感谢大家Help