(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:vers) op: assign_op.Equal rhs: {(1.4)} spids: [87] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Id.Lit_LBracket '[')} {($ Id.VSub_Pound '$#')} {(-ne)} {(2)} {(Id.Lit_RBracket ']')}) terminator: (Token id:Id.Op_Semi val:';' span_id:116) ) ] action: [ (command.Simple words: [{(echo)} {(DQ ('Usage: amuFormat.sh <Card Type> <drive>'))}] redirects: [ (redir.Redir op: (Token id:Id.Redir_GreatAnd val:'>&' span_id:127) fd: -1 arg_word: {(2)} ) ] ) (command.Simple words: [{(echo)} {(DQ ('<Card Type> has to be defined in amuFormat.sh itself'))}] redirects: [ (redir.Redir op: (Token id:Id.Redir_GreatAnd val:'>&' span_id:137) fd: -1 arg_word: {(2)} ) ] ) (command.Simple words: [{(echo)} {(DQ ('<drive> has to be defined in mtools.conf'))}] redirects: [ (redir.Redir op: (Token id:Id.Redir_GreatAnd val:'>&' span_id:147) fd: -1 arg_word: {(2)} ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:151) arg_word: {(1)} ) ] spids: [104 118] ) ] ) (C {(echo)} {(DQ ('amuFormat ') ($ Id.VSub_DollarName '$vers') (' started...'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:drive) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$2'))} spids: [167] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_Number '$1'))} arms: [ (case_arm pat_list: [{(8MBCARD-FW)}] action: [ (command.Case to_match: {(DQ ($ Id.VSub_Number '$2'))} arms: [ (case_arm pat_list: [{(Id.Lit_LBracket '[') (bB) (Id.Lit_RBracket ']') (Id.Lit_Other ':')}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:drive) op: assign_op.Equal rhs: {(DQ ('f:'))} spids: [208] ) ] ) ] spids: [202 206 213 -1] ) (case_arm pat_list: [{(Id.Lit_LBracket '[') (cC) (Id.Lit_RBracket ']') (Id.Lit_Other ':')}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:drive) op: assign_op.Equal rhs: {(DQ ('g:'))} spids: [222] ) ] ) ] spids: [216 220 227 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (command.Sentence child: (C {(echo)} {(DQ ('Drive ') ($ Id.VSub_Number '$2') (' not supported.'))}) terminator: (Token id:Id.Op_Semi val:';' span_id:240) ) (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:242) arg_word: {(1)} ) ] spids: [230 231 246 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cylinders) op: assign_op.Equal rhs: {(245)} spids: [252] ) (assign_pair lhs: (sh_lhs_expr.Name name:heads) op: assign_op.Equal rhs: {(2)} spids: [255] ) (assign_pair lhs: (sh_lhs_expr.Name name:cluster_size) op: assign_op.Equal rhs: {(8)} spids: [258] ) ] ) ] spids: [181 182 262 -1] ) (case_arm pat_list: [{(32MBCARD-FW)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cylinders) op: assign_op.Equal rhs: {(489)} spids: [276] ) (assign_pair lhs: (sh_lhs_expr.Name name:heads) op: assign_op.Equal rhs: {(4)} spids: [279] ) (assign_pair lhs: (sh_lhs_expr.Name name:cluster_size) op: assign_op.Equal rhs: {(4)} spids: [282] ) ] ) ] spids: [264 265 286 -1] ) (case_arm pat_list: [{(64MBCARD-FW)}] action: [ (C {(echo)} {(DQ ('***** WARNING: untested on AvHMU, exiting *****'))}) (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:299) arg_word: {(1)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cylinders) op: assign_op.Equal rhs: {(245)} spids: [304] ) (assign_pair lhs: (sh_lhs_expr.Name name:heads) op: assign_op.Equal rhs: {(2)} spids: [307] ) (assign_pair lhs: (sh_lhs_expr.Name name:cluster_size) op: assign_op.Equal rhs: {(8)} spids: [310] ) ] ) ] spids: [288 289 314 -1] ) (case_arm pat_list: [{(1GBCARD-FW)}] action: [ (C {(echo)} {(DQ ('***** WARNING: untested on AvHMU *****'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cylinders) op: assign_op.Equal rhs: {(2327)} spids: [335] ) (assign_pair lhs: (sh_lhs_expr.Name name:heads) op: assign_op.Equal rhs: {(16)} spids: [338] ) (assign_pair lhs: (sh_lhs_expr.Name name:cluster_size) op: assign_op.Equal rhs: {(64)} spids: [341] ) ] ) ] spids: [316 317 345 -1] ) (case_arm pat_list: [{(64MBCARDSAN)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cylinders) op: assign_op.Equal rhs: {(489)} spids: [359] ) (assign_pair lhs: (sh_lhs_expr.Name name:heads) op: assign_op.Equal rhs: {(8)} spids: [362] ) (assign_pair lhs: (sh_lhs_expr.Name name:cluster_size) op: assign_op.Equal rhs: {(4)} spids: [365] ) ] ) ] spids: [347 348 369 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (C {(echo)} {(DQ ('Card not supported.'))}) (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:391) arg_word: {(1)} ) ] spids: [380 381 396 -1] ) ] ) (C {(echo)} {(DQ ('Formatting card in slot ') ($ Id.VSub_Number '$2') (' as ') ($ Id.VSub_Number '$1'))} ) (C {(mpartition)} {(-I)} {(DQ ($ Id.VSub_DollarName '$drive'))}) (C {(mpartition)} {(-c)} {(-t) ($ Id.VSub_DollarName '$cylinders')} {(-h) ($ Id.VSub_DollarName '$heads')} {(-s32)} {(-b32)} {(DQ ($ Id.VSub_DollarName '$drive'))} ) (C {(mformat)} {(-c) ($ Id.VSub_DollarName '$cluster_size')} {(-v)} {(DQ ($ Id.VSub_Number '$1'))} {(DQ ($ Id.VSub_DollarName '$drive'))} ) (C {(minfo)} {(DQ ($ Id.VSub_Number '$2'))}) (C {(mdir)} {(DQ ($ Id.VSub_Number '$2'))}) (C {(echo)} {(DQ (done.))}) ] )