所以我有一个 bash 脚本,根据它所针对的版本,可能需要使用 sudo 运行一些命令。我已经提出了几个选项,但我想我正在寻找其他建议。这是我正在做的事情的示例脚本:
#!/usr/bin/bash
# script is run by "user1"
version="$1"
export version
if [[ "$version" -eq "10" ]]
then
cp /tmp/file.txt /data/application/files/file.txt
elif [[ "$version" -eq "11" ]]
then
sudo -u user2 cp /tmp/file.txt /data/application/files/file.txt
fi
exit 0
Run Code Online (Sandbox Code Playgroud)
#!/usr/bin/bash
# script is run by "user1"
version="$1"
export version
export run_as=""
if [[ "$version" -eq "10" ]]
then
run_as=""
elif [[ "$version" -eq "11" ]]
then
run_as="sudo -u user2"
fi
eval "$run_as" cp /tmp/file.txt /data/application/files/file.txt
exit …Run Code Online (Sandbox Code Playgroud)