在Windows批处理命令运行期间停止预先挂起的“c:\ cygdrive”中的Cygwin

时间:2012-06-29 17:31:17

标签: windows batch-file cygwin cmd

使用此行运行朋友的批处理文件

for /F "tokens=1 delims=¶" %%i in ('which synplify_pro.exe') do set synplify_path=%%~dpi

var synplify_path设置为c:\ cygdrive pre-pended。

我只想要Windows部分。

有没有办法阻止预先挂起或只是回到窗户部分?

1 个答案:

答案 0 :(得分:2)

好吧,你可以简单地从结果中删除那部分。

如果在循环之后它总是在那里,你可以简单地将其剪掉:

SET synplify_path=%synplify_path:~11%

其中11是字符串c:\cygdrive的长度。如果在违规字符串之后有一个\并且也需要删除它,请将其设为12

或者你可以这样做:

SET synplify_path=%synplify_path:c:\cygdrive=%

这将使用空字符串替换c:\cygdrive%synplify_path%的所有条目,即它将只删除该子字符串。如果由于某种原因可能会在结果中缺少c:\cygdrive,则此方法可能会更好:如果字符串不包含c:\cygdrive,则该方法将保持字符串不变。

我不确定您是否应该尝试使用不喜欢路径中的c:\cygdrive的命令来解决问题,但是......