Периодически запускать определенный скрипт во время загрузки

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

Я хотя об этом подходе.

  • Я создаю файл с последним временем выполнения скрипта.
  • При каждой загрузке я делаю следующее:

if(file_exists("last_boot.txt")) { if(<<more then a month has passed since last date time>>) { <<run script>> } } else { <<run script>> } <<write current date time into the file>> 

Можно ли это сделать, используя некоторые стандартные инструменты без трюка с файлом?

One Solution collect form web for “Периодически запускать определенный скрипт во время загрузки”

Просто * запустите его в любом расписании с помощью cron и проверьте другую часть расписания в скрипте:

В одну сторону:

 @reboot /path/to/my_script.sh if has_run_this_month() { exit } 

Другой путь:

 0 0 1 * * /path/to/my_script.sh if has_run_since_reboot() { exit } 

* Существует несколько проблем с этим способом:

  • Вы когда-нибудь поддерживали работу машины более месяца? Два месяца? Что происходит в любом случае?
  • Вы когда-нибудь оставляете машину более месяца? Вы можете видеть, где это происходит …
  • Как вы убедитесь, что путь, в котором вы сохраняете состояние (потому что вы должны хранить его где-то постоянным), не может быть уничтожен при загрузке, потому что это RAM-диск?
  • Как написать это расписание в crontab?
  • сломанное задание cron после его редактирования
  • Создание задания cron и просмотр его вывода в режиме реального времени
  • почему не 0 0 * * 1 root hostname >> /tmp/hostname.txt работать как crontab?
  • Дата линии Crontab
  • Как настроить запись cron, которая работает через 00 и 30 после часа?
  • Задача Cron, случайное начало, но в пределах временного интервала
  • Синтаксис Crontab: использование «*» для значения минут
  • В чем цель использования разных crontab для каждого пользователя?
  • как получить результаты выполнения задания cron
  • Как мне сделать «Hello World», чтобы попробовать использовать cron
  • Interesting Posts

    Получить статистику использования CPU из программы C

    Как добавить две переменные, переданные в оболочке, которая возвращает число целых чисел?

    Удаление столбцов из файла

    Есть остановленные задания (при выходе из bash)

    Данные о трубах от подключения сокета TCP к терминалу

    Патч-файлы

    Переход на Solaris (из Linux)

    Удаленный Unzip через SSH не работает

    Открытие приложения и ввод команды в одну строку

    Установка сервера SME с USB-сбоев с «IOError: Файловая система только для чтения"

    Отправить пароль с помощью sudo и выполнить скрипт с nohup

    RHEL как синхронизировать сетевые настройки между графическим интерфейсом и файлами конфигурации в / etc / sysconfig / network-scripts /?

    Почему пользователь может иметь более низкие разрешения, чем группа или другое? Кто может их изменить?

    Как scp с удаленного хоста на удаленный хост с файлами pem и отключением строгой проверки хоста?

    Установка GCC 4.5 на Fedora 16

    Linux и Unix - лучшая ОС в мире.