shell - 在 shell 脚本中传递 su 密码

标签 shell sudo su

如何使用 su(不使用 sudo 和 except)在 shell 脚本中传递密码? 我试过 echo "password"| su root -c 。但它没有用。

最佳答案

执行此操作的最佳方法是使用 sudo,但由于您不想要最佳解决方案,您可以使用 script 代替:

{ sleep 3; echo "yourpassword"; } | script -q -c 'su -c whoami' /dev/null

这将打印 rootwhoami 的输出。

在尝试调整它以运行您自己的命令之前,请确保逐字尝试此命令(替换密码),因为调整它很困难且容易出错。

关于shell - 在 shell 脚本中传递 su 密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31125637/

相关文章:

Perl 序列提取循环

linux - 使用 wine 和 root 权限运行 windows 程序

unix - 如何编写一个 shell 脚本,以 super 用户身份运行一些命令,而不以 super 用户身份运行一些命令,而不必照顾它?

c - 为什么以不同用户身份运行命令时性能会急剧下降

linux - 如何在 bash 脚本中以 su 模式运行命令?

c++ - 编写 shell - 如何确定不同 exec 调用的可执行路径和文件名

linux - shell ftp 期望智能地从本地复制文件到ftp服务器

android - 以编程方式强制关闭应用程序

c - 如何编写一个评估 shell 命令的 c 程序

linux - SSSD 和 sudo : mismatch between sudoHost and server hostname