(command.CommandList children: [ (command.ShFunction keyword: <Id.KW_Function function> name_tok: <start> name: start body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.ForEach keyword: <Id.KW_For for> iter_names: [i] iterable: (for_iter.Words words:[{(DQ ($ Id.VSub_At '@'))}]) semi_tok: <Id.Op_Semi _> body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.Simple blame_tok: <echo> more_env: [] words: [ {<echo>} {(DQ ($ Id.VSub_DollarName i) <' *(rw,fsid=0,insecure,no_root_squash)'>)} ] redirects: [ (Redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {<'/etc/exports'>} ) ] do_fork: T ) (command.Simple blame_tok: <'/bin/cp'> more_env: [] words: [{<'/bin/cp'>} {<'/tmp/index.html'>} {($ Id.VSub_DollarName i) <'/'>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <chmod> more_env: [] words: [{<chmod>} {<644>} {($ Id.VSub_DollarName i) <'/index.html'>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {(DQ <'Serving '> ($ Id.VSub_DollarName i))}] redirects: [] do_fork: T ) ] right: <Id.KW_Done done> ) redirects: [] ) (command.Sentence child: (command.Simple blame_tok: <'/usr/sbin/rpcinfo'> more_env: [] words: [{<'/usr/sbin/rpcinfo'>} {<127.0.0.1>}] redirects: [ (Redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/dev/null'>} ) ] do_fork: T ) terminator: <Id.Op_Semi _> ) (command.ShAssignment left: <Id.Lit_VarLike 's='> pairs: [ (AssignPair left: <Id.Lit_VarLike 's='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 's='> name:s) op: assign_op.Equal rhs: {($ Id.VSub_QMark '?')} ) ] redirects: [] ) (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: <Id.Lit_LBracket '['> more_env: [] words: [ {<Id.Lit_LBracket '['>} {($ Id.VSub_DollarName s)} {<-ne>} {<0>} {<Id.Lit_RBracket ']'>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) then_kw: <Id.KW_Then then> action: [ (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {(DQ <'Starting rpcbind'>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <'/usr/sbin/rpcbind'> more_env: [] words: [{<'/usr/sbin/rpcbind'>} {<-w>}] redirects: [] do_fork: T ) ] spids: [138 151] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) (command.Simple blame_tok: <mount> more_env: [] words: [{<mount>} {<-t>} {<nfsd>} {<nfds>} {<'/proc/fs/nfsd'>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <'/usr/sbin/rpc.mountd'> more_env: [] words: [{<'/usr/sbin/rpc.mountd'>} {<-N>} {<2>} {<-V>} {<3>} {<-N>} {<4>} {<-N>} {<4.1>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <'/usr/sbin/exportfs'> more_env: [] words: [{<'/usr/sbin/exportfs'>} {<-r>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <'/usr/sbin/rpc.nfsd'> more_env: [] words: [ {<'/usr/sbin/rpc.nfsd'>} {<-G>} {<10>} {<-N>} {<2>} {<-V>} {<3>} {<-N>} {<4>} {<-N>} {<4.1>} {<2>} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <'/usr/sbin/rpc.statd'> more_env: [] words: [{<'/usr/sbin/rpc.statd'>} {<--no-notify>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {(DQ <'NFS started'>)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction keyword: <Id.KW_Function function> name_tok: <stop> name: stop body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {(DQ <'Stopping NFS'>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <'/usr/sbin/rpc.nfsd'> more_env: [] words: [{<'/usr/sbin/rpc.nfsd'>} {<0>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <'/usr/sbin/exportfs'> more_env: [] words: [{<'/usr/sbin/exportfs'>} {<-au>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <'/usr/sbin/exportfs'> more_env: [] words: [{<'/usr/sbin/exportfs'>} {<-f>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <kill> more_env: [] words: [ {<kill>} { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <pidof> more_env: [] words: [{<pidof>} {<rpc.mountd>}] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) } ] redirects: [] do_fork: T ) (command.Simple blame_tok: <umount> more_env: [] words: [{<umount>} {<'/proc/fs/nfsd'>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>}] redirects: [ (Redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/etc/exports'>} ) ] do_fork: T ) (command.ControlFlow keyword:<Id.ControlFlow_Exit exit> arg_word:{<0>}) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.Simple blame_tok: <trap> more_env: [] words: [{<trap>} {<stop>} {<TERM>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <start> more_env: [] words: [{<start>} {(DQ ($ Id.VSub_At '@'))}] redirects: [] do_fork: T ) (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple blame_tok: <true> more_env: [] words: [{<true>}] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.Simple blame_tok: <sleep> more_env: [] words: [{<sleep>} {<5>}] redirects: [] do_fork: T ) ] right: <Id.KW_Done done> ) redirects: [] ) ] )