我有一个命令行java程序,它接受密码并从stdin验证。不幸的是,修改程序不是一种选择,因为它是专有的。
我无法使用<
从unix命令行传递参数,因为程序中有两个提示,都要求输入相同的密码。在命令提示符下有stdout语句要求“密码”和“密码(验证):”。
如何以非交互方式将密码传递给该程序,以便可以使用cron job / RC脚本自动执行?
谢谢!
答案 0 :(得分:1)
有可能根本没有从stdin读取密码,而是从/ dev / tty读取密码。在那种情况下,你运气不好。
你可以通过stdin输入包括密码在内的所有输入来运行程序吗?如果没有,那你就不走运了。
但是,如果这样可行,您可以执行类似
的操作(echo user; echo passwd1; echo passwd1; cat) | java -jar yourCommandlineprogram.jar
答案 1 :(得分:1)
您的问题不确定Expect是否可以接受。