@echo off
set log=\err.log
set /p installoc=please input the path of utility installation location:
pushd %installoc% 2>nul
popd
set a_path=%installoc%%log%
echo The path of log file is %a_path%
for %%p in ("%installoc%%log%") do set a_path=%%~p作者: wingofsea 时间: 2006-6-8 10:59 to bagpipe:
谢谢
首先,c:\utility\ 是由用户输入的,路径的输入是用户控制的,他可以输入 c:\utility\ 也可以输入c:\utility , 所以需要进行预处理。
to willsort:
谢谢,因为程序会将这个a_path输出到终端,如果用户看到 c:\utility\\err.log,会有点别扭,所以想进行规范化,用 您给的这条语句好像还是不行:
@echo off
set log=\err.log
set /p installoc=please input the path of utility installation location:
pushd %installoc% 2>nul
popd
for %%p in ("%installoc%%log%") do set a_path=%%~p
echo %a_path%
pause作者: willsort 时间: 2006-6-8 11:41 Re wingofsea:
抱歉!
事例代码中的可替换变量%%p少写了一个修饰字f,如下:
for %%p in ("%installoc%%log%") do set a_path=%%~fp
另外,用以下的方法可以仅替换 \\ 为 \ :
set a_path=%installoc%%log%
set a_path=%a_path:\\=\%