本帖最后由 zzpsongs 于 2012-8-9 11:24 编辑
呵呵,确实弄错了,又忘记了先做测试再正式发代码。其实这个问题以前曾在CN-DOS上有过讨论,你这一提醒 ...
namejm 发表于 2009-2-12 22:52
链接打不开了;另外,经过测试,我整理出关于?的特性
前提:"?"表示1个字符的说法有误,应该表示0~1个字符;
推论一:“旧文件名”中“?”的个数限制了未知字符的最大数目,
比如:复制代码 表示匹配“旧文件名”是以test开头的,并且后方可以多出0~2个字符的文件(后缀名不算),那么test123.txt 就不匹配了
推论二:“新文件名”中的“?”的个数限制了“新文件名”中允许保持的对应未知字符的最大数目,
比如:
存在一个文件是test123.txt,接着执行下面的命令- ren test????.txt abc??.txt
复制代码 匹配到test123.txt了,那么从第一个字符开始命名为“新文件名”,于是“tes”替换为“abc”,由于新文件名格式中abc后面是??,那么改名后,“abc”后允许保留原来“tes”后面两个字符,即是“t1”了,最后就是abct1.txt了
望指教! |