여러 개의 ".c"및 ".h"파일이 들어있는 폴더의 파일에서 "date"와 같은 문자열을 찾고 배치 파일을 사용하여 "date 24-April-2018"로 바꿉니다. 어떻게해야합니까? 아래 코드를 참조하십시오. 하나의 파일 Input.txt에 대해 동일하지 않고 폴더 확장자가있는 여러 파일에 대해하고 싶습니다.
@echo off
setlocal enableextensions disabledelayedexpansion
set "search=@date"
set "replace=@date 24-apr-2018"
set "textFile=Input.txt"
for /f "delims=" %%i in ('type "%textFile%" ^& break ^> "%textFile%" ') do (
set "line=%%i"
setlocal enabledelayedexpansion
>>"%textFile%" echo(!line:%search%=%replace%!
endlocal
)
나는 당신을 얻지 못했습니다. 배치 파일 솔루션 내에서 나에게 줄 수 있습니까?
—
Meera
@ Meera-답변이 필요한 세부 사항으로 들어 가지 않고 설명 할 말이 무엇인지 모르겠습니다. 배치 파일이
—
AFH
SetDate.cmd
이면 세 번째 set
명령 이로되도록 편집 set "textFile=%1"
한 다음 for %f in (DirPath\FileMask) do call SetDate.cmd %f
명령 줄 또는 for %%f in (DirPath\FileMask) do call SetDate.cmd %%f
다른 배치 파일 내 에서 호출 하십시오. 나는 그것이 무엇 DirPath
을 FileMask
의미 하고 의미하기를 바랍니다.
textFile
로set "textFile=%1"
, 당신은 (예를 들어 이름이 배치 파일을 호출 할 수 있습니다SetDate.cmd
전달 된 매개 변수에 파일을 업데이트). 그런 다음 배치 파일 자체에 if를for %i in (DirPath\FileMask) do call SetDate.cmd %i
두 배로 사용 하여을 사용할 수 있습니다%
.