(command.CommandList children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (C {<Id.Lit_LBracket '['>} {($ Id.VSub_Pound '$#')} {<-lt>} {<2>} {<Id.Lit_RBracket ']'>}) ] ) action: [ (command.Simple words: [{<echo>} {(DQ <'usage: more/tweak.sh ARCH STAGE COMMAND...'>)}] redirects: [(redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<1>})] do_fork: T ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>}) ] spids: [8 20] ) ] ) (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {<Id.KW_Bang '!'>} {<-e>} {(DQ ($ Id.VSub_Number '$2')) <.sh>} {<Id.Lit_RBracket ']'>} ) (command.Simple words: [{<echo>} {(DQ <'No stage '> ($ Id.VSub_Number '$2'))}] redirects: [(redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})] do_fork: T ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>}) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:ARCH) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [71] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:STAGE) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$2'))} spids: [76] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName '$STAGE'))} {<Id.Lit_Equals '='> <Id.Lit_Equals '='>} {(DQ <native-compiler>)} {<Id.Lit_RBracket ']'>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:STUFF) op: assign_op.Equal rhs: {(SQ <'STAGE_DIR=$STAGE_DIR/usr HOST_ARCH=$ARCH'>)} spids: [99] ) ] ) ] ) (C {<shift>}) (C {<shift>}) (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Simple words: [ {<'more/test.sh'>} {(DQ ($ Id.VSub_DollarName '$ARCH'))} {($ Id.VSub_DollarName '$STUFF')} {(DQ ($ Id.VSub_At '$@'))} {(DQ <' && create_stage_tarball'>)} ] more_env: [ (env_pair name:NO_CLEANUP val:{<temp>} spids:[109]) (env_pair name: STAGE_NAME val: {(DQ ($ Id.VSub_DollarName '$STAGE'))} spids: [112] ) ] do_fork: T ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>}) ] ) (command.Simple words: [ {<'./build.sh'>} {(DQ ($ Id.VSub_DollarName '$ARCH'))} {(DQ ($ Id.VSub_DollarName '$STAGE'))} ] more_env: [ (env_pair name:NO_CLEANUP val:{<temp>} spids:[141]) (env_pair name:AFTER val:{(DQ ($ Id.VSub_DollarName '$STAGE'))} spids:[144]) ] do_fork: T ) ] )