(CommandList children: [ (C {(set)} {(-e)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:TMP) op: Equal rhs: {(/tmp/mtree.) ($ VSub_Dollar '$$')} spids: [33] ) ] spids: [33] ) (C {(rm)} {(-rf)} {(${ VSub_Name TMP)}) (C {(mkdir)} {(-p)} {(${ VSub_Name TMP)} {(${ VSub_Name TMP) (/mr)} {(${ VSub_Name TMP) (/mt)}) (C {(ln)} {(-s)} {(DQ ('xx this=is=wrong'))} {(${ VSub_Name TMP) (/mr/foo)}) (SimpleCommand words: [{(mtree)} {(-c)} {(-p)} {(${ VSub_Name TMP) (/mr)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(${ VSub_Name TMP) (/_)} spids:[90])] ) (If arms: [ (if_arm cond: [ (Sentence child: (SimpleCommand words: [{(mtree)} {(-U)} {(-r)} {(-p)} {(${ VSub_Name TMP) (/mt)}] redirects: [ (Redir op_id: Redir_Less fd: 16777215 arg_word: {(${ VSub_Name TMP) (/_)} spids: [113] ) (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/dev/null)} spids: [120] ) (Redir op_id:Redir_GreatAnd fd:2 arg_word:{(1)} spids:[124]) ] ) terminator: <Op_Semi ';'> ) ] action: [(C {(true)})] spids: [16777215 129] ) ] else_action: [ (SimpleCommand words: [{(echo)} {(DQ ('ERROR Mtree failed on symlink with space char'))}] redirects: [(Redir op_id:Redir_GreatAnd fd:1 arg_word:{(2)} spids:[143])] ) (C {(rm)} {(-rf)} {(${ VSub_Name TMP)}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [134 160] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:x) op: Equal rhs: {(x) (CommandSubPart command_list: (CommandList children: [ (AndOr ops: [Op_DPipe] children: [ (Subshell child: (CommandList children: [ (Sentence child: (C {(cd)} {(${ VSub_Name TMP) (/mr)}) terminator: <Op_Semi ';'> ) (SimpleCommand words: [{(ls)} {(-l)} {(foo)}] redirects: [ (Redir op_id: Redir_GreatAnd fd: 2 arg_word: {(1)} spids: [182] ) ] ) ] ) spids: [166 184] ) (C {(true)}) ] ) ] ) left_token: <Left_Backtick '`'> spids: [165 189] ) } spids: [163] ) ] spids: [163] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:y) op: Equal rhs: {(x) (CommandSubPart command_list: (CommandList children: [ (AndOr ops: [Op_DPipe] children: [ (Subshell child: (CommandList children: [ (Sentence child: (C {(cd)} {(${ VSub_Name TMP) (/mt)}) terminator: <Op_Semi ';'> ) (SimpleCommand words: [{(ls)} {(-l)} {(foo)}] redirects: [ (Redir op_id: Redir_GreatAnd fd: 2 arg_word: {(1)} spids: [210] ) ] ) ] ) spids: [194 212] ) (C {(true)}) ] ) ] ) left_token: <Left_Backtick '`'> spids: [193 217] ) } spids: [191] ) ] spids: [191] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$x'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ ($ VSub_Name '$y'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(echo)} {(DQ ('ERROR Recreation of spaced symlink failed'))}] redirects: [(Redir op_id:Redir_GreatAnd fd:1 arg_word:{(2)} spids:[248])] ) (C {(rm)} {(-rf)} {(${ VSub_Name TMP)}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 239] ) ] spids: [16777215 265] ) (C {(rm)} {(-rf)} {(${ VSub_Name TMP)}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] )