(CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:rootcron) op:Equal rhs:{(DQ (/etc/crontab))} spids:[14])] spids: [14] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(-ne)} {(1)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(echo)} {(DQ ('Usage: ') ($ VSub_Number '$0') (' [daily|weekly|monthly]'))}] redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 41] ) ] spids: [16777215 60] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} { (DQ (CommandSubPart command_list: (CommandList children:[(C {(id)} {(-u)})]) left_token: <Left_CommandSub '$('> spids: [78 82] ) ) } {(-ne)} {(0)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(echo)} {(DQ ($ VSub_Number '$0') (": Command must be run as 'root'"))}] redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 93] ) ] spids: [16777215 115] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:job) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(awk)} { (DQ ('NF > 6 && /') ($ VSub_Number '$1') ('/ { for (i=7;i<=NF;i++) print ') (EscapedLiteralPart token: <Lit_EscapedChar '\\$'> ) ('i }') ) } {($ VSub_Name '$rootcron')} ) ] ) left_token: <Left_CommandSub '$('> spids: [133 145] ) ) } spids: [131] ) ] spids: [131] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Name '$job'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [ {(echo)} { (DQ ($ VSub_Number '$0') (': Error: no ') ($ VSub_Number '$1') (' job found in ') ($ VSub_Name '$rootcron') ) } ] redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 163] ) ] spids: [16777215 187] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:SHELL) op:Equal rhs:{(SQ <'which sh'>)} spids:[190])] spids: [190] ) (C {(eval)} {($ VSub_Name '$job')}) ] )