我想在 shell 脚本中检测我要通过 sudo 运行的命令是否实际上可以通过 sudo 运行。在较新版本的 sudo 上,我可以执行 sudo -l "command" ,这正是我想要的结果。
但是,某些系统具有旧版本的 sudo,其中 -l "Command" 不可用。我正在考虑的另一种方法是尝试运行命令,然后查看 sudo 是否提示输入密码。但是,我没有看到一个简单的方法来做到这一点,因为 sudo 将密码提示写入 TTY 而不是通过标准输出。
还有其他人知道这样做的直接方法吗?
我还应该提到“期望”在具有较旧 sudo 修订版的系统上似乎也不可用。
仅供参考 sudo 的“困难”版本出现在版本 1.6.8