Windows程序文件的路径名?

时间:2015-04-11 03:31:00

标签: windows

也许这可能是一个愚蠢的问题,但我不知道如何搜索谷歌为什么在我读的一些代码中,它用于这样写:\\progra~1

〜和1是什么意思? 我尝试在Windows中执行运行相同的路径,但更改数字,这些是结果:

C:\progra~1 -> Opens Program Files
C:\progra~2 -> Opens Program Files(x86)
C:\progra~3 -> Opens ProgramData
C:\progra~4 -> Opens ProgramDevices, a folder I created in C:\

为什么呢?这是匹配还是文件夹名称列表中的某些内容?

例如像"progra"这样的正则表达式,然后以某个X顺序或~2(第二)......等显示~1(第一)匹配?

2 个答案:

答案 0 :(得分:3)

它与旧的(非常旧的)Windows 8.3命名约定具有兼容性模式。 ~n表示具有相同根字符的名称的实例。

在你的例子中: 程序文件和程序文件(x86)具有相同的根字符Progra。 因此,一个得到progra~1,下一个progra~2等。

可以为磁盘分区关闭8.3兼容性。

答案 1 :(得分:1)

确切地说,它是一个模式计数器。 还可以看看这个答案:What does %~d0 mean in a Windows batch file?

您可以在此处找到更多带有修饰符的变量的示例:

https://technet.microsoft.com/en-us/library/bb490909.aspx (ctrl-f代表"变量替换")