执行某一命令(./cmu)时需要输入密码,但程序调用这一命令时无法传密码参数,请大家指教

新手上路,请多包涵

目前我遇到一个问题是:执行某一命令(./cmu)时需要输入密码才能完整执行,但现在项目中的程序需要调用这一命令,目前我不知道怎么传密码参数,请大家指教
./cmu export -handle=30 -output=myss.cer
Please enter password for token in slot 1 : **********

还是需要修改配置文件方法呢?

阅读 3.2k
1 个回答

^_^ (正好撞上熟悉的问题的表情)

你需要使用expect。这个工具可以监视进程的运行,并等待必要时机向进程的stdin提供数据。经常用于SSH的无值守登录(监视Password:密码输入提示,并自动提供密码)。

expect其实也是一种脚本解释器。你需要写专门的expect脚本,用来告知expect具体去监视什么样的提示,并作出什么样的应答。

教程你可以在网上找找看。

expect一般需要另行安装。不过各种Linux的软件仓库里都有。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题