Скрипт bash: получение простоя и сравнение его
Почему сжатие if не сравнивает значение?
idle_time=exec sudo -u home xprintidle
if [ "$idle_time" -ge 6000 ]
then
echo "hi"
fi
это не работает так
1 ответ
Решение
Прежде всего, я перешел на строку, которую вы используете для запуска xprintidle от имени другого пользователя. После этого я изменил условие if, так как также произошла ошибка.
#!/bin/bash
# actually assign the variable
idle_time=$(idle_time=exec sudo -u home xprintidle)
# adapted if clause to actually match (see https://stackru.com/questions/18668556/comparing-numbers-in-bash)
if [ "$idle_time" -gt "6000" ]; then
echo "hi"
fi