# 从命令行运行此操作(注意“-a”的参数):
./check_nrpe -p 12490 -H 10.246.107.167 -t 120 -c simple_add2 -a 4 56
## 因为 NSC.INI 有这个:
simple_add2=perl scripts\simple_add2.plx -m $ARG1$ -n $ARG2$
# 但是“-n”参数是可选的,所以我希望能够以任何方式调用 simple_add2:
像这样:
./check_nrpe -p 12490 -H 10.246.107.167 -t 120 -c simple_add2 -a -m 4 -n 56
或者像这样:
./check_nrpe -p 12490 -H 10.246.107.167 -t 120 -c simple_add2 -a -m 4
# 这是我当前的命令和服务:
我不想仅仅因为我想使用或不使用 -n 参数来调用同一个命令而为它创建两个不同的命令和两个不同的外部脚本列表... 想象一下,如果我编写了一个带有多个可选关键字参数的脚本。命令和外部脚本的数量将呈组合式激增。
define command {
command_name add_numbers_service
command_line $USER1$/check_nrpe -p 12490 -H $HOSTADDRESS$ -u -t 90 -c \
simple_add_pln -a $ARG1$ $ARG2$
}
define service {
host_name awswinserver
service_description simple-addition-test
check_command add_numbers_service!4!5
use generic-service
}
答案1
我之所以提到这一点,是因为我一直没有意识到这一点;$ARG1$ 中可以包含很多东西。你考虑过吗:
simple_add2=perl scripts\simple_add2.plx -m $ARG1$
define command {
command_name add_numbers_service
command_line $USER1$/check_nrpe -p 12490 -H $HOSTADDRESS$ -u -t 90 -c \
simple_add_pln -a $ARG1$
}
define service {
host_name awswinserver
service_description simple-addition-test-1
check_command add_numbers_service!4
use generic-service
}
define service {
host_name awswinserver
service_description simple-addition-test-2
check_command add_numbers_service!4 -n 56
use generic-service
}