find 명령의 맨 페이지를 grep 할 때 type와 일치하면 원하지 않는 많은 검색 결과가 반환됩니다. 대신 검색 결과를 반환하는 명령을 사용하고 싶습니다. div id = “a3272c3363″>

.

man find | grep -type 명령이 작동하지 않습니다. 다음을 반환합니다.

grep: invalid option -- "t" 

코멘트

  • 형식화 된 매뉴얼 페이지의 개별 줄만 원하십니까? -type 문자열을 포함하거나 -type의 기능을 설명하는 전체 단락 또는 두 개를 원하십니까?
  • 두 가지 방법으로 수행하는 방법을 알고 싶습니다. -type 문자열이 포함 된 개별 줄을 찾는 것만으로도 일반적으로 매뉴얼 페이지를 검색하는 방법으로는 충분하지만 -type의 기능을 설명하는 전체 문단 또는 두 개는 적어도 한 번은 수행하는 데 매우 유용합니다.
  • BTW, 웹 페이지를 보는 것이 대안 인 경우 Explainshell.com의 Idan Kamara는 명령 옵션을 설명하는 man 페이지의 일부를 추출하는 작업을 훌륭하게 수행했습니다. 예를 들어 -type explainshell.com/explain?cmd=find+-type+f 를 참조하십시오. > 옵션이 있습니다.

Answer

하이픈으로 시작하는 패턴을 grep하려면 -- 지정한 패턴 앞.

man find | grep -- -type 

예를 들어 옵션을 설명하는 전체 섹션과 같이 자세한 정보를 원하는 경우 , Sed를 사용할 수 있습니다 :

$ man find | sed -n "/-mindepth/,/^$/p" -mindepth levels Do not apply any tests or actions at levels less than levels (a non-negative integer). -mindepth 1 means process all files except the command line arguments. 

그러나 이것은 검색 할 수있는 모든 옵션에 대해 작동하지 않습니다. 예를 들어 :

$ man find | sed -n "/^[[:space:]]*-type/,/^$/p" -type c File is of type c: 

별로 도움이되지 않습니다. 더 나쁜 것은 일부 옵션의 경우 “정말로 읽었을 때 옵션에 대한 전체 텍스트를 읽었을 것”이라고 오해 할 수 있습니다. t. 예를 들어 -delete를 검색하면 해당 제목 아래에 두 번째 단락으로 포함 된 매우 중요한 경고가 생략됩니다.


My man에 대한 표준 호출을 사용하는 것이 좋습니다. LESS 환경 변수가 설정되어 있습니다. 이 사이트의 답변에서 자주 사용합니다.

LESS="+/^[[:space:]]*-type" man find 

이 작동 방식에 대한 자세한 내용은 다음을 참조하세요.

LESS="+/^[[:space:]]*LESS " man less LESS="+/\+cmd" man less LESS="+/\/" man less 

맨 페이지에서 옵션을 빠르고 대화식으로 찾으려면 less“의 검색 기능을 사용하는 방법을 배우십시오. 참조 :

댓글

  • 게시 해 주셔서 감사합니다. 답변의 명령이 내가 찾고 있던 결과를 반환했습니다. 하루나 이틀 후에 답변을 받겠습니다. 잠시만 기다려주세요.
  • @karel, 문제 없습니다. 저는 ' 매우 인내합니다. 🙂 조금 당혹 스럽지만 : 할 수 있다는 것을 알고 있습니다. ' 이틀 동안 질문에 대한 바운티 를 시작하지 마십시오.하지만 답변을 수락 할 수있는 시간 제한은 15 분 정도라고 생각합니다.
  • man find | sed -n '/-type/,/^$/p'는 게시 한 것보다 훨씬 많은 것을 제공합니다. 줄의 모든 위치에서 -type와 일치합니다 … 사람이나 도움말 (내장 용)을 검색하기 위해 직접 작은 스크립트를 작성 중이며 현재 awk 아직 해결해야 할 단점이 거의 없습니다 .. awk -v RS= -v rx="^\\\s*$arg\\\>" '$0 ~ rx' "$file" 여기서 arg-type입니다. 이 경우
  • BTW, @Sundeep, 텍스트 출력 대신 형식 정보가 포함 된 원본 매뉴얼 페이지 정보가 포함 된 기본 troff 파일을 구문 분석 할 수 있습니다. man 명령의.
  • @Sundeep, 여기 ' 당신의 출발점입니다 . (해당 답변의 링크를 따라 가십시오.) ' troff에 대해 알아야 할 사항이 많이 있습니다. 토끼 구멍 아래로 다이빙을 마치면 저에게 핑을 보내주세요. 🙂

답변

또는 less 및 피드로 연결 검색어 :

man 1 find | less -p " -type" 

(less가 피드 인 정확히 무엇인지에 따라 실패 할 수 있습니다 (예 : -type는 백 스페이스로 굵게 표시되었습니다.)

댓글

  • 먼저.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다