(command.CommandList children: [ (command.Assignment keyword: Assign_Typeset flags: [-i] pairs: [(assign_pair lhs:(lhs_expr.LhsName name:rc) op:Equal rhs:{(0)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:SH_PROG) op: Equal rhs: { (word_part.BracedVarSub token: <VSub_Name SH_PROG> suffix_op: (suffix_op.StringUnary op_id: VTest_ColonHyphen arg_word: {($ VSub_DollarName '$SHELL')} ) ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:SH_PROG) op: Equal rhs: { (word_part.BracedVarSub token: <VSub_Name SH_PROG> suffix_op: (suffix_op.StringUnary op_id:VTest_ColonHyphen arg_word:{(bash)}) ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:bash_loc) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {($ VSub_DollarName '$SH_PROG')} {(-c)} {(SQ <'echo ${SHELL}'>)})] ) left_token: <Left_DollarParen '$('> ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:rc) op:Equal rhs:{($ VSub_QMark '$?')})] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DParen child: (arith_expr.ArithBinary op_id: Arith_NEqual left: (arith_expr.ArithVarRef token:<Lit_ArithVarLike rc>) right: (arith_expr.ArithWord w:{(Lit_Digits 0)}) ) ) terminator: <Op_Semi ';'> ) ] action: [ (command.SimpleCommand words: [ {(echo)} { (DQ ('Something went wrong in getting ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('SHELL for ') ($ VSub_DollarName '$SH_PROG') ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {($ VSub_DollarName '$rc')} ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.BoolUnary op_id:BoolUnary_z child:{($ VSub_DollarName '$bash_loc')}) ) terminator: <Op_Semi ';'> ) ] action: [ (command.SimpleCommand words: [ {(echo)} { (DQ ('Something went wrong in setting bash location from ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('SHELL for ') ($ VSub_DollarName '$SH_PROG') ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(3)}) ] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:bashdb_main) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(strings)} {($ VSub_DollarName '$bash_loc')}) (C {(grep)} {(bashdb)}) ] negated: F ) ] ) left_token: <Left_DollarParen '$('> ) } ) ] ) (C {(echo)} { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(dirname)} { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(dirname)} { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(dirname)} {($ VSub_DollarName '$bashdb_main')})] ) left_token: <Left_DollarParen '$('> ) } ) ] ) left_token: <Left_DollarParen '$('> ) } ) ] ) left_token: <Left_DollarParen '$('> ) } ) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] )