연속되지 않은 키워드를 사용한 검색 기록 명령

연속되지 않은 키워드를 사용한 검색 기록 명령

명령의 처음 몇 글자를 모르고 어떻게 과거 명령을 검색할 수 있는지 궁금합니다.

Ctrl+ in 을 사용하여 R검색할 경우 bash명령의 처음 몇 글자를 제공해야 합니다. 중간에 있는 일부 문자만 인식하거나 시작 부분과 중간에 있는 일부 문자만 인식하는 경우 어떻게 해야 합니까?

cat myfile예를 들어 검색을 해보면 처음과 중간쯤에, 혹은 어딘가에 있다는 것만 알 뿐이다 . 키워드는 연속적으로 배치되어야 합니다. 예를 들어 에서 and 를 검색하고 싶지만 +에서는 둘 다 지정할 수 없습니다.atcmycat myfilecmyCtrlR

답변1

(기억을 되살리기 위해) 해당 줄을 찾고 싶다면 기억나는 명령 부분을 grep하면 됩니다.

history | grep "substring"

답변2

내가 아는 한 Bash에는 간단한 문자열 검색만 가능합니다.

전환을 고려해보세요다루기 힘든, 과거 와일드카드 검색이 있습니다.history-incremental-pattern-search-backward그리고history-incremental-pattern-search-forward기본적으로 키에 바인딩되지 않지만 바인딩할 수 있습니다.

bindkey '^X^R' history-incremental-pattern-search-backward
bindkey '^X^S' history-incremental-pattern-search-forward

그런 다음 를 입력합니다 Ctrl+X Ctrl+R ^c*my.

답변3

Apropos(1)은 man에 단어가 포함되어 있으면 주제의 man도 반환해야 합니다. Whatis(1)은 절대 일치 항목만 반환합니다.

참고: 대략 == man -k Whatis == man -f

와일드카드 * 및 ?와 함께 이 두 가지를 사용하면 많은 도움이 됩니다.

관련 정보