我想編寫一個腳本,就像基本上執行CLI命令:如何在Perl腳本中CLI參數組合作爲變量
snmpget -v 1 -c xxxxxx-Ovq xx.xx.xx.xxx .1.3.6.1.2.1.1.8.0
其中xxxxx是一個密碼和xx.xx.xx. xxx和IP正常返回:
49:22:12:15.00
我的腳本是:
#!/usr/local/bin/perl
#snmpget -v 1 -c xxxxx -Ovq xx.xx.xx.xxx .1.3.6.1.2.1.1.8.0
$SNMP_GET_CMD = "snmpget -v1 -c xxxxx-Ovq";
$SNMP_TARGET = "xx.xx.xx.xxx";
my $sysORLastChange = '${SNMP_GET_CMD} ${SNMP_TARGET} .1.3.6.1.2.1.1.8.0';
chomp($sysORLastChange);
print("${SNMP_TARGET} as an Input Line Reading of ${sysORLastChange}\n");
,輸出是:
xx.xx.xx.xxx as an Input Line Reading of ${SNMP_GET_CMD} ${SNMP_TARGET} .1.3.6.1.2.1.1.8.0
應該返回如下:
xx.xx.xx.xxx as an Input Line Reading of 49:22:12:15.00
是否有與我在腳本中使用的語法什麼問題?
我認爲OP要實際*執行* snmpget命令,將* result *插入到變量中。 – chepner
要執行插入的字符串,請將雙引號更改爲「qx(...)」。 – dgw
答覆已更新。謝謝! – stevieb