У меня есть цикл, который перебирает файлы, получает фактическое имя файла (не включая весь путь) и пытается проверить, существует ли это имя файла в некотором списке. код у меня есть:batch: Подстрока в цикле с двумя переменными
setlocal enabledelayedexpansion enableextensions
for /R %%j in (*.c) do (
set MYVAR=%%j
set actualFileName=%%~nj
if NOT "%MY_FILE_LIST%"=="!MY_FILE_LIST:%actualFileName%=!" set "TOCOMPILE=!TOCOMPILE! %MYVAR%"
этот код не работает, так как actualFileName доступен с% вместо!. но! MYVAR: ~! ФактическийFileName !! тоже не работает. что я могу сделать?
возможного дубликата [Как разделить имя файла из полного пути в пакете?] (Http://stackoverflow.com/questions/9252980/how-to-split-the-filename-from-a-full-path-in-batch) –