(List (If (DBracket {B1 UNARY_STRING_z {[DQ [VarSub 1]]}}) (List (If (DBracket {B1 UNARY_FILE_d {[LIT_CHARS environments]}}) (= scope= flags=0 words=[] bindings=[('ENVIRONMENTS', {[ComSub (Pipeline (Com {[LIT_CHARS ls]} {[LIT_CHARS -lt]} {[LIT_CHARS environments/] [LIT_OTHER "*"] [LIT_CHARS .json]}) (Com {[LIT_CHARS wc]} {[LIT_CHARS -l]}) )]})]) (ElseTrue) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Usage: VIP not specified and can't find environment directory"]]} ) (Com {[LIT_CHARS exit]} ) ) ) (If (DParen {A2 AS_OP_DEQUAL {A Atom NODE_ARITH_WORD {[VarSub ENVIRONMENTS]}} {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}}}) (List (= scope= flags=0 words=[] bindings=[('VIP', {[ComSub (Pipeline (Com {[LIT_CHARS grep]} {[LIT_CHARS -i]} {[LIT_CHARS vip]} {[LIT_CHARS environments/] [LIT_OTHER "*"] [LIT_CHARS .json]}) (Com {[LIT_CHARS awk]} {[SQ ]}) (Com {[LIT_CHARS awk]} {[SQ ]}) )]})]) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "VIP from environment = "][VarSub VIP]]} ) ) (ElseTrue) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Usage: VIP not specified and more than one environment file found"]]} ) (Com {[LIT_CHARS exit]} ) ) ) ) (ElseTrue) (List (= scope= flags=0 words=[] bindings=[('VIP', {[ComSub (Pipeline (Com {[LIT_CHARS grep]} {[LIT_CHARS -i]} {[LIT_CHARS vip]} {[LIT_CHARS environments/] [DQ [VarSub 1]] [LIT_CHARS .json]}) (Com {[LIT_CHARS awk]} {[SQ ]}) (Com {[LIT_CHARS awk]} {[SQ ]}) )]})]) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "VIP IP address : "][VarSub VIP]]} ) ) ) (If (DBracket {B! {B1 UNARY_STRING_z {[ComSub (Com {[LIT_CHARS which]} {[LIT_CHARS fping]})]}}}) (= scope= flags=0 words=[] bindings=[('UP', {[ComSub (Pipeline (Com {[LIT_CHARS fping]} {[LIT_CHARS -aq]} {[DQ [VarSub VIP]]}) (Com {[LIT_CHARS awk]} {[SQ ]}) )]})]) (ElseTrue) (= scope= flags=0 words=[] bindings=[('UP', {[ComSub (Pipeline (Com {[LIT_CHARS ping]} {[LIT_CHARS -c1]} {[DQ [VarSub VIP]]}) (Com {[LIT_CHARS grep]} {[LIT_CHARS ttl]}) (Com {[LIT_CHARS awk]} {[SQ ]}) )]})]) ) (If (DBracket {B! {B1 UNARY_STRING_z {[DQ [VarSub UP]]}}}) (List (= scope= flags=0 words=[] bindings=[('MAC', {[ComSub (Pipeline (Com {[LIT_CHARS arp]} {[LIT_CHARS -n]} {[VarSub VIP]}) (Com {[LIT_CHARS grep]} {[LIT_CHARS ether]}) (Com {[LIT_CHARS awk]} {[SQ ]}) )]})]) (= scope= flags=0 words=[] bindings=[('HOST', {[ComSub (Com {[LIT_CHARS grep]} {[DQ [VarSub MAC]]} {[LIT_CHARS cluster.txt]})]})]) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "VIP is currently : "][VarSub HOST]]} ) ) (ElseTrue) (Com {[LIT_CHARS echo]} {[DQ [VarSub VIP][LIT_CHARS " appears to be down"]]} ) ) )