특정 명령이 기록에 저장되지 않도록 제외

특정 명령이 기록에 저장되지 않도록 제외

일부 특정 명령이 zsh 기록에 저장되지 않도록 제외하고 싶습니다.

예를 들어 HIST_IGNORE_SPACE설정에 관계없이 mpv/mpc 명령이 zsh 기록에 저장되지 않도록 제외합니다.

나는 답을 찾았다여기그런데 테스트해보니 잘 안되네요.

답변1

기록 파일에 추가하기 전에 후크 기능을 사용하여 명령을 확인하는 것을 고려하십시오.

zshaddhistory() {
  case ${1%% *} in
    (mpv|mpc) return 1;;
  esac
  return 0;
}

man zshmisc매뉴얼 페이지의 섹션을 인용합니다("후크 기능"):

후크 함수가 상태 1(또는 2 이외의 0이 아닌 값, 이후 버전의 셸에서는 보장되지 않음)을 반환하는 경우 기록 행은 저장되지 않지만 다음 A가 실행될 때까지 기록에 남아 있습니다. 행이 실행되므로 즉시 재사용하거나 편집할 수 있습니다.

후크 함수가 상태 2를 반환하면 기록 행은 내부 기록 목록에 저장되지만 기록 파일에는 기록되지 않습니다. 충돌이 발생하면 0이 아닌 첫 번째 상태 값이 사용됩니다.

관련 정보