Добавить команду в visudo с динамическими параметрами - PullRequest
0 голосов
/ 23 октября 2019

Я написал Perl-скрипт, которому нужны права sudo, но он принимает параметры, которые всегда различны. например,

sudo /home/user/script.pl user

Я думаю, добавление этого в visudo не будет работать. Это возможно? Если нет, то я подумал, может быть, использовать что-то вроде конвейера для решения этой проблемы, например:

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

Есть ли способ передать переменные таким образом в скрипт perl?

Единственный другойопция, которую я вижу, записывает параметры в файл. Тогда я все еще могу добавить скрипт в visudo.

1 Ответ

0 голосов
/ 24 октября 2019

Почему бы не использовать ARGV ? содержимое tmp / script.pl

use strict;
use warnings;

print join(',', @ARGV);

exit;

и как результат

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

Или вы можете использовать Getopt :: Long (расширенныйобработка параметров командной строки)

...