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

Вот как я эстетически отображаю все журналы 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:

     ...

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

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

0
задан 19 January 2018 в 19:22
1 ответ

Я не вижу способа сделать команды короче, но вы можете обернуть их в 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, все появится.

.
0
ответ дан 5 December 2019 в 06:47

Теги

Похожие вопросы