Реализация регулярного выражения для сортировки URL-адресов с помощью команд Unix

Мои /etc/nagios/objects/commands.cfgсостояния

define command{
    command_name    check_ping
    command_line    $USER1$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5
    }

, который определяет аргументы между восклицательными знаками, как в приведенном вами примере документации. Это также говорит нам, что

define command{
        command_name    check_ssh
        command_line    $USER1$/check_ssh $ARG1$ $HOSTADDRESS$
        }

Я думаю, что ваша запись должна быть

check_ssh!--port=xxx22

, так как нет предопределенного аргумента для указания порта, как --port=$ARG1$в определении, а только общий заполнитель.

Изменить :Я думаю, что локальный хост не должен быть частью строки check_ssh!..., так как nagios заменит $HOSTADDRESS$на соответствующий IP-адрес/имя хоста.

2
09.08.2020, 22:41
1 ответ

Это делает то, что вы хотите?

cat urls.txt | sed -r -e "s|(https?)://([a-z0-9]+[.])*(.+?)[.](.+?)/(.*)$|\3\t\4\t\2\t\5\t\1|g"

Я не sedэкспортер, но конструкция sed -e -r "s|someregex|replacedwitthis|g" < somefile.txtможет пригодиться. Надеюсь это поможет!

1
18.03.2021, 23:13

Теги

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