将命令添加到具有动态参数的visudo中



我已经编写了一个需要sudo权限的perl脚本,但它接受的参数总是不同的。例如

sudo /home/user/script.pl user

我想把这个添加到visudo中是行不通的。这可能吗?如果不是的话,我正在考虑也许用管道之类的东西来解决这个问题,比如:

echo user | sudo /home/user/script.pl

有没有一种方法可以将变量以这种方式传递给perl脚本?

我看到的唯一其他选项是将参数写入文件。然后我仍然可以将脚本添加到visudo中。

为什么不使用ARGVtmp/script.pl的内容

use strict;
use warnings;
print join(',', @ARGV);
exit;

结果

$ sudo perl tmp/script.pl foo bar
> foo,bar

或者您可以使用Getopt::Long(命令行选项的扩展处理(

相关内容

  • 没有找到相关文章

最新更新