Grep — это утилита командной строки, которая находит при указании определенного выражения все строки, в которых оно содержится и выводит их. Применяется в качестве механизма фильтрации.
В реализации ПО для моделей LTP-N; LTX работа этой утилиты предусматривает несколько условий фильтрации, позволяющих выводить только ту информацию, которая требуется, ускоряя процесс поиска данных.
Реализация
Для активации фильтрации вывода используется символ "|". Он ставится после ввода запроса. За этим символом применяются уточняющие фильтры : include; exclude; begin.
А также опции: context и case-sensitive, работа которых будет рассмотрена ниже. Синтаксис команды:
<запрос_вывода> | <уточняющий_фильтр> <искомое_выражение> <опция1> <опция2>
Уточняющие фильтры
Команда include фильтрует вывод согласно стандартному условию, выводя только те строки, в которых содержится указанное выражение.
Например, команда для вывода состояния всех подключенных терминалов серии NTX будет выглядеть так :
LTX-16# show interface ont 1-16 connected | include NTX 1 16 1 ELTX6F0000ED OK -22.84 NTX-1 1.1.0.1016
Команда exclude фильтрует вывод согласно обратному условию, выводя все строки, в которых указанное выражение не содержится.
Например, команда для вывода всех настроек ААА, за исключением конфигурации tacacs, будет выглядеть так:
LTX-16# show running-config aaa all | exclude tacacs aaa no enable no authentication no authorization no accounting service name "shell" service protocol "" radius-server host 0.0.0.0 priority 1 port 1812 encrypted-key INeLg+u/04f timeout 3 radius-server host 0.0.0.0 priority 1 port 1812 encrypted-key INeLg+u/04f timeout 3 radius-server host 0.0.0.0 priority 1 port 1812 encrypted-key INeLg+u/04f timeout 3 exit
Команда begin выводит все строки, начиная с той, в которой находится указанное выражение.
Например, команда для вывода всех логов в буфере, начиная с первого упоминания об ONT 16/1:
LTX-16# show log buffer | begin 16/1 31 May 18:04:37 NOTICE FSM-PON - ONT 16/1 activation: OK 31 May 18:04:37 WARN DATAPATH SRV - handle_request took 14 seconds (1011) 31 May 18:04:37 NOTICE DNA BCM-API - ONT 16/1 state setting 1: OK 31 May 18:04:37 NOTICE DNA BCM-API - XGPON ONT 16/1 activation: OK 31 May 18:04:37 DEBUG ONT 16/1 - ONT_AUTH: OK [fsm_pon_ont.c:ont_auth_activation_ok:1163] 31 May 18:04:37 DEBUG ONT 16/1 - ONT_MIB_UPLOAD:ingress [fsm_pon_ont.c:ont_mib_upload_ingress:3495] 31 May 18:04:42 INFO ONT 16/1 - MIB RESET: OK 31 May 18:04:43 INFO ONT 16/1 - MIB UPLOAD - Number of subsequent commands: 663 ...
Уточняющие опции
После указания уточняющего фильтра и искомого выражения можно использовать опцию case-sensitive, чтобы процесс фильтрации стал чувствителен к регистру. Например:
LTX-16# show log buffer | include DATAPATH 02 Jun 12:02:18 NOTICE DATAPATH SRV - Datapath service started 02 Jun 12:03:00 DEBUG ONT 16/1 - ONT_CONFIG:config olt datapath [fsm_pon_ont.c:ont_config_olt_datapath:1364] 02 Jun 12:03:00 NOTICE ONT 16/1 - OLT side datapath configured. 02 Jun 12:03:00 DEBUG ONT 16/1 - ONT_DATAPATH_COMMON:ingress [fsm_pon_ont.c:ont_datapath_common__ingress:1431] 02 Jun 12:03:00 DEBUG ONT 16/1 - Create GAL Ethernet profile [ont_datapath_common.c:ont_datapath_common__omci_create_gal:41] 02 Jun 12:03:00 DEBUG ONT 16/1 - Create GEM Port Network CTP for BC [ont_datapath_common.c:ont_datapath_common__omci_create_gem_port_bc:76] 02 Jun 12:03:00 DEBUG ONT 16/1 - Create GEM port performance monitoring history data for BC [ont_datapath_common.c:ont_datapath_common__omci_create_gem_pm_bc:264] 02 Jun 12:03:00 DEBUG ONT 16/1 - Create GEM port network CTP performance monitoring history data for BC [ont_datapath_common.c:ont_datapath_common__omci_create_gem_nctp_pm_bc:333] 02 Jun 12:03:00 DEBUG ONT 16/1 - Create GEM Interworking Termination point for BC [ont_datapath_common.c:ont_datapath_common__omci_create_iwtp_bc:125] ... LTX-16# show log buffer | include DATAPATH case-sensitive 02 Jun 12:02:18 NOTICE DATAPATH SRV - Datapath service started 02 Jun 12:03:00 DEBUG ONT 16/1 - ONT_DATAPATH_COMMON:ingress [fsm_pon_ont.c:ont_datapath_common__ingress:1431] 02 Jun 12:03:00 DEBUG ONT 16/1 - ONT_DATAPATH_BRIDGES:ingress [fsm_pon_ont.c:ont_datapath_bridges__ingress:1641] 02 Jun 12:03:00 DEBUG ONT 16/1 - ONT_DATAPATH_ANI_SIDE:ingress [fsm_pon_ont.c:ont_datapath_ani_side__ingress:1890] 02 Jun 12:03:00 DEBUG ONT 16/1 - ONT_DATAPATH_UNI_SIDE:ingress [fsm_pon_ont.c:ont_datapath_uni_side__ingress:2219] LTX-16#
После указания уточняющего фильтра и искомого выражения можно использовать команду context, чтобы вывести от 0 до 25 строк до и после указанного фильтра
Связанные статьи