Vijay Kumar Badugu
Vijay Kumar Badugu

Reputation: 61

Passing su password in shell script

How can password be passed in a shell script using su(without sudo and except)?. I have tried echo "password" | su root -c .But it didnt work.

Upvotes: 4

Views: 10736

Answers (1)

that other guy
that other guy

Reputation: 123410

The best way of doing this is with sudo, but since you don't want the best solution, you can you can use script instead:

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

This will print root, the output of whoami.

Please make sure to try this command verbatim (with password replaced) before trying to adapt it to run your own commands, since adapting it is difficult and error prone.

Upvotes: 6

Related Questions