转 DOS 8.3 文件名命名规则

http://www.360doc.com/content/10/0813/14/73007_45757514.shtml

 

DOS 8.3 文件名命名规则

经常看到命令行或者其它软件在显示目录的时候出现这种东西: C:\Docume~1

 

 

8.3格式是DOS下的文件命名规则:

 

主文件名不能超过8个字符(若是汉字则不能超过4个汉字),扩展名不能超过3个字符,中间用.分隔。

 

Windows下的长文件名转换成8.3格式时,大致方法如下: -

 

取文件名的前6个字符,加上~1(如果前六个相同的,依次用~2、~3...);

 

将最后一个点号.后面的内容的前3个字符作为扩展名。

 

中国人民解放军.2000.doc

 

的8.3格式应该为:

 

中国人~1.doc

 

尝试一下在浏览器输入C:\Progra~1\Common~1\

 

你就会明白什么是8.3 -

 

比如D:\abcdefg\hijklmnopq.doc应该就是D:\abcdef~1\hijklm~1.doc -

 

注意~1指它的顺序

 

我的D:\Program Files就是D:\progra~2

 

因为在它之前曾经有Program文件夹,虽然那个文件夹删除了,但是排名是固定下来的

 

----------------------------------------------------------------------------- -

 

 

start /wait E:\"XXXX XXX"\"XXXXX"\"XXXXXX.exe"-

 

在用批处理时

 

对含有空格的文件夹名或文件名,批处理无法读取,找不到地址。

 

此时要对其进行DOS下的文件夹名或文件名缩写,其规则为8个字符(包括 ~1   两个字符),

 

取文件名的前6个字符,加上~1(如果前六个相同的,依次用~2、~3...),去掉空格,一个中文字为两个字符

 

比如:

 

Program Files---------------------Progra~1

 

i love you-------------------------ilovey~1

 

i love you too--------------------ilovey~2

 

我是中国人-------------------------我是中~1

 

下面介绍一个实际例子

 

客户机A要从服务器B通过维护通道批处理来拷贝一个文件到本地的桌面.

 

有两种方法,一种是直接使用""双引号把本地桌面的路径括起来,

 

例1   131为服务器B <底下的例子是将服务器B 131的测试.lnk这个快捷方式复制到本地机器的桌面

 

C:\Documents and Settings\All Users\桌面>

 

 

copy [url=file://\\192.168.0.131\]\\192.168.0.131\[/url]打印共享\测试.lnk "C:\Documents and Settings\All Users\桌面"

 

另外一种方法就要用到上面的~1方法,

 

例2 -

 

copy [url=file://\\192.168.0.131\]\\192.168.0.131\[/url]打印共享\2.lnk C:\Docume~1\AllUse~1\桌面

 

------------------------------------------------------------------------------------------- -

 

批处理中路径有长文件名的有两种方法

 

一:使用有空格那段文件名的前6位+~1请看下面的例子

 

比如批处理执行一个复制的命令.具体路径为

 

C:\Program Files\Messenger\msmsgs.exe

 

此处可以这样写

 

xcopy C:\Progra~1\Messenger\msmsgs.exe

 

或者

 

xcopy "C:\Program Files\Messenger\msmsgs.exe"

 

当VBS中的段落语句中有长文件名有以下两种方法

 

一:使用有空格那段文件名的前6位+~1请看下面的例子

 

比如VBS执行一个调用的命令.具体路径为

 

C:\Program Files\Messenger\msmsgs.exe

 

此处可以这样写

 

 

Set shell = Wscript.createobject("wscript.shell")

 

a = shell.run ("C:\Progra~1\Messenger\msmsgs.exe",0)

 

或者

 

Set shell = Wscript.createobject("wscript.shell")

 

a = shell.run ("""C:\Program Files\Messenger\msmsgs.exe""",0)

 

'多加两个双引号

 

以上的'符号代表VBS的注释

 

posted on 2016-05-03 10:04  njczy2010  阅读(1876)  评论(0编辑  收藏  举报