获取DOS路径而不是Windows路径

在DOS窗口中,如何获取我所在目录的完整DOS名称/短名称?


例如,如果我在目录中C:\Program Files\Java\jdk1.6.0_22,则要显示它的简称C:\PROGRA~1\Java\JDK16~1.0_2。


我知道运行dir /x会给我当前目录中文件/目录的简称,但是我一直无法找到一种以短名称格式显示当前目录的完整路径的方法。我必须dir /x逐一遍历从根到目录的路径。


我确定有更简单的方法可以做到这一点?


函数式编程
浏览 722回答 3
3回答

月关宝盒

for %I in (.) do echo %~sI有没有更简单的方法?

森林海

在Windows批处理脚本中,%~s1将路径参数扩展为short name。创建此批处理文件:@ECHO OFFecho %~s1我打电话给我,shortNamePath.cmd并这样称呼它:c:\>shortNamePath "c:\Program Files (x86)\Android\android-sdk"c:\PROGRA~2\Android\ANDROI~1编辑:如果没有提供参数,这是使用当前目录的版本:@ECHO OFFif '%1'=='' (%0 .) else echo %~s1调用时不带参数:C:\Program Files (x86)\Android\android-sdk>shortNamePathC:\PROGRA~2\Android\ANDROI~1
打开App,查看更多内容
随时随地看视频慕课网APP