Я хотел бы знать, как я могу запланировать завершение работы в своем компьютере после того, как бот закончит работать полностью.
Я запускаю бота в Instagram из своей собственной жилой сети. Это настроено способом, что после того, как все задачи сделаны, это просто прекращает работать.
И я хотел бы, чтобы мой компьютер завершил работу после того, как бот прекращает работать для сохранения энергии. Например, когда бот сделан, что-то как 'Сессия, Законченная', обнаруживается на терминале. Я хотел бы, чтобы компьютер завершил работу после этого.
Я видел вопросы, связанные с этим, но они были согласно потоку или чему-то, и компьютер завершит работу после того, как загрузка завершается.
В этом случае это - просто что-то, что работает в терминале, и я хочу, чтобы компьютер завершил работу, когда та задача полностью сделана.
Один способ сделать это: во-первых, найдите PID (идентификатор процесса) рабочего процесса, с помощью pgrep [name of script, or program]
.
Затем запишите другой сценарий:
#!/bin/bash
while ps -p $PID; do sleep 1; done ; shutdown -h
$PID замены фактическим идентификатором процесса. То, что делает сценарий: посмотрите, если процесс с идентификатором все еще существует. Если так, спите секунда и посмотрите снова. В противном случае продолжите закрывать систему
Сохраните его (как myscript.sh
, скажите), сделайте это исполняемым файлом (chmod +x myscript.sh
) и выполненный это с корневым разрешением: sudo myscript.sh
. Вы должны базироваться разрешение сделать shutdown
команда.
Просто добавьте shutdown
к команде с &&
оператор. &&
удостоверился бы, что система закрывается, только если команда выходит успешно. Таким образом, необходимо работать
your-command && shutdown