Команда date
довольно гибка в отношении ввода. Вы можете использовать это в своих интересах:
#!/bin/bash
var1="23:30"
var2="20:00"
# Convert to epoch time and calculate difference.
difference=$(( $(date -d "$var1" "+%s") - $(date -d "$var2" "+%s") ))
# Divide the difference by 3600 to calculate hours.
echo "scale=2 ; $difference/3600" | bc
Выход:
$./test.bash
3.50
Вы можете используйте ddcutil , чтобы проверить, монитор включается, проверяя, установлено ли значение кода VCP 0xd6 в все, кроме 0x05, как указано в таблице 8 -5 VESA Monitor Команда управления Установить:
$ sudo ddcutil -d 1 getvcp d6 |& awk '{ print $NF }'
(sl=0x01)
Это означает, что первый дисплей включен.
$ sudo ddcutil -d 1 getvcp d6 |& awk '{ print $NF }'
(sl=0x05)
Это означает, что первый дисплей выключен.