我有来自php (exec())
:
openssl pkcs12 -export -in cert.pem -inkey key.pem -out cred.p12
然后我需要输入两次密码
Enter Export Password:
Verifying - Enter Export Password:
我需要填充密码输入的脚本,因为exec()
只会执行该命令,但不会插入密码两次。你知道我应该怎么做吗?
答案 0 :(得分:2)
真正的双向shell在php中并不容易,但在这种情况下,您只需使用换行符来模拟输入。
exec("Command\nPassword\nPassword");
要获得真正的双向(读取和写入)可能性,您需要查看proc_open()
。
如果您不需要返回输出,则可以在popen()
模式下使用更简单的w
,但是您需要验证命令是否已成功运行,因为您将无法获得输出或错误代码回来。