我发现使用“yes | command-that-asks-for-input”很有用 在安装过程中自动键入yes。但是,我还需要自动传递sudo的身份验证。所以我目前的perl脚本是:
system "echo \"$password\" | sudo -S /usr/share/elasticsearch/bin/plugin install file://$localDepDir/plugins/$licensename";
使用上面的代码时,我怎么还能键入“是”?谢谢!
答案 0 :(得分:1)
怎么样?
system "( echo \"$password\" ; yes ) | sudo -S ..."
请注意,如果密码包含双引号,美元符号等,它可能会中断(与原始代码相同)。