(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:mfs_size) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [{(stat)} {(-f)} {(SQ <'%z'>)} {($ VSub_Number '$2')}] redirects: [(Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) ] ) left_token: <Left_Backtick '`'> spids: [101 115] ) } spids: [100] ) ] spids: [100] ) (AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(Lit_Other '[')} {(-z)} {(${ VSub_Name mfs_size)} {(Lit_Other ']')}) (C {(echo)} {(DQ ("Can't determine MFS image size"))}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sec_info) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (SimpleCommand words: [{(elfdump)} {(-c)} {($ VSub_Number '$1')}] redirects: [(Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) (C {(grep)} {(-A)} {(5)} {(-E)} {(DQ ('sh_name: oldmfs') (Lit_Other '$'))}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [146 171] ) } spids: [145] ) ] spids: [145] ) (AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(Lit_Other '[')} {(-z)} {(DQ (${ VSub_Name sec_info))} {(Lit_Other ']')}) (C {(echo)} {(DQ ("Can't locate mfs section within kernel"))}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sec_size) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {(DQ (${ VSub_Name sec_info))}) (SimpleCommand words: [{(awk)} {(SQ <'/sh_size/ {print $2}'>)}] redirects: [(Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [204 224] ) } spids: [203] ) ] spids: [203] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sec_start) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {(DQ (${ VSub_Name sec_info))}) (SimpleCommand words: [{(awk)} {(SQ <'/sh_offset/ {print $2}'>)}] redirects: [(Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [227 247] ) } spids: [226] ) ] spids: [226] ) (AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(Lit_Other '[')} {(${ VSub_Name sec_size)} {(-lt)} {(${ VSub_Name mfs_size)} {(Lit_Other ']')}) (C {(echo)} {(DQ ('MFS image too large'))}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) (AndOr ops: [Op_DAmp Op_DAmp] children: [ (SimpleCommand words: [ {(dd)} {(Lit_VarLike 'if=') ($ VSub_Number '$2')} {(Lit_VarLike 'ibs=') (8192)} {(Lit_VarLike 'of=') ($ VSub_Number '$1')} {(Lit_VarLike 'obs=') (${ VSub_Name sec_start)} {(Lit_VarLike 'oseek=') (1)} {(Lit_VarLike 'conv=') (notrunc)} ] redirects: [(Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) (C {(echo)} {(DQ ('MFS image embedded into kernel'))}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] ) ] )