Я пытаюсь прочитать список значений / строк (они варьируются между буквами и цифрами) из текстового файла, если значение / строка существует в выходном текстовом файле, ничего не делать, иначе добавьте его в текстовый файл.
Я потратил более 3 дней на исследования и пробовал разные вещи и идеи.В процессе поиска я наткнулся на сообщение, очень похожее (ссылка ниже) на то, что мне нужно сделать, но, поскольку я новичок в программировании и буквально мне некого просить о помощи, я надеюсь, что вы, ребята, сможете мне помочь.
Сравнение строк в пакете внутри оператора for (if))
Так что использовали что-то очень похожее на пост выше, но я не знаю, я простоустал или я просто слеп, чтобы понять, где я делаю что-то не так.
@echo off
set ProjectNo=12345
set ProjectLocation=X:\Projects\123 ABC\45 WALL\G Drafting 12345\02 Models
set location=X:\Scripts
set areas=%location%\%ProjectNo%-AREAS.txt
set MAT=%location%\%ProjectNo%-MAT.txt
setlocal enableextensions enabledelayedexpansion
for /F %%a in ("%areas%") do (
set "MA=%%a"
setlocal EnableDelayedExpansion
echo(!MA!
pause
if exist "!MA!"=="!MA:%MA%=!" (
echo matched
> nul
) else (
echo nomatch
> %MAT%
)
endlocal
)
)
endlocal
pause
Содержимое 12345-AREAS.txt выглядит следующим образом (текущий):
01
01
10
10
10
10
130
15
15
15
20
20
20
20
25
25
25
30
30
30
30
Этосписок может варьироваться от 10 до 300 значений (сильно варьируется)
То, что я стремлюсь получить в выходном файле, 12345-MAT.txt - это одно и уникальное значение каждого из них, например:
01
10
130
15
20
25
30