Командная строка - как извлечь имя файла только при использовании цикла for - PullRequest
5 голосов
/ 25 июня 2010

Что мне нужно сделать, это извлечь имя файла из %% 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
)

1 Ответ

5 голосов
/ 26 июня 2010

Используйте %% ~ 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 /? из командной строки или посмотрите онлайн здесь .

...