Будильник командной строки для Ubuntu

требовалась рекомендация по программному обеспечению! Я ищу будильник для использования на моем компьютере с Ubuntu 20.04 с интерфейсом командной строки, который позволит мне устанавливать будильник из командной строки. Это связано с тем, что в моем рабочем процессе мне часто приходится устанавливать много будильников в день, обычно только около часа. Поскольку я так часто делаю это, то постоянно возиться с графическим интерфейсом - это боль.

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

Может ли кто-нибудь порекомендовать что-нибудь вроде того, что я находясь в поиске? Не слишком разборчив, просто нужно, чтобы он выполнял свою работу.

Заранее спасибо :)

1
задан 30 August 2020 в 11:13

2 ответа

Вы можете использовать в команде (не устанавливается по умолчанию в Ubuntu 20.04). Это позволяет вам выполнить команду в определенное время. Например, у вас может появиться всплывающее диалоговое окно Zenity, которое будет служить сигналом тревоги.

3
ответ дан 4 January 2021 в 08:24

. Вы можете использовать команду sleep , которая предустановлена ​​в Ubuntu, чтобы запустить команду через указанное время как :

sleep NUMBER[SUFFIX] && command

Из человек спит :

 ОПИСАНИЕ
  Пауза на NUMBER секунды.  SUFFIX может быть s для секунд (по умолчанию), m.
  для минут, «h» для часов или «d» для дней.  В отличие от большинства реализаций
  которые требуют, чтобы ЧИСЛО было целым числом, здесь ЧИСЛО может быть произвольным плавающим
  номер точки.  Учитывая два или более аргумента,пауза на время
  определяется суммой их значений.
 

Например, вы можете запустить:

sleep 3h 5m 25s && mpv file

, чтобы открыть файл с помощью медиаплеера mpv через 3 часа 5 минут 25 секунд.


спящий режим идеально подходит и прост для выполнения команд после определенного времени, однако в лучше для выполнения команды в (здесь неудивительно) в указанное время .

Тем не менее, подобное поведение может быть реализовано с помощью сна . Вот пример сценария:

#!/bin/bash
alarm_time=$1
command=$2

# convert alarm_time and current_time to seconds since 1970-01-01 00:00:00 UTC
# and calculate their difference
alarm_time=$(date -d "$alarm_time" +"%s")
current_time=$(date +"%s")
diff=$(( $alarm_time - $current_time ))

# convert the time difference to hours
sleep_time=$(echo "scale=5; $diff/3600" | bc)

# run the command at the specified time
sleep "$sleep_time"h && $command

После сохранения его как alarm.sh (выберите желаемое имя) и его выполнения, вы можете запустить его как:

/path/to/alarm.sh time command

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

0
ответ дан 4 January 2021 в 08:24

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

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