我想编写Linux shell脚本,切换用户而不询问密码,即可以将密码指定为参数。
我的脚本是这样的startService.sh
sudo su hduser -p mypassword
但这不起作用。
谁能告诉我如何在命令本身中指定密码?
答案1
您可以使用-S
从标准输入读取密码的开关,如下所示:
echo 'password' | sudo -S command
从手册页:
-S
(stdin) 选项导致sudo
从标准输入而不是终端设备读取密码。密码后必须跟有换行符。
但有一个问题。它仅适用于当前用户。至少我找不到解决办法。