(CommandList children: [ (CommandList children: [ (Sentence child: (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:user) op:Equal rhs:{(DQ )} spids:[7])] spids: [7] ) terminator: <Op_Semi ';'> ) (Sentence child: (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:tty) op:Equal rhs:{(DQ )} spids:[12])] spids: [12] ) terminator: <Op_Semi ';'> ) (Sentence child: (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:showpid) op:Equal rhs:{(0)} spids:[17])] spids: [17] ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:niceval) op:Equal rhs:{(DQ ('+1'))} spids:[21])] spids: [21] ) ] ) (WhileUntil keyword: <KW_While while> cond: [(Sentence child:(C {(getopts)} {(DQ ('n:u:t:p'))} {(opt)}) terminator:<Op_Semi ';'>)] body: (DoGroup children: [ (Case to_match: {($ VSub_Name '$opt')} arms: [ (case_arm pat_list: [{(n)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:niceval) op: Equal rhs: {(DQ ($ VSub_Name '$OPTARG'))} spids: [55] ) ] spids: [55] ) terminator: <Op_Semi ';'> ) ] spids: [51 53 61 16777215] ) (case_arm pat_list: [{(u)}] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$tty'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [ {(echo)} { (DQ ($ VSub_Number '$0') (': error: -u and -t are mutually exclusive.') ) } ] redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (ControlFlow token: <ControlFlow_Exit exit> arg_word: {(1)} ) ] spids: [16777215 84] ) ] spids: [16777215 103] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:user) op: Equal rhs: {($ VSub_Name '$OPTARG')} spids: [106] ) ] spids: [106] ) ] spids: [64 66 109 16777215] ) (case_arm pat_list: [{(t)}] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$user'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [ {(echo)} { (DQ ($ VSub_Number '$0') (': error: -u and -t are mutually exclusive.') ) } ] redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (ControlFlow token: <ControlFlow_Exit exit> arg_word: {(1)} ) ] spids: [16777215 132] ) ] spids: [16777215 151] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:tty) op: Equal rhs: {($ VSub_Name '$OPTARG')} spids: [154] ) ] spids: [154] ) ] spids: [112 114 157 16777215] ) (case_arm pat_list: [{(p)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:showpid) op: Equal rhs: {(1)} spids: [164] ) ] spids: [164] ) terminator: <Op_Semi ';'> ) ] spids: [160 162 168 16777215] ) (case_arm pat_list: [{(Lit_Other '?')}] action: [ (SimpleCommand words: [ {(echo)} { (DQ ('Usage: ') ($ VSub_Number '$0') (' [-n niceval] [-u user|-t tty] [-p] pattern') ) } ] redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (SimpleCommand words: [ {(echo)} { (DQ ('Default niceval change is ') (EscapedLiteralPart token: <Lit_EscapedChar '\\"'> ) ($ VSub_Name '$niceval') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' (plus is lower') ) } ] redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (SimpleCommand words: [ {(echo)} {(DQ ('priority, minus is higher, but only root can go below 0)'))} ] redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [171 173 16777215 217] ) ] spids: [44 48 217] ) ] spids: [41 219] ) ) (C {(shift)} { (ArithSubPart anode: (ArithBinary op_id: Arith_Minus left: (ArithWord w:{($ VSub_Name '$OPTIND')}) right: (ArithWord w:{(Lit_Digits 1)}) ) spids: [223 230] ) } ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(-eq)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [ {(echo)} { (DQ ('Usage: ') ($ VSub_Number '$0') (' [-n niceval] [-u user|-t tty] [-p] pattern')) } ] redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 250] ) ] spids: [16777215 269] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$tty'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pid) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(ps)} {(cu)} {(-t)} {($ VSub_Name '$tty')}) (C {(awk)} { (DQ ('/ ') ($ VSub_Number '$1') ('/ { print ') (EscapedLiteralPart token: <Lit_EscapedChar '\\\\'> ) ($ VSub_Number '$2') (' }') ) } ) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [292 313] ) } spids: [291] ) ] spids: [291] ) ] spids: [16777215 288] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$user'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pid) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(ps)} {(cu)} {(-U)} {($ VSub_Name '$user')}) (C {(awk)} { (DQ ('/ ') ($ VSub_Number '$1') ('/ { print ') (EscapedLiteralPart token: <Lit_EscapedChar '\\\\'> ) ($ VSub_Number '$2') (' }') ) } ) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [335 356] ) } spids: [334] ) ] spids: [334] ) ] spids: [315 331] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pid) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(ps)} {(cu)} {(-U)} { (BracedVarSub token: <VSub_Name USER> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: {(LOGNAME)} ) spids: [369 373] ) } ) (C {(awk)} { (DQ ('/ ') ($ VSub_Number '$1') ('/ { print ') (EscapedLiteralPart token: <Lit_EscapedChar '\\$'> ) ('2 }') ) } ) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [362 386] ) } spids: [361] ) ] spids: [361] ) ] spids: [358 388] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Name '$pid'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Sentence child: (SimpleCommand words: [ {(echo)} { (DQ ($ VSub_Number '$0') (': no processes match pattern ') ($ VSub_Number '$1')) } ] redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) terminator: <Op_Semi ';'> ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 405] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [(C {(echo)} {($ VSub_Name '$pid')}) (C {(grep)} {(SQ <' '>)})] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [434 446] ) ) } {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} { (DQ ($ VSub_Number '$0') (': more than one process matches pattern ') (${ VSub_Number 1) (':') ) } ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$tty'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:runme) op: Equal rhs: {(DQ ('ps cu -t ') ($ VSub_Name '$tty'))} spids: [488] ) ] spids: [488] ) ] spids: [16777215 485] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$user'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:runme) op: Equal rhs: {(DQ ('ps cu -U ') ($ VSub_Name '$user'))} spids: [514] ) ] spids: [514] ) ] spids: [495 511] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:runme) op: Equal rhs: { (DQ ('ps cu -U ') (BracedVarSub token: <VSub_Name USER> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(LOGNAME)}) spids: [527 531] ) ) } spids: [524] ) ] spids: [524] ) ] spids: [521 535] ) (Pipeline children: [ (C {(eval)} {($ VSub_Name '$runme')}) (C {(awk)} { (DQ ('/ ') ($ VSub_Number '$1') ('/ { printf ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' user %-8.8s pid %-6.6s job %s') (Lit_Other '\\') (n) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (', ') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('1,') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('2,') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('11 }') ) } ) ] negated: F ) (C {(echo)} {(DQ ('Use -u user or -t tty to narrow down your selection criteria.'))}) ] spids: [425 453] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Name '$showpid')} {(-eq)} {(1)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [(C {(echo)} {($ VSub_Name '$pid')})] spids: [575 589] ) ] else_action: [ (C {(/bin/echo)} {(-n)} {(DQ ('Renicing job ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>))} ) (C {(/bin/echo)} {(-n)} { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(ps)} {(cp)} {($ VSub_Name '$pid')}) (C {(sed)} {(SQ <'s/ [ ]*/ /g'>)}) (C {(tail)} {(-1)}) (C {(cut)} {(-d) (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>)} {(-f6-)}) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [617 646] ) } ) (C {(echo)} {(DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' (') ($ VSub_Name '$pid') (')'))} ) (C {(renice)} {($ VSub_Name '$niceval')} {($ VSub_Name '$pid')}) ] spids: [596 665] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] )