Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Execute single command in shell script without sudo

I have a simple shell script that is run with sudo as most of the script requires it, yet one of the commands in the script is a Homebrew install, which cannot be executed with sudo..

So, my question is when executing a shell script with sudo how do I execute sub commands as the current user and then continue the remainder of the script with sudo.

Prompting the user to enter his password again is not really practical as the script takes really long to execute and would require waiting 5-10 min for the prompt.

like image 939
RayViljoen Avatar asked Jan 15 '13 10:01

RayViljoen


1 Answers

The easiest way is to run the subcommand via sudo from within the script. The user id to run with can be obtained by $SUDO_USER (look at the output of sudo env):

sudo -u $SUDO_USER ./exec_as_normal_user.sh
like image 85
user1978011 Avatar answered Oct 26 '22 19:10

user1978011