명령의 처음 몇 글자를 모르고 어떻게 과거 명령을 검색할 수 있는지 궁금합니다.
Ctrl+ in 을 사용하여 R검색할 경우 bash
명령의 처음 몇 글자를 제공해야 합니다. 중간에 있는 일부 문자만 인식하거나 시작 부분과 중간에 있는 일부 문자만 인식하는 경우 어떻게 해야 합니까?
cat myfile
예를 들어 검색을 해보면 처음과 중간쯤에, 혹은 어딘가에 있다는 것만 알 뿐이다 . 키워드는 연속적으로 배치되어야 합니다. 예를 들어 에서 and 를 검색하고 싶지만 +에서는 둘 다 지정할 수 없습니다.at
c
my
cat myfile
c
my
CtrlR
답변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
와일드카드 * 및 ?와 함께 이 두 가지를 사용하면 많은 도움이 됩니다.