gpt4 book ai didi

linux - ssh-copy id 并在 bash 中期待

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:38:27 25 4
gpt4 key购买 nike

我正在 bash 中使用 expect 进行自动传递。代码是;

ssh-copy-id -i $SSH_KEY_PATH_PUB $REMOTE_HOST_USER@$REMOTE_HOST_IP (here asks pass)

VAR=$(expect -c"
expect "*?assword:*"
send "$REMOTE_HOST_PASSWD\r";
send -- "\r"
expect eof
")

echo "$VAR"

它仍然询问密码。问题是什么

已解决:ssh-copy-id -i $SSH_KEY_PATH_PUB $REMOTE_HOST_USER@$REMOTE_HOST_IP 必须在 expect block 中;

spawn ssh-copy-id -i $SSH_KEY_PATH_PUB $REMOTE_HOST_USER@$REMOTE_HOST_IP

和线

 send "$REMOTE_HOST_PASSWD\r";

必须是

send \"$REMOTE_HOST_PASSWD\r\";

最佳答案

VAR=$(expect -c "expect '' \
{eval spawn \
ssh-copy-id -i $SSH_KEY_PATH_PUB $REMOTE_HOST_USER@$REMOTE_HOST_IP; \
interact -o -nobuffer -re .*assword.* return; \
send "$REMOTE_HOST_PASSWD\r"; send -- "\r"; \
expect eof;} ")

echo "$VAR"

关于linux - ssh-copy id 并在 bash 中期待,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11951926/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com