2012-10-03 7 views
1

XML 파일이있어서 DOS 명령을 사용하여 필자 만의 7 번째 줄을 내 줄로 바꾸어야합니다. 이 작업을 수행하는 방법?DOS를 사용하여 파일의 특정 줄 바꾸기

+2

XML 파일은 "선"을 가지고 있고, 더는 XML 작업을위한 "DOS 명령"존재하지 않습니다. 또한, 이것은 "write me some code"사이트가 아닙니다. –

+0

게시하기 전에 먼저 직접 해보는 노력을 기울일 것을 기대합니다. 다른 스크립팅 언어를 선택 하겠지만 배치 파일로 수행 할 수는 있지만 적절한 고통이 될 수 있습니다. vbs 또는 매우 간단한 C# 콘솔 응용 프로그램과 같은 것으로 훨씬 간단 해집니다 – SmithMart

+0

http://xmlstar.sourceforge.net/ 확인 - 도구에 문제가있는 경우 그냥 물어보십시오. 또는 PowerShell을 사용해보십시오. – npocmaka

답변

0

내 제안이

@echo OFF 
REM Say LINE 7 to be removed 
SETLOCAL ENABLEDELAYEDEXPANSION 
SET LOWER=6 
SET UPPER=8 
SET INDEX=0 
SET MYLINE="this is my new line" 
SET OUTFILE=%~n1.new%~x1 
>%OUTFILE% (
    for /F "tokens=*" %%L in (%1) do (SET /A INDEX += 1 
     IF !INDEX! LEQ %LOWER% (echo %%L) ELSE break 
    ) 
    echo %MYLINE% 
    more +%UPPER% %1 
) 
  • 우리는
  • ENABLEDELAYEDEXPANSION 카운터에 필요한 대규모 리디렉션을 수행하기 때문에 필요 오프 에코 당신은 그것의 내용으로 그 번호로 라인을 식별하고이 아니라 사실에 기초 루프 안에서
  • xml 파일을 스크립트의 인수로 전달하기 만하면됩니다.

HTH

관련 문제