我在注册表中有一个变量路径,如下所示:
SET dirpath="D:\Veritas\product\7.5.0.2\bin\DBBACKEX.EXE BACKUPDIR"
我需要使用windows batch命令输出到bin文件夹,该命令应该看起来像这样:D:\Veritas\product\7.5.0.2\bin
我在批处理命令中使用了一个简单的VBScript,就像下面代码完成了这项工作一样,但是我只需要使用批处理命令而不需要使用另一个文件。
FOR /F "usebackq tokens=*" %%p in (`CSCRIPT //nologo regpath.vbs %dirPath%`) DO SET VPath=%%p
我在批处理命令中看不到很多字符串操作函数,我想删除上面代码中的CSCRIPT行,并且只使用批处理命令。有人可以帮忙。
答案 0 :(得分:2)
要根据您的要求使用字符串“bin”“将路径修剪到某个字符串”,您可以使用以下简单方法:
@echo off
setlocal
SET "dirpath=D:\Veritas\product\7.5.0.2\bin\DBBACKEX.EXE BACKUPDIR"
SET "VPath=%dirpath:bin=bin" & rem "%"
echo %VPath%
技巧包括将路径拆分为所需的字符串,并通过rem
命令消除其余部分;您可以删除@echo off
行并执行代码以查看确切执行的内容......
答案 1 :(得分:1)
使用for
修饰符来获取驱动器/路径:
for %%a in ("%dirpath%") do set dirpath=%%~dpa
有关修饰符的说明,请参阅for /?
。