(command.CommandList children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:PATH) op: Equal rhs: {(Lit_Other ':') (/bin) (Lit_Other ':') (/usr/bin)} ) ] ) (C {(export)} {(PATH)}) (C {(echo)} {(-n)} {(DQ ('Shell test 1 '))}) (C {(rm)} {(-rf)} {(DIR_SH1)}) (C {(mkdir)} {(DIR_SH1)}) (C {(cd)} {(DIR_SH1)}) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:f) op:Equal rhs:{(../test1.c)})] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(-r)} {($ VSub_DollarName '$f')}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(sh1)} {(cannot)} {(read)} {($ VSub_DollarName '$f')}) terminator: <Op_Semi ';'> ) (command.Sentence child: (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(echo)} {(DQ (abcdefghijklmnopqrstuvwxyz))}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(alpha)})] ) (command.SimpleCommand words: [{(echo)} {(DQ (ABCDEFGHIJKLMNOPQRSTUVWXYZ))}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(ALPHA)})] ) (command.SimpleCommand words: [{(echo)} {(DQ (0123456789))}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(num)})] ) (command.SimpleCommand words: [{(echo)} {(DQ ('!@#') (Lit_Other '$') ('%^&*()_+=-{}[]:;<>?/.,'))}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(special)})] ) (C {(cp)} {(/etc/rc)} {(rc)}) (C {(cp)} {(/etc/passwd)} {(passwd)}) (command.SimpleCommand words: [{(cat)} {(alpha)} {(ALPHA)} {(num)} {(rc)} {(passwd)} {(special)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(tmp)})] ) (command.SimpleCommand words: [{(cat)} {(tmp)} {(tmp)} {(tmp)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(f1)})] ) (C {(mkdir)} {(foo)}) (C {(cp)} {(/etc/rc)} {(/etc/passwd)} {(foo)}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {(foo/rc)} {(/etc/rc)}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(cp)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {(foo/passwd)} {(/etc/passwd)}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(cp)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) (C {(rm)} {(-rf)} {(foo)}) (command.SimpleCommand words: [{(cat)} {(num)} {(num)} {(num)} {(num)} {(num)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y)})] ) (command.SimpleCommand words: [{(wc)} {(-c)} {(y)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x1)})] ) (command.SimpleCommand words: [{(echo)} {(DQ (' 55 y'))}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x2)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x1)} {(x2)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(cat)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(y)}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(z)}) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(y)} {(z)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(cat)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(cat)} {(passwd)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(p)})] ) (C {(cp)} {(passwd)} {(q)}) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(p)} {(q)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(ar)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(date)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(r)})] ) (command.SimpleCommand words: [{(ar)} {(r)} {(x.a)} {(p)} {(q)} {(r)}] redirects: [(redir.Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) (C {(ar)} {(r)} {(x.a)} {(/usr/bin/cp)}) (C {(ar)} {(r)} {(x.a)} {(/usr/bin/cat)}) (C {(rm)} {(p)} {(q)}) (C {(mv)} {(r)} {(R)}) (C {(ar)} {(x)} {(x.a)}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {(p)} {(/etc/passwd)}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(Error)} {(on)} {(ar)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {(q)} {(/etc/passwd)}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(Error)} {(on)} {(ar)} {(test)} {(3)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(r)} {(R)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(Error)} {(on)} {(ar)} {(test)} {(4)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {(cp)} {(/usr/bin/cp)}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(Error)} {(on)} {(ar)} {(test)} {(5)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {(cat)} {(/usr/bin/cat)}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(Error)} {(on)} {(ar)} {(test)} {(6)}) terminator: <Op_Semi ';'> ) ] ) (C {(rm)} {(cp)} {(cat)} {(p)} {(q)} {(r)}) (command.SimpleCommand words: [{(ar)} {(d)} {(x.a)} {(r)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)})] ) (C {(ar)} {(x)} {(x.a)}) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-r)} {(r)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(ar)} {(test)} {(7)}) terminator: <Op_Semi ';'> ) ] ) ] ) (C {(rm)} {(-rf)} {(p)} {(q)} {(r)} {(R)}) (command.If arms: [ (if_arm cond: [ (C {(test)} { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(basename)} {(/usr/ast/foo.c)} {(.c)})] ) left_token: <Left_Backtick '`'> ) } {(KW_Bang '!') (Lit_Other '=')} {(SQ <foo>)} ) ] action: [(C {(echo)} {(Error)} {(on)} {(basename)} {(test)} {(1)})] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(basename)} {(a/b/c/d)})]) left_token: <Left_Backtick '`'> ) } {(KW_Bang '!') (Lit_Other '=')} {(SQ <d>)} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Sentence child: (C {(Error)} {(on)} {(basename)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) ] ) (C {(cp)} {($ VSub_DollarName '$f')} {(x.c)}) (command.SimpleCommand words: [{(echo)} {(DQ ('/a/s//#####/g'))}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(s)})] ) (command.SimpleCommand words: [{(sed)} {(-f)} {(s)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x.c)}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y.c)}) ] ) (command.SimpleCommand words: [{(cdiff)} {(x.c)} {(y.c)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y)})] ) (command.SimpleCommand words: [{(patch)} {(x.c)} {(y)}] redirects: [(redir.Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x.c)} {(y.c)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(cdiff)} {(test)}) terminator: <Op_Semi ';'> ) ] ) (C {(rm)} {(x.c) (Lit_Other '*')} {(y.c)} {(s)} {(y)}) (command.SimpleCommand words: [{(ls)} {(/etc)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.SimpleCommand words: [{(grep)} {(-v)} {(DQ (passwd))} {(x)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y)})] ) (command.SimpleCommand words: [{(comm)} {(-3)} {(x)} {(y)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(z)})] ) (command.SimpleCommand words: [{(echo)} {(DQ (passwd))}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(w)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(w)} {(z)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (C {(Lit_Other ':')} {(KW_Else else)} {(echo)} {(Error)} {(on)} {(comm)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.SimpleCommand words: [{(comm)} {(-13)} {(x)} {(y)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(z)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-s)} {(z)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(comm)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) ] ) (C {(rm)} {(-rf)} {(w)} {(x)} {(y)} {(z)}) (command.SimpleCommand words: [{(compress)} {(-fc)} {($ VSub_DollarName '$f')}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x.c.Z)})] ) (command.SimpleCommand words: [{(compress)} {(-cd)} {(x.c.Z)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y)})] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {($ VSub_DollarName '$f')} {(y)}) terminator: <Op_Semi ';'> ) ] action: [ (command.Sentence child: (C {(Lit_Other ':')} {(KW_Else else)} {(echo)} {(Error)} {(KW_In in)} {(compress)} {(test)} {(1)} ) terminator: <Op_Semi ';'> ) ] ) ] ) (C {(rm)} {(-rf)} {(x.c.Z)} {(y)}) (C {(cp)} {($ VSub_DollarName '$f')} {(x)}) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(END)} here_end_span_id: 1118 stdin_parts: [('g/a/s//#####/g\n') ('g/b/s//@@@@@/g\n') ('g/c/s//!!!!!/g\n') ('w\n') ('q\n')] ) ] ) (command.SimpleCommand words: [{(ed)} {(x)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(y)}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)}) ] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(END)} here_end_span_id: 1143 stdin_parts: [('g/#####/s//a/g\n') ('g/@@@@@/s//b/g\n') ('g/!!!!!/s//c/g\n') ('w\n') ('q\n')] ) ] ) (command.SimpleCommand words: [{(ed)} {(x)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(y)}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)}) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {(x)} {($ VSub_DollarName '$f')}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(ed)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (C {(rm)} {(x)} {(y)}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(expr)} {(1)} {(Lit_Other '+')} {(1)})] ) left_token: <Left_Backtick '`'> ) } {(KW_Bang '!') (Lit_Other '=')} {(2)} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(expr)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(expr)} {(10000)} {(-)} {(1)})] ) left_token: <Left_Backtick '`'> ) } {(KW_Bang '!') (Lit_Other '=')} {(9999)} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(expr)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(expr)} {(100)} {(SQ <'*'>)} {(50)})] ) left_token: <Left_Backtick '`'> ) } {(KW_Bang '!') (Lit_Other '=')} {(5000)} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(expr)} {(test)} {(3)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(expr)} {(120)} {(/)} {(5)})]) left_token: <Left_Backtick '`'> ) } {(KW_Bang '!') (Lit_Other '=')} {(24)} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(expr)} {(test)} {(4)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(expr)} {(143)} {(Lit_Other '%')} {(7)})] ) left_token: <Left_Backtick '`'> ) } {(KW_Bang '!') (Lit_Other '=')} {(3)} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(expr)} {(test)} {(5)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:a) op:Equal rhs:{(100)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:a) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(expr)} {($ VSub_DollarName '$a')} {(Lit_Other '+')} {(1)})] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_DollarName '$a')} {(KW_Bang '!') (Lit_Other '=')} {(SQ <101>)}) terminator: <Op_Semi ';'> ) ] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(expr)} {(test)} {(6)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.SimpleCommand words: [{(fgrep)} {(DQ (abc))} {(alpha)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(z)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(alpha)} {(z)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (C {(Lit_Other ':')} {(KW_Else else)} {(echo)} {(Error)} {(on)} {(fgrep)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.SimpleCommand words: [{(fgrep)} {(DQ (abc))} {(num)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(z)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-s)} {(z)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(fgrep)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.SimpleCommand words: [{(cat)} {(alpha)} {(num)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(z)})] ) (command.SimpleCommand words: [{(fgrep)} {(DQ (012))} {(z)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(w)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(w)} {(num)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(fgrep)} {(test)} {(3)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(date)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(Rabbit)})] ) (command.SimpleCommand words: [{(echo)} {(DQ (Rabbit))}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y)})] ) (command.SimpleCommand words: [{(find)} {(.)} {(-name)} {(Rabbit)} {(-print)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(z)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(y)} {(z)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (C {(Lit_Other ':')} {(KW_Else else)} {(echo)} {(Error)} {(on)} {(find)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.SimpleCommand words: [{(find)} {(.)} {(-name)} {(Bunny)} {(-print)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(z)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-s)} {(z)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(find)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) ] ) (C {(rm)} {(Rabbit)} {(y)} {(z)}) (command.SimpleCommand words: [{(grep)} {(DQ (a))} {(alpha)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x)} {(alpha)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(grep)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(grep)} {(DQ (a))} {(ALPHA)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-s)} {(x)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(grep)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.SimpleCommand words: [{(grep)} {(-v)} {(DQ (0))} {(alpha)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x)} {(alpha)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(grep)} {(test)} {(3)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(grep)} {(-s)} {(DQ (a))} {(alpha)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-s)} {(x)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(grep)} {(test)} {(4)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.SimpleCommand words: [{(grep)} {(-s)} {(DQ (a))} {(alpha)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) terminator: <Op_Semi ';'> ) ] action: [ (command.Sentence child: (C {(Lit_Other ':')} {(KW_Else else)} {(echo)} {(Error)} {(on)} {(grep)} {(test)} {(5)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.SimpleCommand words: [{(grep)} {(-s)} {(DQ (a))} {(ALPHA)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) terminator: <Op_Semi ';'> ) ] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(grep)} {(test)} {(6)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.SimpleCommand words: [{(head)} {(-1)} {(f1)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x)} {(alpha)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (C {(Lit_Other ':')} {(KW_Else else)} {(echo)} {(Error)} {(on)} {(head)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.SimpleCommand words: [{(head)} {(-2)} {(f1)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.SimpleCommand words: [{(cat)} {(alpha)} {(ALPHA)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x)} {(y)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (C {(Lit_Other ':')} {(KW_Else else)} {(echo)} {(Error)} {(on)} {(head)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) ] ) (C {(mkdir)} {(FOO)}) (C {(cp)} {(passwd)} {(FOO/z)}) (C {(cp)} {(alpha)} {(FOO/x)}) (C {(cp)} {(ALPHA)} {(FOO/y)}) (C {(cd)} {(FOO)}) (command.SimpleCommand words: [{(ls)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(w)})] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(w1)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(END)} here_end_span_id: 2075 stdin_parts: [('w\n') ('x\n') ('y\n') ('z\n')] ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(w)} {(w1)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(ls)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (C {(rm)} {(Lit_Other '*')}) (C {(cd)} {(..)}) (C {(rmdir)} {(FOO)}) (C {(mkdir)} {(Foo)} {(Bar)}) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-d)} {(Foo)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(mkdir)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-d)} {(Bar)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(mkdir)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) (C {(rmdir)} {(Foo)} {(Bar)}) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-d)} {(Foo)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(mkdir)} {(test)} {(3)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-d)} {(Foo)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(rmdir)} {(test)} {(4)}) terminator: <Op_Semi ';'> ) ] ) ] ) (C {(mkdir)} {(MVDIR)}) (C {(cp)} {($ VSub_DollarName '$f')} {(x)}) (C {(mv)} {(x)} {(y)}) (C {(mv)} {(y)} {(z)}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {($ VSub_DollarName '$f')} {(z)}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(mv)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (C {(cp)} {($ VSub_DollarName '$f')} {(x)}) (C {(mv)} {(x)} {(MVDIR/y)}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {($ VSub_DollarName '$f')} {(MVDIR/y)}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(mv)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) (command.Pipeline children: [ (command.SimpleCommand words: [{(rev)}] redirects: [(redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(f1)})] ) (command.SimpleCommand words: [{(head)} {(-1)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(ahpla)})] ) ] negated: F ) (command.SimpleCommand words: [{(echo)} {(DQ (zyxwvutsrqponmlkjihgfedcba))}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x)} {(ahpla)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(rev)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(rev)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{($ VSub_DollarName '$f')}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)}) ] ) (command.SimpleCommand words: [{(rev)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x)}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y)}) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {($ VSub_DollarName '$f')} {(x)}) terminator: <Op_Semi ';'> ) ] action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(rev)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {($ VSub_DollarName '$f')} {(y)}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(error)} {(on)} {(rev)} {(test)} {(3)}) terminator: <Op_Semi ';'> ) ] ) (C {(cp)} {($ VSub_DollarName '$f')} {(w)}) (C {(cp)} {(alpha)} {(x)}) (C {(cp)} {(ALPHA)} {(y)}) (C {(cp)} {(num)} {(z)}) (command.SimpleCommand words: [{(shar)} {(w)} {(x)} {(y)} {(z)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x1)})] ) (C {(rm)} {(w)} {(x)} {(y)} {(z)}) (command.SimpleCommand words: [{(sh)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x1)}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)}) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {(w)} {($ VSub_DollarName '$f')}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(shar)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x)} {(alpha)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(shar)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(y)} {(ALPHA)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(shar)} {(test)} {(3)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(z)} {(num)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(shar)} {(test)} {(4)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(sort)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{($ VSub_DollarName '$f')}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)}) ] ) (command.SimpleCommand words: [{(wc)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{($ VSub_DollarName '$f')}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x1)}) ] ) (command.SimpleCommand words: [{(wc)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x)}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x2)}) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x1)} {(x2)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(sort)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(END)} here_end_span_id: 2770 stdin_parts: [('demit 10\n') ('epitonic 40\n') ('apoop 20\n') ('bibelot 3\n') ('comate 4\n')] ) ] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(END)} here_end_span_id: 2785 stdin_parts: [('apoop 20\n') ('bibelot 3\n') ('comate 4\n') ('demit 10\n') ('epitonic 40\n')] ) ] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(z)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(END)} here_end_span_id: 2800 stdin_parts: [('epitonic 40\n') ('demit 10\n') ('comate 4\n') ('bibelot 3\n') ('apoop 20\n')] ) ] ) (command.SimpleCommand words: [{(sort)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x)}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x1)}) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(y)} {(x1)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(sort)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(sort)} {(-r)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x1)}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x2)}) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x2)} {(z)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(sort)} {(test)} {(3)}) terminator: <Op_Semi ';'> ) ] ) (command.Pipeline children: [ (command.SimpleCommand words: [{(sort)} {(Lit_Other '+') (1)} {(-n)}] redirects: [(redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x)})] ) (command.SimpleCommand words: [{(head)} {(-1)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y)})] ) ] negated: F ) (command.SimpleCommand words: [{(echo)} {(DQ ('bibelot 3'))}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(z)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(y)} {(z)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(sort)} {(test)} {(4)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(tail)} {(-1)} {(f1)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {(x)} {(special)}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(tail)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(END)} here_end_span_id: 3021 stdin_parts: [ ('a d\n') ('b e\n') ('c f\n') ('a c\n') ('p z\n') ('k p\n') ('a k\n') ('a b\n') ('b c\n') ('c d\n') ('d e\n') ('e f\n') ('f k\n') ] ) ] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(answer)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(END)} here_end_span_id: 3040 stdin_parts: [('a\n') ('b\n') ('c\n') ('d\n') ('e\n') ('f\n') ('k\n') ('p\n') ('z\n')] ) ] ) (command.SimpleCommand words: [{(tsort)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x)}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y)}) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(y)} {(answer)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(tsort)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (C {(cp)} {($ VSub_DollarName '$f')} {(x)}) (C {(uue)} {(x)}) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-s)} {(x.uue)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(uue/uud)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (C {(rm)} {(x)}) (C {(uud)} {(x.uue)}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {(x)} {($ VSub_DollarName '$f')}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(uue/uud)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(compress)} {(-fc)} {(x)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x.Z)}) (redir.Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)}) ] ) (C {(uue)} {(x.Z)}) (C {(rm)} {(x)} {(x.Z)}) (C {(uud)} {(x.uue)}) (command.SimpleCommand words: [{(compress)} {(-cd)} {(x.Z)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {(x)} {($ VSub_DollarName '$f')}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(uue/uud)} {(test)} {(3)}) terminator: <Op_Semi ';'> ) ] ) (C {(cd)} {(..)}) (C {(rm)} {(-rf)} {(DIR_SH1)}) (C {(echo)} {(ok)}) ] )