如何通过管道以编程方式使用 sudo?

How to use sudo programmatically via a pipe?

我正在尝试编写一个程序来执行系统的远程管理。为此,我发出 SSH 命令并通过管道以编程方式提供输入。我也捕获了他们的输出。

一些命令需要提升,所以我需要发出命令,例如ssh user@host "sudo apt-get install blah"

问题是,sudo 拒绝直接通过终端接受密码,除非它在其标准输入上找到 真实终端 。有什么方法可以骗过 sudo 允许这样做吗?

在此处找到:https://askubuntu.com/questions/470383/how-to-avoid-prompt-password-for-sudo

echo 'password' | sudo -S command

-S 接受来自标准输入的密码