2013-07-30 4 views
2

Phing을 사용하여 파일의 특정 위치에 텍스트를 추가하려고합니다.Phing을 사용하여 파일의 특정 위치에 텍스트를 추가하는 방법

Phing의 기본값 인 <append>을 사용하면 파일 끝에 텍스트가 놓이며 <filterchain>을 사용해 보았지만 <append> 매개 변수는 지원하지 않습니다.

예 :

내가 2 호선과 세 번째 줄의 텍스트 Hello World를 추가해야합니다. 세 번째 줄

<append destFile="\config.php" 
     text="${line.separator} Hello World; ${line.separator}" /> 

후 텍스트를 추가

//config.php 

line1 

line2 

line3 

코드가있는 외에 line2 ${line.separator} Hello Worldreplace하고 다시 추가를 사용하여 line2을 제거 이러한 목표를 달성하기 위해 더 나은 솔루션에 내장?

ps. 파일이 원격 소스에서 다운로드되고 변경할 수 없으므로 자리 표시 자 또는 토큰을 사용할 수 없습니다.

+0

당신이 같은 자리를 추가 할 수 있습니다'// {{자리 표시 자}}'대신 대체 할 수있다. – str

+0

이 파일을 원격 소스에서 다운로드 했으므로 placeholder를 사용할 수 없다는 것을 추가해야합니다. 추가 할 것입니다. – Wyck

답변

0

내가 가진 유일한 해결책은 기존의 텍스트를 대체하기 전에 데이터를 포함시킨 다음 다시 추가하는 것입니다. 예를 들어

:

<reflexive file="\config.php"> 
    <filterchain> 
     <replaceregexp> 
     <regexp pattern="line2" replace="line2 ${line.separator} Hello World" /> 
     </replaceregexp> 
    </filterchain> 
</reflexive> 
관련 문제