Esperar caracteres extras depois de fechar aspas

0

Estou recebendo um erro

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..."

Ao usar esperar e gerar para adicionar a chave ssh com a frase secreta. Este é o meu script:

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

Eu também tentei muitas combinações ao ecoar a chave privada ssh:

echo "$SSH_PRIVATE_KEY"
echo \"$SSH_PRIVATE_KEY\"
echo -e \"$SSH_PRIVATE_KEY\"
echo '$SSH_PRIVATE_KEY'
echo '$SSH_PRIVATE_KEY'
    
por MilkShake 01.12.2017 / 12:14

1 resposta

0

Você tem a sintaxe bash no corpo esperado (não vejo por que você acha que precisa de uma substituição de processo). Quando se trata de citar o inferno no bash, um documento aqui é bastante útil

expect <<END_EXPECT
    spawn ssh-add "$SSH_PRIVATE_KEY"
    expect "Enter passphrase"
    send "$SSH_PASSPHRASE\r"
    expect eof
END_EXPECT
    
por glenn jackman 01.12.2017 / 19:40