Вы можете сравнить только имя файла, без расширения? - PullRequest
0 голосов
/ 24 июня 2019

Я пытаюсь сравнить имена файлов двух папок, используя командный файл. Я также хочу вывести имена файлов в CSV-файл.

Используя цикл for / f, я смог успешно сделать это, если имена файлов имеют одинаковое расширение. Что требует от меня, чтобы CD в эти каталоги, а затем переименовать все файлы (например, ren * .txt), однако я не хочу переименовывать расширения, если это возможно.

set file_compare_dir1=Dir1
set file_compare_dir2=Dir2

for /f %%a in ('dir /b /a:-d "!file_compare_dir1!" 2^>NUL') do if not exist "!file_compare_dir2!\%%a" echo %%~na>>"!file_compare_log!\!dat1!.csv"
for /f %%a in ('dir /b /a:-d "!file_compare_dir2!" 2^>NUL') do if not exist "!file_compare_dir1!\%%a" echo %%~na>>"!file_compare_log!\!dat2!.csv"

Поскольку эти расширения имен файлов не совпадают, это не работает. Я пытался использовать %% ~ na, однако это также не работает таким образом.

...