명령을 실행하지만 *수정된* 버전만 기록에 추가하는 방법은 무엇입니까?

명령을 실행하지만 *수정된* 버전만 기록에 추가하는 방법은 무엇입니까?

명령 기록의 시뮬레이션을 만들려고 합니다만,산출예를 들어 명령을 실행할 수 있습니다 locate filename(표시될 수 있음).일부파일)을 선택한 다음 vim %2(또는 다른 방식으로) 두 번째 파일을 편집합니다.

지금까지 나는 다음을 가지고 있습니다 :

my-ret() {
    print -n " : `date +%s` : " >>~/.zsh-output
    BUFFER+=" >&1 >>~/.zsh-output"
    zle accept-line
}
zle -N my-ret
bindkey '\e\r' my-ret

그러나 이것은 ls -l >&1 >>~/.zsh-output내 명령 기록에 추가됩니다.

명령 기록에 print -s원래 명령을 추가하는 데 사용할 수 있는 명령을 찾았습니다 . $BUFFER하지만 수정된 줄을 실행하면 기록에도 추가되지 않을까요?

명령을 실행하지만 기록에 추가하지 않는 것을 원한다고 생각합니다.

관련 정보