(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)}) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:CC) op:Equal rhs:{(cc)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ARCH) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(arch)})]) left_token: <Left_Backtick '`'> ) } ) ] ) (C {(echo)} {(-n)} {(DQ ('Shell test 2 '))}) (C {(rm)} {(-rf)} {(DIR_SH2)}) (C {(mkdir)} {(DIR_SH2)}) (C {(cd)} {(DIR_SH2)}) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(file)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(END)} here_end_span_id: 72 stdin_parts: [ ('The time has come the walrus said to talk of many things\n') ('Of shoes and ships and sealing wax of cabbages and kings\n') ('Of why the sea is boiling hot and whether pigs have wings\n') ] ) ] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:f) op:Equal rhs:{(file)})] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(makefile)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(END)} here_end_span_id: 96 stdin_parts: [('all:\tx.c\n') ('\t@') ($ VSub_DollarName '$CC') (' x.c >/dev/null 2>&1\n')] ) ] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x.c)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(END)} here_end_span_id: 126 stdin_parts: [ ('#include <stdio.h>\n') ('char s[] = {') (Right_DoubleQuote '"') ('MS-DOS: Just say no') (Right_DoubleQuote '"') ('};\t/* used by strings later */\n') ('main() \n') ('{\n') (' int i; \n') (' for (i = 15; i < 18; i++) printf(') (Right_DoubleQuote '"') ('%d') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (n) (Right_DoubleQuote '"') (',i*i);\n') ('}\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: 143 stdin_parts: [('225\n') ('256\n') ('289\n')] ) ] ) (C {(make)}) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-f)} {(a.out)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Compilation)} {(failed)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(a.out)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-f)} {(x)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(No)} {(compiler)} {(output)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x)} {(answer)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(cc)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(echo)} {(Hi)} {(there)} {(folks)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-r)} {(x)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(chmod)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (C {(chmod)} {(377)} {(x)}) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-r)} {(x)}) terminator:<Op_Semi ';'>)] action: [ (command.Sentence child: (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-w)} {(/)}) (C {(echo)} {(Error)} {(on)} {(chmod)} {(test)} {(2)}) ] ) terminator: <Op_Semi ';'> ) ] ) ] ) (C {(chmod)} {(700)} {(x)}) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-r)} {(x)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(on)} {(chmod)} {(test)} {(3)}) 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: 385 stdin_parts: [ ('1 white bunny\n') ('2 gray rabbits\n') ('3 brown hares\n') ('4 black conies\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: 403 stdin_parts: [('white\n') ('gray \n') ('brown\n') ('black\n')] ) ] ) (command.SimpleCommand words: [{(cut)} {(-c)} {(3-7)} {(x)}] redirects: [(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)} {(KW_In in)} {(cut)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [ {(dd)} {(Lit_VarLike 'if=') ($ VSub_DollarName '$f')} {(Lit_VarLike 'of=') (x)} {(Lit_VarLike 'bs=') (12)} {(Lit_VarLike 'count=') (1)} ] redirects: [(redir.Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) (command.SimpleCommand words: [ {(dd)} {(Lit_VarLike 'if=') ($ VSub_DollarName '$f')} {(Lit_VarLike 'of=') (y)} {(Lit_VarLike 'bs=') (6)} {(Lit_VarLike 'count=') (4)} {(Lit_VarLike 'skip=') (2)} ] redirects: [(redir.Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) (command.SimpleCommand words: [{(cat)} {(x)} {(y)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(z)})] ) (command.SimpleCommand words: [ {(dd)} {(Lit_VarLike 'if=') ($ VSub_DollarName '$f')} {(Lit_VarLike 'of=') (answer)} {(Lit_VarLike 'bs=') (9)} {(Lit_VarLike 'count=') (4)} ] 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)} {(z)} {(answer)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(dd)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (C {(rm)} {(Lit_Other '?')}) (command.SimpleCommand words: [{(df)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-r)} {(x)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(df)} {(Test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (C {(rm)} {(Lit_Other '?')}) (command.SimpleCommand words: [{(du)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-r)} {(x)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(du)} {(Test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.Pipeline children: [ (C {(head)} {(-1)} {($ VSub_DollarName '$f')}) (command.SimpleCommand words: [{(od)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) ] negated: F ) (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {($ VSub_DollarName '$ARCH')} {(Lit_Other '=')} {(i86)} {(-o)} {($ VSub_DollarName '$ARCH')} {(Lit_Other '=')} {(i386)} {(Lit_Other ']')} ) ] action: [ (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: 711 stdin_parts: [ ('0000000 064124 020145 064564 062555 064040 071541 061440 066557\n') ('0000020 020145 064164 020145 060567 071154 071565 071440 064541\n') ('0000040 020144 067564 072040 066141 020153 063157 066440 067141\n') ('0000060 020171 064164 067151 071547 000012\n') ('0000071\n') ] ) ] ) ] ) ] else_action: [ (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: 728 stdin_parts: [ ('0000000 052150 062440 072151 066545 020150 060563 020143 067555\n') ('0000020 062440 072150 062440 073541 066162 072563 020163 060551\n') ('0000040 062040 072157 020164 060554 065440 067546 020155 060556\n') ('0000060 074440 072150 064556 063563 005000\n') ('0000071\n') ] ) ] ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x)} {(answer)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(od)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.Pipeline children: [ (C {(head)} {(-1)} {($ VSub_DollarName '$f')}) (command.SimpleCommand words: [{(od)} {(-d)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) ] negated: F ) (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {($ VSub_DollarName '$ARCH')} {(Lit_Other '=')} {(i86)} {(-o)} {($ VSub_DollarName '$ARCH')} {(Lit_Other '=')} {(i386)} {(Lit_Other ']')} ) ] action: [ (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: 820 stdin_parts: [ ('0000000 26708 08293 26996 25965 26656 29537 25376 28015\n') ('0000020 08293 26740 08293 24951 29292 29557 29472 26977\n') ('0000040 08292 28532 29728 27745 08299 26223 27936 28257\n') ('0000060 08313 26740 28265 29543 00010\n') ('0000071\n') ] ) ] ) ] ) ] else_action: [ (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: 837 stdin_parts: [ ('0000000 21608 25888 29801 28005 08296 24947 08291 28525\n') ('0000020 25888 29800 25888 30561 27762 30067 08307 24937\n') ('0000040 25632 29807 08308 24940 27424 28518 08301 24942\n') ('0000060 31008 29800 26990 26483 02560\n') ('0000071\n') ] ) ] ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x)} {(answer)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(od)} {(test)} {(2)}) 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: 891 stdin_parts: [('red\n') ('green\n') ('blue\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: 905 stdin_parts: [('rood\n') ('groen\n') ('blauw\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: 918 stdin_parts: [('red\trood\n') ('green\tgroen\n') ('blue\tblauw\n')] ) ] ) (command.SimpleCommand words: [{(paste)} {(x)} {(y)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(z)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(z)} {(answer)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(paste)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(echo)}] 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: 984 stdin_parts: [ (Right_DoubleQuote '"') ('Hi,') (Right_DoubleQuote '"') (' said Carol, laughing, ') (Right_DoubleQuote '"') ("How's life?") (Right_DoubleQuote '"') ('\n') ] ) ] ) (command.SimpleCommand words: [{(echo)}] 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: 1001 stdin_parts: [('hi\n') ('said\n') ('carol\n') ('laughing\n') ("how's\n") ('life\n')] ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x)} {(answer)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(prep)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(printenv)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.SimpleCommand words: [{(grep)} {(HOME)} {(x)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)})] ) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(printenv)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.SimpleCommand words: [{(grep)} {(PATH)} {(x)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)})] ) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(printenv)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.SimpleCommand words: [{(grep)} {(SHELL)} {(x)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)})] ) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(printenv)} {(test)} {(3)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.SimpleCommand words: [{(grep)} {(USER)} {(x)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)})] ) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(printenv)} {(test)} {(4)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(pwd)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(Pwd_file)})] ) (C {(cd)} { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(pwd)})]) left_token: <Left_Backtick '`'> ) } ) (command.SimpleCommand words: [{(pwd)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-s)} {(Pwd_file)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(pwd)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(cmp)} {(-s)} {(Pwd_file)} {(x)}) terminator: <Op_Semi ';'> ) ] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(pwd)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) (command.Pipeline children: [ (C {(strings)} {(a.out)}) (command.SimpleCommand words: [{(grep)} {(DQ (MS-DOS))}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) ] negated: F ) (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: 1303 stdin_parts: [('MS-DOS: Just say no\n')] ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x)} {(answer)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(strings)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.SimpleCommand words: [{(sum)} {($ VSub_DollarName '$f')}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (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: 1360 stdin_parts: [('29904 1\n')] ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(cmp)} {(-s)} {(x)} {(answer)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(sum)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.Pipeline children: [ (C {(cat)} {($ VSub_DollarName '$f')}) (command.SimpleCommand words: [{(tee)} {(x)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)})] ) ] negated: F ) (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)} {(tee)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(true)}) terminator:<Op_Semi ';'>)] action: [(command.Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(true)} {(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: 1497 stdin_parts: [('100\n') ('200\n') ('200\n') ('300\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: 1511 stdin_parts: [('100\n') ('200\n') ('300\n')] ) ] ) (command.SimpleCommand words: [{(uniq)}] 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)} {(KW_In in)} {(uniq)} {(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: 1572 stdin_parts: [ ('the big black dog\n') ('the little white cat\n') ('the big white sheep\n') ('the little black cat\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: 1591 stdin_parts: [ (' 1 dog\n') (' 1 sheep\n') (' 2 big\n') (' 2 black\n') (' 2 cat\n') (' 2 little\n') (' 2 white\n') (' 4 the\n') ] ) ] ) (command.Pipeline children: [ (C {(prep)} {(x)}) (C {(sort)}) (command.SimpleCommand words: [{(uniq)} {(-c)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(y1)})] ) ] negated: F ) (command.SimpleCommand words: [{(sort)} {(Lit_Other '+') (1)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(y1)}) (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)} {(KW_In in)} {(pipeline)} {(test)} {(1)}) terminator: <Op_Semi ';'> ) ] ) (command.Pipeline children: [ (C {(cat)} {($ VSub_DollarName '$f')} {($ VSub_DollarName '$f')} {($ VSub_DollarName '$f')}) (C {(sort)}) (command.SimpleCommand words: [{(uniq)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) ] negated: F ) (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:{(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 ':')}) terminator:<Op_Semi ';'>)] ) ] else_action: [ (command.Sentence child: (C {(echo)} {(Error)} {(KW_In in)} {(pipeline)} {(test)} {(2)}) terminator: <Op_Semi ';'> ) ] ) (C {(cd)} {(..)}) (C {(rm)} {(-rf)} {(DIR_SH2)}) (C {(echo)} {(ok)}) ] )