Я сделал простой сценарий .sh, который каждую минуту проверяет, является ли конкретный файл пустым или нет, а светодиод на моем ноутбуке мигает с частотой 0,5 Гц. Я вызываю этот скрипт из моего .bash_profile
.
Всякий раз, когда я нахожусь в TTY, это работает безупречно (скажем, когда файл не пустой, светодиод на моем лапе мигает с такой частотой).
Но когда я запускаю X (я использую Xmonad/urxvt, вызываемый через startx
если это может помочь), происходит что-то странное. Частота мигания нерегулярна, она немного замедляет работу машины, и когда я вызываю top
я вижу различные процессы sudo (тот, который я вызываю для включения или выключения светодиода).
Это такое же поведение, как если бы я вызывал сценарий три или четыре раза.
Я не знаю, как диагностировать проблему. В руководстве сказано, что .bash_profile
читается один раз (во время входа в систему). Можете ли вы помочь мне?
# blink mail led
blinkTime="0.2"
checkTime="60"
while true; do
hasIt=$(cat ~/someFolder/hazText.txt) # 1: has text
if [ $hasIt -eq "1" ]
then
echo "1" | sudo tee /sys/class/leds/led:alarm/brightness > /dev/null
sleep $blinkTime
echo "0" | sudo tee /sys/class/leds/led:alarm/brightness > /dev/null
sleep $blinkTime
else
sleep $checkTime
fi
done