I have the following command works in my script that adds the host to the known hosts in ssh.
VAR2=$(expect -c '
spawn ssh -o StrictHostKeyChecking=no '"$REMOTE_HOST_USER@$REMOTE_HOST_IP"'
expect "*?assword:*"
send "'"$REMOTE_HOST_PASSWD"'\r"
expect {
"Permission denied, please try again." {
exit '"$WRONG_PASSWORD"'
}
}
')
Works fine, but I need to control before the command if the host is already in known_hosts and not execute command if it is already in known_hosts. How can i check if an host is in known_hosts?
Try: ssh-keygen -F <hostname>
Will show the known_hosts line(s) if the hostname fingerprint is found and the command returns 0, otherwise nothing is shown and the command returns 1.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With