Я хочу отладить скрипт, который я поместил в /etc/pm/sleep.d
. В своем скрипте я выдаю echo
команду для отчета о состоянии.
Где я могу прочитать этот вывод? Я думаю, в чем-то вроде dmesg
или файле, /var/log
может быть?
Это лучший способ? Какова стандартная практика отладки bash-скриптов, которые должны выполняться системой (например, в /etc/init.d/
или . Xinit
)?
решение1
Я обнаружил echo
, что вместо использования можно использовать logger
для вывода команд в системный журнал в целях отладки.
logger "Oh no"
Затем вы можете проверить вывод в /var/log/syslog
sudo tail /var/log/syslog
решение2
Как вы уже упомянули, в вашем скрипте есть оператор echo.
Теперь отредактируйте свой скрипт и вот это, как в начале файла после shebang.
> /tmp/myoutput
myoutput — это просто имя файла в монтировании /tmp, вы можете выбрать что угодно.
После этого, где бы вы ни использовали оператор echo в вашем скрипте, например, такой:
echo "something"
изменить это на
echo "something" >> /tmp/myoutput
Вот и все, теперь при каждом запуске вашего скрипта у вас будет последняя информация о том, что произошло с ним.