ssh-keyscan이 출력을 생성하지 못하도록 방지

ssh-keyscan이 출력을 생성하지 못하도록 방지

질문:ssh-keyscan명령을 실행할 때예약 된 일들ssh-keyscan매일의 결과를 이메일로 보냅니다. 이메일에는 다음 내용만 포함되어 있습니다.

# <hostname> SSH-2.0-OpenSSH_5.3

내 (간단화된) 크론 작업:

host=`uname -n`
SSHKey=`ssh-keyscan $host`
echo $SSHKey >> /root/.ssh/known_hosts

내 질문:ssh-keyscan쉘에 아무것도 기록되지 않도록 하려면 어떻게 해야 합니까 ?

답변1

리디렉션stderr/dev/null

host=`uname -n`
SSHKey=`ssh-keyscan $host 2> /dev/null`
echo $SSHKey >> /root/.ssh/known_hosts

답변2

오래된 질문입니다. 왜 아무도 다음 변형을 제안하지 않았는지 궁금합니다.

(ssh-keyscan $host >>/root/.ssh/known_hosts) 2> >(grep -vE '^#')

이렇게 하면 으로 시작하는 stderr 출력만 억제됩니다 #. 즉, 실제 오류 메시지는 억제되지 않습니다.

관련 정보