Перезапустить, а затем завершить работу с помощью сценариев Bash?

Я хочу перезагрузить, а затем выключить с терминала. Означает, что мы хотим запустить терминал после перезагрузки, а затем автоматически выключить.

Что я делаю с объяснением:

  1. Вручную запустить мой компьютер
  2. Запустить терминал вручную
  3. После работы над некоторой программой в течение нескольких минут
  4. Тогда программа попросит перезапустить
  5. Этот перезапуск будет сделан из терминала вручную
  6. Затем после перезапуска терминал автоматически запустится
  7. Терминал задержит отключение на несколько минут, затем автоматически отключится

вывод 6: только после перезапуска терминал автоматически выполнит какой-нибудь скрипт, который будет работать в течение нескольких минут, после чего компьютер автоматически отключится

Как запустить автоматически после загрузки?

  1. Терминал автоматически
  2. Какой-то скрипт в терминале, который автоматически выключает компьютер.

2 ответа

Решение

Перезапустить с терминала

shutdown -r now

отключить от терминала

shutdown -h now

чтобы добавить команды при входе в систему, поместите их в файл ~/.bash_login

Если вы добавите команду отключения в файл входа в систему, ваш компьютер сразу же отключится после входа в систему... всегда. Это не очень продуктивно, я думаю. В некоторых ситуациях вы можете отложить завершение работы на несколько минут, чтобы иметь возможность отменить завершение работы при необходимости. В этом случае добавьте в ~/.bash_login следующую команду

shutdown -h 1

если вы не хотите, чтобы компьютер выключался через минуту после входа в систему, вам следует подумать о наборе

shutdown -c

в терминале...

Я не знаю, что именно вы хотите сделать, но это звучит как неуклюжий способ справиться с выключениями и перезагрузкой, я думаю, это может раздражать.

Добавьте следующее в конец вашего ~/.bash_login: run: nano ~/.bash_login

if [ -f ~/.isrestart ]; then
    rm ~/.isrestart
    nano # Replace with your program
    shutdown -h 1
fi

Создайте файл restart_run_shutdown: запустите: nano ~/restart_run_shutdown

#!/bin/bash
touch ~/.isrestart
shutdown -r 1

Сделать файл исполняемым:

chmod u=rwx ~/restart_run_shutdown

Если вы будете использовать все это из X:

  1. Настройте telminal для запуска bash в качестве оболочки входа в систему.
  2. Добавить терминал в автозагрузку приложений

Готово. На шаге 5 запустите "~/restart_run_shutdown", все остальное будет работать как положено. Если что-то пойдет не так, у вас есть 1 минута, чтобы запустить "shutdown -c". После тестовых сценариев - вы можете заменить 1 на 0, чтобы не ждать 1 минуту, но я не рекомендую это.

Другие вопросы по тегам