rgpipe 는 단일 bash/sh 스크립트이며 ripgrep과 함께 사용하는 별칭으로 Grep 친화적이지 않은 무수한 파일 유형을 검색합니다. RipGrep의 -pre 명령과 함께 사용하여 RipGREP가 검색하기 전에 파일을 선택적으로 처리 할 수 있습니다.
가장 기본적인 사용법은 일부 파일에서 rgpipe 가리키는 것이며, 해당 파일의 내용을 stdout에 인쇄하려고 시도합니다.
rgpipe MyFancyExcelFile.xlsx
더 많은 사용량은 RipGrep 앞의 필터로서 파일을 텍스트하는 것처럼 다양한 비 텍스트 파일의 내용을 통과하려고 시도합니다. 기본적인 주문은 다음과 같습니다.
rg --pre-glob '*.{xlsx,pptx,docx,pdf}' --pre rgpipe "$YourSearchTermHere"
나는 여기서 그것을 사용하는 방법에 대한 확장 된 요지를 썼습니다.
그 요점은이 해커 뉴스에서 rg --pre-glob 의 작동 방식을 설명하는 Burntsushi의 친절한 메모 때문에 유용합니다.
이것은 다음을 통과하는 데 도움이됩니다.
unzip 및 sed 사용합니다strings 사용합니다unzip 및 sed 사용합니다pdftottext 사용합니다w3m Lynx를 사용하고 친구도 작동합니다. 100% 필요하지 않습니다.unzip 및 w3m7zip 및 w3m Ubuntu Wants : sudo apt install poppler-utils p7zip w3m unzip
Termux Want : pkg install poppler p7zip w3m
rgpipe가 경로에 있다고 가정하면/path/to/rgpipe가 아닌 경우
rg --pre rgpipe YourSearchTermHere위의 RGPipe는 필요하지 않은 경우에도 RGPIPE를 사용합니다. 느리게 RipGrep은-pre-glob과 함께 선택적으로 사용할 수 있습니다.
rg --pre-glob ' *.{xlsx,pptx,docx,pdf} ' --pre rgpipe YourSearchTermHere더 철저한 전 세계 :
rg --pre-glob ' *.{pdf,xl[tas][bxm],xl[wsrta],do[ct],do[ct][xm],p[po]t[xm],p[op]t,html,htm,xhtm,xhtml,epub,chm,od[stp]} ' --pre rgpipe YourSearchTermHere별명은 많은 타이핑이기 때문입니다
alias rgg= " rg -i -z --max-columns-preview --max-columns 500 --hidden --no-ignore --pre-glob
'*.{pdf,xl[tas][bxm],xl[wsrta],do[ct],do[ct][xm],p[po]t[xm],p[op]t,html,htm,xhtm,xhtml,epub,chm,od[stp]}' --pre rgpipe "1 단계 : RGPIPE를 사용하여 텍스트 사이드카 파일을 만듭니다
find-rgpipe-type () {
find ` pwd ` -type f -iname " *. $1 " -exec sh -c ' for f; do rgpipe "$f" > "${f%.*}.txt"; done ' _ {} +
}
# or get fancy with xargs for multithreaded goodness
find-rgpipe-type-xargs () {
find " $( pwd ) " -type f -iname " *. $1 " -print0 | xargs -0 -P0 -n 1 -I {} sh -c ' rgpipe "{}" > "{}.txt" '
}
위에서 정의 된 기능을 사용하여 현재 디렉토리 아래 PDF 확장 장치가있는 모든 파일에 대한 텍스트 사이드카를 만듭니다.
find-rgpipe-type pdf2 단계 : RipGrep을 사용하여 해당 파일을 검색하십시오
rg YourSearchTermHere1-이 해커 뉴스 의견
2- 파일 유형을 더 추가 한 템플릿 인 사전 처리 스크립트
3- 자정 사령관은이 주제에 대한 훌륭한 대본을 가지고 있습니다.
4- 물론 적은 스파이프
5 -RGA는 비슷한 일을하는 녹 도구입니다.
rgpipe 아이디어는 Lesspipe와 유사하기 때문에.