Board logo

标题: 求助,关于路径获取的问题 [打印本页]

作者: emote     时间: 2007-5-29 11:59    标题: 求助,关于路径获取的问题

想在window下用 %~sdp0获取当前路径的短文件名格式,但所得路径名最后总有一个斜杠符号"\",例 c:\windows\

有什么办法可以在获取路径时去掉最后的那个"\",使上例路径变成 c:\windows 的形式。要求只能用一个语句,因为我想用cd 来进入所获取的路径, 例:
cd %~sdp0
作者: bjsh     时间: 2007-5-29 12:37
单从你的目的来讲;

没必要去掉\

cd c:\windows


cd c:\windows\

是一样的
作者: emote     时间: 2007-5-29 12:59
可是在纯dos下执行好像是不一样的
用cd c:\windows 可以进入目录
用cd c:\windows\ 会提示出错

我再试试
作者: emote     时间: 2007-5-29 13:02
我已经确认了纯dos下用cd c:\windows\这种方法不行,会提示"Invalid directory";而用cd c:\windows 则可以正常进入!
作者: lxmxn     时间: 2007-5-29 17:15
纯DOS下和cmd的确有很多不同,cmd可以说是DOS解释器的扩展,命令的功能也比command.com强大,很多扩展在cmd里面有而在command.com里面没有,比如for的几个参数,set /a 、set /p 、等等。。
作者: emote     时间: 2007-5-29 17:33
我用 echo cd %~sdp0 >c:\load.bat 来生成load.bat,其内容如下:

cd d:\tool\systool\


如果我想生成的load.bat内容如:   cd d:\tool\systool
那上述语句应该怎么改?谢谢!
作者: emote     时间: 2007-5-29 17:34
另外我还想问一个问题,就是DOS批处理中如何调用并运行*.inf文件?
作者: lxmxn     时间: 2007-5-29 17:49


  Quote:
Originally posted by emote at 2007-5-29 17:33:
我用 echo cd %~sdp0 >c:\load.bat 来生成load.bat,其内容如下:

cd d:\tool\systool\


如果我想生成的load.bat内容如:   cd d:\tool\systool
那上述语句应该怎么改?谢谢!


set dp=%~sdp0
set dp=%dp:~0,-1%
echo cd %dp%>c:\load.bat


  Quote:
另外我还想问一个问题,就是DOS批处理中如何调用并运行*.inf文件?


%SystemRoot%\System32\rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 <inffile.inf>

作者: emote     时间: 2007-5-29 21:03
谢谢!