Ожидайте дополнительных символов после закрытия цитаты

Я получаю сообщение об ошибке

extra characters after close-quote while executing "spawn ssh-add <(echo -e "-----BEGIN RSA PRIVATE KEY----- Proc-Type: 4,ENCRYPTED DEK-Info: AES-128-CBC,2AB77A7C6E344A120BA00670A3CAB833 AM57TuHYLo..."

При использовании expect и spawn для добавления ssh-ключа с кодовой фразой. Это мой скрипт:

eval $(ssh-agent -s) expect -c "spawn ssh-add <(echo -e \"$SSH_PRIVATE_KEY\\r\"); expect \"Enter passphrase\"; send \"$SSH_PASSPHRASE\\r\"; expect eof;"

Я также пробовал много комбинаций при повторении секретного ключа ssh:

echo "$SSH_PRIVATE_KEY" echo \"$SSH_PRIVATE_KEY\" echo -e \"$SSH_PRIVATE_KEY\" echo '$SSH_PRIVATE_KEY' echo '$SSH_PRIVATE_KEY'
0
задан 1 December 2017 в 15:14

2 ответа

У вас есть синтаксис bash в теле ожидания (я не понимаю, почему вы думаете, что там нужна замена процесса). Когда речь идет о цитировании ада в bash, здесь-документ весьма удобен

expect <<END_EXPECT spawn ssh-add "$SSH_PRIVATE_KEY" expect "Enter passphrase" send "$SSH_PASSPHRASE\r" expect eof END_EXPECT
0
ответ дан 18 July 2018 в 02:14

У вас есть синтаксис bash в теле ожидания (я не понимаю, почему вы думаете, что там нужна замена процесса). Когда речь идет о цитировании ада в bash, здесь-документ весьма удобен

expect <<END_EXPECT spawn ssh-add "$SSH_PRIVATE_KEY" expect "Enter passphrase" send "$SSH_PASSPHRASE\r" expect eof END_EXPECT
0
ответ дан 24 July 2018 в 17:30

Другие вопросы по тегам:

Похожие вопросы: