(List (If (DBracket {B1 UNARY_STRING_z {[DQ [VarSub 1]]}}) (= scope= flags=0 words=[] bindings=[('HOST', {[ComSub (Com {[LIT_CHARS hostname]} {[LIT_CHARS -f]})]})]) (ElseTrue) (= scope= flags=0 words=[] bindings=[('HOST', {[DQ [VarSub 1]]})]) ) (Com {[LIT_CHARS knife]} {[LIT_CHARS client]} {[LIT_CHARS show]} {[VarSub HOST]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 1), > ) (= scope= flags=0 words=[] bindings=[('RES', {[VarSub ?]})]) (If (DBracket {B2 BINARY_INT_NE {[DQ [VarSub RES]]} {[LIT_CHARS 0]}}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Can't find knife client "][VarSub HOST]]}) (Com {[LIT_CHARS exit]} {[VarSub RES]}) ) ) (= scope= flags=0 words=[] bindings=[('admin_val', {[ComSub (Pipeline (Com {[LIT_CHARS knife]} {[LIT_CHARS client]} {[LIT_CHARS show]} {[VarSub HOST]}) (Com {[LIT_CHARS grep]} {[LIT_OTHER "^"] [LIT_CHARS admin] [LIT_OTHER ":"]}) (Com {[LIT_CHARS sed]} {[DQ [LIT_CHARS "s/admin:[^a-z]*//"]]}) )]})]) (If (DBracket {B2 BINARY_STRING_NOT_EQUAL {[DQ [VarSub admin_val]]} {[DQ [LIT_CHARS true]]}}) (Pipeline (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [LIT_CHARS /][\ LIT_ESCAPED_CHAR "\\\""][LIT_CHARS admin][\ LIT_ESCAPED_CHAR "\\\""][LIT_CHARS ": false"][\ LIT_ESCAPED_CHAR "\\n"][LIT_CHARS s/false/true][\ LIT_ESCAPED_CHAR "\\n"][LIT_CHARS w][\ LIT_ESCAPED_CHAR "\\n"][LIT_CHARS q][\ LIT_ESCAPED_CHAR "\\n"]]}) (Com {[LIT_CHARS knife]} {[LIT_CHARS client]} {[LIT_CHARS edit]} {[VarSub HOST]} more_env=[('EDITOR', {[LIT_CHARS ed]})] ) ) ) )