我需要做的是从%% f中提取文件名,这样我就可以创建正确的dll名称。
for %%f in (*.asmx.cs) do (
echo %%f
cmd /c C:\windows\Microsoft.NET\Framework\v4.0.30319\csc.exe /t:library /r:%assemblies% %compileoptions% /out:bin/%%f.dll %%f
)
答案 0 :(得分:5)
使用%% ~nf。
for %%f in (*.asmx.cs) do (
echo %%~nf
cmd /c C:\windows\Microsoft.NET\Framework\v4.0.30319\csc.exe /t:library /r:%assemblies% %compileoptions% /out:bin/%%~nf.dll %%f
)
有关FOR%变量修饰符的完整列表,例如%% ~nf,请从命令行运行for /?
,或在线查看here。