368d6fafea
Code backup
509 lines
17 KiB
Bash
509 lines
17 KiB
Bash
#!/bin/bash
|
|
|
|
# - VAR
|
|
|
|
# - Bash info
|
|
APPNAME=$(basename $0)
|
|
NAME="Check TplinkAp"
|
|
AUTHOR="Kalarumeth"
|
|
VERSION="v0.1"
|
|
URL="https://github.com/Kalarumeth"
|
|
|
|
# - Default settings for connection
|
|
COMMUNITY="public"
|
|
HOST_NAME="localhost"
|
|
SNMPVERSION="2c"
|
|
|
|
# - State Variables
|
|
STATE_OK=0
|
|
STATE_WARN=1
|
|
STATE_CRIT=2
|
|
STATE_UNK=3
|
|
STATE=$STATE_OK
|
|
|
|
# - OID
|
|
|
|
TpLink.OIDS() {
|
|
OID_nameIF="1.3.6.1.2.1.2.2.1.2"
|
|
OID_typeIF="1.3.6.1.2.1.2.2.1.3"
|
|
OID_statusIF="1.3.6.1.2.1.2.2.1.8"
|
|
OID_clientCon="1.3.6.1.4.1.11863.10.1.1.1"
|
|
OID_arrayMac="1.3.6.1.4.1.11863.10.1.1.2.1.2"
|
|
}
|
|
|
|
# - MAIN CODE
|
|
|
|
Script.HostAlive() {
|
|
for server in $HOST_NAME; do
|
|
ping -c1 -W1 -q $server &>/dev/null
|
|
if [[ $? != 0 ]] ; then
|
|
printf "%s\n" "$server is unreachable"
|
|
exit $STATE_UNK
|
|
fi
|
|
done
|
|
}
|
|
|
|
Script.SNMP() {
|
|
snmpwalk -v $SNMPVERSION -r 1 -t 10 -Oe -c $COMMUNITY $HOST_NAME $1
|
|
}
|
|
|
|
Script.SNMP.Hex() {
|
|
snmpwalk -v $SNMPVERSION -r 1 -t 10 -Oa -c $COMMUNITY $HOST_NAME $1
|
|
}
|
|
|
|
# - TpLink AP Health Check
|
|
|
|
TpLink.Main() {
|
|
Script.HostAlive
|
|
|
|
case $1 in
|
|
client)
|
|
TpLink.ClientConnected
|
|
exit $STATE ;;
|
|
if)
|
|
TpLink.IF
|
|
exit $STATE ;;
|
|
*)
|
|
echo "Unknown check!"
|
|
Help.IPMI
|
|
exit $STATE_UNK ;;
|
|
esac
|
|
}
|
|
|
|
TpLink.GetData() {
|
|
TpLink.OIDS
|
|
|
|
case $1 in
|
|
interface)
|
|
nameIF=($(Script.SNMP $OID_nameIF | cut -d '"' -f 2 | sed "s/$//g"))
|
|
statusIF=($(Script.SNMP $OID_statusIF | cut -d ' ' -f 4 | sed "s/$//g"))
|
|
typeIF=($(Script.SNMP $OID_typeIF | cut -d ' ' -f 4 | sed "s/$//g")) ;;
|
|
client)
|
|
clientCon=$(Script.SNMP $OID_clientCon | cut -d ' ' -f 4 | sed "s/$//g")
|
|
raw_arrayMac=$(Script.SNMP.Hex $OID_arrayMac | cut -d '"' -f 2 | cut -d '.' -f 1 | sed "s/-/:/g")
|
|
readarray -t addressMac <<< $raw_arrayMac ;;
|
|
esac
|
|
}
|
|
|
|
TpLink.IF() {
|
|
TpLink.GetData interface
|
|
|
|
TpLink.IF.Header
|
|
|
|
for((i=0; i<${#nameIF[@]}; i++))
|
|
do
|
|
TpLink.IF.operStatus
|
|
printf "%s\t" "${nameIF[$i]}"
|
|
TpLink.IF.IANAifType
|
|
done
|
|
}
|
|
|
|
TpLink.IF.Header() {
|
|
WarningCounter=0
|
|
CriticalCounter=0
|
|
|
|
|
|
for((i=0; i<${#name[@]}; i++)); do
|
|
if [[ ${name[$i]} == *"wifi"* ]] ; then
|
|
for value in "${statusIF[$i]}"; do
|
|
if [[ $value != 1 ]] && [[ $value != 2 ]]; then
|
|
WarningCounter=$(( WarningCounter + 1 ))
|
|
elif [[ $value == 2 ]]; then
|
|
CriticalCounter=$(( CriticalCounter + 1 ))
|
|
fi
|
|
done
|
|
elif [[ ${name[$i]} == *"eth"* ]] ; then
|
|
for value in "${statusIF[$i]}"; do
|
|
if [[ $value != 1 ]] && [[ $value != 2 ]]; then
|
|
WarningCounter=$(( WarningCounter + 1 ))
|
|
elif [[ $value == 2 ]]; then
|
|
CriticalCounter=$(( CriticalCounter + 1 ))
|
|
fi
|
|
done
|
|
fi
|
|
done
|
|
|
|
for Error in "$(( WarningCounter + CriticalCounter ))"; do
|
|
if [[ $WarningCounter == 0 ]] && [[ $CriticalCounter == 0 ]] ; then
|
|
printf "%s\t%s\n\n" "OK!" "All interFace is Up"
|
|
elif [[ $WarningCounter != 0 ]] && [[ $CriticalCounter == 0 ]] ; then
|
|
printf "%s\t%s\n\n" "WARNING!" "$Error interFace with problem"
|
|
elif [[ $CriticalCounter != 0 ]] ; then
|
|
printf "%s\t%s\n\n" "CRITICAL!" "$Error interFace with problem"
|
|
fi
|
|
done
|
|
|
|
printf "%s\t%s\t%s\n" "STATUS" "NAME" "TYPE" "=============================="
|
|
}
|
|
|
|
TpLink.IF.operStatus() {
|
|
case ${statusIF[$i]} in
|
|
1) printf "%s\t" "Up" ;;
|
|
2) printf "%s\t" "Down" ;;
|
|
3) printf "%s\t" "Testing" ;;
|
|
4) printf "%s\t" "Unknown" ;;
|
|
5) printf "%s\t" "Dormant" ;;
|
|
6) printf "%s\t" "notPresent" ;;
|
|
7) printf "%s\t" "lowerLayerDown" ;;
|
|
esac
|
|
}
|
|
|
|
TpLink.IF.IANAifType() {
|
|
case ${typeIF[$i]} in
|
|
1) printf "%s\n" "other" ;;
|
|
2) printf "%s\n" "regular1822" ;;
|
|
3) printf "%s\n" "hdh1822" ;;
|
|
4) printf "%s\n" "ddnX25" ;;
|
|
5) printf "%s\n" "rfc877x25" ;;
|
|
6) printf "%s\n" "ethernetCsmacd" ;;
|
|
7) printf "%s\n" "iso88023Csmacd" ;;
|
|
8) printf "%s\n" "iso88024TokenBus" ;;
|
|
9) printf "%s\n" "iso88025TokenRing" ;;
|
|
10) printf "%s\n" "iso88026Man" ;;
|
|
11) printf "%s\n" "starLan" ;;
|
|
12) printf "%s\n" "proteon10Mbit" ;;
|
|
13) printf "%s\n" "proteon80Mbit" ;;
|
|
14) printf "%s\n" "hyperchannel" ;;
|
|
15) printf "%s\n" "fddi" ;;
|
|
16) printf "%s\n" "lapb" ;;
|
|
17) printf "%s\n" "sdlc" ;;
|
|
18) printf "%s\n" "ds1" ;;
|
|
19) printf "%s\n" "e1" ;;
|
|
20) printf "%s\n" "basicISDN" ;;
|
|
21) printf "%s\n" "primaryISDN" ;;
|
|
22) printf "%s\n" "propPointToPointSerial" ;;
|
|
23) printf "%s\n" "ppp" ;;
|
|
24) printf "%s\n" "softwareLoopback" ;;
|
|
25) printf "%s\n" "eon" ;;
|
|
26) printf "%s\n" "ethernet3Mbit" ;;
|
|
27) printf "%s\n" "nsip" ;;
|
|
28) printf "%s\n" "slip" ;;
|
|
29) printf "%s\n" "ultra" ;;
|
|
30) printf "%s\n" "ds3" ;;
|
|
31) printf "%s\n" "sip" ;;
|
|
32) printf "%s\n" "frameRelay" ;;
|
|
33) printf "%s\n" "rs232" ;;
|
|
34) printf "%s\n" "para" ;;
|
|
35) printf "%s\n" "arcnet" ;;
|
|
36) printf "%s\n" "arcnetPlus" ;;
|
|
37) printf "%s\n" "atm" ;;
|
|
38) printf "%s\n" "miox25" ;;
|
|
39) printf "%s\n" "sonet" ;;
|
|
40) printf "%s\n" "x25ple" ;;
|
|
41) printf "%s\n" "iso88022llc" ;;
|
|
42) printf "%s\n" "localTalk" ;;
|
|
43) printf "%s\n" "smdsDxi" ;;
|
|
44) printf "%s\n" "frameRelayService" ;;
|
|
45) printf "%s\n" "v35" ;;
|
|
46) printf "%s\n" "hssi" ;;
|
|
47) printf "%s\n" "hippi" ;;
|
|
48) printf "%s\n" "modem" ;;
|
|
49) printf "%s\n" "aal5" ;;
|
|
50) printf "%s\n" "sonetPath" ;;
|
|
51) printf "%s\n" "sonetVT" ;;
|
|
52) printf "%s\n" "smdsIcip" ;;
|
|
53) printf "%s\n" "propVirtual" ;;
|
|
54) printf "%s\n" "propMultiplexor" ;;
|
|
55) printf "%s\n" "ieee80212" ;;
|
|
56) printf "%s\n" "fibreChannel" ;;
|
|
57) printf "%s\n" "hippiInterface" ;;
|
|
58) printf "%s\n" "frameRelayInterconnect" ;;
|
|
59) printf "%s\n" "aflane8023" ;;
|
|
60) printf "%s\n" "aflane8025" ;;
|
|
61) printf "%s\n" "cctEmul" ;;
|
|
62) printf "%s\n" "fastEther" ;;
|
|
63) printf "%s\n" "isdn" ;;
|
|
64) printf "%s\n" "v11" ;;
|
|
65) printf "%s\n" "v36" ;;
|
|
66) printf "%s\n" "g703at64k" ;;
|
|
67) printf "%s\n" "g703at2mb" ;;
|
|
68) printf "%s\n" "qllc" ;;
|
|
69) printf "%s\n" "fastEtherFX" ;;
|
|
70) printf "%s\n" "channel" ;;
|
|
71) printf "%s\n" "ieee80211" ;;
|
|
72) printf "%s\n" "ibm370parChan" ;;
|
|
73) printf "%s\n" "escon" ;;
|
|
74) printf "%s\n" "dlsw" ;;
|
|
75) printf "%s\n" "isdns" ;;
|
|
76) printf "%s\n" "isdnu" ;;
|
|
77) printf "%s\n" "lapd" ;;
|
|
78) printf "%s\n" "ipSwitch" ;;
|
|
79) printf "%s\n" "rsrb" ;;
|
|
80) printf "%s\n" "atmLogical" ;;
|
|
81) printf "%s\n" "ds0" ;;
|
|
82) printf "%s\n" "ds0Bundle" ;;
|
|
83) printf "%s\n" "bsc" ;;
|
|
84) printf "%s\n" "async" ;;
|
|
85) printf "%s\n" "cnr" ;;
|
|
86) printf "%s\n" "iso88025Dtr" ;;
|
|
87) printf "%s\n" "eplrs" ;;
|
|
88) printf "%s\n" "arap" ;;
|
|
89) printf "%s\n" "propCnls" ;;
|
|
90) printf "%s\n" "hostPad" ;;
|
|
91) printf "%s\n" "termPad" ;;
|
|
92) printf "%s\n" "frameRelayMPI" ;;
|
|
93) printf "%s\n" "x213" ;;
|
|
94) printf "%s\n" "adsl" ;;
|
|
95) printf "%s\n" "radsl" ;;
|
|
96) printf "%s\n" "sdsl" ;;
|
|
97) printf "%s\n" "vdsl" ;;
|
|
98) printf "%s\n" "iso88025CRFPInt" ;;
|
|
99) printf "%s\n" "myrinet" ;;
|
|
100) printf "%s\n" "voiceEM" ;;
|
|
101) printf "%s\n" "voiceFXO" ;;
|
|
102) printf "%s\n" "voiceFXS" ;;
|
|
103) printf "%s\n" "voiceEncap" ;;
|
|
104) printf "%s\n" "voiceOverIp" ;;
|
|
105) printf "%s\n" "atmDxi" ;;
|
|
106) printf "%s\n" "atmFuni" ;;
|
|
107) printf "%s\n" "atmIma" ;;
|
|
108) printf "%s\n" "pppMultilinkBundle" ;;
|
|
109) printf "%s\n" "ipOverCdlc" ;;
|
|
110) printf "%s\n" "ipOverClaw" ;;
|
|
111) printf "%s\n" "stackToStack" ;;
|
|
112) printf "%s\n" "virtualIpAddress" ;;
|
|
113) printf "%s\n" "mpc" ;;
|
|
114) printf "%s\n" "ipOverAtm" ;;
|
|
115) printf "%s\n" "iso88025Fiber" ;;
|
|
116) printf "%s\n" "tdlc" ;;
|
|
117) printf "%s\n" "gigabitEthernet" ;;
|
|
118) printf "%s\n" "hdlc" ;;
|
|
119) printf "%s\n" "lapf" ;;
|
|
120) printf "%s\n" "v37" ;;
|
|
121) printf "%s\n" "x25mlp" ;;
|
|
122) printf "%s\n" "x25huntGroup" ;;
|
|
123) printf "%s\n" "transpHdlc" ;;
|
|
124) printf "%s\n" "interleave" ;;
|
|
125) printf "%s\n" "fast" ;;
|
|
126) printf "%s\n" "ip" ;;
|
|
127) printf "%s\n" "docsCableMaclayer" ;;
|
|
128) printf "%s\n" "docsCableDownstream" ;;
|
|
129) printf "%s\n" "docsCableUpstream" ;;
|
|
130) printf "%s\n" "a12MppSwitch" ;;
|
|
131) printf "%s\n" "tunnel" ;;
|
|
132) printf "%s\n" "coffee" ;;
|
|
133) printf "%s\n" "ces" ;;
|
|
134) printf "%s\n" "atmSubInterface" ;;
|
|
135) printf "%s\n" "l2vlan" ;;
|
|
136) printf "%s\n" "l3ipvlan" ;;
|
|
137) printf "%s\n" "l3ipxvlan" ;;
|
|
138) printf "%s\n" "digitalPowerline" ;;
|
|
139) printf "%s\n" "mediaMailOverIp" ;;
|
|
140) printf "%s\n" "dtm" ;;
|
|
141) printf "%s\n" "dcn" ;;
|
|
142) printf "%s\n" "ipForward" ;;
|
|
143) printf "%s\n" "msdsl" ;;
|
|
144) printf "%s\n" "ieee1394" ;;
|
|
145) printf "%s\n" "if-gsn" ;;
|
|
146) printf "%s\n" "dvbRccMacLayer" ;;
|
|
147) printf "%s\n" "dvbRccDownstream" ;;
|
|
148) printf "%s\n" "dvbRccUpstream" ;;
|
|
149) printf "%s\n" "atmVirtual" ;;
|
|
150) printf "%s\n" "mplsTunnel" ;;
|
|
151) printf "%s\n" "srp" ;;
|
|
152) printf "%s\n" "voiceOverAtm" ;;
|
|
153) printf "%s\n" "voiceOverFrameRelay" ;;
|
|
154) printf "%s\n" "idsl" ;;
|
|
155) printf "%s\n" "compositeLink" ;;
|
|
156) printf "%s\n" "ss7SigLink" ;;
|
|
157) printf "%s\n" "propWirelessP2P" ;;
|
|
158) printf "%s\n" "frForward" ;;
|
|
159) printf "%s\n" "rfc1483" ;;
|
|
160) printf "%s\n" "usb" ;;
|
|
161) printf "%s\n" "ieee8023adLag" ;;
|
|
162) printf "%s\n" "bgppolicyaccounting" ;;
|
|
163) printf "%s\n" "frf16MfrBundle" ;;
|
|
164) printf "%s\n" "h323Gatekeeper" ;;
|
|
165) printf "%s\n" "h323Proxy" ;;
|
|
166) printf "%s\n" "mpls" ;;
|
|
167) printf "%s\n" "mfSigLink" ;;
|
|
168) printf "%s\n" "hdsl2" ;;
|
|
169) printf "%s\n" "shdsl" ;;
|
|
170) printf "%s\n" "ds1FDL" ;;
|
|
171) printf "%s\n" "pos" ;;
|
|
172) printf "%s\n" "dvbAsiIn" ;;
|
|
173) printf "%s\n" "dvbAsiOut" ;;
|
|
174) printf "%s\n" "plc" ;;
|
|
175) printf "%s\n" "nfas" ;;
|
|
176) printf "%s\n" "tr008" ;;
|
|
177) printf "%s\n" "gr303RDT" ;;
|
|
178) printf "%s\n" "gr303IDT" ;;
|
|
179) printf "%s\n" "isup" ;;
|
|
180) printf "%s\n" "propDocsWirelessMaclayer" ;;
|
|
181) printf "%s\n" "propDocsWirelessDownstream" ;;
|
|
182) printf "%s\n" "propDocsWirelessUpstream" ;;
|
|
183) printf "%s\n" "hiperlan2" ;;
|
|
184) printf "%s\n" "propBWAp2Mp" ;;
|
|
185) printf "%s\n" "sonetOverheadChannel" ;;
|
|
186) printf "%s\n" "digitalWrapperOverheadChannel" ;;
|
|
187) printf "%s\n" "aal2" ;;
|
|
188) printf "%s\n" "radioMAC" ;;
|
|
189) printf "%s\n" "atmRadio" ;;
|
|
190) printf "%s\n" "imt" ;;
|
|
191) printf "%s\n" "mvl" ;;
|
|
192) printf "%s\n" "reachDSL" ;;
|
|
193) printf "%s\n" "frDlciEndPt" ;;
|
|
194) printf "%s\n" "atmVciEndPt" ;;
|
|
195) printf "%s\n" "opticalChannel" ;;
|
|
196) printf "%s\n" "opticalTransport" ;;
|
|
197) printf "%s\n" "propAtm" ;;
|
|
198) printf "%s\n" "voiceOverCable" ;;
|
|
199) printf "%s\n" "infiniband" ;;
|
|
200) printf "%s\n" "teLink" ;;
|
|
201) printf "%s\n" "q2931" ;;
|
|
202) printf "%s\n" "virtualTg" ;;
|
|
203) printf "%s\n" "sipTg" ;;
|
|
204) printf "%s\n" "sipSig" ;;
|
|
205) printf "%s\n" "docsCableUpstreamChannel" ;;
|
|
206) printf "%s\n" "econet" ;;
|
|
207) printf "%s\n" "pon155" ;;
|
|
208) printf "%s\n" "pon622" ;;
|
|
209) printf "%s\n" "bridge" ;;
|
|
210) printf "%s\n" "linegroup" ;;
|
|
211) printf "%s\n" "voiceEMFGD" ;;
|
|
212) printf "%s\n" "voiceFGDEANA" ;;
|
|
213) printf "%s\n" "voiceDID" ;;
|
|
214) printf "%s\n" "mpegTransport" ;;
|
|
215) printf "%s\n" "sixToFour" ;;
|
|
216) printf "%s\n" "gtp" ;;
|
|
217) printf "%s\n" "pdnEtherLoop1" ;;
|
|
218) printf "%s\n" "pdnEtherLoop2" ;;
|
|
219) printf "%s\n" "opticalChannelGroup" ;;
|
|
220) printf "%s\n" "homepna" ;;
|
|
221) printf "%s\n" "gfp" ;;
|
|
222) printf "%s\n" "ciscoISLvlan" ;;
|
|
223) printf "%s\n" "actelisMetaLOOP" ;;
|
|
224) printf "%s\n" "fcipLink" ;;
|
|
225) printf "%s\n" "rpr" ;;
|
|
226) printf "%s\n" "qam" ;;
|
|
227) printf "%s\n" "lmp" ;;
|
|
228) printf "%s\n" "cblVectaStar" ;;
|
|
229) printf "%s\n" "docsCableMCmtsDownstream" ;;
|
|
230) printf "%s\n" "adsl2" ;;
|
|
231) printf "%s\n" "macSecControlledIF" ;;
|
|
232) printf "%s\n" "macSecUncontrolledIF" ;;
|
|
233) printf "%s\n" "aviciOpticalEther" ;;
|
|
234) printf "%s\n" "atmbond" ;;
|
|
235) printf "%s\n" "voiceFGDOS" ;;
|
|
236) printf "%s\n" "mocaVersion1" ;;
|
|
237) printf "%s\n" "ieee80216WMAN" ;;
|
|
238) printf "%s\n" "adsl2plus" ;;
|
|
239) printf "%s\n" "dvbRcsMacLayer" ;;
|
|
240) printf "%s\n" "dvbTdm" ;;
|
|
241) printf "%s\n" "dvbRcsTdma" ;;
|
|
242) printf "%s\n" "x86Laps" ;;
|
|
243) printf "%s\n" "wwanPP" ;;
|
|
244) printf "%s\n" "wwanPP2" ;;
|
|
245) printf "%s\n" "voiceEBS" ;;
|
|
246) printf "%s\n" "ifPwType" ;;
|
|
247) printf "%s\n" "ilan" ;;
|
|
248) printf "%s\n" "pip" ;;
|
|
249) printf "%s\n" "aluELP" ;;
|
|
250) printf "%s\n" "gpon" ;;
|
|
251) printf "%s\n" "vdsl2" ;;
|
|
252) printf "%s\n" "capwapDot11Profile" ;;
|
|
253) printf "%s\n" "capwapDot11Bss" ;;
|
|
254) printf "%s\n" "capwapWtpVirtualRadio" ;;
|
|
255) printf "%s\n" "bits" ;;
|
|
256) printf "%s\n" "docsCableUpstreamRfPort" ;;
|
|
257) printf "%s\n" "cableDownstreamRfPort" ;;
|
|
258) printf "%s\n" "vmwareVirtualNic" ;;
|
|
259) printf "%s\n" "ieee802154" ;;
|
|
260) printf "%s\n" "otnOdu" ;;
|
|
261) printf "%s\n" "otnOtu" ;;
|
|
262) printf "%s\n" "ifVfiType" ;;
|
|
263) printf "%s\n" "g9981" ;;
|
|
264) printf "%s\n" "g9982" ;;
|
|
265) printf "%s\n" "g9983" ;;
|
|
266) printf "%s\n" "aluEpon" ;;
|
|
267) printf "%s\n" "aluEponOnu" ;;
|
|
268) printf "%s\n" "aluEponPhysicalUni" ;;
|
|
269) printf "%s\n" "aluEponLogicalLink" ;;
|
|
270) printf "%s\n" "aluGponOnu" ;;
|
|
271) printf "%s\n" "aluGponPhysicalUni" ;;
|
|
272) printf "%s\n" "vmwareNicTeam" ;;
|
|
esac
|
|
}
|
|
|
|
TpLink.ClientConnected() {
|
|
TpLink.GetData client
|
|
|
|
printf "%s\n" "Conneceted clients: $clientCon"
|
|
if [[ $clientCon != 0 ]] ; then
|
|
printf "\n"
|
|
for((i=0; i<${#addressMac[@]}; i++)); do
|
|
printf "%s\n" "$((i+1)). ${addressMac[$i]}"
|
|
done
|
|
fi
|
|
}
|
|
|
|
# - Help
|
|
|
|
Help.Main() {
|
|
echo "Check AP Status"
|
|
echo ''
|
|
Help.Usage
|
|
echo ''
|
|
Help.Option
|
|
echo ''
|
|
Help.Info
|
|
echo ''
|
|
exit $STATE_UNK
|
|
}
|
|
|
|
Help.Usage() {
|
|
printf "%s\n" "Method to compose the execution string"
|
|
printf "%s\n" "./$APPNAME -c <SNMP community> -h <host>"
|
|
}
|
|
|
|
Help.Option() {
|
|
printf "%s\n" "OPTIONS:"
|
|
printf "%s\t%s\t%s\n\t\t\t%s\n" "-c" "--community" "SNMP v2 community string with Read access." " Default is $COMMUNITY."
|
|
printf "%s\t%s\t\t%s\n\t\t\t%s\n" "-h" "--host" "Host name or IP address to check." " Default is $HOST_NAME."
|
|
printf "%s\t%s\t\t%s\n" "-H" "--help" "Show script help"
|
|
printf "%s\t%s\t%s\n" "-V" "--version" "Show script version"
|
|
}
|
|
|
|
Help.IPMI() {
|
|
printf "\n%s\n\n" "TpLink AP EAP265HD Check Function"
|
|
printf "%s\t%s\n\n" "Check" "Description"
|
|
printf "%s\t%s\n" "all" "Full monitoring check with single output"
|
|
printf "%s\t%s\n" "cpu" "Monitoring CPU load"
|
|
printf "%s\t%s\n" "err" "Monitoring system error"
|
|
printf "%s\t%s\n" "fan" "Monitoring fan speed"
|
|
printf "%s\t%s\n" "ram" "Monitoring RAM load"
|
|
printf "%s\t%s\n" "hw" "Monitoring Hardware status"
|
|
printf "%s\t%s\n" "temp" "Monitoring temperature sensor"
|
|
}
|
|
|
|
Help.Info() {
|
|
printf "%s\t%s\t%s\n" "INFO:" "$NAME" "$VERSION" "" "$AUTHOR" "$URL"
|
|
}
|
|
|
|
# - COMMAND LINE ENCODER
|
|
|
|
while test -n "$1"; do
|
|
case "$1" in
|
|
--host | -h)
|
|
HOST_NAME=$2
|
|
shift ;;
|
|
--comunity | -c)
|
|
COMMUNITY=$2
|
|
shift ;;
|
|
--type | -t)
|
|
TpLink.Main $2
|
|
shift ;;
|
|
--help | -H)
|
|
Help.Main ;;
|
|
--version | -V)
|
|
Help.Info
|
|
exit $STATE ;;
|
|
*)
|
|
echo "Unknown argument: $1"
|
|
print_help
|
|
exit $STATE_UNK ;;
|
|
esac
|
|
shift
|
|
done
|
|
|
|
TpLink.Main |