SRV_ADMIN Telegram 4604
Покажу небольшой bash трюк, который поможет грепнуть информацию, когда обычный способ не работает. Демонстрирую сразу на примере, с которым сам постоянно сталкиваюсь.

Вам нужно узнать, есть ли необходимый модуль в составе Nginx. По идее всё просто:

# nginx -V

На выходе портянка, в которой глазами трудно что-то найти. Пробуем грепнуть:

# nginx -V | grep http_realip_module

Вообще ноль изменений. И причины тут на самом деле не одна, а сразу две:

1️⃣ nginx -V выводит информацию не в стандартный поток с данными stdout, с которым работает grep и прочие консольные утилиты, а в stderr;

2️⃣ все модули перечислены одной строкой, так что грепнуть её содержимое не получится.

Показываю решение обоих проблем:

# nginx -V 2>&1 | tr ' ' '\n' | grep http_realip_module
--with-http_realip_module

Видим нужный нам модуль. Я сначала через 2>&1 направил поток stderr в stdout, чтобы с ним можно было работать консольными утилитами, а затем с помощью tr заменил все пробелы символами перехода на новую строку \n. В итоге у нас весь вывод nginx -V разбился на отдельные фразы, каждая в новой строке и после этого успешно грепнулся.

В принципе, можно обойтись без разбивки одной строки на несколько, так как grep скорее всего подсветит найденную фразу, но это зависит от различных настроек. Где-то может и не подсветить. Если всё же разбить, то будет нагляднее.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#bash
Please open Telegram to view this post
VIEW IN TELEGRAM



tgoop.com/srv_admin/4604
Create:
Last Update:

Покажу небольшой bash трюк, который поможет грепнуть информацию, когда обычный способ не работает. Демонстрирую сразу на примере, с которым сам постоянно сталкиваюсь.

Вам нужно узнать, есть ли необходимый модуль в составе Nginx. По идее всё просто:

# nginx -V

На выходе портянка, в которой глазами трудно что-то найти. Пробуем грепнуть:

# nginx -V | grep http_realip_module

Вообще ноль изменений. И причины тут на самом деле не одна, а сразу две:

1️⃣ nginx -V выводит информацию не в стандартный поток с данными stdout, с которым работает grep и прочие консольные утилиты, а в stderr;

2️⃣ все модули перечислены одной строкой, так что грепнуть её содержимое не получится.

Показываю решение обоих проблем:

# nginx -V 2>&1 | tr ' ' '\n' | grep http_realip_module
--with-http_realip_module

Видим нужный нам модуль. Я сначала через 2>&1 направил поток stderr в stdout, чтобы с ним можно было работать консольными утилитами, а затем с помощью tr заменил все пробелы символами перехода на новую строку \n. В итоге у нас весь вывод nginx -V разбился на отдельные фразы, каждая в новой строке и после этого успешно грепнулся.

В принципе, можно обойтись без разбивки одной строки на несколько, так как grep скорее всего подсветит найденную фразу, но это зависит от различных настроек. Где-то может и не подсветить. Если всё же разбить, то будет нагляднее.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#bash

BY ServerAdmin.ru




Share with your friend now:
tgoop.com/srv_admin/4604

View MORE
Open in Telegram


Telegram News

Date: |

Clear How to Create a Private or Public Channel on Telegram? Telegram iOS app: In the “Chats” tab, click the new message icon in the right upper corner. Select “New Channel.” Read now "Doxxing content is forbidden on Telegram and our moderators routinely remove such content from around the world," said a spokesman for the messaging app, Remi Vaughn.
from us


Telegram ServerAdmin.ru
FROM American