Linux shell脚本

Linux shell脚本

我正在运行如下实用程序脚本

./myscript -d myhomedir

这将引发如下输出信息:在上述主目录中创建文件

输入密码:

我希望这个密码是来自一个我用 base64 格式编码的文件的输入,这是我的脚本

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

这不起作用。请问有谁可以指导我是否有办法从文件中读取密码并将其作为输入?无需输入。

答案1

#!/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

相关内容