Назад | Перейти на главную страницу

Краткий синтаксис для эстетического отображения всех журналов Nginx одновременно, в стандартном выводе

Вот как я эстетически отображаю все журналы Nginx одновременно (с заголовками и пробелами) в стандартном выводе для удобной отладки.

Вход:

printf '\n\n General: \n\n'; nginx -t; printf '\n\n Access: \n\n'; tail /var/log/nginx/access.log; printf '\n\n Errors: \n\n'; tail /var/log/nginx/error.log

Вывод:

 General:

     ...

 Access:

     ...

 Errors:

     ...

Как видите, команда довольно длинная или «тяжелая».

Есть ли более короткий (формальный?) Способ добиться этого?

Я не вижу способа сделать команды короче, но вы можете обернуть их функция bash которую вы можете выполнить позже, используя имя функции, а не вставляя (или вводя!) эту команду снова.

Например, вы можете поместить функцию в свой .bashrc лайк:

nginxlogs () {
    printf '\n\n General: \n\n'
    nginx -t
    printf '\n\n Access: \n\n'
    tail /var/log/nginx/access.log
    printf '\n\n Errors: \n\n'
    tail /var/log/nginx/error.log
}

Теперь, когда ты бежишь nginxlogs из вашей оболочки bash, все появится.