Найти и заменить командный файл с помощью DOS - PullRequest
0 голосов
/ 19 сентября 2010

Это то, что мне нужно.

Допустим, есть файл temp.txt Допустим, файл temp.txt имеет следующее содержимое:

name=@name
age=@age
email=@email

И мой командный файл create.bat должен запрашивать три параметра в качестве ввода от пользователя, а затем замените файл temp.txt соответствующими значениями.

Say.

Pls enter your name:Tom
Tom - Confirm Y/N: Y
<<now anywhere the temp.txt says @name, it is replace by Tom>>

Пожалуйста, помогите мне написать скрипт для этого ??

Спасибо, Нэвин.

1 Ответ

0 голосов
/ 08 ноября 2010
rem @echo off

setlocal enabledelayedexpansion enableextensions

rem Don't use the same file name for both here
set InputFile=temp.txt
set OutputFile=temp2.txt

call :ask name name
call :ask age age
call :ask "e-Mail address" email

del %OutputFile% 1>nul 2>&1
for /f "delims=" %%l in (%InputFile%) do (
    set Line=%%l
    set Line=!Line:@name=%name%!
    set Line=!Line:@age=%age%!
    set Line=!Line:@email=%email%!
    >>%OutputFile% echo.!Line!
)

goto :eof

rem :ask "placeholder title" variable_name
:ask
set /p %2=Please enter your %~1: 
choice /M "!%2! - Confirm"
if errorlevel 2 goto ask
goto :eof
...