2012-05-09 6 views
4

ack/grep에 축소 된 Javascript를 무시하도록 지시하는 방법이 있습니까? 이러한 파일은 한 줄에 수천 자의 문자를 가지고 있으며 검색 결과를 엉망으로 만듭니다.Grep 및 축소 된 javascript 무시

답변

4

ack 1.x에는 축소 된 javascript를 직접 무시할 수있는 방법이 없습니다. 이것은 ack 2.0에서 다루어 질 것입니다. 우리는 http://github.com/petdance/ack2에서 작업 중입니다.

0

제외 할 파일을 어떻게 든 지정할 수 있는지 여부에 따라 다릅니다. 예를 들어 .min.js 규칙을 따르는 경우 이러한 파일을 검색하지 않는 것만 큼 간단합니다. 그렇지 않으면 grep에 --maximum-number-of-characters-per-line-to-count-as-a-match 옵션이 없습니다. 이 같은

1

시도 뭔가 :

grep foo $(find -name '*.js' -exec file {} \; | grep -v "long lines" | sed 's/:.*//') 
  • find -name '*.js' 현재 디렉토리와 하위 디렉토리에있는 모든의 .js 파일을 찾습니다.

  • 명령에 -exec file {} \;을 추가하면 각 결과에 file 명령이 실행됩니다.

  • file의 결과는 grep으로 파이프되며 "긴 줄"을 가진 것으로 나열된 파일은 결과에서 제거됩니다.

  • file의 설명은 sed으로 제거되어 파일 이름 만 남겨 둡니다. 이 파일들은 grep이 "foo"를 검색합니다.