调用时如何通过管道将 aY或yes传递到程序sudo?
我们可以这样输入
yes | command
yes | yum update
Run Code Online (Sandbox Code Playgroud)
如何通过如下方式将yfrom管道yes传输到程序中sudo?
yes| sudo command
Run Code Online (Sandbox Code Playgroud)
在y从yesIS传递到command,应该进入sudo,并sudo应索要密码正常。我怎样才能做到这一点?
Ste*_*itt 13
sudo除非使用该-S选项,否则直接从终端读取密码,而不是从其标准输入中读取。因此
yes | sudo command
Run Code Online (Sandbox Code Playgroud)
应该提示输入密码(如有必要),而不从 读取yes,然后command以 root 身份运行,其标准输入来自yes的标准输出。
如果这不起作用,您可以sudo使用类似的东西运行整个管道
sudo sh -c "yes | command"
Run Code Online (Sandbox Code Playgroud)