我如何将 sudo 密码作为参数传递到我的命令中?

我如何将 sudo 密码作为参数传递到我的命令中?

我的命令是

echo "deb http://www.apache.org/dist/cassandra/debian 311x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list

我想将我的密码user-password作为参数传递到上面的命令中,类似于下面显示的命令:

echo user-password | sudo -S apt-get update

我的问题是我不知道如何同时传递 URL 和 sudo 密码。

另外,我要确保密码在终端上不可见,因为这个命令将由一个从文件(或用户)读取密码的 python 脚本调用。

答案1

稍微打乱命令顺序,将echo源移动到sudo命令内部:

echo password | sudo -S sh -c 'echo "deb http://www.apache.org/dist/cassandra/debian 311x main" >> /etc/apt/sources.list.d/cassandra.sources.list' 

相关内容