필터 --help 명령?

필터 --help 명령?

가끔 특정 명령에 대한 도움말을 키워드로 검색/필터링하고 싶을 때가 있습니다.

history --help

옵션 목록이 주어지면 정보의 양이 때로는 너무 많아질 수 있습니다. 예를 들어 핵심 작업 "clear"를 사용하여 필터링할 수 있습니다.

history --help *clear*

때로는 --help에서 모든 정보를 얻고 싶지만 너무 길어서 일부 줄이 누락되어 위로 스크롤할 수 없습니다. 첫 번째 화면을 채운 다음 키 입력으로 두 번째 화면을 채우는 등 화면별로 작동하도록 하려면 어떻게 해야 합니까?

파일 목록 명령과 동일한 문제입니다.

답변1

--help는 보편적인 명령이 아니기 때문에(호출된 명령에 대한 인수이고 명시적으로 제공되어야 함) 보편적인 해결책이 없습니다(사실 내 시스템에는 history옵션이 없었습니다). --help비슷한 것을 원할 수도 있습니다 history --help 2>&1 | grep -E '(^|[^[:alnum:]])clear'( STDERR.

다음과 같은 함수로 바꿀 수 있습니다.

helpgrep() {
    [ "$#" -eq 2 ] || return 1
    "$1" --help 2>&1 | grep -E "(^|[^[:alnum:]])$2"
}

그런 다음 실행하십시오 helpgrep command search-string.

두 번째 질문에 대해서는 파이핑을 시도해 보십시오 less(또는 사용할 수 없는 more경우 ) . 예: .lesshistory --help | less

답변2

어떤 명령이 포함되어 있는지 확인하려면 다음을 clear사용할 수 있습니다 grep.

history | grep clear

출력이 길면 파이프 출력을 사용하여 페이지별로 볼 수 있습니다 more.

 history | more

물론 이것들을 결합할 수도 있습니다.

history | grep clear | more

이는 이에 국한되지 않고 history결과를 필터링하거나 화면 높이를 한 번에 확인하려는 다른 명령에 적용할 수 있습니다.

답변3

history --help | grep clear단어(또는 단어의 일부)가 포함된 줄을 표시합니다 clear. 이것은관로여기서 첫 번째 명령( )의 출력은 history --help두 번째 명령( grep clear)이 됩니다.grep일부 텍스트에서 패턴을 검색하는 명령입니다). 다음을 실행할 수도 있습니다 history --help | less(less텍스트 파일 뷰어입니다) /less 의 키를 사용하여 검색합니다 clear.

관련 정보