命令行 – 如何仅在使用for命令循环时才提取文件名

我需要做的是从%% f提取文件名,所以我可以创build正确的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 ) 

使用%%〜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 /? 从命令行,或在这里看在线。