LINUX.ORG.RU

sudo: eval: command not found

 , , ,


0

1

Как правильно сделать это:

sudo eval "sleep 5m; poweroff"
[sudo] password for lexx: 
sudo: eval: command not found

Хочу чтобы ПК вырубился после задержки, но чтоб пароль спросил только при запуске этого набора команд или вообще не спросил.


Ответ на: комментарий от Niroday

Норм вариант


shutdown -P 5
Shutdown scheduled for Пт 2018-02-16 14:45:24 +07, use 'shutdown -c' to cancel.

Turako
() автор топика
sudo sh -c "sleep 5m; poweroff"
vodz ★★★★★
()

eval - это такой маркер: вы что-то делаете не так, есть способ лучше. Много раз замечал, во всех языках так.

Не сработало потому, что sudo запускает программы, а eval - это не программа.

legolegs ★★★★★
()
Ответ на: комментарий от legolegs

eval - это такой маркер: вы что-то делаете не так, есть способ лучше. Много раз замечал, во всех языках так.

Ну зачем так громко признаваться в своих проблемах... Да, можно почти всё, но даже не всё (скажем, exec «скрипт по вычислению дескриптора»> вообще я не знаю как сделать без eval) можно сделать без eval, но половина этого всего достигается такими извратами (ведь это по сути eval это: сгенерировать текст подпрограммы как новый скрипт и что записали — исполнить), что «лучшими способами» никак назвать нельзя.

vodz ★★★★★
()

afair eval это встроенная команда шела и отдельно ее не получится запустить. Ну и как сказали уже выше есть shutdown для этих целей

Drolyk ★★★★
()
Ответ на: комментарий от vodz

Я мог бы привести 100500 примеров, когда такие, как ТС в муках городили сложные, ненадёжные и уродливые конструкции на eval (не только на bash) там, где это было абсолютно ненужно, но мне слишком горько это вспоминать.

legolegs ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.