파일 내에서 참조된 파일을 반복적으로 검색하는 데 필요한 Windows 프로그램/도구

파일 내에서 참조된 파일을 반복적으로 검색하는 데 필요한 Windows 프로그램/도구

unsafeMethodCall()다음 시나리오: 내 모든 웹페이지에서 를 탐색합니다 . 이 방법은 다음의 참조가 있는 경우에만 안전하지 않습니다.doSomeCrazyAjaxStuff()

내 웹페이지는 강력한 템플릿을 사용하고 있습니다(예: JSF로 구축됨).

따라서 웹페이지는 다음과 같이 구성됩니다.

<ui:decorate template="/mypages/editing/someWebPagePart.xhtml">
unsafeMethodCall()

이는 템플릿의 내용을 현재 웹페이지에 복사하는 것뿐입니다.

따라서 검색하는 경우 문제는 검색을 위해 unsafeMethodCall()수동으로 열어야 하지만 다른 템플릿을 사용하고 있을 수 있다는 것입니다. 따라서 unsafeMethodCalls가 1회 발생하면 열어야 할 페이지가 너무 많아질 수 있습니다.someWebPagePart.xhtmlcrazyAjaxStuff()someWebPagePart.xhtml

그래서 기본적으로 "somefile.xhtml"이라는 파일에서 템플릿이 있는지 검색하고 싶습니다. 템플릿이 있으면 그 템플릿에서도 검색하고 싶은데, 그 템플릿 등에서도 검색하고 싶어요 :-)

이 문제를 해결할 수 있는 프로그램이나 도구가 있습니까?

[편집하다]

기본적으로 다음 내용이 포함된 파일이 있습니다. (이것은 단지 예일 뿐입니다.)

<div> 
<input value="enterusername"/>    
   </div>
[...more random web page contents like above this line....]
<ui:decorate template="/mypages/editing/someWebPagePart.xhtml">
     <my:tag>  unsafeMethodCall()</my:tag> <!-- this is potentially dangerous with another function call  -->
[...more random web page contents like below this line....]
<p></p>
<a href="#Other-Options" accesskey="n" rel="next">Other Options</a>

이제 d:/dev/workspace/WebContents/mypages/editing/someWebPagePart.xhtml을 열면 페이지에 실제로 표시되는 내용을 볼 수 있습니다. someWebPagePart.xhtml의 내용이 웹 서버에 의해 자동으로 복사되기 때문입니다. 최종 웹페이지로 이동합니다. 내가 파일에서 찾고 있는 내용은 someWebPagePart.xhtml 다음과 같습니다.

<div> 
<input value="enterusername"/>    
   </div>
[...more random web page contents like above this line....]
<ui:decorate template="/mypages/editing/someotherPage.xhtml"> <!-- it could be in there as well -->
     <my:tag2>  crazyAjaxStuff()</my:tag2> <!-- searching this -->
[...more random web page contents like below this line....]
<p></p>
<a href="#Other-Options" accesskey="n" rel="next">Other Options</a>

부터:

 <my:tag2>  crazyAjaxStuff()</my:tag2>

이 있는 페이지와 동일한 페이지에 복사됩니다 unsafeMethodCall. 이로 인해 위험한 상황이 발생할 수 있으므로 페이지를 자세히 살펴보아야 합니다.

someotherPage.xhtml참고: 세 번째 페이지에 위험한 내용이 포함될 가능성이 매우 높습니다.crazyAjaxStuff()

답변1

나는 사용할 것이다확인명령줄에서. 속도가 빠르고 코드의 줄 번호와 해당 줄이 있는 파일이 표시됩니다. 재귀적으로 수행되며 출력은 색상이 약간 예뻐질 것입니다. 정규식을 사용하면 정말 멋질 수 있고 정규식 자체에 파이프를 연결하여 crazyAjaxStuff에 대해 unsafeMethodCall을 사용하여 찾은 파일을 검색할 수 있습니다. 단지문서를 읽어보세요창의력을 발휘하세요. 필요한 경우Windows의 경우 이것을 참조하십시오

설치 확인:

curl http://betterthangrep.com/ack-standalone > ~/bin/ack && chmod 0755 !#:3

실행하여 모든 파일 형식을 대소문자를 구분하지 않고 리터럴 패턴을 사용하여 재귀적으로 검색합니다.

ack -airQ "unsafeMethodCall"

또는 -l 스위치를 사용하여 파일 경로를 가져온 다음 다른 ack 명령이나 다른 도구를 통해 이를 파이프합니다.

ack -larQ "unsafeMethodCall"

관련 정보