2014-11-27 3 views
0

아래 내용의 텍스트 파일이 있습니다.배치 스크립트를 사용하여 텍스트 파일을 xml 태그 형식으로 변환

U /modules/configuration/gsrc/util/CoverageValidation.gs 

C /modules/configuration/gsrc/util/CoverageForm.gs 

D /modules/configuration/gsrc/util/Trigger.gs 

A /modules/configuration/gsrc/util/Trigger-join.gs 

내 스크립트는 이것이다 :

@echo off 
    setlocal enabledelayedexpansion 

    set file=test.txt 
    set update_tag=<action>Updated</action> 
    set add_tag=<action>Added</action> 
    set conflict_tag=<action>Conflicted</action> 
    set delete_tag=<action>Deleted</action> 
    if exist !file! (
     echo The file exists. 
     for /f "tokens=* delims=" %%a in (!file!) do (
      set line=%%a 
      if !line! equ "U " (
       set line=~0,5=!update_tag!! 
      )else if !line! equ "A " (
       set line=~0,5=!add_tag!! 
      )else if !line! equ "C " (
       set line=~0,5=!conflict_tag!! 
      )else if !line! equ "D " (
       set line=~0,5=!delete_tag!! 
      ) 
     ) 
    ) else (
     echo The file doesn't exist. 
    ) 
endlocal 

는 지금은 일괄 스크립트를 사용하여 형식 아래처럼 변환이 텍스트 파일이 필요합니다. 배치 파일 또는 경로에있는 폴더에 같은 폴더에 https://www.dropbox.com/s/qidqwztmetbvklt/repl.bat

장소 repl.bat :에서 다운로드 -

<action>Updated</action> 

<path>/modules/configuration/gsrc/util/CoverageValidation.gs</path> 

<action>Conflicted</action> 

<path>/modules/configuration/gsrc/util/CoverageForm.gs</path> 

<action>Deleted</action> 

<path>/modules/configuration/gsrc/util/Trigger.gs</path> 

<action>Added</action> 

<path>/modules/configuration/gsrc/util/Trigger-join.gs</path> 

답변

0
type file.txt |repl "^U " "Updated\r\n\r\n" x|repl "^C " "Conflicted\r\n\r\n" x|repl "^D " "Deleted\r\n\r\n" x|repl "^A " "Added\r\n\r\n" x >file2.txt 

이는 도우미 배치 (dbenham에 의해) repl.bat라는 파일을 사용합니다 .

관련 문제