То, что я пытаюсь сделать здесь, это следующее.Я хочу подключиться к серверу ssh, изнутри этого сервера, sftp к другому серверу, получить файл, сохранить его, а затем получить с него некоторую информацию и сохранить ее в переменной file
.Проблема в том, что client@server.com требует пароль, и когда команда sftp находится в сценарии ssh, он не ждет, когда пользователь введет пароль.Как я могу заставить скрипт ждать, пока пользователь введет пароль, прежде чем продолжить работу с остальной частью скрипта.
KEYPAIR="..."
PUBLIC_DNS="..."
ssh -i $KEYPAIR "ec2-user@$(sed -e 's/^"//' -e 's/"$//' <<<"$PUBLIC_DNS")" << EOF
echo "Finding latest file"
echo ls -t | sftp client@server.com > files.txt
file=$(head -n 2 files.txt | sed -n '2p')
EOF