(command.CommandList children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (C {<Id.Lit_LBracket '['>} {($ Id.VSub_Pound '$#')} {<-eq>} {<0>} {<Id.Lit_RBracket ']'>}) ] ) action: [ (command.Simple words: [{<echo>} {(DQ <'Usage: [STAGE_NAME=...] more/test.sh ARCH COMMAND...'>)}] 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>}) ] spids: [8 20] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<.>} {<'sources/include.sh'>}) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>}) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_Number '$1'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <host>)} {<Id.Lit_RBracket ']'>} ) (command.Simple words: [{<load_target>} {(DQ ($ Id.VSub_Number '$1'))}] more_env: [(env_pair name:NO_CLEANUP val:{<1>} spids:[68])] do_fork: T ) ] ) (C {<shift>}) (C {<eval>} {(DQ ($ Id.VSub_At '$@'))}) ] )