使用sudo允许给定命令的任何参数

我有我通过sudo visudo添加的以下sudoconfiguration条目:

 mark ALL = NOPASSWD: /usr/bin/lxc-ls* 

我可以用我的用户很好的运行lxc-ls ,但是我不能追加任何参数而不要求我用sudo前缀。

 $ whoami mark $ lxc-ls test-container $ lxc-ls --fancy lxc-ls: error: You must be root to access advanced container properties. Try running: sudo /usr/bin/lxc-ls 

任何想法如何我可以编辑通过sudo visudo允许在命令后的任何参数?

我不想用sudo作为命令的前缀,因为我正在使用python库来执行命令,而且它对sudo前缀很有趣。

更新:

我已经尝试删除*但也没有工作:

 $ sudo grep '\-ls' /etc/sudoers mark ALL = NOPASSWD: /usr/bin/lxc-ls $ lxc-ls test-container $ lxc-ls --fancy ... lxc-ls: error: You must be root to access advanced container properties. Try running: sudo /usr/bin/lxc-ls 

这不是如何工作。 当使用sudo命令前缀时 ,sudoers文件只是将用户权限授予一个命令,而不是在没有sudo前缀的情况下运行它。 如果您自己的脚本无法执行,您需要编写一个包装脚本(如简单的bash文件)来执行该命令。

从sudoers手册 :

一个简单的文件名允许用户用他/她希望的任何参数运行该命令

所以,放下*。

你仍然需要在sudo前加上lxc-ls命令,或者写一个简单的包装来为你做。