달리기 ssh
(또는 scp
또는 lftp
) 할 때마다 gpg-connect-agent updatestartuptty /bye
먼저 달리기를 원합니다 . (이건 긴 이야기다.)
현재 내 .bashrc에 함수가 정의되어 있습니다.
ssh()
{
gpg-connect-agent updatestartuptty /bye >/dev/null 2>&1
$(which ssh) "$@"
}
이것은 잘 작동하지만 ssh가 이미 다른 것과 비슷한 별칭을 가진 다른 시스템에서 사용되는 경우 이식성 문제가 발생할 수 있다고 생각합니다.
명령 자체 ssh
를 재정의하지 않고 사전 실행 “콜백”을 정의 할 수있는 방법이 ssh
있습니까? ( trap DEBUG
모든 명령 전에 주어진 명령을 실행하는 데 사용할 수 있다는 것을 알고 있지만 필요한 명령으로 만 제한하고 싶습니다.)
답변
대신 다음과 같이 작성하는 것이 좋습니다.
ssh()
{
gpg-connect-agent updatestartuptty /bye &>/dev/null
command ssh "$@"
}
자세한 내용 help command
은 참조하십시오.
그리고 다른 “사전 콜백 메커니즘”은 없습니다. 있다면, 당신이하고있는 것은 기본적으로 “그것”입니다.