У меня есть 500 файлов .txt в папке. Из них около 100 файлов содержат текст, который я хочу изменить. Для этого я использовал приведенный ниже код.Пакетный скрипт для поиска имен измененных файлов
used Repl.bat and the below code:
for %%F in (*.txt) do (
type "%%F"|repl Apples Mangoes >"%%F.new"
move /y "%%F.new" "%%F"
)
Поскольку этот поиск осуществляется через все файлы, файлы становятся модифицированными. Я не могу узнать, в каких файлах, текст был заменен.
Моя фактическая задача - изменить строку и получить измененные файлы в другую папку. Я попытался использовать приведенный ниже код для перемещения измененных файлов. но поскольку все файлы меняются, я не знаю, что делать.
ECHO OFF
set source=C:\abc\
set destination=C:xyz\
for /F "tokens=2-4 delims=/ " %%i in ('date /t') do set yyyymmdd1=%%j"."%%i"."%%k
if exist %destination% goto GO
:GO
mkdir %destination%%yyyymmdd1%
xcopy %source%* %destination% /m/s/d/y/c/v/r
echo.
echo Finished copying %source% to %destination%
echo.
echo Created %destination%%yyyymmdd1%
pause
Заранее спасибо
Я вижу два подхода: 1) сначала проверьте, если файл содержит слово заменить команду поиска , Затем либо переместите файл без изменений, либо выполните его через repl. 2) вызвать repl для всех файлов, затем сравнить оригинал и скопировать с помощью команды fc – Marged
Спасибо за быстрый ответ. Я новичок в пакетных сценариях, и приведенный выше код не является моим собственным. Я взял его только с этого сайта. пожалуйста, уточните его. – nani
SO не является «напишите мой код». Идея состоит в том, чтобы помочь вам с предложениями. Вы должны быть в состоянии следовать рекомендациям – Marged