(CommandList children: [ (FuncDef name: printname body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:NAME) op: Equal rhs: {($ VSub_Number '$1')} spids: [18] ) ] spids: [18] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:save_IFS) op: Equal rhs: {($ VSub_Name '$IFS')} spids: [22] ) ] spids: [22] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:IFS) op:Equal rhs:{(/)} spids:[26])] spids: [26] ) (C {(set)} {(--)} { (CommandSubPart command_list: (CommandList children:[(C {(echo)} {(DQ ($ VSub_Name '$NAME'))})]) left_token: <Left_Backtick '`'> spids: [34 40] ) } ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:IFS) op: Equal rhs: {(DQ ($ VSub_Name '$save_IFS'))} spids: [43] ) ] spids: [43] ) (While cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(-ge)} {(1)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] body: (DoGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Number '$1'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (x))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [(C {(echo)} {(DQ ('D0755 0 ') ($ VSub_Number '$1'))})] spids: [16777215 85] ) ] spids: [16777215 96] ) (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>) ] spids: [63 103] ) ) ] spids: [15] ) spids: [10 14] ) (While cond: [ (Sentence child: (C {(test)} {(DQ (x) ($ VSub_Number '$1'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (x))}) terminator: <Op_Semi ';'> ) ] body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:arg) op: Equal rhs: {(DQ ($ VSub_Number '$1'))} spids: [131] ) ] spids: [131] ) (C {(shift)}) ] spids: [128 139] ) ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:BAD) op: Equal rhs: {(DQ (../../../../../../../../../../../../../) (${ VSub_Name DIR) (/dotpathdir))} spids: [142] ) ] spids: [142] ) (Case to_match: {(DQ ($ VSub_Name '$SCPTESTMODE'))} arms: [ (case_arm pat_list: [{(badserver_0)}] action: [ (C {(echo)} {(DQ ('D0755 0 /') (${ VSub_Name DIR) (/rootpathdir))}) (C {(echo)} {(DQ ('C755 2 rootpathfile'))}) (C {(echo)} {(DQ (X))}) ] spids: [160 161 189 16777215] ) (case_arm pat_list: [{(badserver_1)}] action: [ (C {(echo)} {(DQ ('D0755 0 ') ($ VSub_Name '$BAD'))}) (C {(echo)} {(DQ ('C755 2 file'))}) (C {(echo)} {(DQ (X))}) ] spids: [191 192 217 16777215] ) (case_arm pat_list: [{(badserver_2)}] action: [ (C {(echo)} {(DQ ('D0755 0 ') ($ VSub_Name '$BAD'))}) (C {(echo)} {(DQ ('C755 2 file'))}) (C {(echo)} {(DQ (X))}) ] spids: [219 220 245 16777215] ) (case_arm pat_list: [{(badserver_3)}] action: [ (C {(printname)} {($ VSub_Name '$BAD')}) (C {(echo)} {(DQ ('C755 2 file'))}) (C {(echo)} {(DQ (X))}) ] spids: [247 248 270 16777215] ) (case_arm pat_list: [{(badserver_4)}] action: [ (C {(printname)} {($ VSub_Name '$BAD')}) (C {(echo)} {(DQ ('D0755 0 ..'))}) (C {(echo)} {(DQ ('C755 2 file'))}) (C {(echo)} {(DQ (X))}) ] spids: [272 273 302 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (C {(set)} {(--)} {($ VSub_Name '$arg')}) (C {(shift)}) (C {(exec)} {($ VSub_Name '$SCP')} {(DQ ($ VSub_At '$@'))}) ] spids: [304 305 327 16777215] ) ] spids: [152 158 329] ) ] )