LINUX.ORG.RU
решено ФорумAdmin

bash.log

 ,


0

1

При выполнении скрипта .sh в терминале выводится информация о совершении действие, например подключение, удаление и т.д.

Можно ли эту информацию как то запихнуть в файл лог?

Например при выполняется подключении к серверу. Выводится информация connected

Взял в лог её пихнул

Или вывелась информация об ошибке, например connected faild.

Её в лог пихнул.

Пример из backup-скрипта:

#
# setup logging
#
[[ ! -t 0 ]] && {
    coproc SYSLOG {
        exec logger -t "backup[$$]: $server_to_backup : $job_name "
    }
    exec  >&"${SYSLOG[1]}"
    exec 2>&"${SYSLOG[1]}"
}
Суть: если скрипт запущен из консоли вручную - сообщения выводятся как обычно в консоль, если не вручную (из-под cron-а например) - логгируются через syslog.

Вообще же, если хочется всё, что выводит скрипт, писать в лог-файл, можно где-то в начале скрипта вставить:
exec &>> /path/to/script.log

spirit ★★★★★ ()