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

Скрипт может быть запущен не больше, чем два раза в день, не используя крона?

12.08.2018 17:46.

@Ravexina

Это - мое использование сценария рекомендация Ravexina.

SCRIPT=$(realpath "$0")
V=$(pstree -sp $$ | grep "($(pgrep -n atd))" -c)

if [ "$V" -ge 1 ];
then
        echo "$SCRIPT" | at "$(date +%H:%M) tomorrow"
fi

Docs_Backups=/media/andy/MAXTOR_SDB1/Ubuntu_Mate_18.04/Documents_Backups/
Scripts_Backups=/media/andy/MAXTOR_SDB1/Ubuntu_Mate_18.04/Script_Backups/
# Backup Documents
gxmessage -fg red -font  'sans 30' -timeout 3  ' BACKING UP FILES FOR UBUNTU_MATE 18.04.3 LTS'
cd ~/Documents
zip -u -q Ubuntu_Documents.zip *.txt *.doc *.rtf *.html *.png *.pdf *.odt *.ods *.odg 
cp Ubuntu_Documents.zip /media/andy/MAXTOR_SDB1/Ubuntu_Mate_18.04/Documents_Backups/Ubuntu_Documents_`date +"%Y-%m-%d-%H-%M"`.zip # date is in year/month/day/hour/minute format
cd /media/andy/MAXTOR_SDB1/Ubuntu_Mate_18.04/Documents_Backups/
# This deletes unneeded date files except newest which are zero bytes
find . -type f -size 0b -delete
sleep 1
touch $( date '+%m-%d-%Y_%I:%M-%p' )

Когда я выполнил его, ничего не произошло в 17:41.

andy@7_~$ echo $HOME/script.sh | at 17:41
warning: commands will be executed using /bin/sh
job 4 at Sun Aug 12 17:41:00 2018
0
задан 12 August 2018 в 15:45

1 ответ

Поскольку Вы упомянули о cron Я предполагаю, что Вы пытаетесь запустить скрипт автоматически два раза в день.

Лучше использовать cron, однако можно также использовать at управляйте, позволяет, говорят, что мой сценарий расположен в $HOME/script.sh и исполняемый файл.

Сначала я должен добавить эти строки в начале моего сценария:

SCRIPT=$(realpath "$0")
V=$(pstree -sp $$ | grep "($(pgrep -n atd))" -c)

if [ "$V" -ge 1 ];
then
        echo "$SCRIPT" | at "$(date +%H:%M) tomorrow"
fi

Я должен работать:

echo $HOME/script.sh | at 18:00
echo $HOME/script.sh | at 20:00

Теперь мой скрипт будет запущен в 18:00 и 20:00 и каждый раз, если он был выполнен с помощью at демон это запланирует себя, чтобы быть выполненным завтра одновременно.

Это - просто забавная идея, что я хотел совместно использовать ;)

2
ответ дан 28 October 2019 в 04:17

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

Похожие вопросы: