0
我正在编写脚本来启动Java应用程序并安全地向Java应用程序提供密码。密码不应该回显到屏幕上,并且不应该列出正在运行的进程。下面的脚本能正常工作:stdin在bash和Java之间切换
echo -n "enter password: "
read -r -s password
java -classpath $CLASSPATH com.myclientscompany.Manage<<EOF
$password
EOF
...用Java程序读取密码从标准输入线。
我面临的问题是,以这种方式获取密码后,我希望Java应用程序通过控制台以交互方式接受来自用户的更多输入。就目前而言,随后每次从Java中的stdin中读取数据都会立即返回null
。
有没有办法将标准输入切换回脚本输入在脚本的末尾?
为什么'Manage'不能直接从'STDIN'读取?使用'<< EOF'将会从Java进程中关闭'STDIN'。 – 2012-10-25 10:07:38
因为密码会在输入时回显到屏幕上。 – waifnstray