(command.CommandList children: [ (command.ShAssignment left: <Id.Lit_VarLike 'DAEMON='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'DAEMON='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'DAEMON='> name:DAEMON) op: assign_op.Equal rhs: {<'/usr/sbin/cups-browsed'>} ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'NAME='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'NAME='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'NAME='> name:NAME) op: assign_op.Equal rhs: {<cups-browsed>} ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'PIDFILE='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'PIDFILE='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'PIDFILE='> name:PIDFILE) op: assign_op.Equal rhs: {<'/var/run/cups/'> ($ Id.VSub_DollarName NAME) <.pid>} ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'DESC='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'DESC='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'DESC='> name:DESC) op: assign_op.Equal rhs: {(DQ <'CUPS Bonjour daemon'>)} ) ] redirects: [] ) (command.Simple blame_tok: <unset> more_env: [] words: [{<unset>} {<TMPDIR>}] redirects: [] do_fork: T ) (command.AndOr children: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {<-x>} {($ Id.VSub_DollarName DAEMON)}] redirects: [] do_fork: T ) (command.ControlFlow keyword:<Id.ControlFlow_Exit exit> arg_word:{<0>}) ] ops: [<Id.Op_DPipe _>] ) (command.Simple blame_tok: <.> more_env: [] words: [{<.>} {<'/lib/lsb/init-functions'>}] redirects: [] do_fork: T ) (command.ShAssignment left: <Id.Lit_VarLike 'SSD_OPTIONS='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'SSD_OPTIONS='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'SSD_OPTIONS='> name:SSD_OPTIONS) op: assign_op.Equal rhs: {(DQ <'--quiet --pidfile '> ($ Id.VSub_DollarName PIDFILE) <' --make-pidfile'>)} ) ] redirects: [] ) (command.Case case_kw: <Id.KW_Case case> to_match: (case_arg.Word w:{(DQ ($ Id.VSub_Number 1))}) arms_start: <Id.KW_In in> arms: [ (CaseArm left: <start> pattern: (pat.Words words:[{<start>}]) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <log_begin_msg> more_env: [] words: [ {<log_begin_msg>} {(DQ <'Starting '> ($ Id.VSub_DollarName DESC) <': '> ($ Id.VSub_DollarName NAME))} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <mkdir> more_env: [] words: [ {<mkdir>} {<-p>} { (CommandSub left_token: <Id.Left_Backtick '`'> child: (command.Simple blame_tok: <dirname> more_env: [] words: [{<dirname>} {(DQ ($ Id.VSub_DollarName PIDFILE))}] redirects: [] do_fork: T ) right: <Id.Backtick_Right '`'> ) } ] redirects: [] do_fork: T ) (command.Simple blame_tok: <start-stop-daemon> more_env: [] words: [ {<start-stop-daemon>} {<--start>} {<--oknodo>} {<--background>} {($ Id.VSub_DollarName SSD_OPTIONS)} {<--exec>} {($ Id.VSub_DollarName DAEMON)} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <log_end_msg> more_env: [] words: [{<log_end_msg>} {($ Id.VSub_QMark '?')}] redirects: [] do_fork: T ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <stop> pattern: (pat.Words words:[{<stop>}]) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <log_begin_msg> more_env: [] words: [ {<log_begin_msg>} {(DQ <'Stopping '> ($ Id.VSub_DollarName DESC) <': '> ($ Id.VSub_DollarName NAME))} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <start-stop-daemon> more_env: [] words: [ {<start-stop-daemon>} {<--stop>} {<--retry>} {<5>} {<--oknodo>} {($ Id.VSub_DollarName SSD_OPTIONS)} {<--name>} {($ Id.VSub_DollarName NAME)} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <log_end_msg> more_env: [] words: [{<log_end_msg>} {($ Id.VSub_QMark '?')}] redirects: [] do_fork: T ) (command.Simple blame_tok: <rm> more_env: [] words: [{<rm>} {<-f>} {($ Id.VSub_DollarName PIDFILE)}] redirects: [] do_fork: T ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <restart> pattern: (pat.Words words:[{<restart>} {<force-reload>}]) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <log_begin_msg> more_env: [] words: [ {<log_begin_msg>} {(DQ <'Restarting '> ($ Id.VSub_DollarName DESC) <': '> ($ Id.VSub_DollarName NAME))} ] redirects: [] do_fork: T ) (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple blame_tok: <start-stop-daemon> more_env: [] words: [ {<start-stop-daemon>} {<--stop>} {<--retry>} {<5>} {<--oknodo>} {($ Id.VSub_DollarName SSD_OPTIONS)} {<--name>} {($ Id.VSub_DollarName NAME)} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) then_kw: <Id.KW_Then then> action: [ (command.Simple blame_tok: <start-stop-daemon> more_env: [] words: [ {<start-stop-daemon>} {<--start>} {<--background>} {($ Id.VSub_DollarName SSD_OPTIONS)} {<--exec>} {($ Id.VSub_DollarName DAEMON)} ] redirects: [] do_fork: T ) ] spids: [227 246] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) (command.Simple blame_tok: <log_end_msg> more_env: [] words: [{<log_end_msg>} {($ Id.VSub_QMark '?')}] redirects: [] do_fork: T ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <status> pattern: (pat.Words words:[{<status>}]) middle: <Id.Right_CasePat _> action: [ (command.AndOr children: [ (command.Simple blame_tok: <status_of_proc> more_env: [] words: [ {<status_of_proc>} {(DQ ($ Id.VSub_DollarName DAEMON))} {(DQ ($ Id.VSub_DollarName NAME))} ] redirects: [] do_fork: T ) (command.ControlFlow keyword:<Id.ControlFlow_Exit exit> arg_word:{<0>}) (command.ControlFlow keyword: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_QMark '?')} ) ] ops: [<Id.Op_DAmp _> <Id.Op_DPipe _>] ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <Id.Lit_Star '*'> pattern: (pat.Words words:[{<Id.Lit_Star '*'>}]) middle: <Id.Right_CasePat _> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'N='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'N='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'N='> name:N) op: assign_op.Equal rhs: {<'/etc/init.d/'> (BracedVarSub left: <Id.Left_DollarBrace '${'> token: <Id.VSub_Number 0> var_name: 0 suffix_op: (suffix_op.Unary op: <Id.VOp1_DPound '##'> arg_word: {<Id.Lit_Other '*'> <Id.Lit_Slash '/'>} ) right: <Id.Right_DollarBrace '}'> ) } ) ] redirects: [] ) (command.Simple blame_tok: <echo> more_env: [] words: [ {<echo>} { (DQ <'Usage: '> ($ Id.VSub_DollarName N) <' {start|stop|force-reload|restart|status}'> ) } ] redirects: [(Redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})] do_fork: T ) (command.ControlFlow keyword:<Id.ControlFlow_Exit exit> arg_word:{<1>}) ] right: <Id.Op_DSemi _> ) ] arms_end: <Id.KW_Esac esac> redirects: [] ) (command.ControlFlow keyword:<Id.ControlFlow_Exit exit> arg_word:{<0>}) ] )