Alexander_88
15-02-2016, 07:39
Здравствуйте, подскажите, пожалуйста, как решить следующую задачку:
Есть bat файл. Необходимо скопировать его столько раз, сколько строчек содержит файл replace.txt. В каждом новом, копированном bat файле, нужно заменить фразу (которую я укажу), на фразу, которая находится в txt файле replace.txt (каждая фраза для каждого копированного файла с новой строки). Заменять необходимо все фразы, которые нашлись в исходном файле на фразу в строчке файла replace.txt
Также необходимо дать имя каждому копированному файлу... его имя нужно также получить из замены... нужно взять оригинальное имя файла и заменить в нем фразу, которую я уже указывал, на ту, которая в тхт файле replace.txt (каждая фраза для каждого копированного файла с новой строки)
Пример:
Оригинальный файл с содержанием:
moy start.bat
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFile=start.txt
set sDestFile="C:\OneDrive\work\GENERATOR\start.txt"
if defined sSourceFile (
файл replace.txt с заменами:
finish
red sofa
big room
В скрипте указываем фразу замены start
После выполнения скрипта должны появиться следующие 3 файла со следующим содержимым:
moy finish.bat
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFile=finish.txt
set sDestFile="C:\OneDrive\work\GENERATOR\finish.txt"
if defined sSourceFile (
moy red sofa.bat
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFile=red sofa.txt
set sDestFile="C:\OneDrive\work\GENERATOR\red sofa.txt"
if defined sSourceFile (
moy big room.bat
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFile=big room.txt
set sDestFile="C:\OneDrive\work\GENERATOR\big room.txt"
if defined sSourceFile (
:)
Есть bat файл. Необходимо скопировать его столько раз, сколько строчек содержит файл replace.txt. В каждом новом, копированном bat файле, нужно заменить фразу (которую я укажу), на фразу, которая находится в txt файле replace.txt (каждая фраза для каждого копированного файла с новой строки). Заменять необходимо все фразы, которые нашлись в исходном файле на фразу в строчке файла replace.txt
Также необходимо дать имя каждому копированному файлу... его имя нужно также получить из замены... нужно взять оригинальное имя файла и заменить в нем фразу, которую я уже указывал, на ту, которая в тхт файле replace.txt (каждая фраза для каждого копированного файла с новой строки)
Пример:
Оригинальный файл с содержанием:
moy start.bat
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFile=start.txt
set sDestFile="C:\OneDrive\work\GENERATOR\start.txt"
if defined sSourceFile (
файл replace.txt с заменами:
finish
red sofa
big room
В скрипте указываем фразу замены start
После выполнения скрипта должны появиться следующие 3 файла со следующим содержимым:
moy finish.bat
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFile=finish.txt
set sDestFile="C:\OneDrive\work\GENERATOR\finish.txt"
if defined sSourceFile (
moy red sofa.bat
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFile=red sofa.txt
set sDestFile="C:\OneDrive\work\GENERATOR\red sofa.txt"
if defined sSourceFile (
moy big room.bat
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFile=big room.txt
set sDestFile="C:\OneDrive\work\GENERATOR\big room.txt"
if defined sSourceFile (
:)