(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:PATH) op: assign_op.Equal rhs: {(DQ <'/bin:/usr/bin:/usr/local/bin/:.'>)} spids: [13] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:ED) op: assign_op.Equal rhs: {($ Id.VSub_Number '$1')} spids: [18] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {<Id.KW_Bang '!'>} {<-x>} {($ Id.VSub_DollarName '$ED')} {<Id.Lit_RBracket ']'>} ) (BraceGroup children: [ (command.Sentence child: (C {<echo>} {(DQ ($ Id.VSub_DollarName '$ED') <': cannot execute'>)}) terminator: <Id.Op_Semi _> ) (command.Sentence child: (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>}) terminator: <Id.Op_Semi _> ) ] ) ] ) (command.ForEach iter_names: [i] iterable: (for_iter.Words words:[{<Id.Lit_Star '*'> <.t>}]) body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:base) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Simple words: [ {($ Id.VSub_DollarName '$ED')} {<->} {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\!'>) (DQ <'echo '> ($ Id.VSub_DollarName '$i')) } ] redirects: [ (redir op: <Id.Redir_DLessDash '<<-'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 133 stdin_parts: [<'s/'> <Id.Lit_BadBackslash '\\'> <'..*\n'>] ) ) ] do_fork: T ) ) } spids: [106] ) ] ) (command.Simple words: [{($ Id.VSub_DollarName '$ED')} {<->}] redirects: [ (redir op: <Id.Redir_DLessDash '<<-'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 169 stdin_parts: [ <'a\n'> <'#!/bin/sh -\n'> ($ Id.VSub_DollarName '$ED') <' - <<'> <Id.Lit_BadBackslash '\\'> <'EOT\n'> <'H\n'> <'r '> ($ Id.VSub_DollarName '$base') <'.d\n'> <'w '> ($ Id.VSub_DollarName '$base') <'.o\n'> <'EOT\n'> <'.\n'> <'-2r '> ($ Id.VSub_DollarName '$i') <'\n'> <'w '> ($ Id.VSub_DollarName '$base') <'.ed\n'> <'!chmod +x '> ($ Id.VSub_DollarName '$base') <'.ed\n'> ] ) ) ] do_fork: T ) ] ) ) (command.ForEach iter_names: [i] iterable: (for_iter.Words words:[{<Id.Lit_Star '*'> <.err>}]) body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:base) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Simple words: [ {($ Id.VSub_DollarName '$ED')} {<->} {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\!'>) (DQ <'echo '> ($ Id.VSub_DollarName '$i')) } ] redirects: [ (redir op: <Id.Redir_DLessDash '<<-'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 258 stdin_parts: [<'s/'> <Id.Lit_BadBackslash '\\'> <'..*\n'>] ) ) ] do_fork: T ) ) } spids: [231] ) ] ) (command.Simple words: [{($ Id.VSub_DollarName '$ED')} {<->}] redirects: [ (redir op: <Id.Redir_DLessDash '<<-'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 298 stdin_parts: [ <'a\n'> <'#!/bin/sh -\n'> ($ Id.VSub_DollarName '$ED') <' - <<'> <Id.Lit_BadBackslash '\\'> <'EOT\n'> <'H\n'> <'r '> ($ Id.VSub_DollarName '$base') <'.err\n'> <'w '> ($ Id.VSub_DollarName '$base') <'.o\n'> <'EOT\n'> <'.\n'> <'-2r '> ($ Id.VSub_DollarName '$i') <'\n'> <'w '> (${ Id.VSub_Name base) <'.red\n'> <'!chmod +x '> (${ Id.VSub_Name base) <'.red\n'> ] ) ) ] do_fork: T ) ] ) ) ] )