logger
хорошо подходит для журналирования в bash.
Теги в вызове logger:
В простейшем случае используются две переменные: $0
- имя скрипта; $$
- идентификатор процесса. Трабл с $0
в том, что ее содержимое зависит от способа вызова скрипта. Лучше юзать basename
.
Если уже есть переменная для хранения имени файла сценария, например $PROGRAM
, юзай ее.
Если нет переменной для хранения имени скрипта, получить его можно прямо в команде logger. Код выглядит не очень ясным, но работает (хз хз). Попробуй echo "${0##*/}[$$]"
, чтобы оценить результат.
А если хочешь свой логгер создать - смотри printf usage
.
Соус: Книга Идиомы Bash → Глава 10. Помимо идиом: работа с bash → Журналирование в bash