Min*_*nix 7 root sudo shell-script
我正在编写一个 shell 脚本,它需要以 root 权限运行。
我可以检查用户是否具有 root 权限sudo -nv || echo "no sudo"
,但这对我没有帮助,如果他的凭据仍然由 缓存sudo
,但他没有用它调用我的脚本。所以我无法对用户做出反应,而不是用 sudo 调用我的脚本。
我可以将sudo
每个需要它的命令放在前面,因此只需检查用户是否具有 root 权限就足够了,但在我看来,应该有更好的解决方案。
我正在寻找一个命令,我可以将它放入我的脚本中,该命令要求用户提供 root 权限,如果提供,则执行脚本的其余部分,就好像用户首先使用 root 权限调用它一样。
我想要的是:
#!/bin/bash
if ! command; then # what I'm looking for
echo "This script needs root privileges."
exit 1
fi
mv /bin/cmd1 /bin/cmd2 # requires root
Run Code Online (Sandbox Code Playgroud)
编辑了2次
mur*_*uru 15
测试您是否是 root,如果不是,请使用 重新启动sudo
,例如:
#! /bin/bash
if [[ $EUID -ne 0 ]];
then
exec sudo /bin/bash "$0" "$@"
fi
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4534 次 |
最近记录: |