例1
result=`snmpwalk -v ${SNMP_VEROPT} -c ${SNMP_COMMUNITY} ${TARGET_IP} ${get_oid} | awk '{print $4}' | sed -e "s/.*(\(.*\))/\1/"`
- 取得結果
result="1 1 1 1 1 1 1 1 1 1 1 1"
例2
result=`snmpwalk -v ${SNMP_VEROPT} -c ${SNMP_COMMUNITY} ${TARGET_IP} ${get_oid} | sed -e "s/^.*${sort_oid}.//g" | sed -e "s/ .*: /=/g"`
- 取得結果
result="1=1 2=4 3=5 4=6"
「sort_oid」に、snmpwalkの標準出力にある共通のOIDを指定することで、インスタンスを考慮した取得が可能。
気を付けたい点
- コマンドの標準出力は改行されて出力されるが、「result」に格納されたときには半角スペース区切りで格納される。
- 格納時、配列として格納はされない。※result[1]はNULL
- forで一つずつ取り出すことは可能。
- 配列にさせたい場合、
result_array=(${result})
で配列にさせる。