Bash의 기존 기록 및 기록 검색 기능을 결합 할 수 있습니다. 을 눌러 Ctrl-R증분 역방향 검색을 시작한 다음 가장 고유 한 경로 부분을 입력하기 시작합니다.
cd
해당 디렉토리와 관련된 가장 최근의 명령으로 돌아갈 때까지 문자를 계속 입력 하거나,를 Ctrl-R다시 눌러 기록에서 지금까지 입력 한 내용과 일치하는 다음 최신 명령으로 되돌아 갈 수 있습니다 .
나는 항상 이것을한다.
사실, 한 걸음 더 나아갑니다. 역사에서 유지해야하지만 쉘 스크립트에 커밋 할 가치가없는 일련의 명령을 발견하기 시작 하면 하나의 긴 명령의 하위 문자열을 역 검색 하고 전체 시퀀스를 실행하고 실행할 수 있도록 명령 &&
과 결합기를 연결하기 시작 합니다. 일단.;
Enter
예를 들어, 개발 중에 내 프로그램 중 하나를 빌드하고 실행하는 방법은 다음과 같습니다.
$ ( cd .. ; make install ) && ./start_my_program
최상위 소스 디렉토리 아래에있는 설치 디렉토리에서이 작업을 수행합니다. cd
하위 셸에서, 빌드 및 설치 부분 을 래핑 하여이 프로세스 중에 어떤 일이 발생하더라도 아무런 변화없이 정상적인 쉘로 돌아갑니다. 성공하면 (&&) 빌드되고 설치된 프로그램을 시작합니다. 나는 Ctrl-R그때 내 역사에서 이것을 한 번만 sta찾을 수 있습니다.
이것을 사용하는 또 다른 예는 동일한 프로그램의 RPM을 구축하는 순서입니다. 지루한 작업의 대부분은 셸 스크립트에 있지만 Bash가 유지하기 때문에 빌드 된 RPM을 빌드하고 배포하는 모든 작업을 수행하기 위해 일반적으로 입력 해야하는 명령이 여전히 있습니다. 나를 위해 역사에서.
모든이를 결합 export HISTSIZE=bignum
하고 shopt histappend
당신은 단지 코끼리의 명령 메모리를 구축했다.
나는 한 번에 최대 코딩 또 다른 해결책은에 내 대답 에 여기에 또 다른 질문 . cd
히스토리 검색 옵션은 모든 목적과 모든 명령에 대해 작동하는 반면, 목적에 맞게 조정해야 할 수도 있으며 명령 만 처리 합니다.