关于 sudo 和将密码传递给命令的问题

关于 sudo 和将密码传递给命令的问题

大多数用户表示使用此 cli 可以轻松传递 sudo 命令的密码

sudo -S <<< "yourpassord" yourcommand

或者

echo "yourpassword|yourcommand

这些 cli 适用于很多命令(mkdir、touch 等),但对于某些命令(如 su)会出现问题

sudo -S <<< "yourpassword" su - youruser
-su: line 1: youpassword: command not found

echo youpassword|sudo -S su - youruser 
-su: line 1: youpassword: command not found

如何解决?实际上我使用这个解决方法

echo yourpassword | sudo -v -S
sudo su - youruser #now work because password is in memory

有人知道更好的解决方案吗?

答案1

没有答案,所以我把这个作为临时解决方案

echo yourpassword | sudo -v -S
sudo su - youruser #now work because password is in memory

相关内容