我有一个包含脚本的目录:/etc/scripts。
现在我想执行以下脚本:sudo scriptname
无需提供密码或指定脚本的路径。
我将 /etc/scripts 添加到 $PATH 变量中:
/etc/scripts:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
并且还将这些脚本的不同路径添加到我的 sudoers 文件的底部,例如:
steven ALL=(ALL) NOPASSWD:/etc/scripts/dns_add_zone,/etc/scripts/dns_add_record
所以执行脚本就像sudo /etc/scripts/scriptname
工作但不是没有指定路径。