如何在一个命令(shell脚本)中使用openssl进行电子邮件列表打印? 我可以打开连接:
openssl s_client -crlf -connect pop.gmail.com:995
下一步是传递用户名和密码:
USER myuser
PASS mypass
下一步是调用LIST命令
LIST
但是我怎么能为此编写shell脚本呢?我希望在我的c示例程序中使用 popen 函数。您是否可以发布示例我应该如何在shell脚本中使用 expect 和发送命令来执行此操作?
谢谢,抱歉我的英语不好。
答案 0 :(得分:1)
我认为这应该有用(你可能需要稍微修改一下):
#!/usr/bin/expect -f
spawn -console openssl blah blah blah blah
send "USER myuser\r"
send "PASS mypass\r"
send "LIST\r"
就这么简单。如果你想使用popen,它可能不会工作,因为openssl需要交互式终端,你需要以某种方式伪造它。期望可以做到这一点。阅读手册页!