(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OSD) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [3] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Unary op_id:Id.BoolUnary_z child:{(DQ ($ Id.VSub_Number '$1'))}) ) terminator: <Id.Op_Semi _> ) ] action: [ (C {<echo>} {(DQ <'Usage '> ($ Id.VSub_Number '$0') <' osd number to remove'>)}) (command.ControlFlow token:<Id.ControlFlow_Exit exit>) ] spids: [8 21] ) ] ) (C {<sudo>} {<ceph>} {<osd>} {<crush>} {<remove>} {<osd.> (DQ ($ Id.VSub_DollarName '$OSD'))}) (C {<sudo>} {<ceph>} {<auth>} {<del>} {<osd.> (DQ ($ Id.VSub_DollarName '$OSD'))}) (C {<sudo>} {<ceph>} {<osd>} {<rm>} {(DQ ($ Id.VSub_DollarName '$OSD'))}) ] )