shellscripting do Linux

0

Estou executando um script de utilitário como abaixo

./ myscript -d myhomedir

isso gera uma saída como abaixo Info: criando os arquivos em um homedir acima mencionado

Digite a senha:

Eu quero que essa senha seja uma entrada de um arquivo que eu codifiquei em um formato base64 aqui está meu script

passwd='cat ${myhomedir}/.passwd'
deCrypt='openssl enc -base64 -d <<< $passwd'
echo $deCrypt
./myscript -d myhomedir
expect "Enter Password:"
send -- "$deCrypt"

Isso não está funcionando. por favor, alguém poderia me orientar se existe uma maneira de ler a senha de um arquivo e tomá-la como uma entrada? sem digitá-lo.

    
por srihari 29.01.2017 / 11:06

1 resposta

0

#!/usr/bin/expect -f

spawn -noecho ./myscript -d myhomedir
expect -re "Enter Password" { send -- [exec cat ~/.passwd | openssl enc -base64 -d ]\r }
interact

puts "\nDone.\n"
exit
    
por 29.01.2017 / 12:00

Tags